PutTableBucketMaintenanceConfiguration接口用于设置或更新指定Table Bucket的维护配置,维护配置用于自动清理Iceberg表中不再被引用的数据文件。
注意事项
目前仅支持icebergUnreferencedFileRemoval维护类型,用于自动删除未被引用的Iceberg数据文件。
可以通过status字段启用(enabled)或禁用(disabled)该维护功能。
unreferencedDays指定未引用文件的保留天数,nonCurrentDays指定非当前版本文件的保留天数。
权限说明
API | Action | 说明 |
PutTableBucketMaintenanceConfiguration | oss:PutTableBucketMaintenanceConfiguration | 设置Table Bucket维护配置 |
请求语法
PUT /buckets/{tableBucketARN}/maintenance/{type} HTTP/1.1
Content-type: application/json
Host: cn-hangzhou.oss-tables.aliyuncs.com
Date: GMT Date
Authorization: SignatureValue
{
"value": {
"status": "string",
"settings": {
"icebergUnreferencedFileRemoval": {
"unreferencedDays": number,
"nonCurrentDays": number
}
}
}
}请求参数
名称 | 数据类型 | 是否必选 | 示例值 | 描述 |
tableBucketARN | 字符串 | 是 | acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket | Table Bucket的ARN,格式为acs:osstables:{region}:{accountId}:bucket/{bucketName}。 |
type | 字符串 | 是 | icebergUnreferencedFileRemoval | 维护类型,目前仅支持icebergUnreferencedFileRemoval。 |
value | 容器 | 否 | - | 维护配置值容器。 |
status | 字符串 | 否 | enabled | 启用状态,取值enabled或disabled。父节点:value |
settings | 容器 | 否 | - | 维护设置容器。 父节点:value。 子节点:icebergUnreferencedFileRemoval |
icebergUnreferencedFileRemoval | 容器 | 否 | - | Iceberg未引用文件清理配置容器。 父节点:settings。 子节点:unreferencedDays, nonCurrentDays |
unreferencedDays | 整数 | 否 | 5 | 无引用文件保留天数,取值范围1~2147483647。 父节点:icebergUnreferencedFileRemoval |
nonCurrentDays | 整数 | 否 | 15 | 非当前版本文件保留天数,取值范围1~2147483647。 父节点:icebergUnreferencedFileRemoval |
示例
请求示例
PUT /buckets/acs%3Aosstables%3Acn-hangzhou%3A1234567890%3Abucket%2Fmy-table-bucket/maintenance/icebergUnreferencedFileRemoval HTTP/1.1
Content-Type: application/json
Host: cn-hangzhou.oss-tables.aliyuncs.com
Date: GMT Date
Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/osstables/aliyun_v4_request,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c****
{
"value": {
"status": "enabled",
"settings": {
"icebergUnreferencedFileRemoval": {
"unreferencedDays": 5,
"nonCurrentDays": 15
}
}
}
}返回示例
HTTP/1.1 204 No Content
Server: AliyunOSS
x-oss-request-id: 5C06A3B67B8B5A3DA422****
x-oss-server-time: 3SDK
PutTableBucketMaintenanceConfiguration接口所对应的各语言SDK如下:
命令行工具ossutil
PutTableBucketMaintenanceConfiguration接口所对应的ossutil命令为put-table-bucket-maintenance-configuration。
错误码
错误码 | HTTP状态码 | 描述 |
BadRequestException | 400 | 请求无效或格式错误。 |
ForbiddenException | 403 | 调用者无权执行此请求。 |
NotFoundException | 404 | 请求的资源不存在。 |