当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyflink Schema.Builder.watermark用法及代码示例


本文简要介绍 python 语言中 pyflink.table.Schema.Builder.watermark 的用法。

用法:

watermark(column_name: str, watermark_expr: Union[str, pyflink.table.expression.Expression]) → pyflink.table.schema.Schema.Builder

声明给定列应用作event-time(即行时间)属性,并将相应的水印策略指定为表达式。

该列必须是 {@code TIMESTAMP(3)} 或 {@code TIMESTAMP_LTZ(3)} 类型,并且是架构中的顶级列。它可能是一个计算列。

水印生成表达式由框架在运行时对每条记录进行评估。该框架将定期发出最大的生成水印。如果当前水印仍然和前一个水印相同,或者为空,或者返回的水印的值小于上一个发出的水印的值,则不会发出新的水印。水印在配置定义的间隔内发出。

任何标量表达式都可用于为内存/临时表声明水印策略。但是,目前,只有 SQL 表达式可以保存在目录中。表达式的返回数据类型必须是 {@code TIMESTAMP(3)}。支持用户定义的函数(也在不同的目录中定义)。

例子:

>>> Schema.new_builder().watermark("ts", "ts - INTERVAL '5' SECOND")

参数:

  • column_name- 用作行时间属性的列名

  • watermark_expr- 用于水印生成的表达式

相关用法


注:本文由纯净天空筛选整理自apache.org大神的英文原创作品 pyflink.table.Schema.Builder.watermark。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。