博客
关于我
60-150-044-使用-Sink-Flink自定义RetractStreamTableSink
阅读量:77 次
发布时间:2019-02-25

本文共 524 字,大约阅读时间需要 1 分钟。

Flink Table/SQL流表Sink分类

Flink中的Table/SQL流表Sink分为三类:AppendStreamTable、RetractStreamTableSink和UpsertStreamTableSink。这些类别主要区分流表的类型,可以归纳为两种主要模式:

  • 插入模式(Insert Mode):对应AppendStreamTable,仅支持插入操作。例如窗口聚合的结果,每个窗口输出唯一,不会影响之前的输出。这种模式适用于需要唯一记录的场景。
  • 重做模式(Redo Mode):对应RetractStreamTableSink和UpsertStreamTableSink。这两种类别不仅支持插入操作,还能执行更新和删除操作。例如全局group by聚合,后续结果会影响之前的输出。RetractStreamTableSink与UpsertStreamTableSink的主要区别在于消息编码格式,后者通常用于支持插入、更新和删除操作。
  • 理解这些模式的区别对于优化流表性能至关重要。Insert模式适用于处理唯一性约束的场景,而Redo模式适用于需要动态更新和删除的场景。选择合适的模式可以显著影响Flink流表的性能和稳定性。

    转载地址:http://sko.baihongyu.com/

    你可能感兴趣的文章
    mysql 多个表关联查询查询时间长的问题
    查看>>
    mySQL 多个表求多个count
    查看>>
    mysql 多字段删除重复数据,保留最小id数据
    查看>>
    MySQL 多表联合查询:UNION 和 JOIN 分析
    查看>>
    MySQL 大数据量快速插入方法和语句优化
    查看>>
    mysql 如何给SQL添加索引
    查看>>
    mysql 字段区分大小写
    查看>>
    mysql 字段合并问题(group_concat)
    查看>>
    mysql 字段类型类型
    查看>>
    MySQL 字符串截取函数,字段截取,字符串截取
    查看>>
    MySQL 存储引擎
    查看>>
    mysql 存储过程 注入_mysql 视图 事务 存储过程 SQL注入
    查看>>
    MySQL 存储过程参数:in、out、inout
    查看>>
    mysql 存储过程每隔一段时间执行一次
    查看>>
    mysql 存在update不存在insert
    查看>>
    Mysql 学习总结(86)—— Mysql 的 JSON 数据类型正确使用姿势
    查看>>
    Mysql 学习总结(87)—— Mysql 执行计划(Explain)再总结
    查看>>
    Mysql 学习总结(88)—— Mysql 官方为什么不推荐用雪花 id 和 uuid 做 MySQL 主键
    查看>>
    Mysql 学习总结(89)—— Mysql 库表容量统计
    查看>>
    mysql 实现主从复制/主从同步
    查看>>