KafKa(二):具体名词概念

一、kafka流程图

二、具体概念

  • producer: 生产者即数据的发布者,该角色将消息发布到kafka的topic中,broker接收到生产者发布的消息后,broker将该消息追加到当前用于追加数据的segment文件中,生产者发送的消息,存储到一个partition中,生产者也可以指定存储的partition。
  • consumer:消费者可以从broker中读取数据,消费者可以消费多个topic中的数据。
  • Topic:在kafka中,使用一个类别属性来划分数据的所属类,划分数据的这个类称之为topic,如果把kafka看作为一个数据库,topic可以理解为数据库中的一张表,topic的名字即为表名。
  • Partition:topic中的数据分割为一个或者多个partition,每个topic至少一个partition,每个partition中的数据使用多个segment文件存储,partition中的数据是有序的,partition间的数据丢失了数据的顺序,如果topic有多个partition,消费数据时就不能保证数据的有序性。在需要严格保证消息的消费顺序的场景下,需要将partition的数目设置为1.
  • partition offset:每条消息都有一个当前partition下唯一的64字节的offset,它指明了这条消息的起始位置。
  • Replicas of partition:副本是一个分区的备份,副本不会被消费,副本之用于防止数据丢失,即消费者不从follower的partition中消费数据,只从leader的partition中读取数据,副本之间是一主多从的关系。
  • Broker:kafka集群中包含一个或者多个服务器,服务器节点称为broker,broker存储topic的数据。如果某topic有N个partition,集群有N个broker,那么每个节点存储该topic的一个partition。如果某topic有N个partition,集群有(N+M)个broker,那么,其中N个存储该topic的一个partition,剩下的m个broker不存储该topic的partition。这种情况容易导致kafka集群数据不均衡,出现数据缺少的情况。
  • Leader:每个partition有多个副本,每个副本只有一个leader,leader是负责当前数据读写的partition.
  • Follower:follower跟随leader,所有请求都通过leader路由,数据变更会通过路由广播给所有的follower,Follower保持跟leader同步,如果leader失败,则从Follower中选举出来一个新的leader。当follower挂掉、卡住或者同步太慢,leader会将该follower从"in sync replicas"列表中删除,重新创建一个follower。
  • zookeeper:zookeeper负责维护和协调broker,当kafka系统中新增了broker或者broker发生重大故障的时候,由zookeeper同志生产者和消费者,生产者和消费者依据zookeeper的broker状态信息,与broker协调数据状态的发布和订阅任务。
  • AR(assigned replicas):分区中所有的副本统称为AR.
  • ISR(in-sync-replicas):所有leader部分保持一定程度的副本(包括leader副本在内)lsr。
  • osr(out of sync replicas):与leader副本同步滞后过多的副本。
  • hw(height watermark):高水位,标示了一个特定的offset,消费者只能拉取到这个offset之前的消息。
  • LEO(log end offset):即日志末端位移,记录了该副本底层日志(log)消息下一条消息的位移值,注意下一条消息是说,如果leo=10,表示该副本保存了10条信息,位移范围是[0,9].

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值