

在仔細考慮之後，我們決定停止 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-hotspots-detection"></a>

Amazon Kinesis Data Analytics 提供的 `HOTSPOTS` 功能可以找出並傳回資料中相對密集區域的相關資訊。如需詳細資訊，請參閱 *Amazon Managed Service for Apache Flink SQL 參考資料*中的[熱點](https://docs.aws.amazon.com/kinesisanalytics/latest/sqlref/sqlrf-hotspots.html)。

在本練習中撰寫應用程式碼，以便在應用程式的串流來源上尋找熱點。若要設定應用程式，請執行下列動作：

1. **設定串流來源**：設定 Kinesis 串流並寫入範例座標資料，如下所示：

   ```
   {"x": 7.921782426109737, "y": 8.746265312709893, "is_hot": "N"}
   {"x": 0.722248626528026, "y": 4.648868803193405, "is_hot": "Y"}
   ```

   此範例提供 Python 指令碼供您填入串流。`x` 和 `y` 值是隨機產生的，有些記錄會叢集在某些位置。

   如果指令碼刻意生成數值做為熱點的一部分，則會提供 `is_hot` 欄位做為指標。這可協助您評估熱點偵測功能是否正常運作。

1. **建立應用程式**：接著使用 AWS 管理主控台建立 Kinesis Data Analytics 應用程式。將串流來源對應至應用程式內串流 (`SOURCE_SQL_STREAM_001`)，以設定應用程式輸入。當應用程式啟動時，Kinesis Data Analytics 會持續讀取串流來源，並將記錄插入應用程式內串流。

   在本練習中，針對應用程式使用下列程式碼：

   ```
   CREATE OR REPLACE STREAM "DESTINATION_SQL_STREAM" (
       "x" DOUBLE, 
       "y" DOUBLE, 
       "is_hot" VARCHAR(4),
       HOTSPOTS_RESULT VARCHAR(10000)
   ); 
   CREATE OR REPLACE PUMP "STREAM_PUMP" AS 
       INSERT INTO "DESTINATION_SQL_STREAM" 
       SELECT "x", "y", "is_hot", "HOTSPOTS_RESULT" 
       FROM TABLE (
           HOTSPOTS(   
               CURSOR(SELECT STREAM "x", "y", "is_hot" FROM "SOURCE_SQL_STREAM_001"), 
               1000, 
               0.2, 
               17)
       );
   ```

   此程式碼會讀取 `SOURCE_SQL_STREAM_001` 中的資料列、分析找出顯著熱點，然後將產生的資料寫入另一個應用程式內串流 (`DESTINATION_SQL_STREAM`)。您可以使用幫浦將資料列插入應用程式內串流。如需詳細資訊，請參閱[應用程式內串流與幫浦](streams-pumps.md)。

1. **設定輸出**：設定應用程式輸出，將資料從應用程式傳送至外部目的地，即另一個 Kinesis 資料串流。查看熱點分數，並判斷哪些分數表示出現了熱點（且需要收到提醒）。您可以使用 AWS Lambda 函數進一步處理熱點資訊並設定提醒。

1. **驗證輸出**：此範例包含一個 JavaScript 應用程式，可從輸出串流讀取資料並以圖形方式顯示，以便您即時檢視應用程式產生的熱點。



本練習會使用美國西部 (奧勒岡) (`us-west-2`) 來建立這些串流及應用程式。如果您使用任何其他區域，請更新相應程式碼。

**Topics**
+ [步驟 1：建立輸入和輸出串流](app-hotspots-prepare.md)
+ [步驟 2：建立 Amazon Kinesis Data Analytics 應用程式](app-hotspot-create-app.md)
+ [步驟 3：設定應用程式輸出](app-hotspots-create-ka-app-config-destination.md)
+ [步驟 4：驗證應用程式輸出](app-hotspots-verify-output.md)