我有下面设置与thirft服务器上运行的HBaseHadoop的HBASE查询
2节点的hadoop/HBase的集群。
Hbase有一个1000万行的表。
我需要在hbase表 上运行像sum()这样的聚合查询,以便在Web上显示它(图表目的)。
现在我正在使用python(thrift客户端)来获取数据集并显示。
我正在寻找在网络中使用的数据库(hbase)级别的聚合函数。
有什么想法?
我有下面设置与thirft服务器上运行的HBaseHadoop的HBASE查询
2节点的hadoop/HBase的集群。
Hbase有一个1000万行的表。
我需要在hbase表 上运行像sum()这样的聚合查询,以便在Web上显示它(图表目的)。
现在我正在使用python(thrift客户端)来获取数据集并显示。
我正在寻找在网络中使用的数据库(hbase)级别的聚合函数。
有什么想法?
这通常是一个地图缩减工作。您可能需要考虑使用Hive为您提供一种类似SQL的编写查询的方式。 https://cwiki.apache.org/Hive/hbaseintegration.html
您可以参考phoenix。 网站: https://github.com/forcedotcom/phoenix/ http://forcedotcom.github.io/phoenix/
凤凰是从HBase的表比蜂巢低延迟的结果很好地解决。 它比Hbase扫描仪更适合范围扫描,因为它们使用二级索引和SkipScan。 就你而言,你使用Python和phoenix API只有JDBC连接器。
其他尝试Hbase协处理器。哪些做SUM,MAX,COUNT,AVG功能。 您可以在创建表时启用协处理器,并且可以使用协处理器功能
您可以尝试提供ODBC连接器,JDBC连接器的Impala。 Impala使用hive metatable执行大规模并行批处理执行。 您需要为您的Hbase表创建一个Hive metatable。
我正在寻找实时查询以显示在网页中。 – user1697574
HBase只支持按键实时检索行,所以您最好预先计算总和或您有什么并将结果存储在HBase中。 – MattMcKnight