2012-11-28 86 views
4

我在Google App Engine上部署了一個python web應用程序。將s3數據遷移到谷歌雲存儲

我需要抓住存儲在Amazon S3日誌文件並將其加載到谷歌雲存儲。一旦它位於Google雲端存儲中,我可能需要執行一些轉換並最終將數據導入BigQuery中進行分析。

我嘗試使用gsutil作爲某種概念驗證的,因爲博託是的gsutil引擎蓋下,我想在我的項目中使用博託。這沒有奏效。

我想知道是否有人設法直接在2個雲之間傳輸文件。如果可能的話,我想看一個簡單的例子。最後,這個任務必須通過在GAE上執行的代碼來完成。

回答

0

我不知道有任何雲提供商提供用於將數據傳輸到競爭雲提供商的API。雲提供商沒有動力幫助您將數據轉移到競爭對手。您幾乎肯定必須將數據讀取到中間機器,然後將其寫入Google。

+0

許多供應商確實提供導入數據的功能; Google可能會有一個「導入S3存儲桶」選項。 – hraban

8

根據這個thread,您可以使用gsutil將數據從S3傳輸到Google Cloud Storage,但每個字節仍然需要兩跳:S3到您的本地計算機,然後您的計算機到GCS。但是,由於您使用的是App Engine,因此您應該能夠從S3中取出並存入GCS。除了App Engine是中介之外,它與上述相同,即每個字節從S3到達您的應用,然後到達GCS。您可以在推側使用boto,在推側使用Google Cloud Storage API

2

谷歌允許用戶從S3導入整個水桶的存儲服務:

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

您可以在源桶設置文件過濾器,只輸入你想要的文件,或「目錄」(即具有某個前綴的任何東西)。

+0

他們的GUI工具不允許你選擇多個桶,或者上傳s3上所有桶的列表。手動上傳每個存儲分區到Google存儲器非常耗時。 – Kelseydh