大数据平台面试专题
概述
本文汇总大数据平台方向的高频面试题,覆盖平台架构、集群规划、数据服务、自助分析四大块。每题给出要点式回答与追问思路,帮助系统梳理平台面试知识。
一、平台架构面试题
1.1 你们的大数据平台整体架构是什么?
回答框架:
分层架构 + 组件选型 + 核心链路
应用层:报表/自助分析/数据服务
服务层:OneService 网关/指标平台
计算层:Spark/Flink/OLAP 引擎
存储层:HDFS/消息/K-V/数仓
采集层:Canal/DataX/日志采集
支撑:调度/治理/安全/监控| 层 | 职责 | 代表组件 |
|---|---|---|
| 采集 | 数据入口 | Canal、DataX |
| 存储 | 数据底座 | HDFS、Kafka |
| 计算 | 数据处理 | Spark、Flink |
| 服务 | 对外输出 | Doris、OneService |
| 应用 | 业务使用 | 报表、自助分析 |
追问点:
为什么选这套组件?
数据链路从采集到应用走一遍?
平台如何支撑业务快速取数?1.2 平台建设遇到过哪些坑?
常见坑与解法:
口径不统一 → 指标平台统一管理
任务乱跑 → 统一调度+依赖管理
数据重复加工 → 血缘分析+资产治理
查询慢 → 分层建模+预聚合+OLAP
告警轰炸 → 告警分级+聚合抑制1.3 如何评估一个平台的健康度?
| 维度 | 指标 |
|---|---|
| 稳定 | 作业成功率、服务可用性 |
| 时效 | 数据就绪率、任务按时率 |
| 质量 | 质量校验通过率 |
| 成本 | 资源利用率、闲置资产占比 |
| 安全 | 权限覆盖、审计完整性 |
二、集群规划面试题
2.1 集群规模怎么规划?
回答要点:
数据量 → 存储估算
计算需求 → 资源估算
增长预测 → 预留冗余
估算公式:
存储 = 日增量 × 保留天数 × 副本 × (1+冗余)
计算 = 高峰期任务资源总和 × 余量| 输入 | 估算 |
|---|---|
| 日新增 1TB | 存储需求明确 |
| 高峰 100 任务 | 计算资源明确 |
| 3 年增长 | 预留扩展空间 |
2.2 Master 高可用怎么设计?
高可用设计:
HDFS:NameNode Active/Standby + ZKFC
YARN:ResourceManager 双活
Hive:MetaStore 多实例 + 元数据库主备
调度:调度平台多节点
网关:无状态多副本2.3 集群扩容/缩容考虑什么?
扩容:
存储压力 → 加 DataNode
计算压力 → 加 NodeManager
跨机房 → 机架感知
缩容:
下线需平衡数据
先缩计算后缩存储
监控资源水位再动手2.4 多集群怎么管理?
多集群场景:
生产/测试隔离
多机房容灾
不同业务隔离
方案:
统一平台管控多个集群
元数据统一(一套权限)
资源按集群配额三、数据服务面试题
3.1 统一查询网关(OneService)的作用?
作用:
统一入口 → 屏蔽多引擎差异
统一权限 → 一处鉴权
统一审计 → 全量记录
统一治理 → 限流/熔断/缓存
核心链路:
认证 → 解析 → 鉴权 → 路由 → 缓存 → 执行 → 审计3.2 多引擎路由怎么做?
路由策略:
按元数据(表属于哪个引擎)
按查询类型(聚合/明细/实时)
按 SQL 特征(是否命中缓存)
按用户(不同优先级)
原则:
元数据为准,SQL 特征兜底3.3 查询慢如何排查?
排查思路:
1. 是否命中缓存
2. 是否走了正确引擎
3. 表数据量/分区裁剪
4. SQL 是否可优化(谓词下推)
5. 引擎资源是否紧张
6. 是否数据倾斜3.4 数据服务如何保证 SLA?
| 手段 | 说明 |
|---|---|
| 缓存 | 命中率提升 |
| 限流 | 防止打垮 |
| 熔断 | 降级保护 |
| 超时 | 快速失败 |
| 监控 | 延迟/成功率告警 |
四、自助分析面试题
4.1 BI 工具如何选型?
选型思路:
自建平台 → Superset(灵活)
轻量团队 → Metabase(快)
监控大屏 → Grafana(实时)
有预算 → 商业 BI(服务)
考量:用户水平/数据源/权限/嵌入/成本4.2 行级权限怎么实现?
实现方案:
查询层注入:
WHERE 权限维度 IN (用户允许集)
元数据配置权限维度
用户身份 → 角色 → 权限集
注意:
列级权限(脱敏/隐藏)
权限定期复核4.3 自助分析如何防止口径失控?
最佳实践:
只允许用指标平台发布的数据集
禁止直连明细裸表
数据集上线需口径审核
新口径走指标平台流程4.4 自助查询慢怎么办?
优化手段:
预聚合(面向查询建汇总)
宽表(减少大表 Join)
结果缓存
查询超时与限流
大查询路由专用引擎五、综合场景题
5.1 从 0 到 1 搭一个数据平台,怎么规划?
规划路径:
阶段一:基础(采集+存储+数仓+调度)
阶段二:提效(指标平台+自助分析)
阶段三:治理(血缘+质量+安全)
阶段四:服务(统一网关+对外 API)
原则:
先跑通核心链路
再治理与提效
每一步都可量化价值5.2 双十一大促数据链路怎么保障?
保障方案:
容量评估(提前扩容)
压测(全链路压测)
限流降级(保护核心链路)
监控(大屏实时)
应急预案(回切/降级预案)
核心:提前演练 + 实时监控 + 快速降级5.3 数据平台如何降本?
| 手段 | 说明 |
|---|---|
| 资源治理 | 队列配额/弹性伸缩 |
| 数据治理 | 下线闲置资产 |
| 任务治理 | 合并重复任务 |
| 存储优化 | 压缩/分层存储 |
| 计算优化 | 参数调优/减少倾斜 |
降本要点:
先找浪费(血缘/资产分析)
再定策略(分级下线)
持续监控(成本看板)六、面试技巧与避坑
6.1 回答加分项
加分点:
用自己平台的案例讲(真实经历)
讲清"为什么"(选型理由)
讲闭环(问题-方案-效果)
讲量化(效率提升百分比)6.2 常见雷区
| 雷区 | 避免 |
|---|---|
| 只背概念 | 结合场景讲 |
| 只讲单点 | 讲链路/系统 |
| 只讲成功 | 讲踩坑与改进 |
| 回答空洞 | 给具体参数/数据 |
6.3 反问环节
可问的优质问题:
平台当前规模与组件?
数据团队组织与分工?
当前最大的技术挑战?
对新人的期望?七、小结
平台面试考的是全局视野 + 落地细节:架构讲清楚分层与链路,规划讲清楚估算逻辑,服务讲清楚核心链路,分析讲清楚权限与治理。回答时多用自己场景的案例与数据,把每一个方案讲成一个"发现问题 → 设计方案 → 落地效果"的闭环。