0

我想使用 openstack API 将大型对象上传到我的对象存储。我发现我可以用大对象做到这一点。API 中描述了两个不同的对象,静态大对象 (SLO) 和动态大对象 (DLO)。对于这两个部分,我需要上传所有部分,然后是一个清单,其中包含对这些部分的引用。

现在我的问题是:这两者有什么区别?我应该使用哪个?我的文件不会改变它们的大小。上传一次,然后通常不会更改。所以我想使用SLO?

谢谢指教!

4

2 回答 2

2

我写了一篇关于 Bluemix 服务的对象存储清单的博客文章 @ http://blog.ibmjstart.net/2016/04/14/e-pluribus-unum-creating-openstack-manifest-objects-in-ibm- bluemix-object-storage/这也可能有助于更多地了解它们的用处。

摘抄:

  • 静态大对象(SLO) – 依赖于用户提供的清单文件。当开发人员想要从多个容器中“混搭”对象并在自生成的清单文件中引用它们时,这对用例很有用。这使您可以在清单被接受后立即访问连接的对象。将段上传到单独的容器中提供了提高并发上传速度的机会。不利的一面是,连接对象的定义被冻结,直到清单被替换。
  • 动态大对象(DLO) – 依赖于容器列表的零字节清单文件。对于开发人员可以随时从清单中添加/删除段(例如,容器中的对象)的用例是有利的。一些缺点包括依赖最终一致的容器列表,这意味着在访问完整的连接对象之前可能会有一些延迟。还要求所有段都在一个容器中,这可能会限制并发上传速度。

根据您的用例,我同意 SLO 可能最有意义。

于 2016-08-18T04:49:46.143 回答
0

我从 Oracle 找到了一个解决方案:Using Oracle Storage Cloud Service

这两者之间的区别在于 SLO 的 Manifest 文件包含所有段的容器/文件名。这些段可以在不同的位置。所以它被称为静态,因为所有文件都是初始上传的并且不会更改。

DLO 的清单文件为空。所有段必须与清单文件位于同一容器中。该文件动态确定要下载的大对象的部分。

于 2016-07-25T09:29:56.040 回答