1、kafka是啥?
kafka是一个高吞吐的分布式消息系统。
2、作用
解耦:SparkStreaming与flume之间以及hdfs与flume之间。
缓冲:数据高峰时减小hdfs和SparkStreaming压力,起缓冲作用。kafka消费速度可设置。
异步通信:
###注:
kafka最主要的作用就是用来做缓冲中间件
3、特点及优势
1、生产者和消费者的模型
2、可靠性:
kafka不丢数据,数据直接写入磁盘,而不是存在内存中
消费者不丢数据:至少一次,严格一次
3、消费者的消费速度可以设置
4、数据最后一次消费后在磁盘保存一星期,到期后数据过期
5、多副本机制,可以并行消费,提高并行消费速度
6、单节点可以连接上千客户端,消费速度可以达到百兆每秒(数据零拷贝)
7、分区数据严格有序,要是topic数据严格有序可以设置topic一个分区
4、kafka中的核心概念
broker:
Kafka集群中server节点,负责读写请求,存储消息,管理分区,无主从关系,依赖zk协调
producer:
生产者,负责生产消息,比如flume/maxwell
自己决定我那个哪分区写数据
生产模式:
轮询:(非k-v消息)
0.8:1分区先写10分钟,2分区再写10分钟。。。。
0.8之后:1分区先写1条,2分区再写1条。。。。
k的hash:(k-v消息)
对于key值进行hash,hash值对分区取模进入对应分区
consumer:
消费者,负责消费消息,比如sparkstreaming/
Kafka入门第一课:kafka的简单介绍
最新推荐文章于 2025-07-14 17:01:35 发布