我正在使用 bq 版本 2.0.58 并尝试创建配置单元分区 BigQuery 外部表。但是使用 bq 命令创建 hive 分区外部表时缺少 hive 分区键列,以下命令创建表。
贮存:
gs://<bucket>/myfolder/size=1000/file_1k.csv
gs://<bucket>/myfolder/size=10000/file_10k.csv
mkdef命令,
bq mkdef --project_id=my-project --autodetect --source_format=CSV --hive_partitioning_mode=AUTO --hive_partitioning_source_uri_prefix=gs://<bucket>/myfolder gs://<bucket>/myfolder/* >my_table_def.json
mk命令,bq mk --external_table_definition=my_table_def.json my-project:my-dataset.mytable
上面的命令创建了一个带有 hive 分区键列的表。但是当我向其中添加架构时。创建表时缺少添加分区键 ( size ) 列。
创建表时缺少以下 bq 命令来创建分区键列。
bq mk --schema=ip:STRING,fraudype:STRING,probability:FLOAT --external_table_definition=my_table_def.json my-project:my-dataset.mytable
my_table_def.json,
{
"csvOptions": {
"encoding": "UTF-8",
"quote": "\""
},
"hivePartitioningOptions": {
"mode": "AUTO",
"sourceUriPrefix": "gs://<bucket>/myfolder"
},
"sourceFormat": "CSV",
"sourceUris": [
"gs://<bucket>/myfolder/*"
]
}