前言
spark 在讀取和落地CSV的時候 也是一門學問,一面有很多的注意細節以及小技巧可以使用。
參考資料:https://github.com/databricks/spark-csv (這裏涵蓋了csv的option參數)
1、讀取
2、落地
1、落地的時候爲null的會落成""
我在我們做BI 這邊也有這種場景,就是dataset中爲null的數據然後落地會爲"".比如一個dataset show 出來的數據時
3,null,5
如果 .csv 直接落地的話 落地結果時3,"",5。這樣就會有一個問題如果hive使用的時候,"“的對應的爲int 等類型的時候就會出現識別不出來的情況。
所以落地結果爲3,5更合理,適用也更廣。
所以 在落地的時候加上參數option(“emptyValue”,”"),類似
frame.write.option(“emptyValue”,"").csv(“demo”)
這樣出來的結果就是 3,5了