哪个是用于从Spark批量加载HBase数据的最佳HBase连接器?

时间:2017-11-08 14:41:44

标签: apache-spark hbase

如前所述 Which HBase connector for Spark 2.0 should I use? 主要有两种选择:

我确实理解有关从HBase读取的优化和差异。

但是我不清楚我应该将 BATCH插入用于HBase。

我对逐个记录不感兴趣,但是通过高吞吐量。

在挖掘代码之后,似乎都采用了TableOutputFormat, http://hbase.apache.org/1.2/book.html#arch.bulk.load

该项目使用Scala 2.11,Spark 2,HBase 1.2

DataFrame库是否提供了针对BULK LOAD的RDD lib的任何性能改进?

2 个答案:

答案 0 :(得分:2)

最近,hbase-spark连接器已发布到具有1.0.0版本的新maven中央存储库,并支持Spark版本2.4.0和Scala 2.11.12

  <dependency>
     <groupId>org.apache.hbase.connectors.spark</groupId>
     <artifactId>hbase-spark</artifactId>
     <version>1.0.0</version>
   </dependency>

这同时支持RDD和DataFrame。请参阅spark-hbase-connectors了解更多详情

学习愉快!

答案 1 :(得分:1)

您是否看过Hbase项目的批量加载示例。

参见Hbase Bulk Examples,github页面有java示例,可以轻松编写scala代码。

另请阅读Apache Spark Comes to Apache HBase with HBase-Spark Module

如果选择RDD与DataFrame,我们应该根据官方文档的建议使用DataFrame。

  

DataFrame是一个组织成命名列的数据集。它是   概念上等同于关系数据库或数据中的表   R / Python中的框架,但在底层有更丰富的优化。

希望这有帮助。

干杯!