Trafodion (and I think Phoenix also) both support secondary indexes. So you can create indexes on any attribute that you wish to search upon.
Trafodion in addition allows one to pack multiple columns (logically speaking) into the HBase key. It also has a feature that allows intelligent use of multiple-column indexes. For example, if I have an index on STATE, CITY, and I have a predicate of the form CITY = 'St. Louis' (without a predicate on STATE), Trafodion can implicitly materialize the distinct STATE values efficiently and access CITY = 'St. Louis' directly using that index. So one does not have to create as many indexes as one might otherwise. This feature is useful when the table continues to grow or is updated; fewer indexes requires less overhead for index maintenance. But if the data set is static, you may as well just create indexes until your heart is content (space permitting of course). -----Original Message----- From: Andrzej [mailto:[email protected]] Sent: Wednesday, August 30, 2017 11:03 AM To: [email protected] Subject: Re: Fast search by any column W dniu 30.08.2017 o 19:54, Dave Birdsall pisze: > As Josh Elser mentioned, you might try Apache Phoenix. > You could try any SQL-on-HBase solution, actually. Apache Trafodion > (incubating) is another example. As I understand, Apache Phoenix and Apache Trafodion are highest layer than HBase and both uses HBase. How they can fast seach, since HBase does not allow this?
