SparkSQL與Hive metastore Parquet轉換

本文轉載自公衆號:大數據學習與分享


Spark SQL爲了更好的性能,在讀寫Hive metastore parquet格式的表時,會默認使用自己的Parquet SerDe,而不是採用Hive的SerDe進行序列化和反序列化。該行爲可以通過配置參數spark.sql.hive.convertMetastoreParquet進行控制,默認true。

這裏從表schema的處理角度而言,就必須注意Hive和Parquet兼容性,主要有兩個區別:

1.Hive是大小寫敏感的,但Parquet相反

2.Hive會將所有列視爲nullable,但是nullability在parquet裏有獨特的意義

由於上面的原因,在將Hive metastore parquet轉化爲Spark SQL parquet時,需要兼容處理一下Hive和Parquet的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章