首页 > 解决方案 > 如何将文件从互联网直接下载到 Google Cloud 存储桶

问题描述

我想直接从互联网上下载一个超过 20GB 的文件到谷歌云存储桶中。就像在本地命令行中执行以下操作一样:

wget http://some.url.com/some/file.tar 

我拒绝将文件下载到我自己的计算机,然后使用以下命令将文件复制到存储桶:

gsutil cp file.tar gs://the-bucket/

目前我正在尝试(就在此时此刻)使用 datalab 下载文件,然后将文件从那里复制到存储桶中。

标签: google-cloud-platform

解决方案


与 Google Cloud Storage 相关的 Google Cloud Platform 的一项功能是称为“Storage Transfer Service”的功能区域。此处提供了相关文档。

在最高级别,此功能允许您定义 Google 外部的数据源,例如作为 URL 或 AWS S3 存储上的数据,然后安排在后台将其复制到 Google Cloud Storage。此功能似乎执行您想要的任务...数据直接从 Internet 源复制到 GCS。


一个完全不同的故事是 GCP 本身提供计算能力的认识。这意味着您可以通过简单的机制(例如 VM、Cloud Functions 或 Cloud Run)在 GCP 上运行自己的逻辑。这有助于我们在这个故事中意识到我们可以执行我们的代码以将基于 Internet 的数据GCP 本身下载到本地临时文件。然后可以从 GCP 内将该文件上传到 GCS。最终进入 GCP 的数据从来没有从源头传输到谷歌。一旦从源中检索,数据从 GCP 计算到 GCS 存储的传输速率应该是最佳的,因为它专门通过 Google 的内部超高速网络传输。


推荐阅读