gpt4 book ai didi

google-bigquery - bigquery 备份所有 View 定义

转载 作者:行者123 更新时间:2023-12-05 07:36:08 26 4
gpt4 key购买 nike

我正在使用 bigquery,已经创建了数百个 View 。其中大部分未使用,应删除。但是,有可能使用了一些,我不能盲目地全部删除。因此,我需要在删除它们之前以某种方式备份所有 View 定义。

谁知道有什么好方法吗?我不是要保存数据,只是保存 View 定义查询及其名称。

感谢阅读!

最佳答案

构建existing answer ,您可以通过使用 jq 解析 bq 的输出来自动备份所有 View :

#!/bin/bash

DATASETS=$(bq ls --format=sparse | tail -n+3)
for d in $DATASETS; do
TABLES=$(bq ls --format=prettyjson "$d" | jq '.[] | "\(.id), \(.type)"')
IFS=$'\n'
for table in $TABLES; do
[[ ! "$table" == *VIEW* ]] && continue
view=$(echo "$table" | sed -e 's/"//g' | cut -d , -f 1)
query=$(bq show --format=prettyjson "$view" | jq -r '.view.query')
echo -e "$query" > "$view.sql"
done
done

关于google-bigquery - bigquery 备份所有 View 定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49248326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com