我目前有一個火花集羣,設置有4個工作節點和2個頭節點。我可以從一個頭節點訪問blob存儲中的1.5 GB CSV文件。我發現加載這些數據並使用PySpark緩存需要相當長的時間。有沒有辦法更快地加載數據?通過火花更快地讀取blob存儲區
我想到的一件事是加載數據,然後將數據分割成k個(節點數)不同的段並將它們保存爲blob作爲實木複合地板文件。這樣,我可以並行加載數據集的不同部分,然後union ...但是,我不確定是否所有的數據都剛剛加載到頭節點上,然後當計算髮生時,它將分配給其他機器。如果後者是真的,那麼分區將是無用的。
幫助將不勝感激。謝謝。
啊,我明白了。因此,根據您的建議,我的策略是採用csv文件並將其轉換爲數據框,以便保存到實木複合地板文件。默認情況下,spark將分區文件分爲128 MB文件。然後我可以有一個更快的數據加載從我的後續加載blob。這聽起來合理嗎?順便說一句,感謝您的及時迴應。 – user2253546
是的!你可以從默認分區開始,就像你注意到的一樣,然後適當調整(很多時候,我只是堅持默認設置)。祝你好運,謝謝! –