返回顶部
首页 > 资讯 > 精选 >FlinkSQL中的Retraction回退更新是怎么进行的
  • 240
分享到

FlinkSQL中的Retraction回退更新是怎么进行的

2023-06-19 13:06:08 240人浏览 泡泡鱼
摘要

flinksql中的Retraction回退更新是怎么进行的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前言如果你在使用FlinkSQL时出现如下的报错:Table 

flinksql中的Retraction回退更新是怎么进行的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

前言

如果你在使用FlinkSQL时出现如下的报错:

Table is not an append-only table. Use the toRetractStream() in order to handle add and retract messages.
 那么你就有必要了解一下Flink中的  回退更新

简介

通俗的讲"回退更新"就是传统数据里面的更新操作,也就是说Retract是流式计算场景下对数据更新的处理。

使用flinkSQL处理实时数据当我们把表转化成流的时候,需要用toAppendStream与toRetractStream这两个方法。稍不注意可能直接选择了toAppendStream。

区别

追加模式:只有在动态Table仅通过INSERT更改修改时才能使用此模式,即它仅附加,并且以前发出的结果永远不会更新。

如果更新或删除操作使用追加模式会失败报错。

FlinkSQL中的Retraction回退更新是怎么进行的

缩进模式: 始终可以使用此模式。返回值是boolean类型。它用true或false来标记数据的插入和撤回,返回true代表数据插入,false代表数据的撤回。

按照官网的理解如果数据只是不断添加,可以使用追加模式,其余方式则不可以使用追加模式,而缩进模式侧可以适用于更新,删除等场景。具体的区别如下图所示:

FlinkSQL中的Retraction回退更新是怎么进行的

FlinkSQL中的Retraction回退更新是怎么进行的

通过上图可以清晰的看到两种方式的区别,当我们使用的sql语句包含:count() group by时,必须使用缩进模式。

举个例子

FlinkSQL中的Retraction回退更新是怎么进行的

上面的例子输出结果如下:

FlinkSQL中的Retraction回退更新是怎么进行的

前面数字相同的是同一组操作,true代表的是写入,false代表的是撤回。

看完上述内容,你们掌握FlinkSQL中的Retraction回退更新是怎么进行的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: FlinkSQL中的Retraction回退更新是怎么进行的

本文链接: https://lsjlt.com/news/296185.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • FlinkSQL中的Retraction回退更新是怎么进行的
    FlinkSQL中的Retraction回退更新是怎么进行的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。前言如果你在使用FlinkSQL时出现如下的报错:Table ...
    99+
    2023-06-19
  • 怎么进行windows域的更新
    要进行Windows域的更新,您需要执行以下步骤:1. 确保您有正确的管理员权限:您需要具有域管理员权限或本地管理员权限才能进行域的...
    99+
    2023-09-12
    windows
  • 怎么停止正在进行的Windows更新
    临时停止更新服务、停止Windows更新服务均可停止正在进行的Windows更新。1、打开“设置”菜单。点击“开始”按钮,然后选择“设置”图标;2、在“设置”界面中,选择“更新和安全”选项;3、在“更新和安全”界面中,选择“Windows更...
    99+
    2023-08-10
  • Android应用中怎么对RecyclerView进行更新
    这期内容当中小编将会给大家带来有关Android应用中怎么对RecyclerView进行更新,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一般在使用RecyclerView的时候不免要修改Recycler...
    99+
    2023-05-31
    android recyclerview recycle
  • 怎么对MySQL数据库中表的数据进行更新
    小编给大家分享一下怎么对MySQL数据库中表的数据进行更新,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Update语句的基本语...
    99+
    2024-04-02
  • Win10系统怎么中止正在进行的系统更新?
    安装Windows 10系统的电脑,如果正在进行更新,而我们不需要此次更新,意图中止更新,该怎么中止更新呢?下面我们就来看看详细的教程。 一、Windows 10中止正在进行更新的方法 1、在更新和安全中,我们可以看到:...
    99+
    2023-05-23
    Win10 系统更新
  • NodeJS进程是怎么退出的
    本篇内容介绍了“NodeJS进程是怎么退出的”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录前言主动退出Exceptions, Rejec...
    99+
    2023-06-20
  • android应用中怎么对UI进行异步更新
    本篇文章给大家分享的是有关android应用中怎么对UI进行异步更新,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。使用Handler消息传递机制package com.exam...
    99+
    2023-05-31
    android roi
  • Android应用中怎么对媒体库数据进行更新
    Android应用中怎么对媒体库数据进行更新?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Android 媒体库数据更新方法总结在项目中,我们经常要创建个自己的目录,里面存...
    99+
    2023-05-31
    android roi
  • 怎么更好的进行C++引用
    这篇文章主要介绍“怎么更好的进行C++引用”,在日常操作中,相信很多人在怎么更好的进行C++引用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么更好的进行C++引用”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-17
  • Git中的版本回退怎么实现
    这篇文章主要介绍“Git中的版本回退怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Git中的版本回退怎么实现”文章能帮助大家解决问题。这实际的工作中,我们可能需要用到版本回退,所谓的版本回退...
    99+
    2023-06-27
  • Ajax怎么实现表格中信息不刷新页面进行更新数据
    这篇文章主要介绍了Ajax怎么实现表格中信息不刷新页面进行更新数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下html:<!DOCTYPE ht...
    99+
    2023-06-08
  • 开发App中怎么更好的进行技术选型
    开发App中怎么更好的进行技术选型,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。目前很多的小公司和小团队在选择App的开发框架时,往往会受到成本、时间和预期效果的限定。如何在各...
    99+
    2023-06-03
  • CentOS中更新系统而不更新Linux内核的方法是怎样的
    今天就跟大家聊聊有关CentOS中更新系统而不更新Linux内核的方法是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。今天在使用Ucloud的云服务器的时候,手贱使用了一下 代...
    99+
    2023-06-10
  • React中setState的更新机制是什么
    这篇文章主要介绍“React中setState的更新机制是什么”,在日常操作中,相信很多人在React中setState的更新机制是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2024-04-02
  • 怎么更好的进行C++构造函数
    今天就跟大家聊聊有关怎么更好的进行C++构造函数,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。构造函数是开发过程中的一种特殊的方法,其主要用来在创建对象时的初始化对象,也就是对象成员...
    99+
    2023-06-17
  • 怎么更好的进行C++代码编译
    这期内容当中小编将会给大家带来有关怎么更好的进行C++代码编译,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在刚刚刚开始学C++代码时遇到一个问题,这个问题导致程序不能够完全的进行运行,看完本文后对您一定...
    99+
    2023-06-17
  • Java中的函数怎么利用匿名类进行回调
    今天就跟大家聊聊有关Java中的函数怎么利用匿名类进行回调,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在C语言中,函数名可以当做函数指针传递给形参从而实现回调void f1() {...
    99+
    2023-05-31
    java 匿名类
  • PostgreSQL中怎么更新表中的数据
    要更新表中的数据,可以使用UPDATE语句。语法如下: UPDATE table_name SET column1 = value1...
    99+
    2024-04-09
    PostgreSQL
  • mysql中update按照多重条件进行更新处理的方案
    目录1.场景问题说明2.处理方案2.1 使用update case when2.2 使用if标签总结1.场景问题说明 mysql中一般的update写法支持的方式是,update 表 set 字段名=修改后的字段值 wh...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作