You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 凌天荣 <46...@qq.com> on 2020/09/06 13:21:28 UTC

flink-sql1.11写入mysql重复问题

使用flink-sql1.11时,insert进connect为mysql的flink table时,由于mysql里面的id是主键自增的,1.11版本upsert模式设置主键在插入的时候又不能指定为mysql的主键id,只能设置别的字段为flink table的主键,所以会造成有时候mysql里面有两条相同的数据,有啥可解决的吗?(PS:两条是ods两个事实表进行intvate join,正常情况flink table主键和mysql主键一样的话,upsert模式是能回撤旧数据写入新数据的)

Re: flink-sql1.11写入mysql重复问题

Posted by Leonard Xu <xb...@gmail.com>.
Hi

这个原因在于flink 和 mysql主键是不一致导致的重复数据,你可以把当前mysql表中设置成flink主键的字段添加个unique key 约束,这样和pk也是等价的。

Best
Leonard

> 在 2020年9月6日,21:21,凌天荣 <46...@qq.com> 写道:
> 
> 使用flink-sql1.11时,insert进connect为mysql的flink table时,由于mysql里面的id是主键自增的,1.11版本upsert模式设置主键在插入的时候又不能指定为mysql的主键id,只能设置别的字段为flink table的主键,所以会造成有时候mysql里面有两条相同的数据,有啥可解决的吗?(PS:两条是ods两个事实表进行intvate join,正常情况flink table主键和mysql主键一样的话,upsert模式是能回撤旧数据写入新数据的)