我第一次建立了一個三角洲生活表使用Python如下。
@dlt。表def事務():返回(火花.readStream .format . schema (transaction_schema) .option (“cloudFiles”) (“cloudFiles。格式”、“鋪”).load(路徑))
,我寫了三角洲生活表為目標數據庫測試。
{" id ": < id >,“集群”:[{“標簽”:“默認”,“自動定量”:{“min_workers”: 1、“max_workers”: 5}}],“發展”:真的,“連續”:假的,“版”:“核心”,“光子”:假的,“庫”:[{“筆記本”:{“路徑”:<路徑>}}],“名字”:“dev管道”,“存儲”:<存儲>,“目標”:“測試”}
一切都如預期的試驗工作。
一段時間後,我發現我忘了添加分區列的表,我把表被刪除表的測試在測試。交易,並更新了筆記本
@dlt。表(partition_cols =“分區”,)def事務():返回(火花.readStream .format . schema (transaction_schema) .option (“cloudFiles”) (“cloudFiles。格式”、“鋪”).load(路徑).withColumn(“分區”,F.to_date(“時間戳”)))
然而,當我重新管道,我得到了一個錯誤。
org.apache.spark.sql。AnalysisException:不能改變分區列表事務。當前:要求:分區
我不能改變分區列僅刪除目標表。
正確的方法是什麼改變分區列在三角洲住表嗎?
答:——@Kit山藥謝霆鋒
計算機科學•香港科技大學