在AWS上设计可扩展的物联网解决方案

  在AWS平台上构建和实施可扩展的物联网解决方案使您能够专注于核心业务需求,而无需基础架构管理和监控的麻烦。

  物联网(IoT)为每个行业提供了一个无与伦比的机会来应对他们的业务挑战。随着设备的激增,人们需要一种解决方案来连接、收集、存储和分析设备数据。亚马逊网络服务(AWS)提供一系列托管的物联网云服务和工具包,使提供商能够设计和构建可扩展的解决方案。

在AWS上设计可扩展的物联网解决方案

图片来源:pixabay

  在AWS平台上本地设计物联网解决方案或迁移到它,使您能够专注于您的核心业务,而无需低级基础架构管理的麻烦,并尝试将大量的专有物联网系统管理平台串联起来。这将确保为您的客户提供高可用性,并为您提供可靠的AWS工具包。

  设计可靠地进行规模操作

  物联网系统必须处理来自设备和网关的附近实时(通常是大容量)流数据。当您的客户扩展其系统时,您的解决方案和底层基础架构需要与业务一起轻松扩展。

  最好的方法是将入站数据发布到消息队列,然后将其加载到实时的内存缓存层中,然后再将其写入长期存储数据库。这有助于实现实时事件并降低数据插入速率,从而减少压倒数据库写入程序的可能性。缓存还可以节省资金,因为您可以快速批量插入和管道数据,而无需持续使用数据库的读写配额。

  在AWS上,您的设备可以将数据发布到AWS Kinesis,或者AWS IoT Rules可用于将数据转发到AWS SQS和Kinesis,以将其存储在AWS S3,Redshift或DataLake等时序存储中。这些数据存储可用于生成自定义仪表盘或AWS QuickSight仪表盘,以实现轻松的流数据监控。

  通过数据管道路由大数据量

  将来自设备主题的传入数据直接消费到单个服务会阻止系统实现完全的可扩展性。有时,这种方法会限制系统对故障事件和数据泛滥的可用性。

  AWS IoT Rules Engine旨在以灵活的方式将API端点连接到AWS IoT Core。但是,所有AWS服务都具有不同的数据流属性和它们自己的预期用例。所有服务都不能用作系统的单一入口点。有时,不正当使用AWS IoT服务可能会在您的解决方案中打开潜在的灾难性弱点,或者至少是无法扩展的脆弱组件。请注意每个AWS IoT服务及其管道连接器的数据流限制和建议用途。

  例如,在大容量流数据的情况下,在调用其他服务之前考虑缓冲(Elasticache)或排队(SQS)传入的数据,这使得能够从故障中恢复、提高数据可用性并降低成本。

  AWS IoT Rules Engine允许并行触发Lambda,S3,Kinesis,SQS或SNS等多种AWS服务。一旦物联网系统捕获了数据,它就会启用AWS端点(其他AWS服务)来处理和转换数据。这使您可以同时将数据存储到多个数据存储中。

  确保处理和存储所有数据的最佳和最安全的方法是将所有设备主题数据重定向到设计用于处理数据洪水处理的SNS,确保可靠地维护、处理输入数据并将其发送到正确的消息通道。为了使其更具可扩展性,可以使用多个sns主题、sqs队列和不同AWS设备主题组的lambda。在处理之前,您应该考虑将数据存储在安全存储中,比如队列、AmazonKinesis、AmazonS3或AmazonRedshift。此实践确保不会因消息泛滥、不需要的异常代码或部署问题而导致数据丢失。

  确保处理和存储所有数据的最佳和最安全的方法是将所有设备主题数据重定向到SNS,该SNS旨在处理数据泛滥处理,确保传入数据可靠地维护、处理并传送到正确的消息通道。为了使其更具可伸缩性,可以使用针对不同AWS设备主题组的多个SNS主题,SQS队列和Lambdas。在处理之前,您应该考虑将数据存储在安全存储中,如Queue,Amazon Kinesis,Amazon S3或Amazon Redshift。此做法可确保不会因消息泛滥,不需要的异常代码或部署问题而导致数据丢失。

  自动化设备配置和升级

  随着客户的IoT业务增长以及他们的解决方案随之扩展,手动流程(如设备配置、软件引导、安全配置、规则操作设置、设备OTA升级等)将很快变得不可行。在初始化和升级过程中最大限度地减少人员交互对于为提供商和客户节省时间和金钱非常重要。

  通过内置(并且最好是自动化)配置和注册来设计您的物联网设备,并利用适当的AWS工具进行设备配置和管理,这将使您的物联网解决方案能够以最少的人工干预实现所需的运营效率。(来源:子午物联ziwuiot.com)

  AWS IoT提供了一组可用于批量导入的功能,其中包含一组可与仪表盘或制造流程集成的策略,其中设备可预先注册到AWS IoT,并且可在设备上安装证书。稍后,设备配置工作流可以声明该设备并将其与集合,用户或任何其他许可实体相关联。AWS提供触发和跟踪设备OTA升级的功能。鉴于IoT如此紧急,设备固件上的快速迭代很常见,能够在运行IoT解决方案的同一平台上管理OTA更新管理对于解决方案提供商和客户来说都是一个巨大的胜利。

  为自定义组件采用可扩展的架构

  物联网解决方案的范围和潜在影响不会通过将设备连接到互联网并处理其报告而结束。考虑采用最新的分析技术来理解您正在生成的所有数据。考虑为Google Home、Alexa等创建集成,以扩展解决方案的范围并为客户交互创建更多端点。物联网解决方案的架构应确保外部组件可以轻松集成到解决方案中,而不会出现任何性能瓶颈。

  检查脱机访问和处理

  有时,不必在云中处理所有数据。在许多情况下,没有可用的连续或可靠的互联网连接。对于这种情况,请在网络边缘添加AWS Greengrass。Greengrass在本地处理和过滤数据 - 即在您的IoT设备或网关上 - 并且减少了向上游发送所有设备数据以进行分析的需要。您可以捕获所有数据,在设备上或从接收来自设备集合的报告的网关上处理它,然后通过一组规则或根据请求将处理过的数据或错误事件发送到云。如果需要时间序列数据,则可以安排定期流程,将设备数据发送到云,以用于未来的增强功能,如AWS机器学习模型或云分析工具。

  选择正确的数据存储选项

  物联网系统可生成高速、大容量和多样化的数据。每个IoT设备或设备主题可以具有不同的格式,这些格式可能无法通过单个数据库或类似类型的数据存储进行管理。在选择数据库格式和数据存储时,架构师应该小心。考虑读写要求 - 不仅仅是现在,而是一年、两年和五年。有时单个数据存储工作正常,或者混合数据存储用于不同目的有助于实现高吞吐量。经常使用的静态数据可以存储在ElastiCache中,这有助于提高性能。这些实践有助于实现系统的可扩展性和可维护性。

  在处理之前过滤和转换数据

  所有传入的数据可能都需要处理或转换 - 即使将一些繁重的工作委托给边缘处理器 - 之后它也可以重定向到存储。AWS IoT Rules允许您将消息重定向到不同的AWS服务。架构师应该考虑所有形式的数据,即需要处理、忽略/静态数据(如配置)和直接存储。

  AWS IoT有助于实现快速的设备连接、安全的数据摄取、简单的设备管理、多协议支持等等。

  作者:Volansys Technologies
  编译:ziwuiot
  参考:iotforall
  声明:本站原创,转载请注明(子午物联 ziwuiot.com)

声明:凡注明为其它来源的信息均转自其它平台,目的在于传递更多信息,并不代表本站观点及立场和对其真实性负责。若有侵权或异议请联系我们删除。
发表评论
加载中...

相关文章

切换注册

登录

忘记密码 ?

切换登录

注册