java - hbase数据的分布式分析

标签 java hadoop hbase distributed

我对 hbase 有点陌生,已经能够设置 hbase 并查询存储在多台 hadoop 机器上的数据,但我想知道是否也可以在 hbase 中分发数据分析。

这是我的情况,我有几十亿条记录需要快速分析,我想让 X 服务器查询数据库并获取查询的独特部分,以便它们可以处理它,而不是让单个服务器遍历整个数据集。这可能吗?我该怎么做?

我非常不确定如何处理这个问题,因为我意识到所有查询都需要协调(每个服务器不能单独查询 hbase,否则 hbase 将不知道如何在服务器之间拆分请求)。我很困惑,但我想也许有一种 native 方法可以在 hadoop 中执行此操作?

如果有帮助,我的应用程序正在运行 java,并且我正在使用 cloudera 发行版在 EC2 上运行集群。

最佳答案

HBase 建立在 Hadoop 之上是有原因的 :) 您可以使用 Hadoop 的 map-reduce 框架来分发分析并让 hadoop/hbase 负责分发负载。 您可以从 docs 开始看看能做什么。

您的另一个选择是编写协处理器。协处理器在区域服务器上运行,因此它们靠近数据工作。你可以找到一个很好的介绍 here

关于java - hbase数据的分布式分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12658534/

相关文章:

apache-spark - Pyspark不显示配置单元数据库

java - 如何在hadoop级联中获取输入文件名

hadoop - Hbase org.apache.hadoop.hbase.PleaseHoldException

java - N-Puzzle 伪随机洗牌?

基于Java的H2数据库无法在CLASSPATH中找到项目

java - Core Java Volume 1 第 6 章 6.4.7 静态内部类

hadoop - yarn stderr 没有 logger appender 也没有 stdout

hadoop - Hadoop的内置组件是什么?

hadoop - 如何将新节点添加到实时 hbase/hadoop 集群?

java - OnLowMemory 被调用