您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何使用Spark分析云HBase的數(shù)據(jù),小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
HBase原生API:HBase原生API適合基于row key做點查,這個是HBase最擅長的查詢場景
Phoenix:Phoenix作為HBase的SQL層,使用二級索引的技術,擅長多條件組合查詢;Phoenix沒有自己的計算資源,類似groupby這樣的復雜查詢需要借助HBase的協(xié)處理器來完成,這樣一方面性能不好,同時會影響HBase集群的穩(wěn)定性;
Spark:具有豐富的算子支持復雜分析,使用Spark集群的計算資源,通過并發(fā)分析的方式可以提高性能,同時不影響HBase集群的穩(wěn)定性。
Spark分析HBase數(shù)據(jù)有“RDD API”、“SQL API”、“HFILE”三種方式,相關對比如下:
對于數(shù)據(jù)動態(tài)更新增加的小表推薦使用SQL API的方式,可以有效的優(yōu)化分析,減少對HBase集群穩(wěn)定性的影響;對于靜態(tài)表或者全量靜態(tài)表的分析推薦使用分析HFILE的方式直讀HDFS,這樣可以完全不影響HBase集群穩(wěn)定性;不推薦使用RDD API 的方式,這種方式一方?jīng)]有優(yōu)化性能差,同時在高并發(fā)以及表數(shù)據(jù)量大時,會嚴重影響HBase集群的穩(wěn)定性,從而影響在線業(yè)務。
3 三種方式的具體使用
云HBase團隊為大家提供了一個github項目供大家參考使用上面的三種方式來開發(fā)Spark分析HBase的程序,項目地址:
https://github.com/lw309637554/alicloud-hbase-spark-examples?spm=a2c4e.11153940.blogcont573569.14.1b6077b4MNpI9X
依賴項:需要下載云HBase及云Phoenix的client包
分析HFILE:
需要先開通云HBase的HDFS訪問權限,參考文檔
在hbase shell中對表生成snapshot表“snapshot 'sourceTable', ‘snapshotName'”
在項目中配置自己的hdfs-sit.xml文件,然后通過直讀HDFS的方式分析snapshot表
具體的example
RDD API對應:org.apache.spark.hbase.NativeRDDAnalyze
SQL API對應:org.apache.spark.sql.execution.datasources.hbase.SqlAnalyze
分析HFILE對應:org.apache.spark.hfile.SparkAnalyzeHFILE
關于“如何使用Spark分析云HBase的數(shù)據(jù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。