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

表寫命令卡”為查詢過濾文件。”

boskicl
新的貢獻者三世

你好所有的,

背景:

今天我有一個問題與磚使用pyspark-sql三角洲表和寫作。dataframe由之間做一個內連接兩個表的表,我想寫一個δ表。表有時甚至不會做一個行數(count()),但有時因為某些原因,和輸出通常是大約19億行,它甚至在這些情況下會顯示(顯示())。

問題:

當要寫這個dataframe成δ表它似乎越來越困在一個階段。命令我用寫表如下:

(df .write .format(“δ”).mode write_mode .option (“replaceWhere”、“eventDate eventDate < > ={}和{}”。形式at(start_date_str, end_date_str)) .option("overwriteSchema", "true") .partitionBy("eventDate") .saveAsTable("default.df") )

棱的問題一旦它到達一個階段和“查詢過濾文件”說:

過濾job_info現在,當試圖調查特定階段(1493),我看到下麵的:

spill_memory

誰能給我了解發生了什麼嗎?我運行這段代碼超過10個小時什麼事也沒發生,它將永遠困在最後階段,同一消息的“過濾查詢文件。”From my understanding databricks optimizes delta tables really well, and I even have a partition on the table which I am trying to write. I am not a memory/cache expert so I am not sure if things can't be loaded into cache quick enough for it to write. Is there any insight anyone can provide?

信息集群:

磚的運行時版本:10.2(包括Apache火花3.2.0,Scala 2.12)

工作類型:i3.2xlarge 61 gb內存,8核

驅動程序類型:i3.4xlarge 122 gb內存,16個核心

謝謝你!

1接受解決方案

接受的解決方案

匿名
不適用

@Ljuboslav如

可以有多個原因查詢正在采取更多的時間,在這一階段的元數據查找活動發生,請檢查下麵的事情

  • 確保表的z值正確,合並關鍵(條款)包括z值鍵和分區鍵。
  • 您可以使用真空和優化源三角洲表上,請找到下麵的文檔

https://docs.m.eheci.com/spark/latest/spark-sql/language-manual/delta-vacuum.html

https://docs.m.eheci.com/spark/latest/spark-sql/language-manual/delta-optimize.html

請讓我們知道如果你仍然麵臨同樣的問題

在原帖子查看解決方案

5回複5

Hubert_Dudek1
尊敬的貢獻者三世

你有可能有惟一的id嗎?所以你可以運行容易合並(插入):

並入your_table使用your_new_view your_table .uniqueId = your_new_view。uniqueId和eventDate > ={}然後eventDate <{}不匹配時插入* *當匹配更新

boskicl
新的貢獻者三世

一秒鍾@Hubert杜德克,讓我放棄,當我創建內部加入我也把一些條件:

data_to_save =(表1 . join(表(表1)。用戶= = table2.user) &(坳(eventTime) > =坳(“tableTime”)) & (datediff (table1.eventDate table2.tableEventDate) < =窗口),“內部”))

這是表我想寫一個三角洲表。

你的代碼片段,這是我需要的東西放在寫聲明我已經加入語句中或之前我上麵貼的?

至於你的問題:

每一行可能沒有一個惟一的id,例如允許考慮10行——這10行,我們可能有3行已在一列稱為“用戶id”是一樣的,但在另一個專欄叫“eventId”是不同的。對我來說是很重要的保持這些行分離由於擁有相同的用戶id。我希望這回答了你的問題。

紹
新的貢獻者三世

你好,

我做了3個步驟

1。——重新啟動集群

2。——刪除所有鋪文件不再使用VACUMM命令。

例子:

真空模式。表保留0小時;

圖像3所示。——運行查詢

匿名
不適用

@Ljuboslav如

可以有多個原因查詢正在采取更多的時間,在這一階段的元數據查找活動發生,請檢查下麵的事情

  • 確保表的z值正確,合並關鍵(條款)包括z值鍵和分區鍵。
  • 您可以使用真空和優化源三角洲表上,請找到下麵的文檔

https://docs.m.eheci.com/spark/latest/spark-sql/language-manual/delta-vacuum.html

https://docs.m.eheci.com/spark/latest/spark-sql/language-manual/delta-optimize.html

請讓我們知道如果你仍然麵臨同樣的問題

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

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

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

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

Baidu
map