Amazon Marketing Stream 参考实现
参考实现是一种使用 AWS CDK 构建的基于 Python 的应用程序。所有开发人员都可以在 GitHub 中使用参考实现。
警告
这是一种参考实现,不是使用 Amazon Marketing Stream 数据的唯一确定方式。请注意,此实现可能会发生变更,未来的版本可能不会向后兼容。
参考实现的目的是什么?
此参考实现以程序化方式执行入门指南 中的第 1、2、4 步。该软件包还支持使用 CLI 订阅 Stream 数据集(步骤 3)。
如果您不熟悉 CLI 或 Python,也可以使用 AWS SQS 用户界面或 CloudFormation 模板来完成入门流程。
谁应该使用此参考实现?
熟悉 AWS 的开发人员可以使用参考实现作为其 Stream 集成的基础。
使用参考应用程序是否会产生任何额外费用?
参考应用程序预置了许多用于 Stream 的 AWS 资源。与 Stream 集成相关的所有 AWS 费用均由您承担。有关基于成本进行优化的更多信息,请参阅 SQS 优秀实践。
架构
该应用程序是使用 Python 和 AWS Cloud Development Kit (CDK) 开发的。
该应用程序为每个数据集和区域组合预置了以下 AWS 基础架构组件:
- 一个 SQS 队列 (StreamIngressQueue),用于接收来自 Stream 的初始消息。
- 一个 lambda (StreamFanoutLambda),用于识别消息是包含订阅详情或数据。
- 第二个 SQS 队列 (SubscriptionConfirmationQueue),它将订阅确认消息转发到确认订阅的第二个 lambda (SubscriptionConfirmationLambda)。
- 一个 SNS 主题 (StreamFanoutDataTopic),它通过一个 KinesisDateFirehouse (StreamStorageFirehose) 将数据转发到一个 S3 存储桶 (StreamStorageBucket),数据存储在此处。
注意: 每个 SQS 队列的预置还包括一个关联的 dead-letter 队列。
如何开始使用参考应用程序?
有关前提条件和安装详细信息,请参阅 GitHub 中的 README。