首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >dataset.write()结果为ORA-00001 spark java

dataset.write()结果为ORA-00001 spark java
EN

Stack Overflow用户
提问于 2018-07-30 18:30:09
回答 1查看 33关注 0票数 0

只是想弄清楚处理这种情况的最好方法是什么。我使用dataset.write写入oracle数据库,要求是查找表中是否已存在重复项(不是在数据集中),如果存在,则将这些重复记录写入另一个表中。有谁遇到过类似的问题吗?我要写入的表是一个很大的表,如果在写入数据集之前从该表中读取现有数据并与之进行比较,则开销会很大

使用的savemode是append。它是一个kafka流应用程序,每2分钟连续传输一次数据。

EN

回答 1

Stack Overflow用户

发布于 2018-07-31 05:39:57

没有UPSERT模式,因为我猜你指的是DF.write或DS.write。

问题是,这种重复发生的频率是多少?为什么?如果一个人时不时地滑过,会有什么影响呢?我不倾向于在这种情况下发生重复的键冲突。

如果在逻辑上重复插入很少,并且有适当的基于时间的ORACLE分区来限制要检查的数据量,那么您可以在DBMS端定期执行此操作。

因此,我不会倾向于检查火花方面。这似乎也有点违反直觉,与卡夫卡摄取,并尽快写出来。

一个有趣的问题是,任何做某事的方法都有一些问题需要解决--缓存、重读等在SPARK方面。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51591961

复制
相关文章

相似问题

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