繁体   English   中英

我应该使用哪种HBase HBase连接器?

[英]Which HBase connector for Spark 2.0 should I use?

我们的堆栈由Google Data Proc(Spark 2.0)和Google BigTable(HBase 1.2.0)组成,我正在寻找使用这些版本的连接器。

对于我找到的连接器,我不清楚Spark 2.0和新的DataSet API支持:

该项目使用SBT在Scala 2.11中编写。

谢谢你的帮助

更新 :SHC现在似乎可以与Spark 2和Table API一起使用。 请参阅https://github.com/GoogleCloudPlatform/cloud-bigtable-examples/tree/master/scala/bigtable-shc

原始答案:

我不相信任何这些(或任何其他现有的连接器)将完成您今天想要的所有工作。

  • spark-hbase在它发布时可能是正确的解决方案(HBase 1.4?),但目前只能在头部构建,并且仍在使用Spark 2支持
  • spark-hbase-connector似乎只支持RDD API,但由于它们更稳定,可能会有所帮助。
  • hortonworks-spark / shc可能无法正常工作,因为我认为它只支持Spark 1并使用不适用于BigTable的旧HTable API。

我建议只使用HBase MapReduce API和RDD方法,如newAPIHadoopRDD(或者可能是spark-hbase-connector?)。 然后手动将RDD转换为DataSet。 在Scala或Java中,这种方法比Python更容易。

这是HBase社区正在努力改进的领域,Google Cloud Dataproc将在这些改进发生时将其纳入其中。

除了上面的答案,使用newAPIHadoopRDD意味着,你从HBase获得所有数据,从那时起,它的所有核心火花。 您不会获得任何HBase特定的API,如过滤器等。而目前的spark-hbase,只有快照可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM