您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 亚马逊AWS 基于AWS云平台上的 实时数据分析最佳实践分享
基于AWS云平台上的 实时数据分析最佳实践分享庄富任产品拓展, AWS中國BusinessDevelopmentManagerAWS 基于云的完整大数据服务 Glacier S3 EC2 Redshi5 DynamoDB EMR Data Pipeline 实时数据流|大规模存储|大集群并行计算Kinesis 采集处理 AWS上的一些大数据客户 大数据挑战收集分析存储洞察4TB 每天 S3 长期 归档Glacier 数据 挖掘 Hadoop 实时 数据采集Kinesis 数据 仓库 Redshi5 实时数据流处理使用案例 § 对于广告平台§ 用户在互联网上的行为能实时的影响其广告推送内容,在用户下一次刷新页面时,就提供给用户新的广告§ 对于电商§ 用户的每一次收藏、点击、购买行为,都能被快速的归入他的个人模型中,立刻修正商品推荐§ 对于社交网络§ 用户社交图谱的变更和发言等行为,也能快速被反映在他的好友推荐、热门话题提醒上。 大数据收集和存储收集分析存储洞察典型的实时动态数据流处理架构和工作流程 Client/Sensor Aggregator ConDnuous Processing Storage AnalyDcs + ReporDng 1)数据采集负责从各节点上实时采集数据例如选用flume(cloudera)来实现例如使用Apache 开源工具架构2)数据接入由于采集数据的速度和数据处理的速度不一定同步,因此添加一个消息中间件来作为缓冲例如选用apache的kafka(LinkedIn)3)流式计算对采集到的数据进行实时分析例如选用apache的storm(twitter)数据采集§ AmazonEC2服务器上搭建收集器(Kafka,Fluentd,Scribe和Flume等)从多个来源 汇集数据 区域可用区AEC2数据采集§ 客户端无法发送数据到端点(数据收集器可靠性?) § 无法立即消化大量併发事件(数据收集器吞吐量?) 从多个来源 汇集数据 区域可用区AEC2数据采集高度 伸缩 可靠 从多个来源 汇集数据 区域可用区AEC2可用区BEC2载入数据S3存储在本地磁盘 容量?持久性? 存储并行数据 加载到S3 S3 Simple Storage Service (S3) 高度可扩展无限制容量的对象存储 每个对象存储达1 byte 至 5TB 容量 99.999999999% 持久性 从多个来源 汇集数据 区域可用区AEC2可用区BEC2Amazon Kinesis 实时数据流处理 § 实时数据采集, 摄入, 传输 § 处理实时动态数据流 § 并行写入写出 § 支持数据输出到不同存储目的地 S3 Amazon Kinesis Hadoop EMR 数据仓库 Redshi DynamoDB Data Sources App.4 [Machine Learning] AWS Endpoint App.1 [Aggregate & De-‐Duplicate] Data Sources Data Sources Data Sources App.2 [Metric ExtracDon] S3DynamoDB RedshiftApp.3 [Sliding Window Analysis] Data Sources AvailabilityZoneShard 1 Shard 2 Shard N AvailabilityZoneAvailabilityZoneAmazon Kinesis 实时数据流处理 EMR数据流Shard 分片 § 分片是Amazon Kinesis 数据流的基本吞吐量单位 § 一个分片提供 § 1MB/秒数据输入(write)容量= 1, 000 TPS § 2MB/秒数据输出(read)容量= 5 TPS 实时数据流摄入 实时玩家动作AmazonKinesisHay Day《卡通农场》 Shard 1 Shard 1 Shard 1 Shard N § 简单的调用PUT 命令动态摄入数据 § 每个分片(Shard) 可摄入每秒1MB数据(高达1000 TPS) § 不停机状态下动态扩展Shard 数量 ProducerShard1Shard2Shard3ShardnShard4ProducerProducerProducerProducerProducerProducerProducerProducerKinesis PutRecord API 用于添加数据到Amazon Kinesis 数据流 指定数据流的名称和分区键(ParOOon Key) 分区键用于分配数据记录到不同的数据流分片将数据输入Amazon Kinesis 数据流 实时数据流处理 In-gameactivity实时数据流AmazonKinesisKinesis应用程序WorkersKinesis应用程序简化实时数据流的并行处理 § 分布式处理多Shards § 容错 § 实时动态扩展Workers 专注数据处理逻辑 Shard1Shard2Shard3ShardnShard4KCLWorker1KCLWorker2EC2InstanceKCLWorker3KCLWorker4EC2InstanceKCLWorkernEC2InstanceKinesis处理来自Amazon Kinesis 数据流的数据 • Amazon Kinesis 应用程序(Workers)• 读取和处理来自数据流Stream数据的使用者• 使用Amazon Kinesis 客户端库(KCL) 构建应用程序执行分布式流处理的繁重任务• 自动扩展组(AutoScaling)实时动态扩展 Amazon Kinesis v.s Storm 实时动态数据流处理典型的架构和工作流程 使用Apache 开源工具1)数据采集负责从各节点上实时采集数据例如选用flume(cloudera)来实现2)数据接入由于采集数据的速度和数据处理的速度不一定同步,因此添加一个消息中间件来作为缓冲例如选用apache的kafka(LinkedIn)3)流式计算对采集到的数据进行实时分析例如选用apache的storm(twitter)使用AWS 服务 Kinesis 不用担心配置,部署软件和硬件维护 不用担心服务中断 接入Amazon S3, Redshi, & DynamoDB 实时数据流处理& 海量数据存储 In-gameactivity实时数据流AmazonKinesisKinesis应用程序S3Workers实时趋势分析表仪表盘聚合数据预处理数据游戏玩家的数量 虚拟货币的使用量 热门道具 … Glacier 长期归档 In-gameactivityAmazonKinesisKinesis应用程序S3归档聚合数据预处理数据实时趋势分析表仪表盘Workers低成本归档存储服务低至1美分/GB/月可以设定归档策略实时 数据流GlacierHadoop 数据挖掘 In-gameactivityAmazonKinesisKinesis应用程序S3聚合数据预处理数据Glacier归档Hadoop数据挖掘实时趋势分析表仪表盘Workers实时 数据流预测 分类 回归分析 关联规则 … Redshi5 商务智能BI AmazonKinesisKinesis应用程序S3聚合数据预处理数据Glacier归档Hadoop数据挖掘实时趋势分析表仪表盘Workers实时 数据流Redshift商务 智能 BIClickstream AnalyDcs with Amazon Kinesis Clickstream Processing App Aggregate Clickstream StaDsDcs Clickstream Archive Clickstream Trend Analysis Simple Metering & Billing with Amazon Kinesis Billing Auditors Incremental Bill ComputaDon Metering Record Archive Billing Management Service 总结 § 实时收集并处理数据§ 易于使用§ 通过Java,PythonKCL轻松构建应用程序§ 并与Amazon S3、Amazon Redshi、Amazon DynamoDB 其他服务和工具集成§ 并行处理§ 聚合数据发送到Amazon S3 等存储对象中§ 实时分析日志并在发生例外情况时触发警报§ 实时分析网站点击流§ 灵活应变§ 动态调节Amazon Kinesis 数据流的吞吐量§ 可靠§ 三个设施间同步复制数据,并将数据保留24小时,以防数据在应用程序故障时丢失谢谢!马上开启您的云旅程 中文网站: 新浪微博:@亚⻢马逊AWS 中文博客:blog.csdn.net/awschina 微信 AWS 中国
本文标题:亚马逊AWS 基于AWS云平台上的 实时数据分析最佳实践分享
链接地址:https://www.777doc.com/doc-4343291 .html