Apache Kafka & MQTT = 端到端物联网集成

@[Apache Kafka & MQTT = 端到端物联网集成]

概要

Kafka 和 MQTT 是两种互补的技术。它们共同允许构建从边缘到数据中心的物联网端到端集成。无论是在本地还是在公共云中。用 MQTT 和 Apache Kafka 从端到端处理物联网数据”。

同时使用 Apache Kafka 和 MQTT 的动机

MQTT 是一种广泛使用的 ISO 标准 (ISO/IEC PRF 20922) 基于发布-订阅的消息传递协议。MQTT有许多实现,如Mosquitto或HiveMQ。有关良好的概述,请参阅维基百科对 MQTT 代理的比较。MQTT主要应用于物联网场景(如联网汽车或智能家居)。但由于它支持 WebSockets,它也越来越多地用于移动设备。但是,MQTT 并不是为高可扩展性、更长的存储或易于集成到传统系统而构建的。Apache Kafka是一个高度可扩展的分布式流媒体平台。Kafka 从数千个物联网设备摄取、存储、处理和转发大量数据。
因此,MQTT 和 Apache Kafka 是从边缘到数据中心(当然,返回,即双向)的端到端物联网集成的完美组合。让我们看一下构建此集成的两种不同选择。这两种解决方案都允许高度可缩放和任务关键型 IoT 方案集成。思想,他们使用不同的概念(包括权衡)。

##架构设计

通过MQTT Broker和Kafka Connect将MQTT传感器数据集成到Kafka中以进行进一步处理

请添加图片描述

在这种方法中,您将数据从 MQTT 代理通过 Kafka 连接到 Kafka 代理。您可以利用 Kafka Connect 的任何功能,例如内置容错、负载平衡、转换器、用于路由/过滤的简单消息转换 (SMT) 等,在一个 Connect 工作线程实例中扩展不同的连接器,以及其他与 Kafka Connect 相关的优势。

技术细节

Apache Kafka + Kafka Connect + MQTT Connector + Sensor Data
Apache Kafka + Kafka Connect + MQTT 连接器 + 传感器数据
作为使用 Kafka Connect 的替代方法,您可以利用 Confluent MQTT 代理:直接集成来自 IoT 设备的 IoT 数据,而无需 MQTT 代理:在这种方法中,您可以通过 Confluent MQTT 代理将数据直接推送到 Kafka 代理。您可以使用负载均衡器(类似于 Confluent REST 代理)轻松扩展 MQTT 代理。巨大的优势是你不需要在中间额外的MQTT代理。这大大减少了工作量和成本。这是将数据推送到 Kafka 的更好方法。
请添加图片描述
这是Github项目,包括演示脚本,可以自己尝试一下:
https://github.com/kaiwaehner/ksql-udf-deep-learning-mqtt-iot
这两种方法都有其权衡取舍。好消息是你有选择权。为您的用例选择正确的工具和架构。
MQTT和Apache Kafka对自己的用例都有很大的好处。但他们都不是一切的全能选手。两者的结合使它们非常强大,并且是构建从边缘到数据中心再到后端的物联网端到端场景的绝佳解决方案。

例子

https://github.com/kaiwaehner/kafka-connect-iot-mqtt-connector-example
https://github.com/kaiwaehner/kafka-connect-iot-mqtt-connector-example

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值