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


Python pyflink Table用法及代碼示例

本文簡要介紹 python 語言中 pyflink.table.Table 的用法。

用法:

class pyflink.table.Table(j_table, t_env)

基礎:object

Table 對象是 Table API 的核心抽象。與 DataStream API 具有 DataStream 的方式類似,Table API 是圍繞 Table 構建的。

Table 對象說明數據轉換的管道。它不以任何方式包含數據本身。相反,它說明如何從表源讀取數據,以及如何最終將數據寫入表接收器。聲明的管道可以被打印、優化並最終在集群中執行。該管道可以使用有界或無界流,從而支持流式處理和批處理方案。

根據上麵的定義,Table 對象實際上可以被視為 SQL 術語中的視圖。

初始 Table 對象由 TableEnvironment 構造。例如,from_path() 從目錄中獲取表。每個 Table 對象都有一個可通過 get_schema() 使用的架構。 Table 對象在編程期間始終與其原始表環境相關聯。

每次轉換(即 Table 對象上的 select() } 或 filter() 都會生成一個新的 Table 對象。

在開發過程中,使用execute()執行管道並在本地檢索轉換後的數據。否則,使用execute_insert()將數據寫入表接收器。

此類的許多方法都采用一個或多個Expression 作為參數。為了表達式的流暢定義和更容易閱讀,我們建議添加星號導入:

例子:

>>> from pyflink.table.expressions import *

查看文檔以獲取更多特定於編程語言的 API。

以下示例顯示如何使用 Table 對象。

例子:

>>> from pyflink.table import TableEnvironment
>>> from pyflink.table.expressions import *
>>> env_settings = EnvironmentSettings.in_streaming_mode()
>>> t_env = TableEnvironment.create(env_settings)
>>> table = t_env.from_path("my_table").select(col("colA").trim(), col("colB") + 12)
>>> table.execute().print()

相關用法


注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 pyflink.table.Table。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。