`
阅读更多
两者虽然都是从传统的Pub/Sub消息系统演化出来的,但是进化的方向不一样,以下是几个比较突出的点:Kafka是为了数据集成的场景,与以往Pub/Sub消息总线不一样,通过分布式架构提供了海量消息处理、高容错的方式存储海量数据流、保证数据流的顺序等特性。可以参考云上的卡夫卡 - 数据工会。MQTT是为了物联网场景而优化,不但提供多个QoS选项(exact once、at least once、at most once),而且还有层级主题、遗嘱等等特性。可以参考MQTT入门篇 - 数据工会。说白了都是传统消息系统(老爸)的子嗣,只是与不同的场景(老妈)结合的产物。不过,两者却可以结合起来使用。比如可以用MQTT接受物联网设备上传的数据,然后接入Kafka,最后可以同时分发到HDFS归档、数据仓库做OLAP分析、Elasticsearch做全文检索,这样的架构非常适合大型物联网项目,不但能够处理海量数据同时也具有很好的扩展性。

作者:张琪
链接:https://www.zhihu.com/question/30343125/answer/81954454
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
分享到:
评论

相关推荐

    kafka-connect-mqtt:Kafka Connect MQTT连接器

    kafka-connect-mqtt 此仓库包含用于Apache Kafka的MQTT源和接收器连接器。 已通过Kafka 2+进行了测试。 使用源连接器,您可以订阅MQTT主题,并将这些消息写到Kafka主题。 接收器连接器以相反的方式工作。 笔记: ...

    kafka-mqtt-connectors-test

    Kafka Connect是一种用于在Apache Kafka和其他系统之间高效、可靠地传输数据的框架,而MQTT(Message Queuing Telemetry Transport)是一种轻量级的消息协议,常用于物联网(IoT)设备的数据传输。 **Kafka Connect ...

    iot_event_streaming_architecture:借助Apache Kafka和MQTT大规模进行物联网(IoT)和事件流传输

    借助Apache Kafka和MQTT大规模进行物联网(IoT)和事件流传输。 开发该项目是为了实践我在Udemy课程-Kafka 和-Kafka中学到的知识。 您也可以阅读有关此项目的更多详细信息。 架构概述 该体系结构的主要目标如下: ...

    iot.mqtt2kafkabridge:Mqtt 2卡夫卡桥

    总的来说,“iot.mqtt2kafkabridge:Mqtt 2卡夫卡桥”项目提供了一种有效的方式,使得物联网设备可以通过MQTT协议无缝地将数据流导入到基于Kafka的数据处理和分析系统中,这在物联网和大数据领域具有广泛的应用价值。

    iot:物联网与 MQTT + Apache Kafka(Arduino + Raspberry Pi)

    在这个项目中,我们结合了MQTT消息协议、Apache Kafka流处理平台以及Arduino和Raspberry Pi这样的硬件平台,构建了一个物联网系统的基础框架。 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/...

    车联网数据收集与分析平台,主要使用:MQTT+Kafka+KSQL+Tensorflow

    在这个系统中,MQTT、Kafka、KSQL和Tensorflow各自扮演着至关重要的角色。 MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息协议,广泛应用于物联网(IoT)场景。在车联网中,MQTT用于车载...

    Python库 | tensorflow_io-0.23.0-cp39-cp39-win_amd64.whl

    - 支持Kafka和MQTT等流数据源,这对于实时数据分析和预测特别有用。 - 内置对时序数据的处理函数,例如窗口滑动、采样和转换。 4. **特殊数据格式**: - `tensorflow_io`还提供了对特殊数据格式的支持,如NetCDF...

    MQTT 协议基本介绍

    十四、MQTT 与 Kafka 十五、下一步 十六、参考信息 一、简介 MQTT 全称为 Message Queuing Telemetry Transport(消息队列遥测传输)是一种基于发布/订阅范式的“轻量级”消息协议,由 IBM 发布。 MQTT 可以被解释为...

    快乐队列|JoyQueue--云原生高性能企业级消息平台

    兼顾低延时和高吞吐量的高性能设计,...兼容多种协议,支持OpenMessaging,Kafka和MQTT客户端,支持异构客户端生产或消费同一Topic; 开箱即用,易于部署:单进程、零依赖,无需部署额外的ZooKeeper或Naming Service。

    OPC 数据采集服务,通过 MQTT 和 Kafka 落地到 Influxdb.zip

    综上所述,这个压缩包提供的资源涉及到一个完整的数据流体系,从OPC数据采集,通过MQTT和Kafka进行数据传输,最后存储在InfluxDB中进行分析和利用。对于那些需要处理工业自动化数据或构建实时数据分析系统的人来说,...

    22.Spring Cloud整合RabbitMQ或Kafka消息驱动

    接下来,Kafka是一个分布式流处理平台,常用于构建实时数据管道和流应用。在Spring Cloud中集成Kafka,你需要: 1. 添加依赖:在`pom.xml`文件中引入`spring-kafka`依赖。 2. 配置Kafka:配置Kafka服务器地址、端口...

    emq_plugin_kafka

    这个插件通过利用EMQ的钩子函数机制,将接收到的MQTT消息转换并发送至Kafka集群,从而扩展了EMQ的消息处理能力,提供了更广泛的数据分发和存储选项。 **知识点详解:** 1. **EMQ X Broker**: EMQ X Broker是一款...

    emqx-4.2.5.zip

    这个插件是 EMQ X 和 Apache Kafka 之间的桥梁,允许 EMQ X 将接收到的 MQTT 消息转发到 Kafka 集群,这样可以实现消息的持久化存储和在多个系统间的数据流转。 Kafka 是一个分布式流处理平台,常用于大数据实时...

    MQTT+springboot 订阅/发布 多主题

    在MQTT场景中,Spring Boot可以通过添加相关依赖来集成MQTT客户端库,如Paho或Eclipse Mosquitto,以实现MQTT连接和操作。 3. **主题**:在MQTT协议中,主题是消息路由的关键。主题字符串类似于文件路径,由点分隔...

    joyqueue:具有高性能的云原生生产质量消息传递平台

    内置的多协议支持,可与OpenMessaging,Kafka和MQTT客户端很好地协同工作。 易于部署:单进程,零依赖,无需其他集群协调服务。 大规模集群。 耐用性强 基于一致性复制。 功能齐全的Web管理控制台。 其他不错...

    Java + Netty 实现的高并发高可用MQTT服务broker,轻松支持10万并发(有群友实现了130万在线).zip

    Java + Netty 实现的高并发高可用MQTT服务broker,轻松支持10万并发(有群友实现了130万在线).zip ...Kafka消息转发功能(可选择是否开启) 启动后查看统计数据 http://127.0.0.1:8922/open/api/mqttwk/info

    Mqtt设备模拟器(RPC)

    用定时器来进行定时上报,向mqtt broker中发送模拟消息,以达到设备模拟的效果,可通过kafka来监听mqtt的消息来进行储存,来在系统中进行分析转换。有新建模拟器、修改模拟器、删除模拟器、查询模拟器,修改模拟器的...

    基于go 实现的分布式开源物联网MQTT消息服务器

    CMQ 是一个开源的分布式 MQTT 消息平台,支持海量物联网设备一站式接入、MQTT&CoAP 多协议处理、低时延实时消息通信。通过开发自定义的规则引擎,可以将数据转发到其他消息中间件,比如 kafka 等; 整个平台使用 GO...

    9、NIFI综合应用场景-通过NIFI配置kafka的数据同步

    Apache Nifi是一个强大的数据处理和数据流管理工具,而Apache Kafka是一个分布式消息中间件,常用于实时数据流处理。在Nifi与Kafka的集成中,Nifi可以作为数据的生产者将数据发送到Kafka,同时也可以作为消费者从...

    emq_plugin_kafka_brod

    EMQ X是一个高性能、分布式、可扩展的MQTT消息服务器,而Kafka是一种流行的消息中间件,常用于大数据流处理和日志聚合。本文将深入探讨如何使用这款插件,以及涉及的MQTT协议、EMQ X的Hook机制和brod库的相关知识点...

Global site tag (gtag.js) - Google Analytics