Re: 如何给flink的输出削峰填谷?
类似kafka这样的消息管道应该用来 削峰填谷, 可以先sink 至kafka,再从kafka -> db > 2022年1月26日 上午2:11,Jing 写道: > > Hi Flink中文社区, > > 我碰到一个这样的问题,我的数据库有write throttle, 我的flink > app是一个10分钟窗口的聚合操作,这样导致,每10分钟有个非常大量的写请求。导致数据库的sink有时候会destroy. > 有什么办法把这些写请求均匀分布到10分钟吗? > > > 谢谢, > Jing
Re: 如何给flink的输出削峰填谷?
如果不需要统一窗口周期,比如0-10,10-20的话,可以考虑根据key决定窗口offset,这样将窗口offset随机化,输出就变平滑了。 Paul Lam 于2022年1月26日周三 10:18写道: > Hi, > > 如果是 DataStream 应用的话,最简单的方式是给 sink 之前加个 throttle 算子,比如 guava RateLimiter。 > > SQL 应用的话可能要实现个 UDF 来做。 > > Best, > Paul Lam > > > 2022年1月26日 02:11,Jing 写道: > > > > Hi Flink中文社区, > > > > 我碰到一个这样的问题,我的数据库有write throttle, 我的flink > > app是一个10分钟窗口的聚合操作,这样导致,每10分钟有个非常大量的写请求。导致数据库的sink有时候会destroy. > > 有什么办法把这些写请求均匀分布到10分钟吗? > > > > > > 谢谢, > > Jing > >
Re: 如何给flink的输出削峰填谷?
Hi, 如果是 DataStream 应用的话,最简单的方式是给 sink 之前加个 throttle 算子,比如 guava RateLimiter。 SQL 应用的话可能要实现个 UDF 来做。 Best, Paul Lam > 2022年1月26日 02:11,Jing 写道: > > Hi Flink中文社区, > > 我碰到一个这样的问题,我的数据库有write throttle, 我的flink > app是一个10分钟窗口的聚合操作,这样导致,每10分钟有个非常大量的写请求。导致数据库的sink有时候会destroy. > 有什么办法把这些写请求均匀分布到10分钟吗? > > > 谢谢, > Jing