對於新專案,我們建議您使用適用於 Apache Flink Studio 的全新受管理服務,取代適用於應用程式的 Kinesis Data Analytics。SQLManaged Service for Apache Flink Studio 易於使用且具備進階分析功能,讓您在幾分鐘內建置複雜的串流處理應用程式。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
窗口化查詢
應用程式碼中的 SQL 查詢會透過應用程式內串流持續執行。應用程式內串流,代表的是持續在應用程式中流動的無限制資料。因此,若要取得此持續更新輸入的結果集,經常會使用定義的窗口時段或資料列來限制查詢。這些也被稱為窗口式 SQL。
對於以時間為基礎的窗口化查詢,您可以根據時間來指定窗口大小 (例如,一分鐘的窗口)。這需要應用程式內串流中的時間戳記資料欄,該欄會單調增加。(新資料列的時間戳記大於或等於上一列。) 在每個應用程式內串流中,Amazon Kinesis Data Analytics 會提供這樣的時間戳記欄,名為 ROWTIME
。您可以在指定基於時間的查詢中使用此欄。針對應用程式,您可以選擇其他時間戳記選項。如需詳細資訊,請參閱 時間戳記和 ROWTIME 欄。
針對以資料列為基礎的窗口化查詢,您可以根據資料列數來指定窗口大小。
您可以根據應用程式需求,指定查詢以輪轉窗口、滑動窗口或交錯窗口方式處理記錄。Kinesis Data Analytics 支援下列窗口類型: