计划从 Google BigQuery 导出到 Google Cloud Storage

RoS*_*RoS 6 scheduled-tasks google-cloud-storage google-bigquery

我是 Google Cloud 的新手,想了解有关如何安排查询并将其导出到 Google Cloud Storage 的最佳用例。我看过有关如何手动导出数据的文档,但找不到任何有关以自动方式执行此操作的具体内容。有没有最好的方法来解决这个问题?

谢谢

p13*_*r0m 9

可以使用计划查询功能和EXPORT DATA语句创建计划导出作业。例如,下面的脚本每天将数据作为采用 SNAPPY 压缩的 Parquet 文件备份到 GCS。每次执行作业时,都会获取前一天的所有数据。

DECLARE backup_date DATE DEFAULT DATE_SUB(@run_date, INTERVAL 1 day);

EXPORT DATA
  OPTIONS ( uri = CONCAT('gs://my-bucket/', CAST(backup_date AS STRING), '/*.parquet'),
    format='PARQUET',
    compression='SNAPPY',
    overwrite=FALSE ) AS
SELECT
  *
FROM
  `my-project.my-dataset.my-table`
WHERE
  DATE(timestamp) = backup_date
Run Code Online (Sandbox Code Playgroud)

然后,您可以从 BiqQuery UI 创建计划查询并设置触发频率和触发时间。

在此输入图像描述


小智 5

    \n
  1. 使用 Node.js、python 或 Go实现表导出功能[1]。Cloud Functions 和 BigQuery 支持这些语言。
  2. \n
  3. 将上述函数插入到 Cloud Function [2]服务中,该服务是一个事件驱动的无服务器计算平台。
  4. \n
  5. 使用 Cloud Scheduler [3]使用您选择的计划间隔触发上述函数。可以使用 cron 表达式指定计划间隔。调度程序将通过 function\xc2\xb4s 端点上的 REST 调用来触发该函数。
  6. \n
  7. 通过访问您的存储桶并确保表已成功导出来验证上述操作是否成功。
  8. \n
\n