

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

# 測試和查詢 Amazon SNS 組態以進行有效的資料管理
<a name="firehose-example-test-and-query"></a>

本主題說明如何透過將[訊息發佈至 Amazon SNS 主題來測試訊息封存和分析範例使用案例](firehose-example-use-case.md)。 Amazon SNS 這些指示包括一個範例查詢，您可以執行並適應自己的需求。

**若要測試組態**

1. 在 Amazon SNS 主控台開啟 [Topics](https://console.aws.amazon.com/sns/home#/topics) (主題) 頁面。

1. 選擇 **ticketTopic** 主題。

1. 選擇 **Publish message** (發佈訊息)。

1. 在 **Publish message to topic** (將訊息發佈至主題) 頁面上，輸入訊息內文的下列資訊。在訊息的結尾新增換行字元。

   ```
   {"BookingDate":"2020-12-15","BookingTime":"2020-12-15 04:15:05","Destination":"Miami","FlyingFrom":"Vancouver","TicketNumber":"abcd1234"}
   ```

   所有其他選項保持為預設值。

1. 選擇 **Publish message** (發佈訊息)。

   如需發佈郵件的詳細資訊，請參閱 [發佈 Amazon SNS 訊息](sns-publishing.md)。

1. 在 60 秒的交付串流間隔之後，開啟 [Amazon Simple Storage Service (Amazon S3) 主控台](https://console.aws.amazon.com/s3/home)並選擇您[最初建立](firehose-example-initial-resources.md)的 Amazon S3 儲存貯體。

   發佈的訊息會出現在儲存貯體中。

**查詢資料**

1. 開啟 [Amazon Athena 主控台](https://console.aws.amazon.com/athena/home)。

1. 執行查詢。

   例如，假設 `default` 架構中的 `notifications` 表格包含下列資料：

   ```
   {"BookingDate":"2020-12-15","BookingTime":"2020-12-15 04:15:05","Destination":"Miami","FlyingFrom":"Vancouver","TicketNumber":"abcd1234"}
   {"BookingDate":"2020-12-15","BookingTime":"2020-12-15 11:30:15","Destination":"Miami","FlyingFrom":"Omaha","TicketNumber":"efgh5678"}
   {"BookingDate":"2020-12-15","BookingTime":"2020-12-15 3:30:10","Destination":"Miami","FlyingFrom":"NewYork","TicketNumber":"ijkl9012"}
   {"BookingDate":"2020-12-15","BookingTime":"2020-12-15 12:30:05","Destination":"Delhi","FlyingFrom":"Omaha","TicketNumber":"mnop3456"}
   ```

   若要尋找第一目的地，執行下列查詢：

   ```
   SELECT destination
   FROM default.notifications
   GROUP BY destination
   ORDER BY count(*) desc
   LIMIT 1;
   ```

   若要查詢特定日期和時間範圍內銷售的票證，請執行類似下列的查詢：

   ```
   SELECT * 
   FROM default.notifications 
   WHERE bookingtime 
     BETWEEN TIMESTAMP '2020-12-15 10:00:00' 
     AND TIMESTAMP '2020-12-15 12:00:00';
   ```

   您可以根據自己的需求調整這兩個範例查詢。如需使用 Athena 執行查詢的詳細資訊，請參閱 *Amazon Athena 使用者指南*中的[入門](https://docs.aws.amazon.com/athena/latest/ug/getting-started.html)。

## 清除
<a name="firehose-example-cleanup"></a>

若要避免在完成測試後產生使用費用，請刪除您在教學課程期間建立的下列資源：
+ Amazon SNS 訂閱
+ Amazon SNS 主題
+ Amazon Simple Queue Service (Amazon SQS) 佇列
+ Amazon S3 儲存貯體
+  交付串流
+ AWS Identity and Access Management (IAM) 角色和政策