千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 大数据面试题:经典面试题答疑(五)

大数据面试题:经典面试题答疑(五)

来源:千锋教育
发布人:syq
时间: 2022-06-08 17:16:00 1654679760

  大数据经典面试题答疑---经常问的原理问题总结(系列文章,持续更新),帮你解决大数据开发中的困扰。

  1. kafka

  2. ProducerRecord

  3. 原理

  4.消费者

  5. 文件分布

  答案专区:

  1.kafka  

  1.1. AR,ISR,OSR

  AR(所有副本)=ISR(在一定程度上与leader副本保持同步,包括leader副本)+OSR(与leader滞后太多的副本,不包括leader副本)

  在正常情况下,AR应该是和ISR一样的,但是当某个Follower副本落后太多或者某个Follower副本节点挂掉了,那么它会被移出ISR放入OSR中,kafka的选举也比较简单,就是把ISR中的第一个副本选举成新的Leader节点。比如现在AR=[1,2,3],1挂掉了,那么ISR=[2,3],这时会选举2为新的Leader。

  1.2. ISR 与 HW 和 LEO 关系

wps9cJ6BX

wpsDfCFub

  LEO的最小值是该分区的HW,当所有副本都复制成功后,LEO与HW相等

  1.3. 重要参数

wpsfUzATg

wpsXWGMuc

  2.ProducerRecord

  2.1. ProducerRecord

wpsCFs0Aw

  如果 key 不为 null,那么默认的分区器会对 key 进⾏哈希(采⽤ MurmurHash2 算法,具备 ⾼运算性能及低碰撞率),最终根据得到的哈希值来计算分区号,拥有相同 key 的消息会被写⼊同⼀个分区。如果 key 为 null,那么消息将会以轮询的⽅式发往主题内的各个可⽤分区。

  ***\*注意:\****如果 key 不为 null,那么计算得到的分区号会是所有分区中的任意⼀个;如果 key 为 null 并且有可⽤分区时,那么计算得到的分区号仅为可⽤分区中的任意⼀个,注意两者之间的差 别。

  2.2. 消息发送到broker

  有可能需要经过拦截器(Interceptor)、序列化器(Serializer)和分区器(Partitioner)的⼀系列作⽤之后才能被真正地发往 broker。

  生产者拦截器,实现ProducerInterceptor接口:

  onSend() :在消息发送之前执行

  onAcknowledgement():在消息被应答之前或消息发送失败,优于callback执行。

  拦截链:按配置先后执行

  3.原理

wpsab4gge

  4.消费者

  可以订阅多主题,可以订阅指定分区,可以暂停和重新启用某个分区消费,指定offset消费。

wpsYklvSn

  在旧消费者客户端中,消费位移是存储在 ZooKeeper 中的。⽽在新消费者客户端中,消费位移存储在 Kafka 内部的主题__consumer_offsets 中。

wpspOV5VF

  消费者拦截器,以提交offset为分界点,有两个方法可以执行.

  5.文件分布

06

  分段好处(segment):数据查找快,好删除,磁盘不是无限大

  .timeindex:数据删除使用

  数据删除方式:根据时间;消息大小;消息偏移量

  更多关于大数据培训的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT