简介这份资料是面向大数据开发、运维、云计算、数据治理及架构岗位的系统性面试题库适合准备跳槽或校招的初中高级从业者查漏补缺。内容按技术栈分章组织覆盖Linux与Shell常用命令、Hadoop端口配置与HDFS读写流程、MapReduce Shuffle及YARN提交流程、Zookeeper选举机制、Flume事务与防丢机制、Kafka架构与分区副本策略、Hive内外表与窗口函数及数据倾斜处理、HBase的RowKey设计、Sqoop导入导出、Scala语法以及Spark部署模式、宽窄依赖、Shuffle流程与调优等高频考点并附有项目经验类问答。资源包共1个docx文档约491KB目录层级清晰便于按模块检索背诵。目前已有885人学习下载可作为面试前快速梳理知识框架、对照自查薄弱环节的实用参考。1. 大数据面试的知识地图从组件清单到一条完整的数据链路大数据面试最反直觉的一点是背完 HDFS 读写流程、Kafka 分区策略、Spark 宽窄依赖仍然可能在面试里卡壳。原因不在知识点本身而在于这些组件在真实系统里是串起来的——数据从埋点产生经 Flume 采集进 Kafka落 HDFS由 Hive 或 Spark 加工成分层数仓最后支撑报表和即席查询。面试官问的从来不是孤立组件而是这条链路上某一环为什么这样设计、出问题怎么定位。这份面试题资料的价值就在这里它把 LinuxShell、Hadoop、Zookeeper、Flume、Kafka、Hive、HBase、Sqoop、Scala、Spark、Flink 到数仓架构、数据治理、手写代码、JavaSE/Redis/MySQL/JVM 全部收进同一份目录覆盖大数据开发、运维、云计算、数据治理、架构师几个方向。适合已经上手过组件、需要系统复盘的人也适合复习阶段拿它当查漏补缺的索引。下面按「基础底座 → 采集与消息 → 存储与计算 → 数仓与治理 → 易错点 → 复习清单」重新梳理一遍。2. 基础底座Linux、Hadoop 与 Zookeeper 的复习重点2.1 Linux 与 Shell被低估的面试门槛Linux 在大数据面试里很少单独成题但它渗透在每一道运维和调优题里。常用命令要按用途分组记而不是按字母背文件与权限ls、chmod、chown、文本处理grep、sed、awk、cut、sort、进程与资源ps、top、jps、kill、网络与磁盘netstat、df、du。其中awk和sed是高频追问点因为日志清洗脚本几乎绕不开它们。Shell 部分重点在变量、条件判断、循环和函数四件事以及一个常被问到的细节单引号和双引号的区别。单引号内一切原样输出双引号内变量和命令替换会生效。写调度脚本时引号用错路径里带变量就会静默失败这类问题在面试里常以「你脚本里怎么处理变量」的形式出现。# 统计日志中 ERROR 出现次数最多的前 5 个模块 # $1 为日志路径$2 为模块字段所在列号 awk -F\t -v col$2 $0 ~ /ERROR/ {print $col} $1 \ | sort | uniq -c | sort -rn | head -5这段脚本的逻辑是按制表符切分筛出含 ERROR 的行取指定列计数后倒序取前五。参数-F决定分隔符-v把外部列号传进 awk改列号不用改脚本。面试里如果被问「怎么快速定位异常模块」能写出这个思路比背命令列表更有说服力。2.2 Hadoop端口、流程与优化三件套Hadoop 是整份资料里篇幅最大的模块之一复习时建议拆成三层。第一层是记忆型知识常用端口号NameNode、DataNode、ResourceManager、NodeManager 各自的 Web 与 RPC 端口和配置文件core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml分别管什么。这类题没有技巧只能对照集群搭建流程记记的时候把「改哪个文件 → 影响哪个进程 → 重启后怎么验证」连成一条线。第二层是流程型知识HDFS 读流程和写流程、MapReduce 的 Shuffle 过程、Yarn 的 Job 提交流程。这三条流程是面试的必考区回答时要有角色、有顺序、有异常分支。以 HDFS 写流程为例客户端先向 NameNode 请求创建文件NameNode 返回可写入的 DataNode 列表客户端按机架感知顺序建立 pipeline 逐块写入每块写完由 DataNode 回报确认最后关闭 pipeline 并通知 NameNode 完成。追问通常落在「某个 DataNode 挂了怎么办」「副本怎么选」上。第三层是优化型知识压缩与小文件处理、集群参数调优、基准测试、宕机处理、数据倾斜。资料里把 LZO 压缩、Hadoop 参数调优、基准测试单列成项目经验说明面试官更想听「你调过什么、前后差多少」。复习时每个优化点都准备一个「现象 → 原因 → 动作 → 结果」的四段式比只报参数名有效得多。复习层次代表知识点常见追问方向记忆型端口号、配置文件、集群搭建改哪个文件、怎么验证生效流程型HDFS 读写、Shuffle、Yarn 提交异常分支、角色职责优化型压缩、小文件、参数调优、数据倾斜调优前后对比、定位方法2.3 Zookeeper选举机制是必答项Zookeeper 在资料里只占选举机制和常用命令两节但选举机制几乎是分布式岗位的必问题。要讲清楚三件事集群角色Leader、Follower、Observer、选举触发条件启动时或 Leader 失联、投票规则先比 zxid 再比 myid过半即当选。常用命令则围绕节点操作ls、create、get、set、delete和状态查看stat展开回答时能说出「哪个命令看什么信息」即可。3. 采集与消息Flume 与 Kafka 的可靠性设计3.1 Flume事务机制决定数据丢不丢Flume 的面试题集中在可靠性和性能两端。可靠性看三个组件Source、Channel、Sink以及贯穿它们的 Put 事务和 Take 事务。Source 写入 Channel 前开启 Put 事务批量写入成功后提交失败则回滚重试Sink 从 Channel 取数据走 Take 事务写下游成功才提交。理解了这个事务模型「Flume 采集数据会丢失吗」就有标准答法默认配置下可能丢取决于 Channel 类型和事务配置。性能端看拦截器、Channel 选择器、监控器和 FileChannel 优化。拦截器做数据清洗和打标Channel 选择器决定一条数据进哪个 Channel常用于分流监控器暴露指标用于告警。HDFS Sink 的小文件问题是高频追问按时间或大小滚动文件、调大batchSize、配合压缩都是可说的手段。# FileChannel 关键参数示例用容量换吞吐用检查点换恢复能力 a1.channels.c1.type file a1.channels.c1.capacity 1000000 a1.channels.c1.transactionCapacity 1000 a1.channels.c1.checkpointDir /data/flume/checkpoint a1.channels.c1.dataDirs /data/flume/datacapacity是 Channel 最大容量transactionCapacity是单次事务批量两者要匹配批量太小吞吐上不去批量超过容量会直接报错。checkpointDir和dataDirs分盘存放是为了避免检查点写满拖垮数据盘。面试里被问「FileChannel 怎么优化」答出这几个参数的取舍关系就够了。3.2 Kafka从架构到「丢不丢数据」Kafka 是这份资料里题目最密的模块二十多个小点可以归成四组。第一组是架构与容量规划架构角色、压测、机器数量、硬盘大小、分区数、副本数、Topic 数量、数据量计算。这组题的共同逻辑是「按吞吐和保留时间反推资源」回答时给出估算公式比给结论更有说服力。第二组是可靠性丢不丢数据、ISR 副本同步队列、数据重复、幂等性、事务。核心结论要能一句话说清生产者侧靠acks和重试保证不丢消费者侧靠手动提交位移保证不重复消费幂等性和事务解决的是「重试导致的重复写」。ISR 要讲清「哪些副本算同步中、什么时候被踢出、min.insync.replicas怎么配合acksall」。第三组是消费与分配分区分配策略、消费能力不足导致积压怎么处理。积压题的答法是先判断是消费端慢还是生产端突增再谈加消费者、加分区、优化消费逻辑三条路注意消费者数不能超过分区数这个约束。第四组是性能参数优化、高效读写的原因。页缓存、顺序写、零拷贝、批量压缩是四个标准答案能结合「为什么 Kafka 快」讲出层次即可。问题类型关键配置/概念回答落点不丢数据acks、重试、min.insync.replicas生产端确认级别与副本下限不重复消费手动提交位移、幂等性、事务消费端提交时机与去重手段消费积压分区数、消费者数、消费逻辑先定位瓶颈再扩容高吞吐页缓存、顺序写、零拷贝、压缩分层解释而非罗列名词4. 存储与计算Hive、HBase、Spark 与 Flink 的考点分布4.1 Hive 与 HBase一个偏 SQL 优化一个偏模型设计Hive 的题分两类。一类是概念辨析架构、与数据库的比较、内部表与外部表、四个Bygroup by、order by、sort by、distribute by的区别、窗口函数、自定义 UDF/UDTF。另一类是优化实战Hive 优化、数据倾斜、动态分区原理、字段分隔符的选择。分隔符那道题很典型——默认分隔符是\001项目里常用\t但字段内容本身含\t时就会错列处理办法是换分隔符或做转义清洗。这类题考的是「你有没有被真实数据坑过」。HBase 的题集中在存储结构、RowKey 设计原则与具体设计、Phoenix 二级索引原理。RowKey 设计要围绕长度、散列、排序三原则展开回答时最好带一个「防热点」的具体方案比如加盐或反转。4.2 Spark流程、Shuffle 与调优是三大主战场Spark 在资料里横跨核心、SQL、Streaming 三块复习优先级最高。核心部分必须拿下部署方式、提交脚本与提交参数、架构与作业提交流程、RDD 血统、宽窄依赖与 Stage 划分、Transformation 与 Action 算子、会触发 Shuffle 的算子、两种核心 Shuffle 流程、reduceByKey与groupByKey的区别、repartition与coalesce、缓存与 checkpoint、广播变量与累加器、TopN 实现思路。其中 Stage 划分和 Shuffle 流程是笔试重点。划分规则一句话遇到宽依赖就切 StageStage 内 task 数由分区数决定。Shuffle 要能区分未优化 HashShuffle、优化后 HashShuffle、普通 SortShuffle 和 bypass SortShuffle 四种流程的差异重点说清「为什么最终收敛到 SortShuffle」。# TopN 的两种思路全局排序取前 N或每个分区取前 N 再归并 # 数据量大时优先第二种避免单点全量排序 rdd sc.textFile(input) \ .map(lambda line: (line.split(\t)[0], int(line.split(\t)[1]))) # 思路一reduceByKey 聚合后全局排序适合 key 数量可控 topn_global rdd.reduceByKey(lambda a, b: a b) \ .sortBy(lambda x: x[1], ascendingFalse) \ .take(10) # 思路二分区内先取 TopN再合并适合 key 极多 topn_local rdd.mapPartitions( lambda it: sorted(it, keylambda x: x[1], reverseTrue)[:10] ).take(10)第一段用reduceByKey先在 map 端做局部聚合减少 Shuffle 数据量第二段用mapPartitions在每个分区内先截断把全局排序的压力摊到各分区。参数上ascendingFalse表示降序take(10)触发实际计算。面试被问 TopN先问清数据规模再选思路比直接背代码更稳。Spark SQL 部分重点在 RDD、DataFrame、DataSet 三者的区别与联系以及append与overwrite、coalesce与repartition、缓存级别、广播 join、kryo 序列化、Shuffle 默认并行度这些配置型考点。Streaming 部分则围绕首次运行不丢数据、精准一次消费、控制消费速度、背压、优雅关闭、消费 Kafka 的几种方式、窗口函数原理展开。4.3 Flink批流一体、容错与反压Flink 在资料里分基础、中级、高级三层复习时按「概念 → 机制 → 架构」推进。基础层要能说清组件栈、集群角色、Task Slot 与并行度的区别、常用算子、分区策略、重启策略、广播变量、窗口、状态存储、时间分类、水印。中级层是机制题批流一体怎么支持、高效数据交换、容错、分布式快照、Exactly-once、内存管理、序列化、反压。高级层是架构题Job 提交流程、三层图结构、JobManager 与 TaskManager 的职责、资源调度、数据抽象与交换过程。反压和分布式快照是两个最容易答浅的点。反压要讲清「下游处理慢如何逐级传导、基于信用或缓冲区的机制怎么起作用」快照要讲清「屏障如何随数据流动对齐、对齐期间为什么会影响吞吐」。这两题答出机制细节和只答名词的差距非常明显。5. 数仓与治理分层、建模与指标体系的复习主线5.1 数仓分层与建模从 ODS 到 DWS 的职责边界资料第 2 到第 4 章讲的是项目架构和数仓落地这部分是开发岗和架构岗的分水岭。分层架构要能说清每层做什么ODS 贴源存储、DWD 做清洗与维度关联、DWS 做轻度汇总、ADS 面向应用。配套考点包括同步策略全量、增量、拉链表、关系型数据库范式、数据模型、拉链表的设计与实现。拉链表是高频手写题核心是三个字段开始时间、结束时间、当前状态。更新时把变更记录的旧链闭合、新链打开查询时按时间点过滤。面试里常要求现场写出更新逻辑复习时至少手写一遍。5.2 指标体系与数据治理能说出三十个指标才算过关资料里有一道很实在的题一分钟至少说出三十个指标。这类题考的是业务熟悉度复习时按「用户、交易、商品、流量、营销」五类各准备六到八个指标并说清每个指标的口径。用户行为分析部分则要掌握活跃、新增、留存、沉默、回流、流失、连续活跃等需求的分析思路每种都能落到一条 SQL 上。数据治理部分覆盖元数据管理血缘系统、数据质量监控监控指标与建设方法、数据中台、数据湖、埋点。这部分题偏开放回答结构建议是「为什么做 → 怎么做 → 用什么衡量」避免只报工具名。6. 易错点五个最容易翻车的地方易漏点一把流程题答成名词解释。为什么漏复习时只记了组件职责没记顺序和异常分支。怎么补每条流程按「发起方 → 经过哪些角色 → 每步做什么 → 失败怎么处理」写一遍合上资料复述。易漏点二调优题只报参数不给对比。为什么漏平时调参靠默认值没记录前后数据。怎么补每个优化点补一个「调优前 → 调优后」的数字哪怕是模拟项目里的相对变化也要说清衡量口径。易漏点三数据倾斜只背方案不背定位。为什么漏方案清单好背定位方法需要经验。怎么补记住定位路径——看 Stage 耗时分布、看 task 数据量分布、看热点 key 分布三步走完再谈方案。易漏点四SQL 题忽略边界条件。为什么漏手写 HQL 时只想着主逻辑忘了空值、重复、时间边界。怎么补每道手写题写完自检三问——空值怎么处理、会不会重复计数、时间范围是否闭合。易漏点五Java 与中间件基础被当成选修。为什么漏觉得大数据岗位不考 JavaSE、JVM、Redis、MySQL。怎么补资料里这几章篇幅不小HashMap 底层、线程池、GC 判定、缓存穿透雪崩击穿、索引与事务隔离级别都是能一票否决的基础题按「一问一答」整理成卡片过一遍。7. 复习清单按链路自查把资料用成索引复习到后期最有效的动作不是再刷一遍题而是按数据链路自查从采集到消费到存储到计算到应用每一环问自己三个问题——这一环的核心机制是什么、最容易出什么故障、我怎么定位。下面这张清单可以直接当自查表用。链路环节自查问题对应资料模块采集Flume 事务怎么保证不丢小文件怎么处理Flume消息Kafka 丢数据与重复消费的边界在哪Kafka存储HDFS 写流程异常分支、HBase RowKey 防热点Hadoop、HBase计算Stage 怎么切、Shuffle 四种流程差异Spark实时反压怎么传导、快照怎么对齐Flink数仓分层职责、拉链表更新逻辑项目架构、业务分析基础HashMap、GC、索引、缓存三问JavaSE、JVM、MySQL、Redis具体操作上建议按三天一轮第一天过组件机制合上资料画流程第二天手写代码HQL 十题加 Spark WordCount 加一道算法第三天做指标和项目经验的口述掐表一分钟说三十个指标。每轮结束把卡住的点记在一张纸上下一轮只复习这张纸。我自己的血泪经验是第一次系统复习时把八成时间花在背组件参数上结果面试官一问「你这个调优前后差多少、怎么证明」当场卡住。从那以后我每次复习任何模块都强制走一遍「机制 → 故障 → 定位 → 对比」四步参数只作为最后一步的佐证。这份资料目录够全正好当索引缺哪块补哪块比从头到尾通读效率高得多。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
从函数到命令行:用CLI-Anything打造轻量级Python CLI脚手架 1. 为什么我决定重写一个CLI脚手架而不是直接吹爆Fire1.1 从一段200行的argparse开始说起大概三个月前,我接了一个内部数据同步脚本的维护任务。功能本身很简单:从源接口拉数据,清洗,然后推到目标系统。难点不在业务逻辑ÿ… · 2026/11/4 10:44:20
STM32定时器编码器模式驱动电机精准控制与PID调试 1. 先把需求拆开:这套方案到底在解决什么问题 手上有一台小功率直流减速电机,轴上装了增量式旋转编码器,要求做到"给定转速就能稳、给定位置就能停"。这类需求在自动化设备、小型机械臂、实验平台里非常普遍,核心手段就… · 2026/11/4 10:44:20
从习题解答看数据结构与算法分析:复杂度推导与实现避坑 简介:这份PDF是Mark Allen Weiss《Data Structures and Algorithm Analysis in C》第二版的配套习题解答手册,面向正在学习数据结构与算法分析课程、需要对照课后练习查漏补缺的高校学生与自学者。内容覆盖算法复杂度分析、表栈队列、树、哈希、优先队列… · 2026/11/4 10:43:19
MAS 激活脚本实操:4 种方式永久激活 Windows 与 Office MAS 激活脚本实操:4 种方式永久激活 Windows 与 Office 【免费下载链接】Microsoft-Activation-Scripts Open-source Windows and Office activator featuring HWID, Ohook, TSforge, and Online KMS activation methods, along with advanced troubleshooting. 项… · 2026/11/4 11:25:17
如何快速部署Ideogram-4模型到ComfyUI?新手必备安装指南 如何快速部署Ideogram-4模型到ComfyUI?新手必备安装指南 【免费下载链接】Ideogram-4 项目地址: https://ai.gitcode.com/hf_mirrors/Comfy-Org/Ideogram-4
想要在ComfyUI中体验Ideogram-4的强大AI图像生成能力吗?这篇快速部署指南将为你提供完整… · 2026/11/4 11:24:17
JoyAI-Echo实战教程:如何编写故事提示JSON生成连贯多镜头视频 JoyAI-Echo实战教程:如何编写故事提示JSON生成连贯多镜头视频 【免费下载链接】JoyAI-Echo JoyAI-Echo,这是一个独立的、仅用于推理的版本,旨在实现分钟级多镜头音视频生成。它采用了经过蒸馏的DMD生成器、配对的跨模态记忆以及故事级别的一致… · 2026/11/4 11:24:17
Hermes Agent与区块链存储集成:去中心化数据管理的终极指南 Hermes Agent与区块链存储集成:去中心化数据管理的终极指南
在数字化时代,数据安全与隐私保护成为重中之重。Hermes Agent作为一款强大的AI代理工具,通过与区块链存储技术的创新集成,为用户提供了前所未有的去中心化数据管理解决… · 2026/11/4 11:24:17
Hermes Agent模型部署实战指南:量化与剪枝技术深度解析 Hermes Agent模型部署实战指南:量化与剪枝技术深度解析
在AI应用开发领域,模型部署的效率直接决定了产品的响应速度和资源成本。Hermes Agent作为一款功能强大的AI代理框架,通过内置的量化与剪枝技术,能够将大型语言模型的推理速… · 2026/11/4 11:24:17
如何使用Hermes Agent构建智能物流系统:路径优化与配送管理完整指南 如何使用Hermes Agent构建智能物流系统:路径优化与配送管理完整指南
在当今快节奏的商业环境中,物流配送的效率直接影响企业的竞争力。Hermes Agent作为一款强大的自动化工具,提供了路径优化与配送管理的核心功能,帮助企业实现智… · 2026/11/4 11:23:17
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38
AI辅助技术栈评估:提升研发决策效率60% 1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17
从生成Token到直接决策:Jev如何重塑AI Agent工程实践 1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17
32G统一内存跑大模型:内存账、TPS实测与端云分流 想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38