gpt4 book ai didi

google-app-engine - 如何连接谷歌云存储中的一百万个文件

转载 作者:太空宇宙 更新时间:2023-11-03 15:27:13 24 4
gpt4 key购买 nike

根据documentation对于 Google Cloud Storage,使用 gsutil compose 有一些限制(见下文)。

是否有更有效的方法将大量文件合并到同一个存储桶(约 100 万个)中?

如果我理解正确,我必须加入 32 人的小组,然后继续这样做并再次加入?

Note that there is a limit (currently 32) to the number of components that can be composed in a single operation.

There is a limit (currently 1024) to the total number of components for a given composite object. This means you can append to each object at most 1023 times.

There is a per-project rate limit (currently 200) to the number of components you can compose per second. This rate counts both the components being appended to a composite object as well as the components being copied when the composite object of which they are a part is copied.

最佳答案

GCS 不再强制执行组件计数限制。只要新创建的对象 <= 5 TiB,您就可以合并 100 万个文件。您仍然必须通过递归组合将文件以 32 个为一组加入,如 documented here .

串行执行此操作的一种简单方法是通过重复覆盖来附加到单个对象。例如:

  1. 将文件上传为对象 {Fi, Fi+1, ... Ftotal}
  2. 组合对象 {F1, F2, ... F31} 来创建复合对象 X
  3. 递归组合对象{X, Fi+1, Fi+2, ... Fi+30}来覆盖X 有了新对象

由于每个项目的组合速率限制也已取消,您还可以通过批量组合临时对象然后删除临时对象来并行执行此操作。

  1. 组合对象 {Fi, Fi+1, ... Fi+31} 来创建复合对象 X(1)我/32
  2. 递归组合对象 {X(m)j, X(m)j+1, . .. X(m)j+31} 创建复合对象 X(m+1)j/32
  3. 删除所有临时对象X(m)j

唯一需要注意的是,即使对象具有 > 2,147,483,647 个组件,componentCount 元数据属性也会在 2,147,483,647 时饱和。如果您不依赖于 componentCount 的准确性,那么这应该不是问题,因为 componentCount 不会影响 compose 是否成功。

关于google-app-engine - 如何连接谷歌云存储中的一百万个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43024522/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com