开发和部署 IoT 系统很复杂 — 涉及到协调各种各样的连接设备、网络、云服务,以及移动和 Web 应用程序。 IoT 平台提供了中间件来连接和管理硬件设备,以及它们使用面向用户的移动和 Web 应用程序收集的数据。这些 IoT 平台通常设计为能在设备、应用程序和服务之间建立安全通信。它们还使得开发和部署 IoT 应用程序变得更快、更容易。IoT 平台被设计为可扩展和可靠的平台。例如,由于 IoT 系统实现了容错,所以它们在发生设备、网络或云服务故障时会继续运行。通过利用标准和提供具有详细记录的 API 和 SDK,IoT 平台可帮助您将完全不同的设备、应用程序和服务集成到 IoT 系统中,让您能根据需求变化来灵活地自定义和替换组件。 物联网正在快速演化,所以您需要快速且高效地开发 IoT 应用程序,以便最大限度缩短上市准备时间并保持竞争力。尽管每个 IoT 计划都具有自己的一组独特需求,但是对于连接设备的管理,以及它们生成的数据的传输、存储和分析,大部分 IoT 项目都有一些共同需求。IoT 平台解决了这些基本需求,它们不仅提供了通用的、可自定义的工具和服务,还提供了抽象,您可以在这些抽象的基础上开发自定义 IoT 解决方案。 通过探索 IoT 平台的重要功能,分析最顶级的多个用途的端到端 IoT 平台,您会意识到为什么应该采用 IoT 平台来快速开发 IoT 解决方案,并快速从 IoT 数据中获取最大价值。 IoT 平台功能考虑以下重要的 IoT 平台功能:
每项功能的相对重要性取决于您的具体用例。例如,考虑一个小型家庭自动化系统。设备管理不是主要问题,因为要管理的设备很少。由于家庭自动化用例是一个非常被动的用例,所以不太需要 IoT 平台提供数据存储和数据分析功能来存储和分析历史传感器读数。但是,IoT 平台必须支持快速可靠的数据通信协议,以确保没有错过传感器检测到的事件,并能得到近实时的响应。但是在工业 IoT 应用程序中,涉及到数千个传感器,它们监视着工厂设备,以检测设备故障和预测何时对设备执行维护,这时 IoT 平台的设备管理和分析功能显然重要得多。 设备管理要了解 IoT 设备管理的详细信息,请阅读我的 developerWorks 文章“为您的下一个 IoT 项目选择最佳硬件”。 IoT 平台的一项核心功能就是管理 IoT 硬件设备。设备管理会在每个 IoT 设备的整个生命周期中发生,包括配备新设备,监视和维护操作设备,以及最终在设备达到使用期限时让它们退役。IoT 平台提供了管理设备注册、配置和无线更新的功能。借助 IoT 平台,您可以收到设备状态警报,监视设备健康或使用情况的统计信息。IoT 平台还会在发生故障时提供远程调试。资产管理也属于设备管理的范畴,包括列出和搜索连接设备,查询和管理设备元数据的能力。 寻找对设备不可知并能与现有企业资源规划 (ERP) 系统集成的 IoT 平台。 数据通信协议要了解 IoT 网络协议的详细信息,请参阅我的 developerWorks 文章“连接物联网中的所有事物”。 IoT 设备、网关以及基于云的应用程序和服务之间的安全可靠的通信,对于实现远程管理、更新连接设备和传输数据是不可或缺的。尽管一些数据可存储在本地并通过边缘分析加以处理,但从传感器和其他 IoT 设备收集的一些数据需要传送到上游的云服务或应用程序,以便实现聚合、进一步处理或可视化。一个 IoT 系统中通常连接着数千个设备,所以许多 IoT 平台都包含消息代理服务,使设备和网关能够低延迟地大范围发送和接收消息。这些消息代理服务通常会使用标准通信协议,比如 MQTT、CoAP 或 XMPP。一些平台还支持使用 Web 套接字来实现实时通信。 数据存储鉴于数十亿个连接设备正在以前所未有的速度生成数据,将海量数据存储在何处是选择 IoT 平台时要考虑的另一个方面。数据湖(Data lakes)可用来存储各种不同格式的数据,包括原始数据、结构化数据、半结构化数据或非结构化数据。这些数据湖通常构建于 NoSQL 或 Hadoop 技术之上,以实现最高的灵活性和可扩展性。数据湖和 IoT 平台提供的其他数据存储通常高度可用,支持并发读写,而且包含可配置的索引来提高 IoT 应用程序访问和查询数据时的性能。 规则和分析以可靠方式存储数据后,接下来要考虑的是如何从 IoT 数据中获取洞察。许多 IoT 平台提供了包括实时处理和批处理在内的分析功能。规则引擎证明了实时数据分析生成可操作的洞察的能力,可以使用规则对用于触发操作的条件进行编码。一些平台提供了立即可用的分析应用程序,但是支持对内置报告、分析仪表板和数据可视化进行自定义的平台是更灵活的选择。 快速应用程序开发和部署加快特定用途应用程序的开发和交付,是采用 IoT 平台的主要推动因素之一。因此,合理的做法是选择一个提供了代码样板生成工具、模板或小部件来支持快速开发,并提供了工具来简化和自动化部署的 IoT 平台。 集成由于各种各样的连接设备和 IoT 相关服务已投入生产,更别提未来几年预计上线的数十亿个设备,所以互操作性是 IoT 中的一个重要考虑因素。鉴于 IoT 演化速度如此之快,让 IoT 系统顺应未来就显得至关重要。IoT 平台实现此互操作性的方法是采用一些标准,并在底层技术之上提供额外的抽象层和标准化层。例如,如果升级 IoT 设备来使用具有更高分辨率的传感器,在事物发生变化时,您的应用程序被破坏的可能性就更低。IoT 平台可以通过 SDK 和 API(其中 REST API 尤为常见)与其他平台、设备、Web 服务、工具和应用程序集成。 安全性安全性是任何 IoT 解决方案设计的一个重要组成部分。安全性包括保护设备和网络通信,以及实施云和应用程序级别的安全保护。选择一个提供了身份验证和授权服务的 IoT 平台,而且该平台最好集成了用于身份管理(比如 LDAP)的现有系统,以及采用了设备身份验证标准(比如 X.509)的现有系统。要实现安全通信,IoT 平台应采用 TLS 等标准来加密内容,确保数据完整性。IoT 平台也可以对用户、设备、网关和服务实施基于角色的访问控制,并提供安全监控和审计工具。 成本加速 IoT 解决方案的开发是采用 IoT 平台的一个主要优势,但 IoT 平台也可以帮助降低开发成本。与开发和维护定制的内部解决方案相比,持续成本(比如访问托管 IoT 平台的订阅费或自托管平台的托管成本)通常更少。许多 IoT 平台提供了免费试用期或较低的使用门槛,您可以利用这一点几乎没有前期开支地开始使用 IoT 平台,但是一定要考虑到这些成本会在初期试用结束后发生变化。 比较 IoT 平台一些供应商提供了数百个 IoT 平台。一些平台非常专业化,例如仅迎合某个垂直市场,比如 GE Predix (https://www./) 就是一个专门针对工业 IoT 的 PaaS IoT 平台。其他 IoT 平台仅专注于提供您的 IoT 系统可能需要的功能子集,而不是端到端 IoT 平台解决方案,例如 Cisco and SAS Edge-to-Enterprise IoT Analytics Platform 仅专注于 IoT 分析。最终,您可能选择采用多个 IoT 平台。 以下是 5 个适合许多不同应用的流行的多用途的端到端 IoT 平台,可以使用它们作为起点:
结束语面对如此多可供选择的不同 IoT 平台,选择一个平台乍一看似乎有点困难。您可以考虑自己对每种平台的功能的需求,选择与您的业务最匹配的平台。采用 IoT 平台可以简化、加速和改善您的下一个 IoT 项目的开发。通过使用 IoT 平台,您可以专注于您的用例所独有的需求,快速向客户提供价值。 |
|