数据湖构建(Data Lake Formation,简称 DLF)提供回收站功能,用于降低误删数据库、表以及文件的风险。删除数据库或表后,相关数据和元数据会先保留在回收站中,在保护期内可查询并还原。对于 Paimon Catalog,回收站还支持查看湖表优化清理的孤儿文件。
使用场景
-
误删除数据库或数据表后,在元数据保护期内可还原。
-
湖表优化孤儿文件清理的无引用文件可进入文件回收站,用于问题排查。详见废弃文件清理。
前提条件
-
权限配置: RAM 用户需具备 DLF 相关的 API 和数据权限。具体操作请参见 快速配置权限。
-
Catalog 状态: Catalog 处于可访问状态。若 Catalog 不存在、已删除、无权限访问或状态不可用,还原操作会失败,回收站中的数据和元数据不会发生变化。
-
控制台权限: 当前账号具备进入数据湖构建控制台、查看回收站和还原资源的权限。
使用限制
-
文件回收范围: 文件回收功能仅适用于 Paimon 类型的 Catalog,且 Catalog 需已完成系统初始化。其他类型 Catalog 不支持文件回收。
-
保护期限制: 元数据保护期到期后,数据和元数据不可恢复。即使页面仍短暂显示为清理中,也不能再执行还原操作。
-
同名冲突: 还原数据库或数据表时,如果目标位置已有同名且状态正常的数据库或数据表,还原会失败。请先处理同名资源,再重新执行还原。
-
父库依赖: 还原数据表要求父数据库处于正常状态。如果父数据库在回收站中,请先还原父数据库。
-
清理中状态: 清理中状态下不能再执行还原操作,需等待后台清理完成后重试(通常约 30 分钟)。
操作步骤
步骤一:配置回收站保留期
-
登录数据湖构建控制台
-
在左侧导航栏,选择数据目录。
-
在 Catalog 列表中,单击目标 Catalog。
-
在 Catalog 详情页面,单击目录配置。
-
在高级配置区域,单击编辑。
-
在属性配置区域(Catalog Properties)中新增或修改回收站相关配置项。
-
单击确定。
回收站相关配置项说明如下。
|
配置项 |
类型 |
默认值 |
说明 |
|
|
Integer |
|
数据库、数据表等元数据在回收站中的保护天数。必须为大于等于 1 的整数。保护期内允许还原;到期后相关数据和元数据进入不可还原的清理阶段。 |
|
|
Integer |
|
系统回收站( |
步骤二:进入回收站页面
-
登录数据湖构建控制台
-
在左侧导航栏,选择系统和安全。
-
在系统和安全页面,单击回收站。
-
根据需要选择数据库、数据表或文件分类。
步骤三:还原数据库或数据表
-
在回收站页面,选择数据库或数据表分类。
-
选择目标 Catalog,并按需输入数据库或数据表名称进行筛选。
-
找到需要恢复的数据库或数据表。
-
确认状态为删除保护中。
-
在操作列,单击还原。
步骤四:查看回收文件
-
在回收站页面,选择文件分类。
-
选择目标 Catalog,并按需输入文件名称或路径关键字进行筛选。
-
查看被删除的文件信息。
文件分类展示的是系统回收站(system.trash)中的孤儿文件,仅支持查看,不支持还原。
注意事项
-
保留期独立: 元数据保护期(
dlf.trashed-meta-retained-days)和文件保留期(dlf.trashed-file-retained-days)是两个独立的配置项。前者控制数据库、表等元数据及数据可还原的时间;后者控制系统回收站中孤儿文件的保留时间。 -
还原联动: 还原数据库时,随数据库一起进入回收站的库内数据表会一并恢复。此前单独删除的数据表需在数据表分类中单独还原。
-
后台清理: 删除数据库或表后,相关数据和元数据会先进入回收站。永久删除由后台清理任务完成,具体完成时间取决于配置的保护期和后台清理调度。