Flink核心概念和编程模型

Flink分层架构

Flink核心组件

  1. 核心组件
    Flink实战(三)

Flink分层架构

Flink实战(三)

  1. Stateful Stream Processing
  • 位于最底层,是core API的底层实现
  • Processing Function
  • 利用低阶,构建一些新的组件或者算子
  • 灵活性高,但是开发复杂
  1. Core APIS
  • DataSet API(批处理)
  • DataStream API(流处理)
  1. Table API & SQL
  • SQL构建在Table之上,需要构建Table环境(不同类型的Table需要不同类型的Table环境)
  • Table可以和DataStream或者DataSet互相转化
  • Stream SQL最终会转化成流式的执行计划

Flink DataFlow

Flink DataFlow基本套路

  1. Flink DataFlow编程基本套路
    Flink实战(三)

Flink实战(三)

  1. 并行化DataFlow
    Flink实战(三)
  2. 算子间数据传递模式
  • One-to-One Streams(保持元素的分区和顺序)
  • Redistrbuting Streams(改变流的分区)
    (keyby() broadcas() rebanlance())

其他概念

Time

Flink实战(三)

Window

Flink实战(三)

statuful Operations

Flink实战(三)

Checkpoints

Flink实战(三)

  1. 基于chandy-lamport分布式一致性快照算法基础上实现的(https://zhuanlan.zhihu.com/p/53482103)

Savepoint

Flink实战(三)

相关文章: