帮你快速理解、总结文档立即下载

数据变更历史

最近更新时间:2026-09-11 20:42:30
我的收藏

概述

数据表的变更历史用于回答「谁在什么时候对这张表做了什么改动」。在 Catalog 中打开任一表详情页后,变更历史 Tab 会按版本倒序展示该表的所有数据与 DDL 操作记录,并支持按用户、操作类型、时间范围筛选。DataBuddy 同时支持在 Spark SQL 中通过 DESCRIBE HISTORY 直接查询表的变更历史,便于在 SQL / Notebook 链路中编程式审计。
适用场景:
排查表数据为何被修改、被谁修改、什么时间修改。
验证近期 DDL 变更(如新增列、删除分区、重写表结构)是否符合预期。
在事故复盘、合规审计、版本追溯时定位具体的版本号与提交记录。

前提条件

当前账号已能登录工作空间,并对目标 Catalog → Schema → Table 拥有 Read 及以上权限。
目标表所在 Catalog 已绑定支持读取表历史的计算引擎(详见 使用限制)。
在 Catalog 表详情页查看变更历史时,需要先选择一个可用的计算资源用于拉取历史数据。

使用限制

限制项
说明
引擎依赖
表变更历史读取依赖底层 Catalog 实现;不同引擎支持的操作类型与字段范围可能存在差异。
记录条数
页面最多展示前 100 条变更记录;如需更多记录,请使用 SQL 中的 DESCRIBE HISTORY 查询。
展示字段
当前展示版本号、时间戳、用户 ID、用户名、操作、操作参数;后续将逐步扩展(如作业、Notebook、Cluster ID、版本号、事务隔离级别、是否盲追加、操作指标、用户自定义备注、引擎信息等)。
计算资源
进入变更历史 Tab 时必须选择计算资源;未启动时会先触发启动,启动期间历史数据不可读取。

操作步骤

步骤 1:进入表详情页

1. 登录 DataBuddy 控制台
2. 在顶部切换到目标地域和 Workspace。
3. 在左侧导航栏选择 数据目录
4. 依次展开 Catalog > Schema ,点击目标表名进入表详情页。

步骤 2:选择计算资源

1. 在表详情页切换到 变更历史 Tab。
2. 如当前计算资源未启动,按页面提示在选择框中选取一个可用计算资源:
计算资源选择框支持搜索。
资源状态用颜色和图标标识:绿色为运行中,灰色为待启动,圆圈为启动中;鼠标悬停可查看完整名称和状态描述。
1. 选择后系统会提示 计算资源正在启动中…更多信息请到计算资源查看 ,可点击资源名称跳转到 计算资源 页面查看启动详情。
2. 启动完成后会提示 计算资源已经启动。更多信息请到计算资源查看 ,此时可以读取变更历史。
提示
计算资源选择具有记忆功能:再次打开 变更历史 Tab 时,会自动沿用您上一次的选择。

步骤 3:查看变更历史

变更历史以表格形式按版本倒序展示,常用字段如下:
字段
说明
版本
表的版本号,从大到小排列,最新版本在最上方。
时间
该版本提交的时间戳,按最新时间在前展示。
变更类型
该次变更对应的操作类型,例如 INSERTUPDATEDELETEMERGECREATE TABLEDROP TABLETRUNCATERESTOREALTER TABLE 等。
用户 uin
触发变更的账号 ID 与显示名。
操作 / 操作参数
引擎记录的具体操作与参数。
操作详情
详细描述,支持点击三角形展开查看。
表格支持横向滚动,向右滑动可看到完整字段。当变更记录较多时,页面底部会提示:最多展示前 100 条变更记录。如果需要更多变更记录,请到 SQL 查询页面通过 DESCRIBE HISTORY 进行查询。

步骤 4:按用户或操作类型筛选

1. 在表格上方筛选:
用户 :默认 全部用户 ,可选择单个或多个用户进行过滤。
1. 如需按时间过滤,可在时间范围控件中选择日期。
2. 修改筛选条件后,表格会自动刷新;可使用浏览器返回或重新选择 全部用户 / 所有操作 恢复默认视图。

步骤 5:在 SQL 中查询表变更历史

如需在 SQL / Notebook 中编程式读取变更历史,可在已绑定对应引擎的查询会话中执行:
DESCRIBE HISTORY databricks_test.logantest.`客户信息`;
databricks_test.logantest.客户信息 替换为您的 catalog.schema.table 路径。表名包含中文、空格或保留字时建议用反引号包裹。返回结果与表详情页的字段一致,可继续配合 WHEREORDER BYLIMIT 等子句做进一步过滤。
提示
DESCRIBE HISTORY 的具体支持范围与返回字段由底层引擎决定,请先确认会话使用的引擎已支持该语法。

常见问题

Q:变更历史中看不到某次写入或 DDL 操作?

A:请按顺序确认:
1. 当前 Catalog / 引擎是否支持记录该类型的操作(部分引擎不会记录所有 DDL)。
2. 是否被前 100 条限制截断;如截断,请改用 DESCRIBE HISTORY 查询。
3. 该操作是否发生在所选时间范围(最多 30 天)之外。

Q:进入 变更历史 Tab 后一直显示 「请选择计算资源」?

A:说明当前会话没有可用的计算资源。请先在 计算资源 页面启动一个可用资源,或在选择框中选择处于「运行中」或「启动中」状态的资源。

Q:可以查看某次变更的具体数据差异吗?

A:当前版本仅展示版本号、操作、操作参数、变更日志等元信息,具体行级差异需通过 SQL 在不同版本之间做对比查询(例如借助引擎自身的版本访问语法)。

Q:能否从变更历史回滚到某个历史版本?

A:当前版本未提供页面化的回滚操作;如需回滚,请基于 DESCRIBE HISTORY 输出找到目标版本,再使用引擎支持的回滚或 RESTORE 语法在 SQL 中完成。

相关文档