存储优化

DLF存储优化支持表级自适应Compaction、过期快照和分区自动清理等能力,帮助用户降低Paimon表使用和运维复杂度,提升计算和存储的使用效率。本文讲述DLF后台执行的智能存储优化策略及其执行机制。

重要

产品在邀测阶段,暂不收取存储优化所使用的计算资源费用。

存储优化策略介绍

策略类型

描述

DLF执行机制

Compaction

Compaction功能通过合并小文件为较大文件,减少文件数量,进而降低元数据管理开销和查询时的文件查找成本,提升查询性能,增强Paimon表的查询效率。

在用户执行Commit写入数据时,DLF自动触发Compaction。

过期快照清理

为了保证快照文件对应的历史状态可以被正常读取,只要快照文件存在,其指向的历史数据文件就不能被删除。随着快照文件不断产生,历史数据占用的存储空间也将逐渐增加。因此需要淘汰不再使用的快照文件,以释放它们所指向的、不再活跃的历史数据空间,从而实现存储资源的有效管理与释放。

DLF存储优化作业执行时,DLF自动触发快照清理。快照过期时间默认为1小时。用户可通过Paimon表参数调整过期时间,详见清理过期数据

过期分区清理

业务场景通常只需访问近期数据,在这种情况下可以按时间对数据进行分区,并设置分区过期时间以自动删除过于久远的历史分区,从而释放存储空间。

用户可通过Paimon表参数配置过期时间,详见设置分区过期时间。配置参数后,会在DLF存储优化作业执行时自动触发。

废弃文件清理

由于作业报错、重启等原因,Paimon 表目录下可能会遗留一些未被提交的临时文件。这些废弃文件未被任何快照引用,因此无法通过快照过期机制删除,需定期进行清理。

废弃文件保留时长默认为7天,超过该时间的废弃文件将被视为过期并自动清理,因此DLF7天触发一次清理任务。

开启/关闭智能存储优化

说明
  • 存储优化功能在表级别默认开启,支持手动关闭。

  • 智能存储优化开启中,系统会自动进行Compaction、过期快照清理、废弃文件清理。如果您希望系统自动进行过期分区清理,请先配置分区清理规则,请参见过期分区清理

  1. 登录数据湖构建控制台

  2. Catalog列表页面,单击Catalog名称。

  3. 数据库页签中,单击目标数据库名称,查看数据表。

  4. 表列表中,单击目标表名称,查看表字段信息。

  5. 单击存储优化页签,可看到智能存储优化开关默认开启,单击image开关,即可关闭。

查看与配置存储优化策略

Compaction

存储优化页签,单击Compaction,您可查看小文件合并的执行情况,如执行状态、待Compaction数据延迟时间。

过期快照清理

存储优化页签,单击Snapshot Expire,您可以配置快照清理规则并查看快照清理结果。

  • 配置快照清理规则

    单击编辑,您可以设置快照保留时间(默认为1小时),单击保存,完成配置。

  • 查看快照清理结果

    • 当前Snapshot个数:实时显示当前剩余的快照数量。

    • 最早Snapshot信息:展示表中最早的快照详情,包括快照ID、提交时间、提交类型、表总行数以及本提交增加行数。

过期分区清理

存储优化页签,单击Partition Expire,您可以配置分区清理规则并查看清理结果。

  • 配置分区清理规则

    1. 单击启用分区清理右侧的image开关,可启用分区清理。

    2. 启用分区清理后,您可根据业务需求进行以下规则配置,单击保存,完成配置。

      配置项

      说明

      过期策略

      可选择以下过期策略:

      • 最近访问时间:根据分区数据最近访问时间,进行过期判断。

      • 分区值:根据分区值(values-time)进行过期判断,可以配置分区时间戳格式和分区字段模式。

        • 时间戳格式:对应表配置项partition.timestamp-formatter。可配置比如yyyy-MM-ddyyyyMMdddd/MM/yyyydd.MM.yyyy等。

        • 时间戳模式:对应表配置项partition.timestamp-pattern,默认取第一个分区字段,可配置比如 $dt 或者$year-$month-$day等。

      • 最后更新时间:按照最细粒度分区数据最后更新时间进行过期判断

      分区保留时间

      最大可设置为999999天。分区保留时间根据所选过期策略,判定起始时间。

    3. (可选)保存之后,也可单击规则配置右侧的编辑,进行再次修改。

    说明

    若您希望永久保留分区,则无需配置分区过期清理规则,系统默认不会自动清理分区数据。

  • 查看分区清理结果

    单击点击查看分区列表,可查看当前数据表的分区列表,包括分区名、行数(物理)、引用的文件个数、总文件大小、创建人、最新更新人、创建时间以及最近更新时间。

废弃文件清理

存储优化页签,单击Orphan File Remove,您可查看废弃文件清理规则。例如,废弃文件的保留时间默认为7天(根据文件写入时间判断),超过该时间的过期废弃文件将被系统自动清理。