

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 测试和查询 Amazon SNS 配置以实现有效的数据管理
<a name="firehose-example-test-and-query"></a>

本主题介绍如何通过将消息发布到 Amazon SNS 主题来测试[消息归档和分析示例使用案例](firehose-example-use-case.md)。这些说明包括一个示例查询，您可以运行并根据自己的需求对其进行调整。

**测试配置**

1. 打开 Amazon SNS 控制台中的[主题](https://console.amazonaws.cn/sns/home#/topics)页面。

1. 选择 **ticketTopic** 主题。

1. 选择**发布消息**。

1. 在 **Publish message to topic**（发布消息到主题）页面上，为消息正文输入以下内容。在消息结尾处添加换行符。

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

   保留所有其他选项作为默认值。

1. 选择**发布消息**。

   有关发布消息的更多信息，请参阅 [发布 Amazon SNS 消息](sns-publishing.md)。

1. 在 60 秒的传输流间隔后，打开 [Amazon Simple Storage Service (Amazon S3) 控制台](https://console.amazonaws.cn/s3/home)并选择您[最初创建的](firehose-example-initial-resources.md) Amazon S3 存储桶。

   存储桶中会显示已发布的消息。

**要查询数据**

1. 打开 [Amazon Athena 控制台](https://console.amazonaws.cn/athena/home)。

1. 运行查询。

   例如，假设 `default` schema 中的 `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.amazonaws.cn/athena/latest/ug/getting-started.html)。

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

为避免在完成测试后产生使用费用，请删除您在本教程中创建的以下资源：
+ Amazon SNS 订阅
+ 亚马逊 SNS 主题
+ Amazon Simple Queue Service（Amazon SQS）队列
+ 亚马逊 S3 存储桶
+  传输流
+ Amazon Identity and Access Management (IAM) 角色和策略