如何使基于scala的spark作业避免总是等待将数据插入到锁定的postgresql表中?

velaa5lx  于 2021-07-13  发布在  Spark
关注(0)|答案(0)|浏览(147)

我在aws emr集群中运行了一个基于scala的spark作业,它将数据摄取到一些postgresql表中。接收数据有两个步骤。
第一步。将Dataframe写入某个暂存表。

outputDF.write.mode(SaveMode.Append).jdbc(url, "staging.customer", connproperties)

第二步。运行sql语句将数据从暂存表移到主表中。如下所示。

query_insertion = "INSERT INTO main.customer(CustomerName, City, Country) SELECT SupplierName, City, Country FROM staging.customer;"

val st = conn.createStatement()
st.executeUpdate(query_insertion)

如果临时表或主表被锁定,spark作业将继续等待而不停止。我想有一个解决方案,它将生成一个警报,然后停止,如果它等待一段时间。欢迎评论!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题