如何使用 Pyspark 在 Databricks 中合并 Hive 表中的记录?
Posted
技术标签:
【中文标题】如何使用 Pyspark 在 Databricks 中合并 Hive 表中的记录?【英文标题】:How to Merge records in Hive table in Databricks using Pyspark? 【发布时间】:2020-09-04 09:16:08 【问题描述】:%sql
MERGE INTO Employee as t
USING updates as s
ON s.Position = t.Position
WHEN MATCHED THEN
UPDATE SET
name=s.name,
age=s.age,
salary=s.salary,
IsDelta=s.IsDelta,
Modified=s.Modified,
Created=s.Created
address = updates.address
WHEN NOT MATCHED
THEN INSERT (Position, name, age, salary, IsDelta, Modified, Created) VALUES (s.Position,s.name,s.age,s.salary,s.IsDelta,s.Modified,s.Created)
对于上面的代码,我得到了错误:SQL 语句出错:AnalysisException: MERGE destination only support Delta sources。
【问题讨论】:
【参考方案1】:很遗憾,Databricks 仅支持更新 delta(delta 湖)表。
错误消息Error in SQL statement: AnalysisException: MERGE destination only supports Delta sources
表示您尝试在非增量表上进行更新。
【讨论】:
是的,问题是由于 delta 表造成的。谢谢 如果我的回答对你有帮助,你可以accept it as an answer。这对其他社区成员可能是有益的。谢谢。以上是关于如何使用 Pyspark 在 Databricks 中合并 Hive 表中的记录?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Python / Pyspark 在 Databricks 笔记本中合并数据帧
如何使用 Pyspark 在 Databricks 中合并 Hive 表中的记录?
如何在 Azure Databricks PySpark 中执行存储过程?
如何在 Databricks pyspark 中导入 Excel 文件