当前位置: 首页 > news >正文

2024年大数据高频面试题(中篇)

文章目录

  • Kafka
    • 为什么要用消息队列
    • 为什么选择了kafka
    • kafka的组件与作用(架构)
    • kafka为什么要分区
    • Kafka生产者分区策略
    • kafka的数据可靠性怎么保证
    • ack应答机制(可问:造成数据重复和丢失的相关问题)
    • 副本数据同步策略
    • ISR
    • kafka的副本机制
    • kafka的消费分区分配策略
      • Range分区分配策略
      • RoundRobinAssignor分区分配策略
      • StickyAssignor分区分配策略
    • kafka的offset怎么维护
    • kafka为什么这么快
    • Kafka消费能力不足怎么处理
    • kafka事务是怎么实现的
    • Kafka中的数据是有序的吗
    • Kafka可以按照时间消费数据吗
    • Kafka单条日志传输大小
    • Kafka参数优化
    • Kafka适合以下应用场景
    • Exactly Once语义
  • Zookerper
    • 特点
    • 选举机制
      • 新集群选举
    • 非全新集群选举
    • Kafka依赖Zookeeper的选举
    • Kafka依赖ZK做了哪些事
      • Kafka选举
      • Kafka为什么要放弃ZK
    • 基于ZooKeeper的Hadoop高可用
    • Yarn高可用
  • Flink
    • 运行时架构
    • Flink 应用
    • 处理数据API
    • 核心抽象
    • Flink 异步IO
    • 窗口
    • Watermark (水印)
    • 内存管理
    • 内存模型
    • 资源管理
    • 调度
    • 作业调度失败
    • 容错
    • 保存点恢复
    • 端到端严格一次
    • Flink SQL
    • FLINK API

Kafka

为什么要用消息队列

  1. 解耦
    允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。
  2. 可恢复性
    系统的一部分组件失效时,不会影响到整个系统。消息队列降低了进程间的耦合度,所以即使一个处理
    消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。
  3. 缓冲
    有助于控制和优化数据流经过系统的速度,解决生产消息和消费消息的处理速度不一致的情况。
  4. 灵活性与峰值处理能力
    在访问量剧增的情况下,应用仍然需要继续发挥作用,但是这样的突发流量并不常见。如果为以能处理
    这类峰值访问为标准来投入资源随时待命无疑是巨大的浪费。使用消息队列能够使关键组件顶住突发的
    访问压力,而不会因为突发的超负荷的请求而完全崩溃。
  5. 异步通信
    很多时候,用户不想也不需要立即处理消息。消息队列提供了异步处理机制,允许用户把一个消息放入
    队列,但并不立即处理它。想向队列中放入多少消息就放多少,然后在需要的时候再去处理它们。

为什么选择了kafka

在这里插入图片描述

  1. 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒。
  2. 可扩展性:kafka集群支持热扩展。
  3. 持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失。
  4. 容错性:允许集群中
http://www.lryc.cn/news/402189.html

相关文章:

  • Python编程工具PyCharm和Jupyter Notebook的使用差异
  • 顶顶通呼叫中心中间件-被叫路由、目的地绑定(mod_cti基于FreeSWITCH)
  • 【数据集处理工具】根据COCO数据集的json标注文件实现训练与图像的文件划分
  • vue 如何做一个动态的 BreadCrumb 组件,el-breadcrumb ElementUI
  • FFmpeg播放视频
  • 重叠区间的求和
  • java包装类 及其缓存
  • 大龄程序员的出路在哪里?
  • Unity不用脚本实现点击按钮让另外一个物体隐藏
  • RAG技术-为自然语言处理注入新动力
  • Docker安装ELK(简易版)
  • WPF项目实战视频《一》(主要为WPF基础知识)
  • iOS ------ ARC的工作原理
  • 【React】JSX基础
  • 1分钟带你了解苹果手机删除照片恢复全过程
  • Ruby爬虫技术:深度解析Zhihu网页结构
  • python中的re模块--正则表达式
  • sqlalchemy反射视图
  • 最新版康泰克完整版- Kontakt v7.10.5 for Win和Mac,支持m芯片和intel,有入库工具
  • spring boot(学习笔记第十三课)
  • 聊聊不再兼容安卓的鸿蒙
  • 创建一个矩形,当鼠标进入这个矩形的时候,这个矩形边线变色,且鼠标变成手型
  • AI自动生成PPT哪个软件好?高效制作PPT优选这4个
  • LruCache、Glide和SmartRefreshLayout使用总结
  • Redis中数据分片与分片策略
  • leetcode_169. 多数元素
  • STM32 GPIO的工作原理
  • 板级调试小助手(2)ZYNQ自定义IP核构建属于自己的DDS外设
  • vim+cscope+ctags
  • Java 8的变革:函数式编程和Lambda表达式探索