2017-07-28 40 views
0

火花讀取HBase的數據,如 //創建RDDspark從hbase讀取數據,工作人員是否需要從遠程驅動程序獲取paritions數據?

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

例如,hBaseRDD有5個分區,現在執行的工人獲取分區中的數據來計算,他們必須從遠程驅動程序的數據? (不像從hdfs讀取,每個工作者作爲hadoop奴隸有hdfs文件複製)

回答

0

Spark與HBase集成並且數據局部性原理與Hadoop map-reduce作業中的原理相同:spark將嘗試分配輸入分區(hbase區域)發送給同一物理機器上的工作人員,因此無需遠程驅動程序即可直接讀取數據。

相關問題