大数据开发岗面试复习30天冲刺 - 日积月累,每日五题【Day06】——Kafka4
本栏目大数据开发岗高频面试题主要出自
大数据技术
专栏的各个小专栏,由于个别笔记上传太早,排版杂乱,后面会进行原文美化、增加。
不要急着往下滑,默默想5min,看看这5道面试题你都会吗?
面试题 01、为什么要设计Segment?
面试题02、什么是AR、ISR、OSR?
面试题 03、什么是HW、LEO?
面试题04、什么是一次性语义?
面试题05、Kafka如何保证消费者消费数据不重复不丢失?
以下答案仅供参考:
文章目录
面试题 01、为什么要设计Segment?
•加快查询效率:将数据划分到多个小文件中,通过offset匹配可以定位某个文件,从小数据量中找到需要的数据 •提高删除性能:以Segment为单位进行删除,避免以每一条数据进行删除,影响性能
面试题02、什么是AR、ISR、OSR?
•AR:all replicas –所有副本 = ISR + OSR •ISR:In-sync-replicas –表示正在同步的副本 =》 可用副本分区 –如果Leader故障,会从ISR中选举一个新的leader •OSR:Out-sync-replicas –表示不健康的副本 =》 不可用副本 –判断依据 #如果这个从副本在这个时间内没有与leader副本同步数据,认为这个副本是不正常的 参数设置: replica.lag.time.max.ms = 10000
面试题 03、什么是HW、LEO?
•HW:表示当前leader副本中所有Follower都已经同步的位置 + 1,高水位线 •LEO:表示当前leader副本最新的数据位置 + 1 •消费者能消费到的位置是HW:为了保证消费者消费分区数据的统一性
面试题04、什么是一次性语义?
•at-most-once:最多一次 •at-least-once:至少一次 •exactly-once:有且仅有一次
面试题05、Kafka如何保证消费者消费数据不重复不丢失?
•Kafka消费者通过Offset实现数据消费,只要保证各种场景下能正常实现Offset的记录即可 •保证消费数据不重复需要每次消费处理完成以后,将Offset存储在外部存储中,例如MySQL、Zookeeper、Redis中 •保证以消费分区、处理分区、记录分区的offset的顺序实现消费处理 •如果故障重启,只要从外部系统中读取上一次的Offset继续消费即可
总结
今天我们复习了面试中常考的Kakfa相关的五个问题,你做到心中有数了么?
相关文章
- 直接在代码里面对list集合进行分页
- .NET Framework 4.5新特性详解
- 大数据的简要介绍
- 大数据的由来
- 高斯混合模型的自然梯度变量推理
- timing-wheel 仿Kafka实现的时间轮算法
- 使用Navicat软件连接自建数据库(Linux系统)
- 那一天,我被Redis主从架构支配的恐惧
- Redis 深入了解键的过期时间
- C#使用委托调用实现用户端等待闪屏
- 基于流计算 Oceanus 和 Elasticsearch Service 构建百亿级实时监控系统
- GRAND | 转录调控网络预测数据库
- JFreeChart API中文文档
- 临床相关突变查询数据库
- TIGER | 人类胰岛基因变化查询数据库
- 视频边缘计算网关EasyNVR在视频整体监控解决方案中的应用分析
- Apache Arrow - 大数据在数据湖后的下一个风向标
- 常见的电商数据指标体系
- AKShare-艺人数据-艺人流量价值
- MySQL中多表联合查询与子查询的这些区别,你可能不知道!