對於新專案,我們建議您使用適用於 Apache Flink Studio 的全新受管理服務,取代適用於應用程式的 Kinesis Data Analytics。SQLManaged Service for Apache Flink Studio 易於使用且具備進階分析功能,讓您在幾分鐘內建置複雜的串流處理應用程式。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
持續查詢
串流上的查詢會透過串流資料持續執行。這種持續執行可啟用案例,例如應用程式能夠持續查詢串流並產生提醒。
在入門練習中,您有一個名為 SOURCE_SQL_STREAM_001
的應用程式內串流。它會持續從示範串流 (Kinesis 資料串流) 接收股票價格。結構描述如下:
(TICKER_SYMBOL VARCHAR(4), SECTOR varchar(16), CHANGE REAL, PRICE REAL)
假設您對超過 15% 的股票價格變動感興趣。您可以在應用程式碼中使用下列查詢。此查詢會持續執行,並在偵測到股票價格變動大於 15% 時發出記錄。
SELECT STREAM TICKER_SYMBOL, PRICE FROM "SOURCE_SQL_STREAM_001" WHERE (ABS((CHANGE / (PRICE-CHANGE)) * 100)) > 15
使用下列程序來設定 Amazon Kinesis Data Analytics 應用程式,並測試此查詢。
若要測試查詢
-
按照入門練習建立應用程式。
-
用上述
SELECT
查詢取代應用程式碼中的SELECT
陳述式。產生的應用程式碼如下所示:CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (ticker_symbol VARCHAR(4), price DOUBLE); -- CREATE OR REPLACE PUMP to insert into output CREATE OR REPLACE PUMP "STREAM_PUMP" AS INSERT INTO "DESTINATION_SQL_STREAM" SELECT STREAM TICKER_SYMBOL, PRICE FROM "SOURCE_SQL_STREAM_001" WHERE (ABS((CHANGE / (PRICE-CHANGE)) * 100)) > 15;