目录
一、Kafka的概念
Kafka是什么?
Kafka是一个分布式的流处理平台。官方定义如下:
Kafka is a distributed streaming platform.
- Publish and subscribe to streams of records, similar to a message queue or enterprise messaging system.
- Store streams of records in a fault-tolerant durable way.
- Process streams of records as they occur.
二、Kafka的产生背景
- Kafka它本质上是一个消息系统,由当时从LinkedIn出来创业的三人小组开发,他们开发出了Apache Kafka实时信息队列技术,该技术致力于为各行各业的公司提供实时数据处理服务解决方案。
- Kafka不同于传统的企业信息队列系统,它是以近乎实时的方式处理流经一个公司的所有数据,目前已经服务于LinkedIn、Netflix、Uber以及Verizon,并为此建立了实时信息处理平台。
- 流水数据是所有站点对其网站使用情况做报表时都要用到的数据中最常用的一部分,流水数据包括PV,浏览内容信息以及搜索记录等。这些数据通常是先以日志文件的形式存在,然后有周期的去对这些日志文件进行统计分析处理,然后获得需要的KPI指标结果。
三、kafka中的重点
3.1 相关名词
- producer : 消息的生产者。
- consumer : 消息的消费者。
- broker : 部署kafka的服务器,是消息的集存地。
- group id : 每个consumer具有一个group id,用于标记其消费者组。
- consumer group : 具有相同group的consumer构成一个consumer group,这些consumers共同消费某个/些topic。
- topic : 一类消息的