postgresql - 将 Spark Dataframe 写入 PosgreSQL
问题描述
我正在尝试将 Spark Dataframe 写入预先创建的 PostgreSQL 表。我在工作的 INSERT 过程中收到以下错误:
java.sql.BatchUpdateException: Batch entry 0 INSERT INTO ref.tableA(a,b) VALUES ('Mike',548758) was aborted. Call getNextException to see the cause.
我还尝试捕获错误并调用 getNextException 方法,但日志中仍然存在相同的错误。为了将 Dataframe 写入相应的表,我使用了以下过程:
val jdbcProps = new java.util.Properties()
jdbcProps.setProperty("driver", Config.psqlDriver)
jdbcProps.setProperty("user", Config.psqlUser)
jdbcProps.setProperty("password", Config.psqlPassword)
jdbcProps.setProperty("stringtype", "unspecified")
df.write
.format("jdbc")
.mode(SaveMode.Append)
.jdbc(Config.psqlUrl, tableName, jdbcProps)
包版本: - Spark:1.6.2 - Scala:2.10.6
有任何想法吗 ?
解决方案
推荐阅读
- amazon-web-services - 为什么ecs-cli service up很久没有完成
- php - PHP在While循环中迭代数组的变量
- powershell - 在 PowerShell 中使用 Azure DevOps REST API 更新生成定义
- python - 如何修复“AttributeError:'NoneType'对象没有属性'text'”
- javascript - Angular右键单击打开也右键浏览器菜单
- html - Chrome在它的兄弟姐妹之前呈现空跨度
- r - 需要帮助找到一种快速方法来识别每个变量的第一个非缺失观测值
- android - 构建android SDK 27时Ionic失败
- linux - 重命名文件夹中的部分多个文件
- matlab - 在matlab中绘制已经保存的句柄