首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过PySpark将数据写入外部数据库

问通过PySpark将数据写入外部数据库
EN

Stack Overflow用户
提问于 2021-11-03 02:39:13
回答 1查看 303关注 0票数 1

我想将数据从PySpark DataFrame写入外部数据库,比如Azure MySQL数据库。到目前为止,我已经使用.write.jdbc()成功地做到了这一点,

代码语言:javascript
复制
spark_df.write.jdbc(url=mysql_url, table=mysql_table, mode="append", properties={"user":mysql_user, "password": mysql_password, "driver": "com.mysql.cj.jdbc.Driver" })

在这里,如果我没有弄错的话,mode唯一可用的选项是append和overwrite,但是,我希望对数据的编写方式有更多的控制。例如,我希望能够执行更新和删除操作。

我该怎么做?可以说,编写SQL查询将数据写入外部数据库吗?如果是的话,请举个例子。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-03 02:44:27

首先,我建议您使用特定的Azure SQL连接器。https://learn.microsoft.com/en-us/azure/azure-sql/database/spark-connector。

然后,我建议您使用块状模式,因为逐行模式很慢,如果打开日志分析,可能会引起意外费用。

最后,对于任何类型的数据转换,都应该使用ELT模式:

  1. 将原始数据加载到空的暂存表中
  2. 运行SQL代码,或者更好地运行执行所需逻辑(例如合并到最终表) 运行DML,例如存储的proc。的存储过程。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69819061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档