Re: 求助帖: 流join场景可能出现的重复计算

2020-01-15 文章 Ren Xie
gt; Best, > Jingsong Lee > > > -- > From:Caizhi Weng > Send Time:2020年1月15日(星期三) 11:53 > To:user-zh > Subject:Re: 求助帖: 流join场景可能出现的重复计算 > > Hi, > > Flink 目前认为所有的 source 都是 append only 的,retract、upsert 等都是内部处理时的概念,对用户是不可见的。 > > 所以目前你只能先通过 group by 和 last_va

求助帖: 流join场景可能出现的重复计算

2020-01-14 文章 Ren Xie
学生 student_id name 11 foo 学科分数 id name score std_id 100 math 97 11 101 english 98 11 有如下一个场景(假设只有一个学生) 基于binlog检测这2个表的变化, 计算这个学生的总分数, 使用了Table/SQL API join操作计算 假设insert以上数据后到达某时刻, 以上数据都进入了flink, 计算出这个学生总分数 97 + 98 = 195 但此时发现学生姓名登记错误, 于是进行了修改, 结果此时Flink中学生流中有2个事件(insert的一个+update的一个),

Re: 求助帖: 流join场景可能出现的重复计算

2020-01-14 文章 Ren Xie
, Integer.class); stream1.keyBy("").sum(""); ``` 这样的一个sql, 在student表插入一个数据, score表插入2个数据后, 会执行一次计算出一个结果97 + 98 update 学生表的name后, 一个新事件进入student的流, 还会触发一次计算, 得到97 + 98 因为可能有新的成绩插入, 所以对 stream1进行sum操作, 导致 97和98 都被重复计算了一次 Caizhi Weng 于2020年1月14日周二 下午5:49写道: > Hi, > &g

Re: 求助帖: 流join场景可能出现的重复计算

2020-01-14 文章 Ren Xie
udent join 2个分数) 5步计算出196(390 + 新分数 join 2个student, 其实是 390 - 97 -97) 6步骤计算出390(196 + 新分数 join 2个student) 在第4步的时候, 分数就不太对了, 因为流中同一个student对应了2个事件 xin Destiny 于2020年1月14日周二 下午6:39写道: > Hi, > 如果说插入两条update操作呢,一次分数是-97,一次是97 > > > > > Ren Xie 于2020年1月14日周二 下午6:20写道: > &

Re: 求助帖: 流join场景可能出现的重复计算

2020-01-14 文章 Ren Xie
的消息 > 3,基于时间窗口的聚合,对于student表的数据,每n秒输出一个唯一的student_id,然后再与score流join。 > > -邮件原件- > 发件人: xin Destiny > 发送时间: Tuesday, January 14, 2020 6:39 PM > 收件人: user-zh@flink.apache.org > 主题: Re: 求助帖: 流join场景可能出现的重复计算 > > Hi, > 如果说插入两条update操作呢,一次分数是-97,一次是97 > > >