scala Spark JDBC写Terror-如何写并行查询

4bbkushb  于 5个月前  发布在  Scala
关注(0)|答案(1)|浏览(55)

我有一个大约2000万行和5列,我想写入Terrace的数据库。我面临的问题是它需要一个绝对的年龄来加载,因为我们可以使用一个分区,因为表将锁定多个分区。我已经尝试使用FASTLOAD参数,但它超时了一个MyRedStatement getNextException。不幸的是,我没有访问日志(我们的组织是这样建立的,我们使用一个内部ETL工具,它使用spark)
有人能帮忙吗?
我目前使用的代码是

df.write.format("jdbc")
.option("url", "jdbc:teradata://<organisation_url>/Database=db,TYPE=FASTLOAD")
.option("dbtable", "tbl_name")
.option("user", "user")
.option("password","pword")
.option("driver","com.teradata.jdbc.TeraDriver")
.option("numPartitions",1)
.mode("overwrite").save()

字符串

krugob8w

krugob8w1#

在JDBC连接URL中指定FLATTEN=ON连接参数,以将链接的异常合并组合为单个异常:

.option("url", "jdbc:teradata://<organisation_url>/Database=db,TYPE=FASTLOAD,FLATTEN=ON")

字符串
您插入的数据可能有一个错误的数据值,数据库正在拒绝。希望通过FLATTEN=ON您能够看到问题。

相关问题