我是HBase的新手。我已经安装它并使用其基本的JAVA API进行CRUD操作。我的Hbase表有唯一的列限定符(比如A,B,C,D),它们具有数值,现在我需要过滤那些匹配某些公式的行,如A * B> = C(这里可能有更复杂的条件) )然后我需要获取结果集的列限定符D的值的总和。
我怎么能这样做HBase? 简而言之,如何在NoSQL HBase中执行存储过程类型逻辑?
谢谢, 贝
答案 0 :(得分:1)
您可以使用HBase Coprocessors。具体而言,Endpoint协处理器。您可以将其视为SQL DB中的存储过程。为了使用端点协处理器,您需要在服务器端构建和安装它,然后通过HBase RPC调用它。
要构建和使用端点协处理器,您需要:
在客户端,可以通过两个新的HBase客户端API调用端点:
针对单个区域执行:
HTableInterface.coprocessorProxy(类协议,byte []行)
执行一系列区域
HTableInterface.coprocessorExec(类协议,byte [] startKey,byte [] endKey,Batch.Call可调用)
有关详细信息,请参阅上面指定的链接。
HTH