val data1 = sc.wholeTextFiles("/opt/test")
val data = sc.textFile("/opt/test/")
使用textFile時,它的partition的數量是與文件夾下的文件數量相關,一個文件就是一個partition。
wholeTextFiles的partition數量是根據用戶指定或者文件大小來確定。 個人覺得它通常用於讀取許多小文件的需求。
進行測試:
/opt/test下邊有五個文件。
然后進行數據加載並指定分區:
val data = sc.textFile("/opt/test/",1)
data.partitions.length
輸出5,這是因為文件是有5個,所以必須是要有5個分區的。
val data1 = sc.wholeTextFiles("/opt/test")
data1.partitions.length
輸出1,確定partition數量與文件數量是無關的