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

磚運行時10.4 LTS - AnalysisException:沒有這種結構體字段id 0 1升級之後

Emiel_Smeenk
新的貢獻者三世

你好,

我們正在遷移到磚運行時從9.1 10.4 LTS LTS但我們遇到奇怪的行為問題。我們現有的代碼工作直到運行時10.3和10.4在它停止工作。

問題:

我們有一個嵌套的json文件,我們是壓扁成一個火花數據幀使用下麵的代碼:

adaccountsdf = df。withColumn (Exp_Organizations, F.explode (F.col (organizations.organization))) \ .withColumn (Exp_AdAccounts, F.explode (F.col (Exp_Organizations.ad_accounts))) \ .select (F.col (Exp_Organizations.id) .alias (“organizationId”), F.col (Exp_Organizations.name) .alias (“organizationName”), F.col (Exp_AdAccounts.id) .alias (“adAccountId”), F.col (Exp_AdAccounts.name) .alias (“adAccountName”), F.col (Exp_AdAccounts.timezone) .alias(“時區”))

當我們查詢dataframe它當我們做下麵的選擇(藏結果由於保密):

顯示器(adaccountsdf.select(“*”))或顯示(adaccountsdf)

圖像當我顯示dataframe我們得到以下模式:

根|——organizationId:字符串(nullable = true) |——organizationName:字符串(nullable = true) |——adAccountId:字符串(nullable = true) |——adAccountName:字符串(nullable = true) |——時區:字符串(nullable = true)

所以它應該的樣子。現在我們開始選擇過去3字段(adAccountId adAccountName和時區),我們得到以下錯誤:

圖像然而當我們選擇單個列它工作正常:

圖像

有人知道這是為什麼會發生呢?這是一個非常奇怪的錯誤,隻有出現在磚10.4運行時。以前所有運行時包括10.3、10.2、10.1和9.1 LTS工作好。這個問題似乎是由於使用爆炸函數已經列dataframe爆炸。

更新:

出於某種原因,當我運行adaccountsdf.cache ()之前我運行select語句的問題就消失了。還想知道是什麼導致了這個問題在運行時10.4而不是其他的。

1接受解決方案

接受的解決方案

Emiel_Smeenk
新的貢獻者三世

似乎是奇跡般的解決問題。我沒有進行任何代碼更改但現在一切都按預期運行。

也許在4月19日公布的最新10.4運行時修複也無意中解決這個問題。

在原帖子查看解決方案

11日回複11

Kaniz
社區經理
社區經理

嗨@Emiel Smeenk,

指南幫助您遷移到Azure磚工作負載的磚運行時的最新版本10. x。

磚建議你將你的工作負載遷移到支持磚運行時的LTS版的最新版本支持LTS版。

因此,本文將重點討論遷移工作負載磚運行時9.1 LTS磚運行時10.4 LTS

Emiel_Smeenk
新的貢獻者三世

似乎是奇跡般的解決問題。我沒有進行任何代碼更改但現在一切都按預期運行。

也許在4月19日公布的最新10.4運行時修複也無意中解決這個問題。

Nirupam
新的貢獻者三世

@Emiel Smeenk

我們麵臨著同樣的問題,突然2022 - 4月20日起它解決。

問題:有什麼網站,我可以看到/跟蹤這些“補丁”嗎?

編輯:添加的問題。

Kaniz
社區經理
社區經理

嗨@Nirupam作者Nishant和@Emiel Smeenk,這頁麵列表維護更新發布為磚運行時版本。

2022年4月19日—維護更新

  • 我們升級Java版本1.11.655 1.12.1899 AWS SDK。
  • 我們不固定一個問題與notebook-scoped庫在批處理流媒體工作。
  • (火花- 38616)[SQL]跟蹤SQL查詢文本TreeNode催化劑
  • 操作係統安全更新。

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

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

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

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

Baidu
map