设置存储空间清单
更新时间:2024-06-03
概述
存储空间清单是一种帮助用户管理存储桶中对象的功能。BOS 可根据用户的清单任务配置,定期每天或者每周扫描用户 Bucket 中指定对象并输出一份清单报告,以 CSV 格式文件的形式存储到用户指定的 Bucket 中。CSV 文件中会列出对象及其对应的元数据,并根据用户的配置信息,记录用户所需的对象属性信息。
说明:
- 存储清单功能于2022年12月8日起正式计费,将根据列出的对象(文件)个数计费,了解价格详情参见BOS价格说明。
- 当前该功能在华北-北京、华东-苏州和华南-广州区域全量开放。
- 存储清单导出效率会受存储桶内对象数量影响,针对存储大量文件的存储桶,一至两天的清单生成延迟属于正常情况。
使用场景
清单是一种帮助用户管理存储桶中对象的功能,可以有计划地取代对象存储的 List API 操作。您可以使用清单功能实现包括但不限于以下基本用途:
- 定期审核并输出文件列表及文件相关属性。
- 通过定期扫描简化并加快业务工作流,无需通过脚本实现,简单配置即可定期输出文件报告。
使用前须知
在配置清单前,您需要了解两个概念:
-
源存储桶:想要开通清单功能的存储桶。
- 包含清单中所列出的对象。
- 包含清单的配置。
-
目标存储桶:存储清单的存储桶。
- 包含清单列表文件。
- 包含 Manifest 文件,描述清单列表文件的位置。
设置存储空间清单
- 登录 对象存储 BOS 管理控制台。
- 在左侧 Bucket 列表中,选择需要设置权限的 Bucket,点击 Bucket 名称进入 Bucket 管理目录。
- 在上方导航栏选择 配置管理 页签。
- 在 配置管理 页面中选择 高级配置,在 清单配置 区域点击 新增配置,创建清单规则。
5.设置清单规则
配置名称 | 配置描述 |
---|---|
清单状态 |
|
清单名称 |
|
清单存储位置 |
|
报告清单前缀 |
|
包含文件范围 |
|
清单导出周期 |
|
清单导出格式 |
|
说明:
- 每个 Bucket 最多同时创建 20 条清单规则。当超过规则数量上限后,您需要删除已有规则后重新创建;
6.编辑或者删除清单规则
您可以对已创建的清单规则进行编辑,如将关闭的清单规则设置为开启状态。您也可以将已创建的清单规则删除。规则删除后,BOS 将不会按照该规则继续为您输入清单报告。
清单报告存储路径
- 清单报告存放位置:清单报告会发布在目标存储桶中,其中清单报告会发布在以下路径:
destination-prefix/[source-bucket]/[config-ID]/[YYYY-MM-DDTHH-MMZ]/xxx.csv
- Manifest 相关文件存放位置:相关的 Manifest 文件会发布在目标存储桶以下路径:
destination-prefix/[source-bucket]/[config-ID]/[YYYY-MM-DDTHH-MMZ]/manifest.json
destination-prefix/[source-bucket]/[config-ID]/[YYYY-MM-DDTHH-MMZ]/manifest.checksum
路径字段代表的含义
- desitination-prefix:是您在配置清单时设置的“报告清单前缀”,可用于对目标存储桶中的公共位置的所有清单报告进行分组。
- source-bucket:是清单报告对应的源存储桶名称,加入这个文件夹是为了避免在多个源存储桶将各自清单报告发送至同一目标存储桶时可能造成的冲突。
- config-ID:是您在配置清单时设置的“清单名称”,当同一源存储桶设置多个清单报告并将其发送至同一目标存储桶时,可以用 config-ID 区分不同的清单报告。
- YYYY-MM-DD-HH-MM:时间戳,包含生成清单报告时开始存储桶扫描的时间和日期。
- manifest.json:指 Manifest 文件。
- manifest.checksum:指 manifest.json 文件内容的 MD5。
清单内容
清单的生成内容包括清单 CSV 文件列表和相关的 Manifest 文件。
清单CSV文件列表内容
输出的清单文件列表中包含如下内容:
字段说明 | 说明 |
---|---|
Bucket | Bucket 名称 |
Key | 文件名称 |
Size | 文件数据长度 |
Etag | 对象的哈希。可能是对象数据 base64 编码的 MD5 摘要,这取决于对象的创建方式 |
StorageClass | 文件的存储类型 |
CreateTime | 文件的创建时间。时间格式为:yyyy-mm-ddThh:mm:ssZ 。如:2016-09-07T00:00:00Z(UTC) |
Manifest文件内容
Manifest 文件包含如下内容:
字段说明 | 说明 |
---|---|
sourceBucket | 清单报告对应的源存储桶名称 |
destinationBucket | 放置导出文件的目标存储桶名称 |
version | 导出的版本。格式为”year-month-day“, 如”2021-11-03“ |
fileFormat | 报告的格式 |
fileSchema | 报告的架构 |
files | 目标存储桶中的导出报告文件的实际列表。包含 key(清单文件的名称)、size(清单文件的大小)、md5Checksum(该文件的 md5 值) |
Manifest 报告示例如下:
{
"sourceBucket": "src-bucket-name",
"destinationBucket":"destination-bucket-name",
"version":"2020-11-03",
"fileFormat":"CSV",
"fileSchema":"Bucket,Key,Size,etag,StorageClass,PutDate,CreateTime",
"files":[
{
"key":"destination-prefix/[source-bucket]-[config-ID]-[YYYY-MM-DDTHH-MMZ]-index.csv",
"size":1603959,
"md5Checksum":"2177e775870def72b8d84febe1ad3574"
}
]
}
API 参考
- PutBucketInventory:用于为源bucket中创建清单任务,您可以对清单任务命名后,使用该请求创建清单任务;
- GetBucketInventory:使用 GET 操作来获取指定桶的某个清单配置。