上篇博文中,我们介绍了Azure IoT Hub的使用配额和缩放级别:

Azure IoT 技术研究系列4-Azure IoT Hub的配额及缩放级别

本文中,我们比较一下Azure IoT Hub和Event Hub,同时启动Azure Event Hub(事件中心)的研究。

Azure IoT Hub的另一个主要应用场景是从设备侧接收遥测数据。 与 Azure IoT Hub一样,Azure Event Hub是一个事件处理服务,主要用于向云端提供大规模的事件与遥测数据入口,并且具有较低的延迟和较高的可靠性,其有点类似于Kafka作为Hadoop数据入口的场景,唯一不一样的是Azure Event Hub以事件为主要载体和抓手,Kafka更多是各种数据。在我们的实际应用场景中,Kafka作为监控数据、业务数据、设备侧数据的数据缓冲和入口。

回到正题,Azure IoT Hub和Azure Event Hub的主要不同有哪些:

1. 通信模式

Azure IoT Hub:启用设备到云通信(消息传递、文件上传及报告属性)和云到设备之间的通信(直接方法、所需属性、消息传递)

Azure Event Hub: 仅支持事件引入(通常视为设备到云的方案)

2. 设备状态管理

Azure IoT Hub:可存储和查询设备状态信息

Azure Event Hub: 不支持

3. 设备通信协议支持

Azure IoT Hub: 支持 MQTT、基于 WebSockets 的 MQTT、AMQP、基于 WebSockets 的 AMQP 和 HTTP。 此外,IoT 中心还可使用 Azure IoT 协议网关(一种可自定义协议网关实现)以支持自定义协议。

Azure Event Hub: 支持 AMQP、基于 WebSockets 的 AMQP 和 HTTP。

4. 安全

Azure IoT Hub:提供每个设备的标识与可吊销的访问控制权限

Azure Event Hub: 提供事件中心范围的共享访问策略,通过发布者策略提供有限的权限吊销支持

5. 弹性伸缩

Azure IoT Hub:支持数百万个设备同时连接

Azure Event Hub: 可支持的同时连接数具有更大的限制:根据 Azure 服务总线配额,最多只支持 5,000 个 AMQP 连接,另一方面,支持每个发送的消息指定分区

6. 设备SDK

Azure IoT Hub:除直接 MQTT、AMQP 和 HTTP API 外,还为各种平台和语言提供设备 SDK

Azure Event Hub: 在 .NET、Java、C 以及 AMQP 和 HTTP 发送接口上提供支持

7. 文件上传

Azure IoT Hub:支持将文件从设备上载到云

Azure Event Hub: 不支持

综上,Azure IoT Hub主要处理设备到云、云到设备之间的通信,而Azure Event Hub处理的是将后期事件引入实时处理引擎,后者比较类似Kafka将数据写入Hadoop再进行大数据分析场景。

周国庆

2017/5/1

Azure IoT 技术研究系列5-Azure IoT Hub与Event Hub比较的更多相关文章

  1. Azure IoT 技术研究系列2-起步示例之设备注册到Azure IoT Hub

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  2. Azure IoT 技术研究系列3-设备到云、云到设备通信

    上篇博文中我们将模拟设备注册到Azure IoT Hub中:我们得到了设备的唯一标识. Azure IoT 技术研究系列2-设备注册到Azure IoT Hub 本文中我们继续深入研究,设备到云.云到 ...

  3. Azure IoT 技术研究系列4-Azure IoT Hub的配额及缩放级别

    上两篇博文中,我们介绍了将设备注册到Azure IoT Hub,设备到云.云到设备之间的通信: Azure IoT 技术研究系列2-设备注册到Azure IoT Hub Azure IoT 技术研究系 ...

  4. Azure IoT 技术研究系列2-设备注册到Azure IoT Hub

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  5. Azure IoT 技术研究系列2

    上篇博文中,我们主要介绍了Azure IoT Hub的基本概念.架构.特性: Azure IoT 技术研究系列1-入门篇 本文中,我们继续深入研究,做一个起步示例程序:模拟设备注册到Azure IoT ...

  6. Azure IoT 技术研究系列3

    上篇博文中我们将模拟设备注册到Azure IoT Hub中:我们得到了设备的唯一标识. Azure IoT 技术研究系列2-设备注册到Azure IoT Hub 本文中我们继续深入研究,设备到云.云到 ...

  7. Azure IoT 技术研究系列4

    上两篇博文中,我们介绍了将设备注册到Azure IoT Hub,设备到云.云到设备之间的通信: Azure IoT 技术研究系列2-设备注册到Azure IoT Hub Azure IoT 技术研究系 ...

  8. Azure IoT 技术研究系列1-入门篇

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和 ...

  9. Azure IoT 技术研究系列1

    物联网技术已经火了很多年了,业界各大厂商都有各自成熟的解决方案.我们公司主要搞新能源汽车充电,充电桩就是我们物联网技术的最大应用,车联网.物联网. 互联网三网合一.作为Azure重要的Partner和 ...

随机推荐

  1. ZooKeeper的简单理解

    1 ZooKeeper的一致性特点 概念 描述 备注 顺序一致性 以ZXID来保证事务的顺序性 原子性 以ZAB保证原子操作,要么成功,要么失败 单一视图 无论客户端从哪个服务器获取到关于应用的数据都 ...

  2. springmvc基础学习2---简单配置文件

    1:web文件 2:spring-mvc.xml配置文件

  3. 解锁redis锁的正确姿势

    解锁redis锁的正确姿势 redis是php的好朋友,在php写业务过程中,有时候会使用到锁的概念,同时只能有一个人可以操作某个行为.这个时候我们就要用到锁.锁的方式有好几种,php不能在内存中用锁 ...

  4. 微信JS分享功能--微信JS系列文章(二)

    概述 在上一篇文章微信JS初始化-- 微信JS系列文章(一)中已经介绍了微信JS初始化的相关工作,接下来本文继续就微信JS的分享功能进行描述,供大家参考. 代码 $(document).ready(f ...

  5. 关于jstl的问题:The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed

    Current sofeware:java Eclipse ee 4.5.2 + Tomcat 6.0 Question: 在tomcat中部署好了我的项目,然后发布后没有报错.但是当在浏览器打开的时 ...

  6. 求两个字符串的最长公共子串(LCS)

    http://tianyunpu2008.blog.163.com/blog/static/6559379920089162236915/

  7. dos中进入其他盘中的方法

    1.在dos中进入其他盘中直接-->e: 即可,若是进入文件夹中-->cd aaa\bbb 即可. 2.返回上级目录:-->cd..

  8. Hive分区(静态分区+动态分区)

    Hive分区的概念与传统关系型数据库分区不同. 传统数据库的分区方式:就oracle而言,分区独立存在于段里,里面存储真实的数据,在数据进行插入的时候自动分配分区. Hive的分区方式:由于Hive实 ...

  9. 重温Javascript(一)

    工作中要用到JavaScript,一组复习笔记. 一些看法 1. 想想JavaScript目前最常用的宿主环境,浏览器或者服务端V8,都是单线程,所以不用过多的考虑并发的问题,如果是协程来实现异步的方 ...

  10. 【Electron】Electron开发入门(三):main process和web page 通信

    一.main process 和 web page 通信 electron框架主进程(Main Process)与嵌入的网页(web page,也就是renderer process)之间的通信 Ma ...