You need to enable JavaScript to run this app. 误删Google BigQuery上传数据集中表的重要行后如何恢复该表?
优惠活动
大模型
产品
解决方案
定价
更多

误删Google BigQuery上传数据集中表的重要行后如何恢复该表?

BigQuery 误删表数据恢复方案

适用前提

删除操作发生在BigQuery默认的7天时间旅行窗口内(部分自定义配置的实例最多支持14天窗口),超出窗口则无法使用下述内置功能恢复。

恢复步骤

方法一:通过时间旅行查询直接恢复(最便捷)

  1. 先确认DELETE操作的大致执行时间,取删除操作前的任意时间点即可,建议精确到分钟。
  2. 先执行快照查询验证数据是否符合预期:
-- 时间戳替换为你删除操作前的时间点,比如你14:30执行的删除,就填14:29的时间
SELECT * FROM `cars.car_info`
FOR SYSTEM_TIME AS OF '202X-XX-XX 14:29:00';

-- 如果记不清精确时间,也可以用时间偏移量,比如删了不到1小时就取1小时前的快照
SELECT * FROM `cars.car_info`
FOR SYSTEM_TIME AS OF TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR);
  1. 确认查询结果包含你误删的price=0的行之后,直接覆盖原表完成恢复:
CREATE OR REPLACE TABLE `cars.car_info`
AS
SELECT * FROM `cars.car_info`
FOR SYSTEM_TIME_AS_OF '你确认的删除前时间戳';

小提示:担心直接覆盖出问题的话,可以先把快照结果写入临时表cars.car_info_recovered,核对数据无误后再替换原表。

方法二:通过控制台快照恢复

如果你的表开启了自动快照功能,或者之前手动生成过删除前的快照,可以通过可视化操作恢复:

  • 打开BigQuery控制台,进入cars数据集页面
  • 找到car_info表,切换到「快照」标签
  • 选择删除时间之前的快照,点击「恢复」,选择恢复到原表即可

额外说明

  • 恢复操作会覆盖当前表的所有数据,操作前建议先备份当前的表数据
  • 如果删除操作已经超出时间旅行窗口,可联系组织管理员查询是否有导出到云存储的离线备份可用于恢复

内容的提问来源于stack exchange,提问作者Vicky Josepha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 04:27:04