运营指南 · 版本演进

在不改写历史的前提下演进 Dataset 与报告。

当 Dataset 拥有的 SQL、来源血缘、架构、列或列元数据发生变化,且现有报告必须决定是否接受新契约时,请使用此工作流。

当 Dataset 拥有的 SQL、来源血缘、架构、列或列元数据发生变化,且现有报告必须决定是否接受新契约时,请使用此工作流。
决策问题

Dataset v3 是否保留报告所需的列、类型、粒度和来源含义?还是 Report v5 应继续固定到 Dataset v2,直到重新设计分析契约?

使用的对象与控制

Dataset、DatasetVersion 与 DatasetColumn 承载基础数据契约。ReportVersion 承载分析意图和准确 DatasetVersion 绑定。AnalyticsRun 记录当前治理下的一次执行。

接受流程

新的 DatasetVersion 绝不会自行移动现有 ReportVersion。

失败与部分路径

候选被拒绝后,先前面向生产的报告版本及其历史运行绑定保持不变。

生成的证据

版本比较、已接受 DatasetVersion 身份、不可变 ReportVersion 绑定、编译/配置/筛选器/RLS 哈希以及后续 AnalyticsRun,为受支持变更提供已记录链。

决策问题

Dataset v3 是否保留报告所需的列、类型、粒度和来源含义?还是 Report v5 应继续固定到 Dataset v2,直到重新设计分析契约?

使用的对象与控制

Dataset、DatasetVersion 与 DatasetColumn 承载基础数据契约。ReportVersion 承载分析意图和准确 DatasetVersion 绑定。AnalyticsRun 记录当前治理下的一次执行。

Dataset 生命周期与不可变 DatasetVersion 身份

规范化 SQL、来源血缘、列、类型与已知概要元数据

Report 维度、指标、图表、持久筛选器与准确绑定

服务器拥有的编译、权限、RLS 与预览上下文

接受流程

新的 DatasetVersion 绝不会自行移动现有 ReportVersion。

  1. 创建新的 DatasetVersion

    保存已变更且由 Dataset 拥有的 SQL/架构/列契约,同时保留稳定 Dataset 身份和所有先前版本。

  2. 比较准确版本

    审阅规范化 SQL 差异、来源血缘、新增/移除/变更列、类型、可空状态和不可用历史元数据。

  3. 评估分析兼容性

    确认每个指标所需的目标粒度、维度和来源字段;不要仅根据名称匹配推断兼容性。

  4. 打开新的报告草稿

    保持先前 ReportVersion 不可变,并将草稿绑定到候选 DatasetVersion。

  5. 验证并编译

    解析元数据,验证 Query Context,并为当前受支持方言路径编译服务器拥有的只读 SQL。

  6. 在治理上下文中预览

    在当前权限与 RLS 范围内执行有限预览并审阅诊断,而不是只接受架构验证。

  7. 保存已接受的 ReportVersion

    只在接受后持久化新绑定;后续 AnalyticsRun 指向该准确 ReportVersion 与 DatasetVersion 对。

失败与部分路径

候选被拒绝后,先前面向生产的报告版本及其历史运行绑定保持不变。

字段被移除或更改

编译或语义验证会阻止草稿;应重新设计维度或指标,而不是更改旧 ReportVersion。

预览出现意外差异

把实时行漂移、来源变更、筛选器/RLS 范围和契约变更视为独立假设;虚拟 DatasetVersion 不是数据行快照。

多绑定为部分状态

审阅每个绑定诊断并保留部分状态;不要只根据成功绑定认证报告。

生成的证据

版本比较、已接受 DatasetVersion 身份、不可变 ReportVersion 绑定、编译/配置/筛选器/RLS 哈希以及后续 AnalyticsRun,为受支持变更提供已记录链。

Report v4 → Dataset v2 · Report v5 → Dataset v2 · Report v6 → Dataset v3

当前边界

比较涵盖已记录 SQL、架构、列、元数据与血缘;不会虚构通用下游业务影响。Analytics 指标、RLS 和报告权限仍位于基础 Dataset 聚合之外,准确历史行需要制品或明确物化快照契约。

下一步

审阅产品模型中的版本边界。

Dataset 拥有数据契约;Analytics 拥有报告意图、指标、RLS 与执行。

探索受治理的 Dataset