kafka学习笔记-02-kafka基础术语

翻译链接: link.

kafka基础

在深入kafka学习之前,首先需要知道一些术语,如topic,brokers,producer以及consumer,在如下图表中显示的术语 ,在最后的表格中会详细描述这些图像中组件的详细含义。
kafka学习笔记-02-kafka基础术语_第1张图片
在上面的图形案例中,一个topic配置三个partition,partition 1有两个offset factor 0,1,parition 2有0,1,2,3四个offset factor,partition 3 有一个offset factor 0。副本区块的id与服务器id主机编号一致。假设topic中的复制因子设置为3,kafka为每一个partition创建3个副本并在kafka集群中使得这些新的副本区块正常运行工作。为了平衡集群的负载,每一个broker(服务节点)将存储一个或多个分区。多个消费者和生产者可以同时发布和纠正数据。

组件名 组件描述
topic-话题 属于一个某个类别的信息流集合叫做topic,topic可以划分为很多区块。kafka最低限度要求每个topic至少包含一个区块,每一个分区包含的数据顺序是不变的,每个分区都是一个相等尺寸的文件块。
partition-分区 每个topic也许有很多partition,所以每个分区可以含有任意数量的数据
partition offset-分区偏移量 每个partition都有一个唯一的序列id叫做offset 即偏移量
replicas of partition-分区副本 分区副本见名知意,他们只是作为副本不参与任何读写,防止意外情况导致的数据丢失
brokers-中间人 可理解为节点 1.brokers 是一个简单的系统只负责稳定发布数据 ,每个broker也许有某个topic的0个,多个分区,设想一下-如果n个分区在一个topic中,有n个broker,那么每个broker将包含一个分区。2.再设想如果n个分区在一个或超过n个broker(n+m)那么第n个broker将有一个分区,那么m个broker将没有这个topic的任何一个分区。3.设想如果n个分区在少于n个broker的环境中,每个节点将至少有一个或多个分区在每一个broker上,这种场景并不推荐,因为这将导致这些brokers负载不均匀
kafka cluster-kafka集群 包含多个brokers被叫做kafka cluster,一个kafka cluster可以不延时的进行扩展,这些集群被用来管理和持久化备份数据
producers 生产一个或多个kafka topic的对象叫做生产者,生产者在任何时间发布数据给broker,会被简单的追加到分区的文件段末尾。而事实上生产者也可以发布数据给其他的分区
soncumers 消费者获取来自broker的数据,并且可以订阅一个或者多个topic从broker获取已经发布的数据
leader leader负责所有给定分区的读和写,每个分区都会有一个服务作为leader
follower 遵从leader指令的节点叫做follower,如果leader失败,其中之一的follower将自动成为新的leader,一个follower扮演主要的消费者拉取数据和更新存储信息

你可能感兴趣的:(kafka学习笔记-02-kafka基础术语)