如何将多个文件(相同的模式)加载到BigQuery中的表中?

时间:2017-02-17 16:52:26

标签: google-bigquery

我有一个csv文件的文件夹,其中包含我想要加载到bigquery表中的相同模式。

是否有选项可以将文件夹路径作为BQ命令的输入加载到bigquery表中?我很想知道如果不迭代文件或在源头合并输入文件就可以完成。

3 个答案:

答案 0 :(得分:7)

如果使用云存储是一个选项,您可以将它们全部放在存储桶中的公共前缀中并使用通配符,例如gs://my_bucket/some/path/files*以快速指定具有多个输入的单个加载作业。

答案 1 :(得分:0)

请注意

  

对于存储桶中的对象(文件名),只能使用一个通配符。通配符可以出现在对象名称内部或对象名称的末尾。不支持将通配符添加到存储桶名称。

因此不支持类似gs://my_bucket/some/*/files*之类的东西。

来源:https://cloud.google.com/bigquery/docs/loading-data-cloud-storage#load-wildcards

答案 2 :(得分:0)

如果要递归包含所有CSV,则文件可以位于子目录中。

bq load --source_format=CSV \
dataset_name.table_name \
"gs://my_bucket/folder/*.csv"

这会将通配符放在中间路径和文件名上。 (例如*扩展为subfolder/folder2/filename