如何使用Pyspark / SQL / DataFrames SPARK RDD升/删除DB2源表数据?

时间:2019-05-09 20:44:00

标签: pyspark apache-spark-sql spark-streaming pyspark-sql

我试图运行upsert /删除DB2数据库源表中的某些值,该表是DB2上的现有表。是否可以使用Pyspark / Spark SQL / Dataframes。

1 个答案:

答案 0 :(得分:0)

没有使用Pyspark作业在关系数据库中直接更新/删除的方法,但是有解决方法。

(1)您可以在关系数据库中创建一个相同的空表(辅助表),并使用pyspark作业将数据插入到辅助表中,并编写将在主表上执行所需DML操作的DML触发器。

(2)您可以在spark中创建一个数据框(例如a),作为现有关系表的副本,并将现有表数据框与当前数据框(例如b)合并,然后创建一个新的数据框(例如c)那将是最新的变化。现在,截断关系数据库表并重新加载spark最新更改dataframe(c)。

这些只是解决方法,而不是针对大量数据的最佳解决方案。