Flink序列教程:flink分层API(06)


Flink提供了三层API。每个API在简洁性和表达性之间提供了不同的权衡,并且针对不同的用例。

Flink序列教程:flink分层API(06)

flink 分层api

Stateful Stream Processing

它位于最底层,是Core API 的底层实现。

它是嵌入到Stream流里面的处理函数(processFunction)。

当Core API满足不了用户需求,可以利用低阶API构建一些新的组件或者算子。

它虽然灵活性高,但开发比较复杂,需要具备一定的编码能力。

Core API

  1. DataSet API 是批处理API。 对静态数据进行批处理操作,将静态数据抽象成分布式的数据集,用户可以方便地使用Flink提供的各种操作符对分布式数据集进行处理,支持Java、Scala和Python。
  2. DataStream API是流处理API。对数据流进行流处理操作,将流式的数据抽象成分布式的数据流,用户可以方便地对分布式数据流进行各种操作,支持Java和Scala。

Table API & SQL

  1. SQL 构建在Table 之上,都需要构建Table 环境。
  2. 不同的类型的Table 构建不同的Table 环境中。
  3. Table 可以与DataStream或者DataSet进行相互转换。
  4. Streaming SQL不同于存储的SQL,最终会转化为流式执行计划。

欢迎小伙伴们 关注+转发 +评论区留言,发表您的观点哦!点击下方蓝色字体 “了解更多” 可获取更多资料。

Flink序列教程:flink分层API(06)

flink 序列教程


分享到:


相關文章: