在生产转移中使用gsutil或谷歌云存储API有什么好处吗?

时间:2017-07-07 15:54:09

标签: google-cloud-storage gsutil

哪个更适合与生产转移,gsutil或Google云存储API一起使用?

2 个答案:

答案 0 :(得分:4)

gsutil使用Google云端存储API传输数据,特别是JSON API(默认情况下,您可以更改它)。它直接使用API​​的主要优点是它已经过调整以快速传输数据。例如,它可以打开多个同时连接到GCS的连接,每个连接都同时上传或下载部分文件,这在很多情况下可以显着提高总吞吐量。

没有理由直接对API进行编程也无法提供相同甚至更好的性能,但如果以最简单的方式实现,我希望gsutil的平均速度至少要快一点。

答案 1 :(得分:3)

我不确定这是否会增加布兰登的说法。我对gcloud存储和Python很新,但我很快就发现我更喜欢尽可能在python客户端库上使用gsutil命令行。我创建了计算实例,它们在启动后从云存储中复制几GB输入数据。我发现尽可能使用gsutil命令行更简洁,更快,所以在我的python代码中我使用:

import subprocess
subprocess.call("gsutil -m cp gs://my-uberdata-archive/* /home/<username>/rawdata/", shell=True)

主要原因是我可以在一行中执行命令,而使用客户端库需要多行,而且正如Brandon所指出的,gsutil支持带有'-m'标志的多线程。我还没有找到使用Python客户端库执行此操作的等效方法。