取消
顯示的結果
而不是尋找
你的意思是:

Pyspark讀多個拚花類型擴展失敗

Erik_L
因素二世

問題

閱讀幾乎相當於鋪在一個目錄表列X型浮子和一些型雙失敗。

嚐試解決

  1. 使用流媒體文件
  2. 刪除三角洲緩存、向量化
  3. 顯式地使用緩存()

筆記

這是一個眾所周知的問題,但我需要一個工作。

示例代碼

(spark.read。選項(“mergeSchema”,假).option (“spark.databricks.io.cache。啟用”,假).parquet (f“s3: / /桶/數據/ *”).write.mode .saveAsTable(“追加”)(“my_table”))

1接受解決方案

接受的解決方案

Erik_L
因素二世

經過許多許多小時的試圖解決這個問題,我想出了一個黑客_solves_問題,但它不是最優的。我基本上讀文件的目錄清單,然後通過工會和合並它們做一個拯救出來。

my_schema = StructType ([StructField(“命令”,StringType ()), StructField(“通過”,TimestampType ()), StructField(“模式”,LongType ()), StructField(“提供”,倍增式()),])df =火花。createDataFrame(數據=[],模式= my_schema) #……在table_files table_file: df = df。聯盟(spark.read。選項(“mergeSchema”,假).option (“spark.databricks.io.cache。啟用”,假).parquet (f“s3: / /桶/數據/ {table_file}”) #轉換.select(“命令”、“通過”、“模式”,“提供”))

在原帖子查看解決方案

2回答2

Erik_L
因素二世

經過許多許多小時的試圖解決這個問題,我想出了一個黑客_solves_問題,但它不是最優的。我基本上讀文件的目錄清單,然後通過工會和合並它們做一個拯救出來。

my_schema = StructType ([StructField(“命令”,StringType ()), StructField(“通過”,TimestampType ()), StructField(“模式”,LongType ()), StructField(“提供”,倍增式()),])df =火花。createDataFrame(數據=[],模式= my_schema) #……在table_files table_file: df = df。聯盟(spark.read。選項(“mergeSchema”,假).option (“spark.databricks.io.cache。啟用”,假).parquet (f“s3: / /桶/數據/ {table_file}”) #轉換.select(“命令”、“通過”、“模式”,“提供”))

Vidula_Khanna
主持人
主持人

嗨@Erik路易

幫助我們建立一個充滿活力和足智多謀的社區通過識別和突出的貢獻。馬克最好的答案和表達你的欣賞!

問候

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map