【Flink精讲】Flink状态及Checkpoint调优

RocksDB大状态调优

RocksDB 是基于 LSM Tree 实现的(类似 HBase) ,写数据都是先缓存到内存中,

所以 RocksDB 的写请求效率比较高。 RocksDB 使用内存结合磁盘的方式来存储数据,每

次获取数据时,先从内存中 blockcache 中查找,如果内存中没有再去磁盘中查询。 使用

RocksDB 时,状态大小仅受可用磁盘空间量的限制, 性能瓶颈主要在于 RocksDB 对磁盘

的读请求, 每次读写操作都必须对数据进行反序列化或者序列化。 当处理性能不够时,仅需

要横向扩展并行度即可提高整个 Job 的吞吐量。

开启增量检查点和本地恢复

1)开启增量检查点

RocksDB 是目前唯一可用于支持有状态流处理应用程序增量检查点的状态后端,可以修改参数开启增量检查点:

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

或代码中指定

new EmbeddedRocksDBStateBackend(true)

调整预定义选项

Flink 针对不同的设置为 RocksDB 提供了一些预定义的选项集合,其中包含了后续提到

的一些参数,如果调整预定义选项后还达不到预期,再去调整后面的 block、 writebuffer

等参数。

当 前 支 持 的 预 定 义 选 项 有 DEFAULT 、 SPINNING_DISK_OPTIMIZED 、

SPINNING_DISK_OPTIMIZED_HIGH_MEM 或 FLASH_SSD_OPTIMIZED。有条件上 SSD

的, 可以指定为 FLASH_SSD_OPTIMIZED

state.backend.rocksdb.predefined-options: SPINNING_DISK_OPTIMIZED_HIGH_MEM

#设置为机械硬盘+内存模式

相关推荐
ITyunwei098717 分钟前
团队管理与人才发展:如何打造一支“召之即来,来之能战”的铁军?
大数据·运维·人工智能
喜欢流萤吖~19 分钟前
Elasticsearch集群:高可用与水平扩展的基石
大数据·elasticsearch·搜索引擎
我是发哥哈2 小时前
跨AI模型生成视频的五大维度对比:选型避坑指南
大数据·人工智能·学习·机器学习·chatgpt·音视频
逸Y 仙X3 小时前
Elasticsearch时间类型实战
java·大数据·elasticsearch·搜索引擎·全文检索
Dxy12393102164 小时前
Python如何处理树状分类数据
大数据·python·分类
凡人AI录5 小时前
小红书商业变现 100 个关键词:从流量逻辑到长期复利
大数据
zhongerzixunshi6 小时前
筑牢国家安全防线,赋能企业合规发展
大数据·人工智能·安全
小飞象—木兮6 小时前
2026数据资产入表解决方案(52页 PPT)
大数据·人工智能
Dotrust东信创智6 小时前
革新测试管理3.0:Storm UTP统一测试管理平台全链路追溯与AI赋能升级
大数据·人工智能·storm
烟台业荣数据科技有限公司6 小时前
智能建造知识拓展 | AR技术:虚实融合,赋能施工现场
大数据·人工智能·机器人