我如何将 gsutils ls -L gs://BUCKET/** 的输出转储到磁盘?这样做的成本可能是多少?
- 有问题的存储桶大约有 100GB,包含约 200K 个对象。
- 我是否正确地假设 -L 每次调用返回 1000 个对象,并且这些调用属于 A 类,每 10K 收费 0.10 美元?
- 那么 (200000/1000) * 0.10 对于整个桶来说就是 20 美元?
答案1
关于转储 gsutil list 命令的输出,如果您在 GCP 控制台上的 Cloud Shell 中运行该命令,则可以按照以下步骤导出输出数据本文档而且确实使用 Cloudshell 无需支付任何费用。但是,对 GCS 执行的每个 gsutil list 命令的读取操作可能会收取费用。您可以使用 [GCP 计算器] (https://cloud.google.com/products/calculator)
与“gsutil ls”命令一起使用时,-L 标志不用于指定每次调用 1000 个对象。如本文档,该标志仅允许 gsutil 输出有关您的 GCS 对象的附加信息。
正如解释的那样此 Stackoverflow 评论,gsutil ls 命令通常会为每个底层 GET 返回大约 1000 个结果并迭代后续结果。
本文档包含有关 GCS 中可用的操作类型的所有信息。获取操作属于 A 类或 B 类操作分类,具体取决于所使用的 API。默认情况下,gsutil 命令使用 JSON API因此,如果您使用默认配置运行命令,那么这些操作将是 A 类操作。
- 再次强调,如需估算您的 GCP/GCS 费用,请使用 GCP 计算器。请注意,此类计算的结果只是估算值。实际计费成本可能会有所不同。