HBase-根据部分键检索行

HBase- Retrieve row based on parts of key

假设我们有一个带行键 Lname_Fname_DOB 的 HBase table。考虑在 HBase table Cusack_Tim_06062006,Aptrow_Jill_07072007,Cruise_Tom_06052006.

中插入了以下行键

我有一个 UI,用户可以在其中在单独的文本框中输入 Fname Lname 和 DOB。我的问题是,如果用户只在 Lname 中输入 C,在 Fname 中输入 T,是否有办法获取 rowkey Cusack_Tim_06062006 和 Cruise_Tom_06052006 的结果? 所以基本上用户可能只输入部分 rowkey,在 RDBMS 中我可以使用 like 函数,不知道如何在 HBase 中处理这个。

您需要使用带有 RowFilter 和 RegexStringComparator 的扫描仪。

但是您应该知道,扫描仪的资源消耗非常大,根据您拥有的数据量,可能需要相当长的时间才能得出结果。

如果您想要实时搜索,您应该考虑在真正的搜索引擎(Apache Solr、Sphinx...等)中为您的数据建立索引