Spark系列 二 Spark的資料讀入

2021-08-16 18:14:29 字數 1840 閱讀 8010

真的是超級忙碌的一周,所幸的是我們迎來了新的家庭成員乙隻小貓咪--大王。取名為大王的原因竟然是因為之前作為流浪貓的日子總是被其他貓所欺負,所以希望他能做乙隻霸氣的霸王貓啦。

言歸正傳,在周一見的悲傷中唯有寫一篇部落格才能緩解我的憂傷吧。

spark讀取文字檔案--textfile()

def textfile(  

path: string,  

minpartitions: int = defaultminpartitions): rdd[string] = withscope   

引數path為乙個string型別,是乙個uri,這個uri可以是hdfs、本地檔案(全部的節點都可以),或者其他hadoop支援的檔案系統uri返回的是乙個字串型別的rdd,也就是是rdd的內部形式是iterator[(string)],可以傳遞引數minpartitions控制分割槽。

針對sparkcontext的textfile方法從讀取單個檔案、讀取多個檔案、讀取檔案目錄下的檔案以及萬用字元四個方面介紹textfile()的使用。無論是檔案還是資料夾,本地路徑加字首file://,hdfs路徑加字首hdfs://

讀取單個檔案

val rdd = sc.textfile("file1")
讀取多個檔案

val rdd = sc.textfile("file1,file2")
讀取乙個資料夾,目標資料夾為code,也就是說spark讀取code資料夾下的檔案

val rdd = sc.textfile("file:///home/work/code/")
萬用字元讀取制定檔案

讀取多個資料夾下的檔案(該目錄下既包含檔案也包含資料夾)

val rdd = sc.textfile("/home/work/code/*/*")
在指定目錄下讀取檔名以part-開頭的檔案

val rdd = sc.textfile("/home/work/code/part-*.txt")
spark讀取資料庫hbase的資料

由於 org.apache.hadoop.hbase.mapreduce.tableinputformat 類的實現,spark 可以通過hadoop 輸入格式訪問 hbase。這個輸入格式會返回鍵值對資料,其中鍵的型別為 org.apache.hadoop.hbase.io.immutablebyteswritable,而值的型別為org.apache.hadoop.hbase.client.result。result 類包含多種根據列獲取值的方法,在其 api 文件(https://hbase.

apache.org/apidocs/org/apache/hadoop/hbase/client/result.html)中有所描述。

val conf = hbaseconfiguration.create() 

conf.set(tableinputformat.input_table, "tablename") //確定要掃瞄hbase資料庫的哪張表

val rdd = sc.newapihadooprdd(conf, classof[tableinputformat], classof[immutablebyteswritable],classof[result])
大王不出門,如何快速的讓乙隻孤僻貓熟悉自己呢?

Spark系列 三 Spark的工作機制

什麼時候才能回歸到看 寫感想的日子呀 剛剛交完房租的我血槽已空。看了師妹關於spark報告的ppt,好懷念學生時代開組會的時光啊,雖然我已經離開學校不長不短兩個月,但我還是非常認真的翻閱了,並作為大自然的搬運工來搬運知識了。1 local,本地執行,通過多執行緒來實現平行計算。2 本地偽集群執行模式...

Spark入門系列

讀完spark官方文件後,在研究別人的原始碼以及spark的原始碼之前進行一番入門學習,這個系列不錯。spark系列 除此之外,databricks也是乙個非常不錯的 上面可以使用免費的spark集群進行 提交與測試,在youtube以及spark大會中都有其發布教程以及spark應用部署的相關細節...

spark學習系列

以spark原始碼為參照分析模式匹配及種類 graphx 核心理解 spark 核心排程理解 效能spark效能相關引數配置 搜狗實驗室 sogou labs 富貴有定數,學問則無定數。求一分,便得一分 關於博主 許鵬,花名 徽滬一郎,2000年畢業於南京郵電學院,現就業於愛立信上海,在udm部門從...