2012-10-20 66 views
4

我使用RAR實用程序(100GB未壓縮,20GB壓縮)獲得了一個大的多部分壓縮CSV文件,因此我有100個RAR文件部分已上傳到Google雲端存儲。我需要將其提取到Google雲端存儲。如果我可以在GAE上使用Python,那將是最好的。有任何想法嗎?我不想下載,提取和上傳。我想在雲端做所有事情。從Google雲端存儲中提取RAR文件

回答

4

無法直接解壓縮/提取雲中的RAR文件。你知道gsutil -m(多線程/多處理)選項嗎?它通過並行運行來加速傳輸。我建議這個順序:使用gsutil -m cp file-pattern dest-bucket

除非你有一個非常緩慢的互聯網連接

  • 下載壓縮歸檔文件
  • 本地解壓
  • 上傳並行解包文件,20GB不應該需要很長的時間(我預計不到一個小時),同樣也需要並行上傳(儘管這是您獲得多少並行性的功能,而這又取決於存檔文件的大小)。

    順便說一句,你可以通過parallel_thread_countparallel_process_count變量在$HOME/.boto文件中調整gsutil -m使用的並行度。

6

這個問題已經得到了回答(並且被接受),但是對於未來的類似用例,我會建議在GCE上完成一個小的Linux實例,例如f1-micro,然後將步驟作爲由Marc Cohen在his answer中建議。這些實例預裝了gsutil,因此很容易使用。完成後,請關閉並刪除微型實例,因爲結果文件已存儲在Google雲端存儲中。

步驟一步的說明:

  1. Create a Google Compute Engine VM instance
  2. SSH to the instance
  3. 按照the other answer

說明這樣做的好處是,不是下載到自己的電腦,你我們會將所有數據傳輸到Google Cloud本身,因此傳輸速度應該非常快,並且不依賴於您自己的Interne t連接速度或消耗您的任何帶寬。


注:網絡帶寬正比於VM(在的vCPU),所以對於更快的性能,考慮創建更大的VM的大小。谷歌計算引擎pricing for VM instances如下:

  1. 至少10分鐘
  2. 向上舍入到最接近的分鐘

因此,舉例來說,假設一個n1-standard-1收費USD $ 0.05 /小時(如8 2016年10月),15分鐘的使用費用共計0.0125美元。

+0

你能否詳細說明如何做到這一點? –

+0

@Soren - 我編輯了答案,以添加分步說明,希望這有助於。 –

相關問題