spark从hbase读取数据,工人是否需要从远程驱动程序获取分区数据?

8wigbo56  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(212)

spark从hbase读取数据,例如//create rdd

val hBaseRDD = sc.newAPIHadoopRDD(conf, classOf[TableInputFormat], 
  classOf[org.apache.hadoop.hbase.io.ImmutableBytesWritable],
  classOf[org.apache.hadoop.hbase.client.Result])

例如,hbaserdd有5个分区,现在执行者在worker上获取分区数据进行计算,他们必须从远程驱动程序获取数据吗(与从hdfs读取不同,作为hadoop从属的每个worker都有hdfs文件复制)

4ngedf3f

4ngedf3f1#

spark与hbase集成,数据局部性原则与hadoop map reduce作业相同:spark将尝试将输入分区(hbase区域)分配给同一物理机上的工作进程,因此数据将直接获取,而无需远程驱动程序。

相关问题