【发布时间】:2015-10-08 04:20:55
【问题描述】:
我有一个包含超过 20k 个文件名的 Google Storage 存储分区。有什么办法可以在短时间内列出bucket中的所有文件名吗?
【问题讨论】:
我有一个包含超过 20k 个文件名的 Google Storage 存储分区。有什么办法可以在短时间内列出bucket中的所有文件名吗?
【问题讨论】:
这取决于您所说的“短”是什么意思,但是:
要加快列出存储桶,您可以做的一件事是对列出操作进行分片。例如,如果您的存储桶包含以英文字母字符开头的对象,您可以并行列出每个字母并组合结果。您可以像这样在 bash 中使用 gsutil 执行此操作:
gsutil ls gs://your-bucket/a* > a.out &
gsutil ls gs://your-bucket/b* > b.out &
...
gsutil ls gs://your-bucket/b* > z.out &
wait
cat ?.out > listing.out
如果您的存储桶有不同命名的对象,您必须调整分片的方式。
【讨论】: