Apache Kafka 概述

在大数据中,使用了大量的数据。 关于数据,我们有两个主要挑战。第一个挑战是如何收集大量的数据,第二个挑战是分析收集的数据。 为了克服这些挑战,您必须需要一个消息系统。

Kafka专为分布式高吞吐量系统而设计。 Kafka往往工作得很好,作为一个更传统的消息代理的替代品。 与其他消息传递系统相比,Kafka具有更好的吞吐量,内置分区,复制和固有的容错能力,这使得它非常适合大规模消息处理应用程序。

什么是消息系统?

消息系统负责将数据从一个应用程序传输到另一个应用程序,因此应用程序可以专注于数据,但不担心如何共享它。 分布式消息传递基于可靠消息队列的概念。 消息在客户端应用程序和消息传递系统之间异步排队。 有两种类型的消息模式可用 - 一种是点对点,另一种是发布 - 订阅(pub-sub)消息系统。 大多数消息模式遵循 pub-sub

点对点消息系统

在点对点系统中,消息被保留在队列中。 一个或多个消费者可以消耗队列中的消息,但是特定消息只能由最多一个消费者消费。 一旦消费者读取队列中的消息,它就从该队列中消失。 该系统的典型示例是订单处理系统,其中每个订单将由一个订单处理器处理,但多个订单处理器也可以同时工作。 下图描述了结构。

发布 - 订阅消息系统

在发布 - 订阅系统中,消息被保留在主题中。 与点对点系统不同,消费者可以订阅一个或多个主题并使用该主题中的所有消息。 在发布 - 订阅系统中,消息生产者称为发布者,消息使用者称为订阅者。 一个现实生活的例子是Dish电视,它发布不同的渠道,如运动,电影,音乐等,任何人都可以订阅自己的频道集,并获得他们订阅的频道时可用。

什么是Kafka?

Apache Kafka是一个分布式发布 - 订阅消息系统和一个强大的队列,可以处理大量的数据,并使您能够将消息从一个端点传递到另一个端点。 Kafka适合离线和在线消息消费。 Kafka消息保留在磁盘上,并在群集内复制以防止数据丢失。 Kafka构建在ZooKeeper同步服务之上。 它与Apache Storm和Spark非常好地集成,用于实时流式数据分析。

好处

以下是Kafka的几个好处 -

  • 可靠性 - Kafka是分布式,分区,复制和容错的。

  • 可扩展性 - Kafka消息传递系统轻松缩放,无需停机。

  • 耐用性 - Kafka使用分布式提交日志,这意味着消息会尽可能快地保留在磁盘上,因此它是持久的。

  • 性能 - Kafka对于发布和订阅消息都具有高吞吐量。 即使存储了许多TB的消息,它也保持稳定的性能。

Kafka非常快,并保证零停机和零数据丢失。

用例

Kafka可以在许多用例中使用。 其中一些列出如下 -

  • 指标 - Kafka通常用于操作监控数据。 这涉及聚合来自分布式应用程序的统计信息,以产生操作数据的集中馈送。

  • 日志聚合解决方案 - Kafka可用于跨组织从多个服务收集日志,并使它们以标准格式提供给多个服务器。

  • 流处理 - 流行的框架(如Storm和Spark Streaming)从主题中读取数据,对其进行处理,并将处理后的数据写入新主题,供用户和应用程序使用。 Kafka的强耐久性在流处理的上下文中也非常有用。

需要Kafka

Kafka是一个统一的平台,用于处理所有实时数据Feed。 Kafka支持低延迟消息传递,并在出现机器故障时提供对容错的保证。 它具有处理大量不同消费者的能力。 Kafka非常快,执行2百万写/秒。 Kafka将所有数据保存到磁盘,这实质上意味着所有写入都会进入操作系统(RAM)的页面缓存。 这使得将数据从页面缓存传输到网络套接字非常有效。


(0)

