如何管理Google BigQuery的架构迁移,我们过去曾使用过Liquibase和Flyway。我们可以使用哪种工具来管理架构修改等(例如,在dev / staging环境中添加新列)。
根据BQ docs,您可以在架构中添加一行而无需任何其他过程。
对于更复杂的转换,如果它可以在SQL查询中解析,你可以运行该查询setting the destination table as the source table(虽然我会建议creating a backup of the table以防出现问题)。
例
假设我有一个表是一个整数的列(列d
),但在插入时它被写成一个字符串。我可以通过将自己设置为目标表并运行如下查询来修改表:
SELECT
a,
b,
c,
CAST(d AS INT64) AS d,
e,
f
FROM
`example.dataset.table`
这是更改架构的示例,但只要您可以使用BQ查询获得结果,就可以应用此示例。