当前位置: 首页 > news >正文

金华市住房建设局网站百度网址入口

金华市住房建设局网站,百度网址入口,网站空间的价格,小程序第三方平台flink作业中的MapState开启了TTL,并且使用rocksdb作为状态后端配置了全量快照方式(同时启用全量快照清理),希望能维持一个平稳的运行状态,但是经观察后发现效果不达预期,不仅checkpoint size持续缓慢递增&a…

flink作业中的MapState开启了TTL,并且使用rocksdb作为状态后端配置了全量快照方式(同时启用全量快照清理),希望能维持一个平稳的运行状态,但是经观察后发现效果不达预期,不仅checkpoint size持续缓慢递增,很长时间后还发生了物理内存溢出。

场景复现
        env.addSource(new OneRecordSource(100000000, 1)).keyBy(e -> e).map(new RichMapFunction<String, String>() {private MapState<String, String> map;@Overridepublic void open(Configuration parameters) throws Exception {super.open(parameters);StateTtlConfig ttlConfig = StateTtlConfig.newBuilder(Time.minutes(1)).cleanupFullSnapshot().build();MapStateDescriptor<String, String> lastStateDes = new MapStateDescriptor<>("lastState", String.class, String.class);lastStateDes.enableTimeToLive(ttlConfig);map = getRuntimeContext().getMapState(lastStateDes);}@Overridepublic String map(String key) throws Exception {map.put(key, key + "值值值值值值值值值值值值值值值值值");return key;}}).print();

自定义一个简单的source持续递增生成整数,作为key保存到MapState,设置了1分钟的过期时间,从web中看到,即使过了几分钟,但是checkpoint size依然是稳步增加的,说明了过期的数据并没得到清理。
在这里插入图片描述

原因分析

现象中全量checkpoint size增长,说明了两个问题

  1. 本地rocksdb持续增长,过期数据在本地状态得没得到清理
  2. 远端快照文件持续增长,过期数据在快照过程依然被保留了

rocksdb作为状态后端时依赖的是压缩时清理过期数据,具有滞后性(越久的数据处于更上层,压缩频率更小),这解释了发生问题1的原因。在启用了全量快照清理条件下,就算本地状态依然保留着过期数据,在发生全量快照的时候为什么不把过期数据过滤掉,造成checkpoint size单调递增,理想的情况是随着ttl发生周期性的增减。

在全量快照时,在RocksDBMapState.StateSnapshotTransformerWrapper.filterOrTransform中会对本地所有状态数据根据ttl配置进行过滤转换,对于已过期的key,其value设为NULL_VALUE(长度为1的byte[]),这样造成了过期的kv依然保留在远程端,只是原始的值使了统一的标识代替,但是hashmap的MapState在该环节会把过期的kv直接过滤掉。造成这种处理上的差异不知道是什么出发点,不过测试将过期的value修改为null后,在一个ttl周期后,checkpoint size趋向于固定,效果和hashmap一致。

ps:RocksDbListState效果正常。

总结
  1. rocksdb的压缩与sst文件数量和大小有关,所以猜测全量快照大小到达一个比较大的值后应该不会继续增长
  2. 可以调整rocksdb的压缩策略,使压缩变得更“积极”,但是肯定会消耗更多资源
  3. rocksdb + MapState + TTL组合使用,建议使用增量快照方式
http://www.yayakq.cn/news/311318/

相关文章:

  • 30g月流量网站泽库县wap网站建设公司
  • 如何在网站发广告网站建设营销词
  • 建成学校网站大数据营销案例分析
  • 网站后台管理系统ie8用不了如何发布网站到域名
  • 北京自己怎么做网站平面设计工作
  • 衡水做阿里巴巴网站免费 网站 cms
  • 益阳做网站足球排名世界排名
  • 用什么做公司宣传网站抖音网站怎么做
  • 企业建站 源码石家庄网站制作找谁
  • 昆明云南微网站建设专业网页制作行情
  • 做网站有哪些要求最火的主题wordpress
  • 网站建设验收使用情况电脑编程学校哪家好
  • 南宁网站推广公司网站开发外文期刊网
  • 红酒商城网站建设方案wordpress二次元主页
  • xv10相同网站安徽六安邮编
  • 国际外贸网站推广网页制作素材模板
  • 湖南企业网站营销电话wordpress设计模板
  • 网站建设与运营的市场广州专门做网站的公司
  • 一起做网站怎么下单域名格式
  • 网站项目建设计划动易视频网站管理系统
  • 自己做游戏的网站广东企业网站建设推荐
  • 东西湖网站建设公司卖菜网站应该怎么做
  • 做网站宣传图片定制化网站建设
  • 蝌蚪窝一个释放做网站seo排名点击器
  • 凡科建站源码英文网站域名注册
  • 招商网站的建设目的太仓网站建设网站推广
  • seo自动推广工具天津seo培训班在哪里
  • 做网站注册营业执照dede分类信息网站
  • 哈尔滨seo建站电子商务网站建设实训实践总结
  • 网站备案名称必须是公司名制作网页界面工具