ANT339 | 三星如何升级实时分析架构
关键字: [Amazon Web Services re:Invent 2023, Kinesis Data Analytics for Apache Flink, Modernized Architecture, Real Time Analytics, Data Streaming Architecture, Kinesis Data Analytics, Apache Flink]
本文字数: 1300, 阅读完需: 6 分钟
视频
导读
在本次分享中,Samsung SmartThings 分享了他们如何升级流数据分析架构,从而实现实时分析。最初,Samsung开发人员将大多数时间花在管理基础结构上。迁移到 Amazon Kinesis Data Analytics 后,开发人员能够专注于创造业务价值,再无需为基础结构管理而烦恼。了解他们如何通过 Amazon Kinesis Data Analytics for Apache Flink 从自管理式 Apache Spark 迁移到完全托管式流处理平台,以及如何使用完完全托管式 Kinesis Data Streams 和 Amazon Managed Streaming for Kafka 进行大规模的安全数据流式传输。
演讲精华
以下是小编为您整理的本次演讲的精华,共1000字,阅读时间大约是5分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。
亚马逊云科技的首席软件工程师Anusha首先出现在视频中。她在亚马逊云科技的Messaging and Streaming组织工作,并热情地向我们介绍了特邀客户演讲者,Jon Lee。Jon是三星SmartThings云计算工程团队的负责人,他即将分享如何通过运用亚马逊云科技的服务来现代化他们的数据流架构。
作为亚马逊云科技的工程师,Anusha最喜欢的工作之一就是帮助客户减轻基础设施管理的负担,让他们能够更专注于自己的核心业务目标。她热切地期待Jon讲述三星SmartThings如何在减少开发人员时间和总成本的同时,通过现代化的数据管道来提高其业务价值的故事。
Jon首先简要介绍了三星SmartThings的基本情况。这是一个物联网(IoT)平台,允许用户轻松连接和控制各种IoT设备。截至目前,已有超过1亿的用户和设备连接到该平台。作为一个智能家居IoT平台,SmartThings可以控制诸如三星智能电视、冰箱以及其他家电等设备。大多数三星设备通过WiFi连接,占据了该平台上的大部分设备。此外,还有一些设备通过ZigBee或Z-Wave集线器连接,而部分合作伙伴设备则通过云端到云端集成连接。
SmartThings云平台采用微服务架构,为用户提供各种价值。所有来自IoT设备的数据都会流入云并进行实时处理。SmartThings数据平台每天处理大约30TB的数据。该平台还提供了诸如设备历史记录、使用统计数据和分析以及基于处理这些数据的推荐等功能。
Jon随后解释了他们之前的架构。这个架构在使用Apache Hadoop集群进行数据处理时,使用了自管理的Apache Spark框架。共有50个运行在EC2实例上的Spark应用程序来处理不同的业务需求,每天处理超过30TB的数据。
这种架构在过去表现良好。然而,随着SmartThings的用户和设备的快速增长,一些问题开始出现:
- 在同一节点上运行的Spark应用程序之间的资源争用导致了性能下降和处理数据延迟。解决这些邻居问题需要手动重启应用程序或添加集群节点。
智能事物的数据平台经历了重大改造,以应对各种挑战,实现了三个主要目标:提高成本效益、增强稳定性和可用性以及提升操作效率。在评估了多种替代方案后,他们最终选择弃用Apache Spark,转而采用Apache Flink。Flink能够实时处理流数据,而不是像Spark那样采用微批处理方式。两者都需要实现自动扩展以优化性能。相较于YARN,Kinesis在集群管理方面更加稳定且易于维护。此外,Kinesis更容易实现自动扩展。鉴于智能事物的主要数据为实时数据,他们认为Flink的实时处理能力比Spark的微批处理方法更为合适。最后,智能事物选择了亚马逊云科技的Kinesis Data Analytics for Apache Flink作为最佳解决方案。这一选择带来了诸多好处,如无服务器模式、独立的应用程序扩展以及内置的高可用性功能,如定期保存点用于恢复。
将系统迁移至新架构的过程面临着三大挑战:实现自定义自动扩展、在Spark和Flink之间进行性能调优以及管理流式记录的偏移。新架构的实施带来了诸多积极影响,包括操作效率的提升、数据处理的稳定性加强以及成本的降低。
三星智能事物(SmartThings)通过将其物联网数据平台迁移至托管实时架构并采用Kinesis数据分析服务,成功实现了现代化。如今,他们能够以高效且低成本的方式处理不断增长的数据量,同时为企业创造价值。
乔恩(Jon)表示,他们期待未来的改进,如更快的部署速度,以及其他即将推出的Kinesis数据分析功能,如本地调整和自定义KPU指标。总的来说,通过运用亚马逊云科技的服务,如Kinesis数据分析,以及构建定制化解决方案,如自动缩放器,三星智能事物能够使其架构适应大规模实时处理需求。
下面是一些演讲现场的精彩瞬间:
亚马逊云科技的领军企业强调了其服务如何助力诸如三星SmartThings等客户实现数据架构的现代化,使它们能专注于核心业务。
物联网设备通过Kafka管道将传感器数据传输至Spark进行ETL处理,之后进入数据库和数据湖供微服务访问。
企业领袖探讨了在Hadoop集群的EC2实例上运行Spark应用时所面临的资源竞争问题以及应对邻近干扰的需求。
亚马逊云科技提供了低成本、稳定性与高效率兼具的替代方案,用以替换内部的Hadoop集群。
亚马逊云科技提供了一套完全托管的解决方案,可处理海量实时数据并具备高可用性。
SmartThings选择了Kinesis Data Analytics for Flink作为其数据平台,因其具备实时处理能力、无服务器特性的降低成本以及内置的高可用性(通过定期保存检查点实现)。
亚马逊云科技正致力于进一步优化Kinesis Data Analytics应用的部署速度,目标为低于一分钟。
总结
三星SmartThings是一家专注于家庭物联网设备连接和控制的公司。其数据平台利用Apache Spark处理来自各种设备的庞大数据量。然而,随着数据量的不断增长,该平台面临诸多挑战,如Spark应用程序间的资源竞争导致的延迟和故障。
为解决这些问题,三星SmartThings考虑将其平台迁移至一个托管的实时解决方案。经过评估,他们选择采用Kinesis Data Analytics(基于Apache Flink)而非Kinesis(基于Apache Spark),因为后者更能满足其实时处理需求且能提供更高的可用性,无需额外的努力。
迁移至Kinesis Data Analytics(基于Apache Flink)并非易事,仍需克服一些挑战,如实现自定义自动扩展、优化Spark和Flink间的性能以及管理流式偏移等问题。
尽管如此,这一变革带来了显著的影响,包括可扩展性的提高和可靠性的增强。自动扩展使得运营成本降低60%;应用间的相互独立性使得故障率减少40%;恢复时间从超过1小时缩短至仅几分钟;整体运营资源消耗减少了80%。
综上所述,通过将实时物联网数据平台迁移至无服务器托管的流式架构,三星SmartThings成功地提升了其平台的效率、可用性和成本效益。
演讲原文
想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!
2023亚马逊云科技re:Invent全球大会 - 官方网站
点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!
点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!
即刻注册亚马逊云科技账户,开启云端之旅!
【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”
亚马逊云科技是谁?
亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。