上篇博文中,我们介绍了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. http的几种请求的方式(Get、Post、Put、Head、Delete、Options、Trace和Connect)

    http的这几种请求方式各有各的特点,适用于各自的环境.下面我就说说这些方式的各自特点: 1.Get:它的原理就是通过发送一个请求来取得服务器上的某一资源.获取到的资源是通过一组HTTP头和呈现数据来 ...

  2. 因为本地没有配置 localhost 导致的 eclipse 的奇葩问题

    因为电脑没有配置 127.0.0.1 localhost,已经碰到两次奇葩问题了. 问题一: 我的博文http://www.cnblogs.com/sonofelice/p/5143746.html中 ...

  3. (18)IO流之字节缓冲路

    缓冲流 BufferedInputStream 缓冲输入流 前面的练习告诉我们使用缓冲数组读取的效率更高,为了方便的大家的操作,sun 位大家提供了一个缓冲输入字节流对象,让我们可以更高效率的读取文件 ...

  4. php基本数据类型需要注意的地方

    一.布尔(Boolean) 手册中提到特殊类型NULL(包括尚未赋值的变量)会被换为false值,我自己在测试的时候发现NULL值可以转换为false,虽然false也会输出,但是尚未赋值的变量会报N ...

  5. nginx+lua安装配置

    1.选定源码目录选定目录 /usr/local/ cd /usr/local/ 2.安装PCRE库cd /usr/local/wget ftp://ftp.csx.cam.ac.uk/pub/soft ...

  6. python之函数学习

    #!/usr/bin/env python # # =============================================== # 位置参数说明 # 位置参数 通过参数传递的位置来 ...

  7. IOS开发创建开发证书及发布App应用(三)——创建App ID

    3.创建App ID 继续上一篇所讲,今天写的这个是创建App ID 依然在个人中心创建证书这里, 如果不知道的,可以查看以前写的 点击左边的 Identifiers  下面的App IDs,如下图 ...

  8. Spark处理日志文件常见操作

    spark有自己的集群计算技术,扩展了hadoop mr模型用于高效计算,包括交互式查询和 流计算.主要的特性就是内存的集群计算提升计算速度.在实际运用过程中也当然少不了对一些数据集的操作.下面将通过 ...

  9. 【转】一个小工具类,利用shareObject把数据缓存

    原文链接:http://bbs.9ria.com/thread-284082-1-2.html 之前做一个数据缓存,就顺便把写入缓存,清除缓存,获取缓存都整理了一下,其中也做了些参考,个人水平有限,有 ...

  10. JavaWeb之Cookie和Session的区别

    Cookie和Session的区别 一.cookie机制和session机制的区别 ********************************************************** ...