你好,
我有一些火花數據幀中的數據,我試圖把它寫在SQL Azure表數據倉庫。如果我使用df.write.mode (saveMode =“覆蓋”)我得到這個錯誤:
com.microsoft.sqlserver.jdbc。SQLServerException:聲明失敗了。列& # 39;代碼# 39;有一個數據類型,不能參與columnstore索引。
我猜它試圖創建茶幾columnstore索引的使用。我需要一種方法來指定,create語句不創建表的列存儲索引。
另一個問題是如果我改變df.write.option(“截斷”,真的).mode (saveMode =“追加”)並運行它幾次(第一次手動創建表後),我最後最後表中重複的記錄。這基本上意味著“截斷”選項並不是工作
最好的,
拉傑什
避免重複在sql和附加可以設置索引選項:“是獨一無二的”= Yes和“忽略重複的鍵”= Yes。
火花/磚不知道是在數據庫這就是為什麼你有重複。
截斷選項為僅覆蓋模式比,而不是刪除表的SQL是截斷表所以模式生存。
關於錯誤可能在SQL聚集索引分開但我不確定。
是的,這是可能的,因為它們都使用blob存儲。這樣的體係結構比較複雜,你需要辦理手冊;有很多的例子:https://docs.microsoft.com/en-us/azure/databricks/data/data-sources/azure/synapse-analytics