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分钟

相关推荐
瞎胡侃2 小时前
Spark读取Apollo配置
大数据·spark·apollo
悻运2 小时前
如何配置Spark
大数据·分布式·spark
懒惰的橘猫2 小时前
Spark集群搭建之Yarn模式
大数据·分布式·spark
2401_824256863 小时前
Spark-Streaming
大数据·分布式·spark
胡耀超3 小时前
附1:深度解读:《金融数据安全 数据安全分级指南》——数据分类的艺术专栏系列
大数据·金融·数据治理·生命周期·数据分类·政策法规
合新通信 | 让光不负所托3 小时前
【合新通信】浸没式液冷光模块与冷媒兼容性测试技术报告
大数据·网络·光纤通信
元6333 小时前
spark和hadoop之间的对比和联系
大数据·hadoop·spark
cooldream20094 小时前
深入解析大数据的Lambda架构:设计、特点与应用场景
大数据·架构·系统架构师
淋一遍下雨天4 小时前
Spark-Streaming核心编程
大数据·kafka
jack xu14 小时前
高频面试题:如何保证数据库和es数据一致性
java·大数据·数据库·mysql·elasticsearch