CVTE 数据分析师面经(含 AI 取数助手设计)
- 时间
- 2026-09
- 来源
- 牛客网
《面试题目》
- 简单做一下自我介绍。
- 你对未来 3 到 5 年的职业发展有规划吗?
- 你理想的工作模式是什么?
- 在实习中,你有没有主动发现问题、并用数据分析能力推动解决的案例?
- 指标口径不统一是数据分析和运营的常见问题。假设两个部门对同一指标存在争议、互不认可,你作为参与指标体系建设的数据分析师,会如何处理?
- 假设需要建设经营分析驾驶舱,供业务负责人每日查看,作为数据分析师,接到这个需求你会如何设计?
- 假设你搭建完成的看板上线后,业务反馈页面加载需要 20 秒,速度很慢。你如何定位和优化?
- 数分岗位对 AI 能力要求较高,业务有大量提数需求。假设公司有 1000 名销售,希望查询昨日业绩,团队准备开发自然语言取数助手,销售一句话即可查询昨日业绩,支持下钻分析、自动输出数据报告。你会如何设计,以及如何验收这个能力?
- 完善知识库之后,模型依然存在幻觉,还有哪些手段提升数据查询准确率?
- 你提到多 Agent 协作。如果上游 Agent 输出错误,如何校验、建立纠错机制?
- AI 时代数分也需要写 SQL。你认为 AI 辅助写 SQL 有哪些注意事项,如何保证 AI 生成的 SQL 可以直接使用?
- 这套多 Agent 智能取数助手,业务推广时,业务人员习惯使用 Excel 表格、对 AI 工具存在不信任、担心数据不准确。你会如何推广这个工具,推动业务使用?
- 三段实习中,有没有遇到很难处理的问题?可以举案例,数开或数据质量运营相关都可以。
- 在你理解中,当前 AI 工作模式还有哪些优化方向?
- 你们实习生内部 AI 使用政策如何?是否所有模型都可以随意调用,还是公司有自研大模型平台、可以调用 API、存在额度限制?
- 反问:数分两个培养方向最终如何确定?是公司分配还是候选人自主选择?
- 反问:数据同学是统一在大部门,还是分配到业务团队?例如销售团队配置专属数分,还是统一在数据部门接收需求?
《参考解析》
指标口径冲突怎么处理:这类问题的关键是先承认「口径没有绝对对错,只有服务于什么决策」。落地做法分四步:① 把争议拆成具体差异项——时间口径(自然日/滚动 24 小时/财务月)、主体口径(下单用户/支付用户/去重维度)、状态口径(下单/支付/发货/退款是否剔除)、数据源(埋点/业务库/财务系统),通常一列就发现两边说的不是同一个东西;② 拉上双方业务方 + 数据负责人开一次口径对齐会,形成书面定义,写进指标字典(口径、SQL、责任人、变更记录);③ 在指标平台上做「一个指标一个定义、一个出口」,看板和取数都从同一张 DWS/ADS 表出,禁止各团队自己写 SQL 复算;④ 后续变更走审批与公告,历史数据是否回溯重算要明确说明。补充一句很有加分:指标治理的收益要用「避免一次误决策的成本」来汇报,否则业务方没有动力配合。
经营分析驾驶舱的设计:先问清「谁看、看什么决策、多久看一次」,驾驶舱不是把指标堆上去。① 指标体系:北极星指标(营收/毛利)→ 一级拆解(收入 = 客户数 × 客单价,或按产品线/区域/渠道拆)→ 二级过程指标,遵循 MECE;每个指标都标口径、更新频率、责任部门。② 分层:顶部核心 KPI 卡(带目标值与同比环比、达成率),中间趋势与结构(趋势线、瀑布图、占比),底部明细与下钻入口。③ 数据链路:ODS → DWD → DWS/ADS 预聚合,按「天/周/月」粒度预计算好,看板只查聚合结果;重点指标做 T+1 甚至准实时(小时级)批量刷新,并加上数据更新时间与数据质量校验结果,让业务知道数据是不是可信。④ 性能与权限:结果集控制、缓存、按角色做行级权限(区域/事业部)。⑤ 交互原则:一屏内看到「好不好、差在哪、下一步查什么」,异常用阈值/环比预警标红,不要超过 3 层下钻。
看板加载 20 秒怎么定位:先分层定位,不要上来就说加索引。① 前端/网络层:浏览器 Network 面板看是哪个请求慢——是首屏 JS 体积大、还是某个接口 20 秒;同时看是不是并发请求太多、被浏览器同域并发限制排队。② 接口/查询层:看慢 SQL 日志或 APM 链路,按「扫描行数、是否走分区/索引、是否大表 join、是否有 select *、是否有全表 count(distinct)」逐项排查;常见病根是看板直连明细表、每次实时算同比环比。③ 存储层:确认是否命中了预聚合表、分区裁剪是否生效。优化手段按性价比排序:把计算前置到 ETL/物化视图做预聚合 → 给过滤字段和分区键建索引、调整分区粒度 → 减少列和宽表 join、把多指标合并成一次查询 → 结果缓存(分钟级 TTL,业务能接受延迟的话)→ 前端分页/懒加载 + 骨架屏 + 明确 loading 态。最后一定要加数据更新时间和看板加载埋点,否则优化完没有度量。
自然语言取数助手怎么设计与验收:设计上建议拆成四个模块。① 语义层:把「昨日业绩」「销售额」这类业务词映射到指标字典(指标 + 维度 + 时间口径 + 权限过滤),这是准确率的根基——不要让模型直接对库表裸奔,模型只允许生成基于语义层/宽表的受限 SQL。② 查询生成:Text-to-SQL 用带表结构 DDL、字段注释、少量同义句示例(few-shot)和枚举值字典做提示,输出后做语法校验 + 白名单校验(只读、只允许访问已授权的表/字段、强制带上行级权限条件、强制 LIMIT 和超时)。③ 执行与容错:超时/空结果时给出可执行的下一步建议;结果一律回带口径说明(指标定义、时间范围、数据更新时间)。④ 呈现:一句话得到结果 + 一句话结论 + 图表,支持下钻到明细,自动生成日报/周报。验收要分两层:一层是能力指标——准备 200~500 条真实问法(含口语、错别字、多指标、多轮追问)做测试集,看执行准确率(SQL 语义是否正确)和忠实度(结论是否与 SQL 结果一致),而不是只看「SQL 能不能跑通」;另一层是权限与安全验收(越权取数、注入、跨部门数据);再加上业务侧指标:采用率、问法覆盖率、人工干预率、单次取数耗时对比(原来找数分提需求要多久)。上线用灰度 + 双跑比对(AI 结果与人工口径一致才算通过)。
怎么压幻觉、怎么纠错:幻觉在取数场景里的表现是「编字段、编表、编数值、编口径」。手段:① 收窄自由度——模型只能从语义层选指标和维度,不允许自由生成表名字段名;② 检索增强——用业务知识库(指标定义、同义词、历史问法)做召回再拼提示,而不是只靠模型记忆;③ 输出结构化+校验——让模型输出结构化查询计划(指标、维度、过滤、时间),再由确定性代码翻译成 SQL,这样能被程序校验;④ 结果自检——执行前后做一致性校验:SQL 是否只读、行数是否异常、与上一周期偏离是否超过阈值(偏离就提示确认而不是直接给结论)、关键数字是否与底层明细抽样对齐;⑤ 低置信度就拒答或转人工,并记录 badcase 回流。多 Agent 纠错则是:上游 Agent 的输出必须带结构化中间产物,下游用规则校验 + 第二次独立生成做交叉验证(两个方案不一致就升级人工),再加一个专门的 critic Agent 按固定清单审查,所有决策留痕可回放;重试要有次数上限,避免错误被放大。
AI 辅助写 SQL 的注意事项:① 安全边界——只给只读账号,强制表/字段白名单与行级权限,禁止 DDL/DML,强制 LIMIT 与超时;② 正确性——务必人工核对口径(时间范围、是否去重、是否剔除退款/测试单),join 条件最容易错(一对多导致指标翻倍),建议先在样本分区上跑一遍再全量;③ 可读与可维护——要求统一格式化、加注释、把魔法值换成参数,指标计算尽量复用语义层而不是复制粘贴;④ 性能——检查是否命中分区与索引、避免 select *、避免在大表上用函数包住过滤字段、注意 count(distinct) 的开销;⑤ 流程——AI 生成的 SQL 进生产前过一遍代码评审或至少双人抽查,产出物入库到指标字典,形成可复用的资产。一句可以直接说的结论:AI 提效在于「初稿」,责任仍然在人,验收标准是结果与人工口径一致。
面试复盘:这场面试基本没有考数分传统八股(概率统计、A/B 实验),而是围绕 AI 落地 + 指标体系设计展开,属于典型的「数分岗位 AI 化」问法。反问环节面试官补充了岗位信息:数分分经营分析(关注营收、成本、预算、费用、整体绩效等结果指标)和业务数据分析(偏过程指标)两个方向;团队有两种模式,业务端渗透模式是小团队对接特定业务板块,平台端按领域(供应链、质量、营销、研发、财务)覆盖集团。回答这类设计题时,建议固定用「需求澄清 → 指标/口径 → 数据链路 → 交互与权限 → 度量与验收」的框架,比零散输出更容易被认可。