提问者:小点点

Google bigquery将表导出到Google Cloud存储中的多个文件,有时是一个文件


我正在使用Bigquery python库将数据从Bigquery表导出为csv格式的GCS。

我已经给出了一个通配符模式,假设某些表可以超过1 GB

有时即使table很少MB它也会创建多个文件,有时只创建一个文件。

这背后有逻辑吗?

我的导出工作流程如下:

project = bq_project dataset_id = bq_dataset_id table_id = bq_table_id     
bucket_name =bq_bucket_name workflow_name=workflow_nm 
csv_file_nm=workflow_nm+"/"+csv_file_prefix_in_gcs+'*'client = 
bigquery.Client() destination_uri = "gs://{}/{}".format(bucket_name, 
csv_file_nm) dataset_ref = client.dataset(dataset_id, project=project) 
table_ref = dataset_ref.table(table_id) destination_table = 
client.get_table(dataset_ref.table(table_id)) configuration = 
bigquery.job.ExtractJobConfig() configuration.destination_format='CSV' – 
csv_file_nm=workflow_nm+"/"+csv_file_prefix_in_gcs 

共2个答案

匿名用户

我认为这是导出的预期行为。Bigquery导出留档指定以下内容:

将数据导出到多个文件时,文件的大小会有所不同。

这对应于您在导出中看到的行为。

匿名用户

我在使用EXPORT DATA时遇到了同样的空文件问题。

在做了一点R之后

您可以找到计数,并将其作为LIMIT值。

选择……

从…

哪里…

限额xxx