如何在BigQuery中恢复已删除的View?

MJK*_*MJK 3 google-bigquery

我已在bigquery中删除了一个视图。我知道有一个选项可以基于表快照装饰器还原已删除的表。有什么方法可以检索已删除的bigquery视图?

Ind*_*til 10

有一种方法可以找回它。您需要搜索在创建视图时滚动的插入日志。从堆栈驱动程序日志中可以看到此日志。步骤如下:

  1. 转到GCP控制台

  2. 单击堆栈驱动程序日志记录

  3. 单击搜索文本框中显示的箭头,然后选择“转换为高级筛选器”
  4. 现在删除所有内容并将其粘贴在查询下面。不要忘记在查询中输入视图名称。

resource.type="bigquery_resource" protoPayload.methodName="tableservice.insert" protoPayload.serviceData.tableInsertRequest.resource.tableName.tableId="Your_view_name"

  1. 您将获得视图创建的记录,现在单击全部展开并转到视图部分。您可以在其中找到在创建视图时使用的查询。
  2. 只需将该查询粘贴到bigquery中,然后单击保存视图即可。

或者,如果要搜索视图的更新以恢复特定版本,则可以使用以下过滤器:

resource.type="bigquery_resource"
protoPayload.serviceData.tableUpdateRequest.resource.tableName.datasetId="<dataset_id>"
protoPayload.resourceName="projects/<project_id>/datasets/<dataset_id>/tables/<table_or_view_id>"
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助您恢复BQ视图。

  • 我想你刚刚救了我的命 (2认同)