Skip to main content
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

StorageGRID 如何实施 Swift REST API

贡献者

客户端应用程序可以使用 Swift REST API 调用连接到存储节点和网关节点以创建容器以及存储和检索对象。这样,为 OpenStack Swift 开发的面向服务的应用程序便可与 StorageGRID 系统提供的内部对象存储相连接。

Swift 对象管理

将 Swift 对象载入 StorageGRID 系统后,这些对象将通过系统活动 ILM 策略中的信息生命周期管理( ILM )规则进行管理。ILM 规则和策略可确定 StorageGRID 如何创建和分发对象数据副本,以及它如何在一段时间内管理这些副本。例如, ILM 规则可能适用于特定 Swift 容器中的对象,并可能指定在一定年数内将多个对象副本保存到多个数据中心。

如果您需要了解网格的 ILM 规则和策略将如何影响您的 Swift 租户帐户中的对象,请联系您的 StorageGRID 管理员。

客户端请求冲突

冲突的客户端请求(例如,两个客户端写入同一密钥)将以 " 最新成功 " 为基础进行解决。" 最新赢单 " 评估的时间取决于 StorageGRID 系统何时完成给定请求,而不是 Swift 客户端何时开始操作。

一致性保证和控制

默认情况下, StorageGRID 为新创建的对象提供读写一致性,并为对象更新和机头操作提供最终一致性。成功完成 PUT 后的任何 GET 都将能够读取新写入的数据。对现有对象的覆盖,元数据更新和删除最终保持一致。覆盖通常需要几秒钟或几分钟才能传播,但可能需要长达 15 天的时间。

此外,您还可以通过 StorageGRID 控制每个容器的一致性。您可以根据应用程序的需要更改一致性控制、以便在对象的可用性与这些对象在不同存储节点和站点之间的一致性之间实现平衡。