Spark全面精讲:https://blog.youkuaiyun.com/Mirror_w/article/details/89408567
一、Kafka概述
kafka是一个分布式的消息队列系统(Message Queue).kafka保证数据不丢失,采用顺序写磁盘技术。
1.有顺序的储存保证了高效的读取。–高吞吐量
2.分布式系统,易于向外扩展,所有的producer、broker和consumer都会有多个,均为分布式的。无序停机即可扩展机器。
3.消息处理的状态是在customer端进行维护的,而不是server端维护的。当失效时能自动平衡。
4.支持在线和离线的场景。
Kafka:
Kafa分布式消息队列,默认将数据储存在磁盘,默认保存七天
producer:
消息的生产者,两种生产模式:1.轮询,2.基于key的hashCode取模。将同一个组消息的放到相同的分区partition中。
broker:
组成kafka集群的节点,由zookeeper来协调管理。broker负责消息的储存和读写,一个broker分组可以管理多个partition缓冲代理,kafka集群中的一台或者多态服务器统称为broker.
topic:
一类消息,消息的队列,topic是由partition组成的,多个partition是为了做并行处理,一个topic是由是由几个partition组成的。可以在创建topic的时候进行组成。
partiiton:
partition是组成topic单元,partition对应磁盘目录。一个partitiion中的消息是强有序的。每个partition是由对应的副本的。可以在创建的时候进行指定。每个partition最多是由一个组内的一个消费者进行消费的。partition是由broker管理的。每个partition是由一个broker来管理的。
Customer:
每个消费者都有自己的消费组,不同的消费组可以消费用一个partition中的数据,在消费数据的时候互不影响。同一个消费者组内的不同消费者消费同一个topic时,这个topic中的数据,只能被消费一次。
zookeeper:
协调broker,储存元数据:broker、topic、partition
在zookeeper0.8.2之前,zookeeper开可以储存消费者Offset
1.Kafka简述
Kafka架构是由producer(消息生产者)、consumer(消息消费者)、broker(kafka集群的server,负责处理消息读、写请求,存储消息,在kafka cluster这一层这里,其实里面是有很多个broker)、topic(消息队列/分类相当于队列,里面有生产者和消费者模型)、zookeeper(元数据信息存在zookeeper中,包括:存储消费偏移量,topic话题信息,partition信息) 这些部分组成。
kafka里面的