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

為什麼引發保存模式,“覆蓋”總是滴表雖然“截斷”是真的嗎?

AkifCakir
新的因素

嗨親愛的團隊,

我試圖從磚Exasol DB導入數據。

我使用下麵代碼在火花版本是3.0.1,

dfw。寫\ .format (jdbc) \ .option(“司機”,exa_driver) \ .option (“url”, exa_url) \ .option(“數據表”,“表”)\ .option(“用戶”,用戶名)\ .option(“密碼”,exa_password) \ .option(“截斷”,“真正的”)\ .option (“numPartitions”、“1”) \ .option (“fetchsize”、“100000”) \ .mode(“覆蓋”)\ .save ()

問題是“覆蓋”模式時,它總是把目標表在Exasol db,盡管在火花文檔(https://spark.apache.org/docs/3.0.1/sql-data-sources-jdbc.html的內容)它說“截斷”選項

截斷- - >這是一個JDBC作家相關選項。當SaveMode。啟用了覆蓋,這個選項會導致火花截斷現有表而不是刪除和重建。這可以更有效率,並防止表元數據(例如,指數)被移除。然而,它不會工作在某些情況下,例如當新的數據有不同的模式。默認值為false。此選項僅適用於寫作。

根據這一解釋,我期望與選擇(“截斷”,“真正的”),它不應該下降但截斷。然而它滴桌子上甚至在這種情況下。注意:我們可以有單獨的截斷命令和append模式,但我不希望有額外的第二個命令但解決在一個命令,建議在Exasol文檔(https://github.com/exasol/spark-exasol-connector/blob/main/doc/user_guide/user_guide.md spark-save-m……)。

我丟失的東西或者你有解決嗎?

1接受解決方案

接受的解決方案

jose_gonzalez
主持人
主持人

嗨@Akif Cakir,

你是正確的,這是使用JDBC連接器時預期的行為。文檔在這裏

你嚐試使用JDBC的“exasol”連接器嗎?你也有同樣的行為嗎?

在原帖子查看解決方案

3回複3

Kaniz
社區經理
社區經理

你好@AkifCakir!我的名字叫Kaniz,我這裏的技術主持人。很高興認識你,謝謝你的問題!看看你的同行在社區中有一個回答你的問題。否則我將盡快給你回電。謝謝。

jose_gonzalez
主持人
主持人

嗨@Akif Cakir,

你是正確的,這是使用JDBC連接器時預期的行為。文檔在這裏

你嚐試使用JDBC的“exasol”連接器嗎?你也有同樣的行為嗎?

mick042
新的貢獻者三世

我用以下麵臨著同樣的問題:

sfOptions = {

:“sfURL <帳戶>。snowflakecomputing.com”,

“sfAccount”:“< >”,

“sfUser”:“<用戶>”,

“sfPassword”:“* * *”,

數據庫“sfDatabase”:“< >”,

“sfSchema”:“<模式>”,

倉庫“sfWarehouse”:“< >”,

“truncate_table”:“在”,

“usestagingtable”:“關閉”,

}

https://community.snowflake.com/s/article/How-to-Load-Data-in-Spark-with-Overwrite-mode-without-Chan..。

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

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

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

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

Baidu
map