如何根据Hbase表中的条件检索记录?
我有一个Hbase表:包含列族的employeedetails:cols personaldetails:firstname、lastname、professionaldetails:cols company、empid的employeedetails 其中包含以下数据如何根据Hbase表中的条件检索记录?,hbase,Hbase,我有一个Hbase表:包含列族的employeedetails:cols personaldetails:firstname、lastname、professionaldetails:cols company、empid的employeedetails 其中包含以下数据 1 column=personaldetails:firstname, timestamp=1490959927100, value=Steven 1 column=personaldetails:lastnam
1 column=personaldetails:firstname, timestamp=1490959927100, value=Steven
1 column=personaldetails:lastname, timestamp=1490959947478, value=Gerrard
1 column=professionaldetails:company, timestamp=1490959968846, value=ABC
1 column=professionaldetails:empid, timestamp=1490959978542, value=02429O
2 column=personaldetails:firstname, timestamp=1490960007427, value=Sidhartha
2 column=personaldetails:lastname, timestamp=1490960054615, value=Bobby
2 column=professionaldetails:company, timestamp=1490960074243, value=DEF
2 column=professionaldetails:empid, timestamp=1490960103882, value=02429N
3 column=personaldetails:company, timestamp=1490960175772, value=WES
3 column=personaldetails:empid, timestamp=1490960187863, value=987789
3 column=personaldetails:firstname, timestamp=1490960128896, value=Sunny
3 column=personaldetails:lastname, timestamp=1490960142031, value=Smith
是否有方法编写命令来检索名称以“S”开头的记录。您可以做的最好的事情是,您可以在配置单元中创建一个外部表,该表与HBase表具有相同的架构映射,并且可以在HBase表的顶部运行配置单元查询 您可以使用在HBase表数据顶部运行的配置单元查询中的条件
您可以选择将配置单元与HBase集成,并在HBase表顶部运行配置单元查询。使用
SingleColumnValueFilter
此筛选器将列族、限定符、比较运算符和比较器作为参数
true
,将发出该行的所有列false
,将不会发出该行SingleColumnValueFilter (‘<family>’, ‘<qualifier>’, <compare operator>, ‘<comparator>’, <filterIfColumnMissing_boolean>, <latest_version_boolean>)
scan 'employeedetails' ,{ FILTER => "SingleColumnValueFilter('personaldetails','firstname',=, 'binaryprefix:S', true, false)" }
如果filterIfColumnMissing
标志设置为true
,则如果在该行中未找到要检查的指定列,则不会发出该行的列
让我知道这是否检索到预期结果。我将数据从Hive复制到Hbase。我只想了解是否有任何选项,例如在Hbase中使用过滤器。@franklinsijo给出的答案是有效的。