Hi op 这个情况比较奇怪。我想确认下: 1)你所有作业都遇到 checkpoint size 不断变大的情况,还是只有这个类型的作业遇到这个问题呢? 2)是否尝试过 RocksDBStateBackend 呢(全量和增量)?情况如何呢
另外,你 TTL 其他的配置是怎么设置的呢? 从原理上来说,checkpoint 就是 state 的一个快照,如果 checkpoint 越来越大,那么就是 state 越来越多。 Best, Congxian op <520075...@qq.com> 于2020年8月5日周三 下午2:46写道: > > 你好,我使用的是FsStateBackend 状态后端,调到5分钟也是一样,看了下checkpoint花费的时间都在300ms左右,我们的业务数据量每天基本一样, > 设置空闲状态清理时间为1440minute,按道理运行一天以后状态大小会趋于平稳,但是目前运行了5天, > 观察到的checkpoint shared 目录大小一直在增加,也确认过group > by的key只会在处理当天出现,就是说这天的状态当天过后就会处于空闲状态, > 运行5天能满足清理条件 > > > > > ------------------ 原始邮件 ------------------ > 发件人: > "user-zh" > < > qcx978132...@gmail.com>; > 发送时间: 2020年8月3日(星期一) 下午5:50 > 收件人: "user-zh"<user-zh@flink.apache.org>; > > 主题: Re: flink1.10.1/1.11.1 使用sql 进行group 和 时间窗口 操作后 状态越来越大 > > > > Hi > 能否把 checkpoint 的 interval 调长一点再看看是否稳定呢?从 shared > 目录的数据量看,有增长,后续基本持平。现在 > Checkpointed Data Size 是增量的大小[1],而不是整个 checkpoint 的数据量的大小,如果 checkpoint > 之间,数据改动很多的话,这个值会变大 > > [1] > > https://ci.apache.org/projects/flink/flink-docs-release-1.11/zh/ops/state/state_backends.html#%E5%A2%9E%E9%87%8F%E5%BF%AB%E7%85%A7 > Best, > Congxian > > > op <520075...@qq.com> 于2020年8月3日周一 下午2:18写道: > > > &nbsp; &nbsp; > > 同问,我也遇到了状态越来越大的情况,使用的是1.11.0版本,用hdfs保存checkpoint,checkpoint间隔3分钟, > > 逻辑是按照 事件day 和 id 进行groupby > > 然后有十几个聚合指标,运行了7天左右,状态一直在增加,设置了失效时间,然后watermark看着也正常在走 > > tConfig.setIdleStateRetentionTime(Time.minutes(1440), > > Time.minutes(1440+10)) > > > > > > > > > > ------------------&nbsp;原始邮件&nbsp;------------------ > > 发件人: > > > "user-zh" > > > < > > 384939...@qq.com&gt;; > > 发送时间:&nbsp;2020年8月3日(星期一) 中午1:50 > > 收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;; > > > > 主题:&nbsp;Re: flink1.10.1/1.11.1 使用sql 进行group 和 时间窗口 操作后 状态越来越大 > > > > > > > > hi,您好: > > 我改回增量模式重新收集了一些数据: > > 1、数据处理速度:3000条每秒,是测试环境的,压力比较稳定,几乎没有波动 > > 2、checkpoint是interval设置的是5秒 > > 3、目前这个作业是每分钟一个窗口 > > 4、并行度设置的1,使用on-yarn模式 > > > > 刚启动的时候,如下: > > <http://apache-flink.147419.n8.nabble.com/file/t793/6.png&gt; > > > > 18分钟后,如下: > > <http://apache-flink.147419.n8.nabble.com/file/t793/9.png&gt; > > > > checkpoints设置: > > <http://apache-flink.147419.n8.nabble.com/file/t793/conf.png&gt; > > > > hdfs上面大小: > > <http://apache-flink.147419.n8.nabble.com/file/t793/hdfs.png&gt; > > > > 页面上看到的大小: > > < > http://apache-flink.147419.n8.nabble.com/file/t793/checkpoinsts1.png&gt > ; > > > > > > Congxian Qiu wrote > > &gt; Hi&nbsp;&nbsp; 鱼子酱 > > &gt;&nbsp;&nbsp;&nbsp;&nbsp; 能否把在使用增量 checkpoint > 的模式下,截图看一下 checkpoint > > size 的走势呢?另外可以的话,也麻烦你在每次 > > &gt; checkpoint 做完之后,到 hdfs 上 ls 一下 checkpoint 目录的大小。 > > &gt;&nbsp;&nbsp;&nbsp;&nbsp; > 另外有一个问题还需要回答一下,你的处理速度大概是多少,state 的更新频率能否评估一下呢? > > &gt; > > &gt; Best, > > &gt; Congxian > > &gt; > > &gt; > > &gt; 鱼子酱 < > > > > &gt; 384939718@ > > > > &gt;&gt; 于2020年7月30日周四 上午10:43写道: > > &gt; > > &gt;&gt; 感谢! > > &gt;&gt; > > &gt;&gt; flink1.11.1版本里面,我尝试了下面两种backend,目前运行了20多个小时, > > &gt;&gt; 能够看到状态的大小在一个区间内波动,没有发现一直增长的情况了。 > > &gt;&gt; StateBackend backend =new > > &gt;&gt; > > &gt;&gt; > > > RocksDBStateBackend("hdfs:///checkpoints-data/"+yamlReader.getValueByKey("jobName").toString()+"/",false); > > &gt;&gt; StateBackend backend =new > > &gt;&gt; > > &gt;&gt; > > > FsStateBackend("hdfs:///checkpoints-data/"+yamlReader.getValueByKey("jobName").toString()+"/",false); > > &gt;&gt; > > &gt;&gt; > > &gt;&gt; 这样看,有可能是RocksDBStateBackend增量模式这边可能存在一些问题。 > > &gt;&gt; RocksDBStateBackend: > > &gt;&gt; &amp;lt; > > http://apache-flink.147419.n8.nabble.com/file/t793/444.png&amp;gt > ; > > &gt;&gt; FsStateBackend: > > &gt;&gt; &amp;lt; > > http://apache-flink.147419.n8.nabble.com/file/t793/555.png&amp;gt > ; > > &gt;&gt; > > &gt;&gt; > > &gt;&gt; > > &gt;&gt; > > &gt;&gt; -- > > &gt;&gt; Sent from: http://apache-flink.147419.n8.nabble.com/ > > <http://apache-flink.147419.n8.nabble.com/>>; &gt;&gt; > > > > > > > > > > > > -- > > Sent from: http://apache-flink.147419.n8.nabble.com/