设置Table维护配置

更新时间:
复制为 MD 格式

为指定表设置自动维护配置,支持Iceberg表的自动合并(Compaction)和快照管理(Snapshot Management)。

注意事项

  • --type参数支持以下两种维护类型:

    • icebergCompaction:Iceberg表数据文件合并,用于自动合并小文件以提升查询性能。

    • icebergSnapshotManagement:Iceberg表快照管理,用于自动清理过期快照以释放存储空间。

  • --value参数为JSON格式的配置值,不同维护类型对应不同的配置结构。可以直接传入JSON字符串,也可以使用file://前缀从本地文件读取配置内容。

  • 每种维护类型需要单独调用命令设置。如需同时配置合并和快照管理,需分别执行两次命令。

命令格式

ossutil tables-api put-table-maintenance-configuration --table-bucket-arn value --namespace value --name value --type value --value value [flags]

参数

类型

说明

--name

string

表名称。必选参数。

--namespace

string

表所属的命名空间名称。必选参数。

--table-bucket-arn

string

Table BucketARN,格式为acs:osstables:{region}:{uid}:bucket/{bucket-name}。必选参数。

--type

string

维护配置类型。取值为icebergCompaction(Iceberg表数据合并)或icebergSnapshotManagement(Iceberg表快照管理)。必选参数。

--value

string

维护配置值,JSON格式字符串。支持直接传入JSON字符串或通过file://前缀指定本地文件路径。必选参数。

说明

使用示例

  • 设置Iceberg表的数据合并(Compaction)维护配置,启用自动合并并设置目标文件大小为512 MB。通过命令行直接传入JSON字符串。

    ossutil tables-api put-table-maintenance-configuration --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --type icebergCompaction --value '{"status":"enabled","settings":{"targetFileSizeMB":512}}'
  • 设置Iceberg表的快照管理(Snapshot Management)维护配置,启用自动快照清理,保留最近5个快照且最长保留7天。

    ossutil tables-api put-table-maintenance-configuration --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --type icebergSnapshotManagement --value '{"status":"enabled","settings":{"minSnapshotsToKeep":5,"maxSnapshotAgeHours":168}}'
  • 通过本地文件传入配置JSON,使用file://前缀指定配置文件路径。

    ossutil tables-api put-table-maintenance-configuration --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --type icebergCompaction --value file://compaction-config.json
  • 禁用Iceberg表的数据合并维护配置。

    ossutil tables-api put-table-maintenance-configuration --table-bucket-arn acs:osstables:cn-hangzhou:1234567890:bucket/my-table-bucket --namespace my_namespace --name my_table --type icebergCompaction --value '{"status":"disabled"}'