當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。