当前位置:   article > 正文

5、Flink SQL 与 DataStream API 集成之处理 Changelog 流详解

5、Flink SQL 与 DataStream API 集成之处理 Changelog 流详解

在内部 Flink 的表运行时是一个 changelog processor,StreamTableEnvironment 提供了以下方法来操作 changelog stream

  • fromChangelogStream(DataStream):将 changelog 流转换为表,流记录类型必须是 org.apache.flink.types.Row,因为它的 RowKind标志是在运行时计算的;默认情况下不传播事件时间和水印,此方法需要一个包含所有更改(在 org.apache.flink.types.RowKind 中枚举)的 changelog 作为默认的 ChangelogMode。

  • fromChangelogStream(DataStream,Schema):允许为数据流定义类似于 fromDataStream(DataStream,Schema) 的模式。

  • fromChangelogStream(DataStream,Schema,ChangelogMode):完全控制如何将流转换为 changelog,传递的 ChangelogMode 帮助计划器区分 insert-only、upsert 或 retract 行为。

  • toChangelogStream(Table):fromChangelogStream 的反向操作(DataStream),它生成一个包含 org.apache.flink.types.Row 实例的流,并在运行时为每条记录设置 RowKind 标志,此方法支持所有类型的更新表,如果输入表包含单个 rowtime 列,则它将传播到流记录的时间戳中,水印也将被传播。

  • toChangelogStream(Table,Schema)&

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号