gpt4 book ai didi

google-bigquery - 如何使用 CLI bq 命令创建一次性数据集副本(无计划重复)

转载 作者:行者123 更新时间:2023-12-03 08:26:19 28 4
gpt4 key购买 nike

我想使用 bash 脚本在 BigQuery 中进行一次性数据集复制,从 source_dataset_Atarget_dataset_B

此操作在 BigQuery Console 中很容易完成,如下所示 enter image description here

但是,如果我像下面一样使用 bq mk --transfer_config,它将创建一个具有重复计划(“每 24 小时”)的数据集复制传输作业。

bq mk --transfer_config --project_id=data-project --data_source=cross_region_copy \
--display_name='one-time-dataset-copy' \
--target_dataset=target_dataset_B \
--params='{"source_dataset_id":"source_dataset_A","source_project_id":"source_project","overwrite_destination_table":"true"}' \

如何在 BigQuery 中进行一次性数据集复制?

最佳答案

我花了一段时间才弄清楚如何做到这一点,但需要的是正确设置 bq 中的三个 schedule 标志。

--schedule: Data transfer schedule. If the data source does not support a custom schedule, this should be empty. If empty, the default value for the data source will be used. The specified times are in UTC. Examples of valid format: 1st,3rd monday of month 15:30, every wed,fri of jan,jun 13:15, and first sunday of quarter 00:00.

--schedule_end_time: Time to stop scheduling transfer runs for the given transfer configuration. If empty, the default value for the end time will be used to schedule runs indefinitely.The format for the time stamp is RFC3339 UTC "Zulu".

--schedule_start_time: Time to start scheduling transfer runs for the given transfer configuration. If empty, the default value for the start time will be used to start runs immediately.The format for the time stamp is RFC3339 UTC "Zulu".

要制作一次性副本,您需要设置具有正确开始和结束时间的计划,使其仅运行一次。

所以你可以这样做

bq mk --transfer_config --project_id=data-project --data_source=cross_region_copy \
--display_name='one-time-dataset-copy' \
--target_dataset=target_dataset \
--params='{"source_dataset_id":"source_dataset","source_project_id":"source_project","overwrite_destination_table":"true"}' \
--schedule_end_time=$(date -u -d '5 mins' +%Y-%m-%dT%H:%M:%SZ)

表示每 24 小时设置一次数据集复制传输作业(--schedule 默认值),计划立即开始--schedule_start_time default,并安排从现在起 5 分钟后结束 ( --schedule_end_time )。通过这样做,传输作业将仅触发一次且仅一次运行。

关于google-bigquery - 如何使用 CLI bq 命令创建一次性数据集副本(无计划重复),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66559395/

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