共计 673 个字符,预计需要花费 2 分钟才能阅读完成。
互联网广告服务需要在有限时间内完成定向广告,这是需要面对的技术挑战。AWS 提供了在云端构建可靠的,容错的,高可用系统的基础设施和服务。在本文中, 将描述系统中的两个主要部分:广告服务的基础结构和用于点击数据收集的数据分析集群。
1. 当用户加载一个 web 页面时,广告服务器返回一个广告资源被展示的标识。广告服务器运行在 EC2 实例上,根据用户的个人资料,从存储在 Amazon DynamoDB 表中查询的相关的广告信息。
2. 从 Amazon CloudFront 下载广告文件, 这种内容发布服务是无提交内容的,拥有低时延和高数据传输速率。所显示广告的日志信息存在 S3 上。
3. 点击采集服务器是一组 Amazon EC2 实例,专门用于采集用户点击数据。该信息保存在点击采集服务器的日志文件中,并周期性地上传到 Amazon S3。
4. Amazon Elastic MapReduce 是使用了 Hadoop 框架来处理数据的的并行作业流。广告效果和点击数据由 Amazon Elastic MapReduce 集群收集并处理。通过使用热点实例,集群的容量可以动态扩展同时缩减处理时间和运行作业流的成本。
5. 数据处理的结果被推回到 Amazon DynamoDB, 这是一个全面可管理的 NoSQL 数据库服务,提供了快速可预测的性能以及无缝的可扩展性。Amazon DynamoDB 能够存储和获取大量的数据,服务于不同水平的流量请求,能够快速存储和获取用户的个人资料。无论是巨量的用户资料数据集还是高流量请求,Amazon DynamoDB 的高可用性和良好性都能保证广告服务器前端以较短时间来响应。