5

我在 Google App Engine 上部署了一个 python Web 应用程序。

我需要获取存储在 Amazon S3 上的日志文件并将其加载到 Google Cloud Storage 中。一旦它在 Google Cloud Storage 中,我可能需要执行一些转换并最终将数据导入 BigQuery 进行分析。

我尝试使用 gsutil 作为某种概念证明,因为 boto 是 gsutil 的引擎盖,我想在我的项目中使用 boto。这没有用。

我想知道是否有人设法在两个云之间直接传输文件。如果可能的话,我想看一个简单的例子。最后,这项任务必须通过在 GAE 上执行的代码来完成。

4

3 回答 3

9

根据这个线程,您可以使用 gsutil 将数据从 S3 流式传输到 Google Cloud Storage,但每个字节仍然需要经过两跳:S3 到您的本地计算机,然后您的计算机到 GCS。但是,由于您使用的是 App Engine,因此您应该能够从 S3 中提取并存入 GCS。除了 App Engine 是中介之外,它与上述进程相同,即每个字节从 S3 传输到您的应用程序,然后传输到 GCS。您可以将 boto 用于拉方,将Google Cloud Storage API用于推方。

于 2012-11-28T15:57:22.920 回答
3

Google 允许您将整个存储桶从 S3 导入存储服务:

https://cloud.google.com/storage/transfer/getting-started

您可以在源存储桶上设置文件过滤器以仅导入您想要的文件,或“目录”(即具有特定前缀的任何内容)。

于 2015-12-02T12:13:46.953 回答
1

我不知道有任何云提供商提供用于将数据传输到竞争云提供商的 API。云提供商没有动力帮助您将数据转移到竞争中。您几乎可以肯定必须将数据读取到中间机器,然后再将其写入 Google。

于 2012-11-28T14:54:58.433 回答