Amazon S3 镶木地板文件 - 传输到 GCP/BQ

时间:2021-05-26 09:27:17

标签: amazon-s3 google-cloud-platform google-bigquery parquet google-cloud-data-transfer

大家早上好。我有一个 GCS 存储桶,其中包含从我们的 Amazon S3 存储桶传输的文件。这些文件采用 .gz.parquet 格式。我正在尝试使用传输功能设置从 GSC 存储桶到 BigQuery 的传输,但是我遇到了镶木地板文件格式的问题。

当我创建传输并将文件格式指定为 Parquet 时,我收到一条错误消息,指出数据不是 Parquet 格式。当我尝试在 CSV 中指定文件时,奇怪的值出现在我的表中,如链接的图像所示: Results 2

我尝试了以下 URI:

  • bucket-name/folder-1/folder-2/dt={run_time|"%Y-%m-%d"}/b=1/geo/*.parquet.文件格式:镶木地板。结果:文件不是镶木地板格式。

  • bucket-name/folder-1/folder-2/dt={run_time|"%Y-%m-%d"}/b=1/geo/*.gz.parquet。文件格式:镶木地板。结果:文件不是镶木地板格式。

  • bucket-name/folder-1/folder-2/dt={run_time|"%Y-%m-%d"}/b=1/geo/*.gz.parquet。文件格式:CSV。结果:转移完成,但值很奇怪。

  • bucket-name/folder-1/folder-2/dt={run_time|"%Y-%m-%d"}/b=1/geo/*.parquet.文件格式:CSV。结果:转移完成,但值很奇怪。

有人知道我应该如何进行吗?提前致谢!

2 个答案:

答案 0 :(得分:1)

有一个专门的文档解释了如何将 Parquet 数据从 Cloud 存储桶复制到 Big Query,如下所示。如果它仍然不能解决您的问题,请您通过它并更新我们。

https://cloud.google.com/bigquery/docs/loading-data-cloud-storage-parquet

问候, 暗部。

答案 1 :(得分:0)

查看您的 URI 的外观,您要查找的页面是 this one,用于将 hive 分区的镶木地板文件加载到 BigQuery。

您可以在 Cloud Shell 中尝试以下操作:

bq load --source_format=PARQUET --autodetect \
--hive_partitioning_mode=STRINGS \
--hive_partitioning_source_uri_prefix=gs://bucket-name/folder-1/folder-2/ \
dataset.table `gcs_uris`