博客
关于我
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 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 深度分页性能急剧下降,该如何优化?
    查看>>
    MySQL 添加列,修改列,删除列
    查看>>
    mysql 添加索引
    查看>>
    MySQL 添加索引,删除索引及其用法
    查看>>
    mysql 状态检查,备份,修复
    查看>>
    MySQL 用 limit 为什么会影响性能?
    查看>>
    MySQL 用 limit 为什么会影响性能?有什么优化方案?
    查看>>
    MySQL 用户权限管理:授权、撤销、密码更新和用户删除(图文解析)
    查看>>
    mysql 用户管理和权限设置
    查看>>
    MySQL 的 varchar 水真的太深了!
    查看>>
    mysql 的GROUP_CONCAT函数的使用(group_by 如何显示分组之前的数据)
    查看>>
    MySQL 的instr函数
    查看>>
    MySQL 的mysql_secure_installation安全脚本执行过程介绍
    查看>>
    MySQL 的Rename Table语句
    查看>>
    MySQL 的全局锁、表锁和行锁
    查看>>
    mysql 的存储引擎介绍
    查看>>
    MySQL 的存储引擎有哪些?为什么常用InnoDB?
    查看>>
    Mysql 知识回顾总结-索引
    查看>>