国外物联网平台初探(二)
——微软Azure IoT
http://www.cnblogs.com/ibrahim/p/amazon-aws-iot.html
马智
平台定位
连接设备、其它 M2M 资产和人员,以便在业务和操作中更好地利用数据。
连接 IoT 设备
将所有设备连接到云,从这些设备接收大规模数据,以及管理这些设备的授权和限制。
在将设备连接到云和处理设备的聚合事件流时,互联设备的快速增长以及平台和协议的不一致会引起巨大挑战。平台预配容量以处理来自数百万设备的事件,同时支持 AMQP 和 HTTP 协议,保护每台设备的事件顺序。
实时监视
将设备连接到云并接收事件数据时,监视此数据流,以获得对业务的见解、促进效率提升及精简业务流程。
每秒分析数百万事件,以及快速开发和部署实时监视解决方案,从基础结构中的设备和传感器发送的数据获得可操作的建议。
Azure IoT架构
Azure IoT服务
Azure IoT 中心(IoT Hub)
Azure IoT 中心是一项完全托管的服务,可在数百万个 IoT 设备和一个解决方案后端之间实现安全可靠的双向通信。
提供可靠的设备到云和云到设备的大规模消息传送。
使用每个设备的安全凭据和访问控制来实现安全通信。
可广泛监视设备连接性和设备标识管理事件。
包含最流行语言和平台的设备库。
设备级别的身份验证 :每个设备设置独有的安全密钥,IoT 中心标识注册表会存储设备标识和密钥,后端可将个别设备加入允许列表或方块列表,以便完全控制设备访问权限。
设备连接操作监控 :设备标识管理操作与设备连接事件存在详细的操作日志,便于识别连接问题,例如,尝试使用错误凭据进行连接的设备、消息发送太频繁,或拒绝所有云到设备的消息。
丰富的设备库 :Azure IoT 设备 SDK 也支持C、C#、Java 和 JavaScript 等托管语言,支持许多 Linux 分发版、Windows 和实时操作系统。
可扩展的IoT 协议。IoT 中心存在一个公共协议,它使设备可以通过本机方式使用 MQTT v3.1.1、HTTP 1.1 或 AMQP 1.0 协议。还可以通过以下方式扩展 IoT 中心,以便为自定义协议提供支持:
现场网关:使用 Azure IoT 网关 SDK创建现场网关,该 SDK 可将自定义协议转换为 IoT 中心所理解的三个协议之一。
云网关:自定义 Azure IoT 协议网关(在云中运行的一个开放源代码组件)。
可扩展高并发的事件处理: Azure IoT 中心可扩展为数百万个同时连接的设备,以及每秒数百万个事件。
基于事件的设备数据处理: 事件处理器引擎在热路径上可以处理设备事件,也可以将它们存储在冷路径上以供分析。IoT 中心可保留最多 7 天的事件数据,以保证可靠的处理并消减负载峰值。
可靠的云到设备消息传送: 后端使用 IoT 中心将消息发送到单个设备(含至少一次的传递保证)。每条消息都有单独的生存时间设置,且后端可以请求传递和过期回执。这可确保完全了解云到设备消息的生命周期。
存储和分析文件和缓存的传感器数据: 设备使用 SAS URI 将 IoT 中心托管的文件上载到 Azure 存储空间。当文件到达云时,IoT 中心可以生成通知,使后端处理这些文件。
事件中心 Event Hubs
事件中心是一种事件处理服务,用于向云提供大规模的事件与遥测数据入口,并且具有较低的延迟和较高的可靠性。事件中心充当事件管道"前门",位于事件生成者与事件使用者之间的组件或服务,可以将事件流的生成与这些事件的使用分离开来。