附录|FAQ
FAQ
需要什么基础?
建议具备编程能力,以及后端、数据工程、平台工程或算法工程中的任一基础。
可以跳着学吗?
可以,但建议至少先完成 Week01 和 Week02。
这套站点会持续更新吗?
会。前台会优先开放正式交付页面,后台生产材料不在前台暴露。
Week04 是否需要学生自己安装 Spark、Hive、Trino 或 Nessie?
不需要。Week04 的学生主路径是 omnisupport-copilot 仓库里的 Docker devbox:PostgreSQL 提供 SQL catalog,MinIO 提供 warehouse/object storage,PyIceberg 负责 catalog smoke、materialize、metadata inspection 和 demo report。
Week04 为什么优先用 devbox CLI,而不是直接从 Dagster 点按钮?
当前 Week04 的事实来源是 PyIceberg 命令链。Dagster 在这一周可以作为 thin wrapper 或后续编排入口,但在 Dagster 镜像完整拥有 PyIceberg 依赖之前,课程验收以 runbooks/week04/README.md 里的 devbox 命令和 reports/week04/* 证据为准。
如果课程站点和 OmniSupport Copilot 仓库命令不一致,以哪个为准?
以真实项目仓库为准。优先检查 docs/blueprints/week04/course_site_sync_packet_v1.md 和 runbooks/week04/README.md,课程站点只应该同步已经在仓库里落地的路径、命令和报告文件。
Week05|Transform、语义层与受控 KPI 工具
为什么 Week5 不就是写几个 KPI SQL?
因为本周交付的是口径资产包:source、grain、tests、docs、lineage、registry、tool contract 和 audit 都要能被复核。SQL 只是其中一层实现。
dbt 是数据库吗?
不是。dbt 不存数据,也不画图。它把 SQL transform 组织成有依赖、有测试、有文档、有 artifacts 的工程。
staging、intermediate、marts 到底怎么分?
staging 负责稳定输入形状,intermediate 承接复杂业务组合,marts 面向下游消费。判断标准不是目录名,而是“一层该对谁负责”。
grain 为什么这么重要?
grain 是“一行代表什么”。如果 support_case_mart、support_kpi_mart 和 raw event 的 grain 混在一起,count、rate、avg 都会看起来能跑但业务含义错误。
data tests 和 unit tests 有什么区别?
data tests 断言模型结果或 source 假设,例如 not null、accepted values。unit tests 用小样本验证 SQL 逻辑边界,例如 first response 或 reopen 规则。
dbt docs generate 有什么实际用?
它不只是生成网页,还会产出 manifest.json、catalog.json 等 evidence,帮助字段解释、lineage、impact notes 和后续交付复盘。
Semantic Layer、MetricFlow 和本地 metric registry 是什么关系?
本地 registry 是 Week05 的最小语义契约;MetricFlow 和 dbt Semantic Layer 是未来可以迁移和扩展的方向。课程不把托管平台作为硬依赖。
为什么不把 dbt Cloud / 托管 Semantic Layer 作为学生硬依赖?
因为 Student Core 要能本地复现。托管平台能力可以作为未来路线,但不能替代本地 dbt Core、registry 和 tool contract 的可验证交付。
为什么 Agent 不能直接写 SQL?
Agent 裸写 SQL 会带来口径漂移、越权、非法 filter、成本失控、审计缺失和不可复现。本周用 query_support_kpis_v1 把查询收进白名单和审计边界。
为什么负例测试是工具验收的核心?
正例只能证明工具能查;负例能证明工具会拒绝不该发生的查询,例如未知指标、非法维度、角色越权和过大时间窗口。
为什么 mart 里有的指标不一定要开放给 Agent?
mart 中可计算,不代表业务定义、tests、docs、roles、负例和 audit 都准备好了。avg_first_response_minutes 这类指标可以先观察,暂不进 registry。
Week5 和 Week6 / Week8 / Week10 的边界是什么?
Week5 负责 analytics、metric registry 和安全指标查询工具 v1。Week6 继续做资产化编排和回填,Week8 消费指标与证据做检索一致性,Week10 扩展更完整的 tool/action/HITL 治理。