开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink operator state 以及 keyed state 有什么区别

Flink operator state 以及 keyed state 有什么区别

展开
收起
一人吃饱,全家不饿 2021-01-06 12:53:36 1428 0
1 条回答
写回答
取消 提交回答
    1. 是否存在当前处理的 key(current key):operator state 是没有当前 key 的概念,而 keyed state 的数值总是与一个 current key 对应。
    2. 存储对象是否 on heap: 目前 operator state backend 仅有一种 on-heap的实现; 而 keyed state backend 有 on-heap 和 off-heap(RocksDB)的多种实现。
    3. 是否需要手动声明快照(snapshot)和恢复 (restore) 方法:operator state 需要手动实现 snapshot 和 restore 方法;而 keyed state 则由 backend 自行实现,对用户透明。
    4. 数据大小:一般而言,我们认为 operator state 的数据规模是比较小的;认为 keyed state 规模是相对比较大的。需要注意的是,这是一个经验判断,不是一个绝对的判断区分标准。
    2021-01-06 12:53:46
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载