更新时间:2024-05-21 GMT+08:00
分享

如何处理碎片?

OBS中的碎片会占用存储空间,会按照存储空间计费项进行计费。

您可以通过OBS管理控制台或OBS Browser+将桶中碎片清理掉。

如果是由于OBS Browser+分段上传任务中断产生的碎片,继续运行完成任务,碎片将会消失。

当存在运行中断或失败的分段上传任务并产生碎片后,您可以继续运行中断或失败的上传任务来消除碎片,或直接将碎片删除以节省存储空间。

继续运行中断或失败的分段上传任务消除碎片

OBS提供任务管理功能,当分段上传任务中断或失败时,您可以通过以下多种方式继续运行这些任务,任务完成后,碎片也会随着消除。
表1 消除碎片的不同方式

方式

操作指导

OBS Browser+

OBS Browser+提供图形化的任务管理界面,单击选中碎片对应的上传对象任务,运行该任务至完成,碎片即可消除。

obsutil

obsutil通过结果清单记录失败的任务,您可以通过结果清单对应的任务号恢复失败的上传任务,从而消除碎片。

具体操作请参考恢复失败的上传任务

OBS SDK

OBS SDK通过记录上传进度提供断点续传,您可以读取记录的进度,继续上传中断或失败的分段上传任务。

具体操作请参考各SDK开发指南中的“断点续传”章节。

直接删除碎片

当碎片不再需要时,您可以通过以下多种方式删除桶中碎片来节约存储空间。

碎片删除后无法恢复,删除碎片会导致其对应的上传任务进度丢失,删除前请确保碎片不再需要。

表2 删除碎片的不同方式

工具

方法

OBS控制台

OBS控制台提供图形化的碎片列表界面,您可以一键批量删除桶中所选中的碎片。

具体操作请参见清理碎片

OBS Browser+

您可以一键批量删除桶中所选中的碎片。也可以单击页面上方“删除所有”,清除所有碎片。

obsutil

obsutil分段上传任务产生的碎片,可以通过删除分段上传任务来删除碎片。如果一个桶内有多个分段任务,则需要删除多个任务来删除桶中所有碎片。

具体操作请参见删除分段上传任务

OBS API

您可以通过以下步骤来直接删除桶中碎片:

  1. 使用列举桶中已初始化多段任务接口,来列举所有分段上传任务,获取所有UploadId。
  2. 使用取消多段上传任务接口,来取消分段上传任务,即可删除所有碎片。

OBS SDK

OBS SDK通常只有采用多段上传,并且最后没有合并多段上传任务时会产生碎片,您通过取消多段上传任务来删除桶内碎片。步骤如下:

  1. 使用ObsClient.listMultipartUploads列举所有分段上传任务,获取所有UploadId。
  2. 使用ObsClient.abortMultipartUpload取消分段上传任务,即可删除所有分段碎片。

相关文档