Flink大状态和Checkpoint调优

文章迁移,待整理

2. 状态和Checkpoint调优

2.1 大状态调优

我们生产大多数会使用 fsState ,memState程序挂了状态就丢了,应该没人会在生产使用,但是涉及到一些大状态,fsState效率很低,这时候会选择 rocksDbState

  1. RocksDb 为什么效率高

基于 LSM Tree 实现,类似 Hbase 的读写方式,

复制代码
state.backend.local-recovery: true

写数据内存即返回,查数据先查 blockCache,

  1. 开启 state 性能访问监控

开启监控会对性能有影响,但是对 rocksDbStateBackend 来说影响不大,大概 1%,但是有监控可以快速定位问题

java 复制代码
-Dstate.backend.latency-track.keyed-state-enabled=true
  1. 开启增量检查点

    state.backend.incremental: true #默认 false,改为 true。

  2. 开启本地恢复

Flink任务失败时,可以基于本地的状态信息恢复任务

复制代码
state.backend.incremental: true #默认 false,改为 true。
  1. 多目录设置

有多块磁盘,可以考虑设置多目录

复制代码
state.backend.rocksdb.localdir: 
/data1/flink/rocksdb,/data2/flink/rocksdb,/data3/flink/rocksdb

2.2 checkpoint 间隔时长设置

一般checkpoint 间隔时长设置为 1-5分钟,比如阿里云我们都使用默认的 180S,但是对于一些大状态尤其是 Hdfs 储存时比较慢,可以设置 5-10分钟,并且设置两次 Checkpoint 至少间隔 4-8分钟

相关推荐
亚远景aspice9 分钟前
亚远景热烈祝贺保隆科技通过ASPICE CL2评估
大数据·人工智能·物联网
赵谨言1 小时前
基于python大数据的城市扬尘数宇化监控系统的设计与开发
大数据·开发语言·经验分享·python
程序员小羊!1 小时前
Flink状态编程之算子状态(OperatorState)
大数据·flink
TaoSense2 小时前
Milvus向量数据库介绍
大数据·人工智能
智海观潮2 小时前
聊聊Spark的分区
java·大数据·spark
洛克大航海2 小时前
集群环境安装与部署 Hadoop
大数据·hadoop·ubuntu·集群部署 hadoop
EasyCVR3 小时前
赋能智慧水利:视频汇聚平台EasyCVR智慧水利工程视频管理系统解决方案
大数据
程序员洲洲4 小时前
使用亮数据爬虫API一键式爬取Facebook数据
大数据·数据·亮数据·bright data·爬虫api
汽车仪器仪表相关领域5 小时前
工业商业安全 “哨兵”:GT-NHVR-20-A1 点型可燃气体探测器实操解析与场景适配
大数据·人工智能·功能测试·安全·安全性测试
ctrigger5 小时前
电子信息三胞胎:电子信息工程、电子科学技术、电子信息科学技术
大数据·注册电气工程师