Amazon Managed Service for Apache Flink 之前稱為 Amazon Kinesis Data Analytics for Apache Flink。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Managed Service for Apache Flink:運作方式
Managed Service for Apache Flink 是完全受管的 Amazon 服務,可讓您使用 Apache Flink 應用程式來處理串流資料。首先,您會設定 Apache Flink 應用程式,然後建立 Managed Service for Apache Flink 應用程式。
設定您的 Apache Flink 應用程式
Apache Flink 應用程式是使用 Apache Flink 框架建立的 Java 或 Scala 應用程式。您可以在本機編寫並建置 Apache Flink 應用程式。
應用程式主要使用 DataStream API
這兩者的功能APIs如下:
DataStream API
Apache Flink DataStream API 程式設計模型以兩個元件為基礎:
-
資料串流:資料記錄之連續資料流的結構化表示。
-
轉換運算子:接受一或多個資料串流作為輸入,並產生一或多個資料串流作為輸出。
使用 DataStream API建立的應用程式執行下列動作:
從資料來源讀取資料 (例如 Kinesis 串流或 Amazon MSK主題)。
將轉換套用至資料,例如篩選、彙總或富集。
將轉換後的資料寫入資料接收器。
使用 DataStream API的應用程式可以用 Java 或 Scala 編寫,並且可以從 Kinesis 資料串流、Amazon MSK主題或自訂來源讀取。
應用程式使用連接器來處理資料。Apache Flink 使用以下類型的連接器:
-
來源:用於讀取外部資料的連接器。
-
接收器:用於寫入外部位置的連接器。
-
運算子:用於處理應用程式內資料的連接器。
典型的應用程式包含至少一個具有來源的資料串流、具有一或多個運算子的資料串流,以及至少一個資料接收器。
如需使用 的詳細資訊 DataStream API,請參閱 檢閱 DataStream API元件。
資料表 API
Apache Flink Table API程式設計模型是以下列元件為基礎:
-
資料表環境:用於建立和託管一個或多個資料表的基礎資料的介面。
-
資料表:提供SQL資料表或檢視存取權的物件。
-
資料表來源:用於從外部來源讀取資料,例如 Amazon MSK主題。
-
資料表函數:用於轉換資料的SQL查詢或API呼叫。
-
資料表接收器:用於將資料寫入外部位置,例如 Amazon S3 儲存貯體。
使用 資料表建立的應用程式API執行下列動作:
透過連線至
Table Source
建立TableEnvironment
。TableEnvironment
使用SQL查詢或資料表API函數在 中建立資料表。使用資料表或 對資料表執行查詢 API SQL
使用資料表函數或查詢將轉換套用至SQL查詢的結果。
將查詢或函數結果寫入
Table Sink
。
使用資料表的應用程式API可以用 Java 或 Scala 編寫,並且可以使用API呼叫或查詢SQL來查詢資料。
如需使用資料表 的詳細資訊API,請參閱 檢閱資料表API元件。
建立 Managed Service for Apache Flink 應用程式
Managed Service for Apache Flink 是一項 AWS 服務,可建立託管 Apache Flink 應用程式的環境,並提供下列設定:
-
在 Apache Flink 的受管理服務中使用執行階段屬性:可以提供給應用程式的參數。您可以變更這些參數,無需重新編譯應用程式的程式碼。
-
在 Managed Service for Apache Flink 中實作容錯能力:應用程式如何從中斷和重新啟動中復原。
-
在 Amazon 管理服務中為 Apache Flink 進行日誌記錄和監控:您的應用程式如何將事件記錄到 CloudWatch Logs。
-
在 Managed Service for Apache Flink 中實作應用程式擴展:應用程式如何佈建運算資源。
您可以使用主控台或 AWS CLI建立 Managed Service for Apache Flink 應用程式。若要開始建立 Managed Service for Apache Flink 應用程式,請參閱教學課程:開始使用 Managed Service for Apache Flink 中的 DataStream API 。