首页 > 解决方案 > 我可以使用 GCP 中的 bigQuery 命令行工具进行 ETL 工作吗?

问题描述

我想问你一个关于谷歌云平台的bigQuery的问题。

我想做的工作是使用 bq load 的 ETL。

ETL 是指提取、转换和加载。

具体来说,我想在 JSON 格式的数据中添加一列。另外,我想更改添加列的数据类型。

例如

{
Cookie: 'test_cookie'
Time: "2020-10-26 00:00 UTC"
Data named } 

已经存在。

这里

{
Cookie: 'test_cookie'
dt: "2020-10-26"
hour : 00
timestamp : "2020-10-26 00:00 UTC"
} 

即将以这种方式执行数据 ETL 操作。

我发布了一个问题,因为很难找到与 Google Cloud Platform 文档相关的任何内容。

是否可以进行上述工作?

谢谢你。

标签: google-cloud-platformgoogle-bigquery

解决方案


您应该能够使用 bq 命令行工具完成大部分操作。有几种方法可以处理它。

  1. 做一些 unix 脚本来包装整个过程,保留 bq 命令行工具来执行你的加载。这更像是一个 ETL 场景。
  2. 采用更多 ELT 方法,首先将数据加载到阶段表中,然后在 BigQuery 中使用一些日期函数对其进行操作,以解析出时间列并加载结果数据。

GCP 的文档相当完善,这里有一些链接可以帮助您入门: https ://cloud.google.com/bigquery/docs/quickstarts/quickstart-command-line

https://cloud.google.com/bigquery/docs/reference/bq-cli-reference

https://cloud.google.com/bigquery/docs/bq-command-line-tool

https://codelabs.developers.google.com/codelabs/bigquery-cli#0


推荐阅读