我想将HBase用作商店,我可以在其中推送几百万个{document => {term => weight}}
格式的条目,例如“将术语X插入带有权重Z的文档Y”,然后发出诸如“为此文档选择前1000个术语”或“为每个文档选择前1000个术语”之类的命令。这适用于我目前的MySQL实现,但可能该域更适合HBase。我注意到HBase和BigTable用于全文索引,这是一个类似的问题域。
你可以说我在HBase上读了几页,但我希望你能理解我的问题的主旨。它与this question有关。
可能的障碍可能包括HBase不允许使用等效于LIMIT
子句的查询。鉴于我想按权重查询,我想关联{weight => term}
,这对于具有相同权重的两个术语会有问题(我假设HBase仅允许唯一键)。或者,我必须存储给定重量的术语集合,但这将限制我准确限制返回术语数量的能力。
答案 0 :(得分:0)
简单回答是的。
更复杂的答案,就在今天这些“无sql”数据存储区各自实现自己的程序员接口,而“无sql”意味着它们不是基于SQL的。所以要为一些编码做好准备,尽管它很难。大多数情况下,这些数据存储区只是名称值对存储,通过REST或SOAP获得(HBase也有Column Families的概念)。他们所做的事情虽然是Map Reduce,这是一个非常有趣的查询领域,非常值得一读。