使用 Pulumi 执行 DDL 在 BigQuery 中创建表
Execute DDL to create tables in BigQuery using Pulumi
我使用 Pulumi 作为自动化工具在 BigQuery 中创建 table/view。不幸的是,Pulumi 仅支持 JSON 模式,而我需要从 DDL 创建 table/view。
示例 ddl :
create table <table_name> ( col1 datatype , .....) partition by date_col ;
已尝试创建 Pulumi 作业table,但这也不起作用
job = gcp.bigquery.Job("job",
job_id="job_query",
labels={
"example-label": "example-value",
},
query=gcp.bigquery.JobQueryArgs(
query="""
CREATE TABLE `pulumi_test.tb_test` (
`id` string(36) ,
`date_col` DATE
)PARTITION BY date_col
OPTIONS(
require_partition_filter=true
)
""",
use_legacy_sql = False,
))
Pulumi 有命令接口可以用来解决这个问题。我们可以使用 Pulumi 界面并可以利用 BigQuery 命令行(“bq”)
import pulumi
from pulumi_command import local
random = local.Command("random",create=" bq query --use_legacy_sql=false <
test.sql" )
pulumi.export("random", random.stdout)
我使用 Pulumi 作为自动化工具在 BigQuery 中创建 table/view。不幸的是,Pulumi 仅支持 JSON 模式,而我需要从 DDL 创建 table/view。
示例 ddl :
create table <table_name> ( col1 datatype , .....) partition by date_col ;
已尝试创建 Pulumi 作业table,但这也不起作用
job = gcp.bigquery.Job("job",
job_id="job_query",
labels={
"example-label": "example-value",
},
query=gcp.bigquery.JobQueryArgs(
query="""
CREATE TABLE `pulumi_test.tb_test` (
`id` string(36) ,
`date_col` DATE
)PARTITION BY date_col
OPTIONS(
require_partition_filter=true
)
""",
use_legacy_sql = False,
))
Pulumi 有命令接口可以用来解决这个问题。我们可以使用 Pulumi 界面并可以利用 BigQuery 命令行(“bq”)
import pulumi
from pulumi_command import local
random = local.Command("random",create=" bq query --use_legacy_sql=false <
test.sql" )
pulumi.export("random", random.stdout)