

在仔細考慮之後，我們決定停止 Amazon Kinesis Data Analytics for SQL 應用程式：

1. 從 **2025 年 9 月 1 日起，**我們不會為 Amazon Kinesis Data Analytics for SQL 應用程式提供任何錯誤修正，因為考慮到即將終止，我們將對其提供有限的支援。

2. 從 **2025 年 10 月 15 日起，**您將無法建立新的 Kinesis Data Analytics for SQL 應用程式。

3. 我們將自 **2026 年 1 月 27** 日起刪除您的應用程式。您將無法啟動或操作 Amazon Kinesis Data Analytics for SQL 應用程式。從那時起，Amazon Kinesis Data Analytics for SQL 將不再提供支援。如需詳細資訊，請參閱[Amazon Kinesis Data Analytics for SQL 應用程式終止](discontinuation.md)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 範例：建立限流提醒
<a name="app-throttled-alerts"></a>

在此 Kinesis Data Analytics 應用程式中，查詢會在透過示範串流建立的應用程式內串流上持續執行。如需詳細資訊，請參閱[持續查詢](continuous-queries-concepts.md)。如果有任何資料欄顯示大於 1% 的股票價格變更，則這些資料列會插入另一個應用程式內串流。該應用程序會限流提醒，以便在股票價格變化時立即發送提醒。但是，每個股票代碼每分鐘不會發送超過一個提醒到應用程式內串流。

**建立限流提醒應用程式**

1. 依照 Kinesis Data Analytics[入門](https://docs.aws.amazon.com/kinesisanalytics/latest/dev/get-started-exercise.html)練習中所述建立 Kinesis Data Analytics 應用程式。

1. 在 Kinesis Data Analytics 的 SQL 編輯器中，以下列項目取代應用程式碼：

   ```
   CREATE OR REPLACE STREAM "CHANGE_STREAM" 
              (ticker_symbol VARCHAR(4), 
               sector        VARCHAR(12), 
               change        DOUBLE, 
               price         DOUBLE);
   
   CREATE OR REPLACE PUMP "change_pump" AS 
      INSERT INTO "CHANGE_STREAM"
         SELECT STREAM ticker_symbol, sector, change, price 
         FROM   "SOURCE_SQL_STREAM_001"
         WHERE  (ABS(Change / (Price - Change)) * 100) > 1;
         
   -- ** Trigger Count and Limit **
   -- Counts "triggers" or those values that evaluated true against the previous where clause
   -- Then provides its own limit on the number of triggers per hour per ticker symbol to what
   -- is specified in the WHERE clause
   
   CREATE OR REPLACE STREAM TRIGGER_COUNT_STREAM (
      ticker_symbol VARCHAR(4), 
      change REAL,
      trigger_count INTEGER);
   
   CREATE OR REPLACE PUMP trigger_count_pump AS INSERT INTO TRIGGER_COUNT_STREAM
   SELECT STREAM ticker_symbol, change, trigger_count
   FROM (
       SELECT STREAM ticker_symbol, change, COUNT(*) OVER W1 as trigger_count
       FROM "CHANGE_STREAM"
       --window to perform aggregations over last minute to keep track of triggers
       WINDOW W1 AS (PARTITION BY ticker_symbol RANGE INTERVAL '1' MINUTE PRECEDING)
   )
   WHERE trigger_count >= 1;
   ```

   應用程式碼中的 `SELECT` 陳述式會篩選 `SOURCE_SQL_STREAM_001` 中的資料欄，找出變更大於 1% 的股票價格，並使用幫浦將這些資料列插入另一個應用程式內串流 `CHANGE_STREAM`。

   接著，應用程式會建立第二個名為 `TRIGGER_COUNT_STREAM` 的串流，來進行限流提醒。第二個查詢會從視窗中選取記錄，該視窗在每次接受記錄時向前跳轉，因此每個股票代號每分鐘只有一筆記錄會寫入串流。

1. 選擇**儲存並執行 SQL**。

輸出至 `TRIGGER_COUNT_STREAM` 的串流類似於下列範例：

![\[主控台螢幕截圖顯示包含股票代號，百分比變化和觸發計數欄的輸出串流。\]](http://docs.aws.amazon.com/zh_tw/kinesisanalytics/latest/dev/images/ex-throttle-alerts.png)
