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

當試圖實施變化數據捕獲時發生錯誤

GURUPRASAD
新的貢獻者二世

你好,

我新磚和學習對助理工程師認證。

而經曆的部分“構建數據管道與達美住表”。

我想實現變化數據捕獲,但錯誤出在執行工作流。

我不確定我的代碼是不正確的,因為它類似於我們的課程材料。請看下麵的詳細信息,請讓我知道如何解決這個問題。

截屏的筆記本用於管道的定義。

向下滾動的代碼文本和錯誤文本。

圖像

代碼

創建或更新表SCD2_RAW直播

選擇current_timestamp () load_time,右(input_file_name (), 13) source_file, *從json. dbfs: / FileStore /表/ J_File_1.json”;

創建或更新直播表SCD2_SILVER;

申請變更成LIVE.SCD2_SILVER

從流(LIVE.SCD2_RAW)

鍵(標識)

序列由load_time

列* (load_time, source_file除外);

——存儲為SCD 1型

——跟蹤曆史(用戶id、名稱、城市);

錯誤

org.apache.spark.sql。AnalysisException:‘SCD2_RAW’是一個流表,但“SCD2_RAW”是沒有讀過流。要麼刪除後的流媒體關鍵字創建條款或讀取輸入流而不是一個表。

謝謝

4回複4

Kearon
新的貢獻者三世

試用了一下,我認為你的錯誤是因為你想添加SCD直播表。我相信應用變化流表不能使用。

您可以使用一個流表來源。

簡單地改變這條線:

創建或更新直播表SCD2_SILVER;

:

創建或更新生活表SCD2_SILVER;

應該足夠了。

確保你正在運行一個兼容的版本的磚。同樣,如果你想使用追蹤曆史,您需要設置管道集群配置:

pipelines.enableTrackHistory

為true。

我也發現磚SQL解析器給語法錯誤有時和一個小嚐試刪除換行符,等有時可以幫助跟蹤錯誤。

GURUPRASAD
新的貢獻者二世

謝謝你Kearon花時間回答。

我試著實施變更建議但現在看到一個不同的錯誤。

錯誤:

org.apache.spark.sql。AnalysisException:不支持的SQL語句表“SCD2_SILVER”:缺少查詢不支持。

修改代碼:

創建或更新表SCD2_RAW直播

選擇current_timestamp () load_time,右(input_file_name (), 13) source_file, *從json. dbfs: / FileStore /表/ J_File_1.json”;

創建或更新生活表SCD2_SILVER;

申請變更成LIVE.SCD2_SILVER

從流(LIVE.SCD2_RAW)

鍵(標識)

序列由load_time

列* (load_time, source_file除外);

圖像謝謝

Kearon
新的貢獻者三世

@GURUPRASAD MADAPURA VENKATESHAIAH,我有錯誤。試圖記住....原因

我試著回憶。同時,這是一個筆記本我已經非常相似,為我工作。如果您嚐試構建你的,一步一步,用這個作為模板,希望將這樣做。很明顯,你並不需要json爆炸部分或where子句。這隻是處理一些數據我處理的混亂。

創建或更新直播表currStudents_ingest選擇*,上校file_modification_time(選擇fi。file_modification_time EXPLODE_OUTER (fi.students)流(LIVE.currStudents_streamFiles) fi) col.id不是零;創建或更新直播表currStudents_SCD;應用到生活變化。currStudents_SCD從流(live.currStudents_ingest)鍵(id)序列file_modification_time存儲為SCD 2型跟蹤曆史*除了(file_modification_time);

Kaniz
社區經理
社區經理

嗨@GURUPRASAD MADAPURA VENKATESHAIAH(客戶),我們沒有收到你自從上次反應@Kearon McNicol(客戶),我檢查,看看他的建議幫助你。

否則,如果你有任何解決方案,請與社區分享,因為它可以幫助別人。

同時,請別忘了點擊“選擇最佳”按鈕時提供的信息幫助解決你的問題。

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

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

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

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

Baidu
map