ARCHIVE TABLE

功能概述

ARCHIVE TABLE
ARCHIVE TABLE
用于将分区表指定分区的数据文件转换为对象存储的
STANDARD
STANDARD
IA
IA
ARCHIVE
ARCHIVE
类型,并写入该表的 Table Volume。该命令适合需要降低低频数据存储成本的场景;归档不会删除原表中的数据,也不依赖
data_retention_days
data_retention_days

语法

ARCHIVE TABLE [<namespace>.]<table_name> PARTITION (<partition_key> = <partition_value>) SUBDIRECTORY '<path>' STORAGE_CLASS = '<storage_class>';

参数说明

参数说明
<namespace>
<namespace>
可选。表所属的 schema 名称。省略时使用当前 schema。
<table_name>
<table_name>
要归档的分区表名称。仅支持分区表。
PARTITION
PARTITION
指定要归档的分区,分区键必须属于目标表;当前一次命令只能指定一个分区。
SUBDIRECTORY '<path>'
SUBDIRECTORY '<path>'
指定归档文件在目标表 Table Volume 下的子目录。建议按用途和日期建立独立目录,例如
archive/20260825/
archive/20260825/
STORAGE_CLASS
STORAGE_CLASS
指定对象存储类型,可选
STANDARD
STANDARD
IA
IA
ARCHIVE
ARCHIVE
,不区分大小写。
IA
IA
文件可直接读取;
ARCHIVE
ARCHIVE
文件读取前必须执行
RESTORE TABLE
RESTORE TABLE

使用示例

示例 1:准备分区表和测试数据

CREATE TABLE public.doc_archive_orders ( order_id BIGINT, amount DECIMAL(18,2) ) PARTITIONED BY (dt STRING); INSERT INTO public.doc_archive_orders PARTITION (dt = '2026-08-28') VALUES (1, 12.34), (2, 56.78); INSERT INTO public.doc_archive_orders PARTITION (dt = '2026-08-29') VALUES (3, 90.12);

上述建表和写入语句执行成功后,表包含

2026-08-28
2026-08-28
2026-08-29
2026-08-29
两个分区。

示例 2:将分区归档为 IA

ARCHIVE TABLE public.doc_archive_orders PARTITION (dt = '2026-08-28') SUBDIRECTORY 'ia/20260828/' STORAGE_CLASS = 'IA';

命令同步执行。执行成功后,归档文件位于表的 Table Volume 中,

IA
IA
文件可以直接读取。

示例 3:将分区归档为 ARCHIVE

ARCHIVE TABLE public.doc_archive_orders PARTITION (dt = '2026-08-29') SUBDIRECTORY 'archive/20260829/' STORAGE_CLASS = 'ARCHIVE';

命令同步执行。执行成功后,归档文件位于表的 Table Volume 中;读取该分区前,需要先执行 RESTORE TABLE(归档文件取回)

示例 4:查看归档文件

SHOW TABLE VOLUME DIRECTORY public.doc_archive_orders;

示例返回的文件清单如下:

relative_pathsize
archive/20260829/part00001
archive/20260829/part00001
1832
ia/20260828/part00001
ia/20260828/part00001
1850

relative_path
relative_path
是相对于该表 Table Volume 的路径。归档命令返回的 job id、分区键和值、归档时间和文件清单建议一并记录,便于后续校验和恢复。

注意事项

  • 仅支持分区表,且一次命令只能指定一个分区。
  • 单次归档的分区文件数不能超过 10000 个;文件数过多时应先缩小范围或执行 compaction。
  • 归档操作是同步命令,成功返回表示指定分区的归档已完成。
  • 归档不会删除原表中的数据;如需释放原表数据空间,应另行删除分区或配置生命周期策略。
  • IA
    IA
    文件可以直接读取,并产生相应的读取请求和流量费用。
  • ARCHIVE
    ARCHIVE
    文件不能直接读取,必须先使用
    RESTORE TABLE
    RESTORE TABLE
    取回,并产生取回费用和临时标准存储费用。
  • 执行用户需要对目标表具有
    SELECT
    SELECT
    权限。

相关文档

联系我们
预约咨询
微信咨询
电话咨询
邮件咨询