相关推荐

  • Kafka淘汰倒计时!这个新一代消息中间件,腾讯、华为都用疯了?

    提起成熟的消息队列,毋庸置疑,大多数人的第一反应一定是 Kafka. Kafka 作为一款明星级产品,能够彻底满足海量数据场景下高吞吐.高并发需求,在短短几年内,已经被阿里.腾讯.百度.字节跳动.Ne ...

  • CTO 观点:如何为企业选择合适的消息系统?

    我是 Big Data Institute 的常务董事,技术评估是我的一项主要工作.我们帮助企业根据业务需求选择并落地最合适的技术.我们不与供应商合作,因此客户尤为看中我们能够客观地评估不同的技术. ...

  • 物联网关键技术:消息队列

    消息队列MQ连接物联网与后端系统(业务应用.数据分析) 大量的设备接入物联网平台后,会产生各种类型的事件和数据,对接到后端的各种服务,包括计算和存储.消息队列可以起到异步通信.应用解藕.削峰平谷的作用 ...

  • Kafka、RocketMQ、Pulsar全方位对比

    消息队列也通常称为消息中间件,提到消息队列,大部分互联网人或多或少都听过该名词.对于后端工程师而言,更是日常开发中必备的一项技能. 图片来自 Pexels 随着大数据时代的到来,Apache 旗下的 ...

  • 四种入门级消息中间件

    四种入门级消息中间件 ActiveMQ(性能一般) ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线,并且它一个完全支持JMS规范的消息中间件. 其丰富的API.多种集群构建模式使 ...

  • RocketMQ-入门

    RocketMQ是什么 RocketMQ是一个分布式消息和流数据平台,具有低延迟.高性能.高可靠性.万亿级容量和灵活的可扩展性.RocketMQ是2012年阿里巴巴开源的第三代分布式消息中间件,201 ...

  • 在规模上使用Apache Kafka的20个最佳实践

    Apache Kafka是一种广受欢迎的分布式流媒体平台,New Relic,Uber和Square等数千家公司使用它来构建可扩展,高吞吐量,可靠的实时流媒体系统.例如,New Relic的生产Kaf ...

  • Spring 对Apache Kafka的支持与集成

    Spring 对Apache Kafka的支持与集成

  • 生态旅游概述

    生态旅游被广泛定义为到濒危和通常未受干扰的地方进行的低影响旅游.它与传统旅游不同,因为它可以让游客对当地的自然景观和文化特征有所了解,而且经常为保护提供资金,并有利于经常贫困地区的经济发展. 生态旅游 ...

  • 经络穴位解读——手阳明大肠经概述及重要穴位

    经络穴位解读--手阳明大肠经概述及重要穴位 原创牛奶和奶牛2020-11-30 19:20:14 今天我们来解读一下手阳明大肠经.在中医学里,经络是与脏腑相匹配的.同时也是互为表里的关系.例如手太阴肺 ...

  • 区域地理学概述

    区域地理学是地理学研究世界区域的一个分支.一个地区本身被定义为地球表面的一部分,具有一个或多个类似的特征,使其有别于其他地区.区域地理学研究的是与地方的文化.经济.地形.气候.政治和环境因素有关的特定 ...

  • 概述蛋白石

    蛋白石因颜色.光泽独特而名.其彩虹般绚丽耀目的光芒多彩似马赛克,充满了神秘性,足其它宝石无可比拟的. 虽然名为蛋白石,却非单一色调,如果仅仅是白色,倒反而没有价值了.透明.红色.黄色色系,在澳洲多为乳 ...

  • 中国历史概述(九十六)——蒙古太宗至宪宗时期的政治经济

    前面几期我们着重从军事征服角度介绍了成吉思汗即位到蒙哥去世前后蒙古的历史.本期我们着重介绍在蒙古太宗窝阔台至宪宗蒙哥时期的政治经济等方面的情况. 成吉思汗的分封 蒙古汗国是成吉思汗在母亲.诸弟帮助下建 ...

  • 中国历史概述(九十四下)——附 蒙古对东北地区的征服

    蒙古对东北地区的征服过程,与金国在东北势力的消亡有关.蒙古在东北的统治前期依靠契丹.女真等族贵族建立的政权作为藩属,到元初逐渐改为直接统治. 蒙古对辽西的战争与东辽国的建立 1211年,蒙古军第一次围 ...

  • 中国历史概述(九十四上)——蒙金战争与金国覆灭

    蒙古对金的战争和最后的完全征服花费了二十多年的时间,这期间由于西征等原因,对金作战并不是一次性完成的.而在这个过程中,金国内部的矛盾和红袄军起义也加速了金的灭亡.本期专述蒙古对金战争与金国灭亡的历史. ...