更新时间:2025-12-26 GMT+08:00
分享

Hudi Savepoint操作说明

操作场景

Savepoint用于在数据处理过程中创建一个快照点,以便在需要还原自定义的版本数据。

Savepoint 操作的用途:

  • 数据恢复:在数据处理过程中,如果出现错误或需要回滚到某个状态,可以通过Savepoint快速恢复。
  • 版本管理:Savepoint可以用于管理数据的不同版本,方便进行版本对比和回滚。
  • 备份:定期创建Savepoint可以作为数据备份的一种方式,确保数据的安全性。

Hudi提供的Savepoint就可以将不同的commit保存起来以便清理程序不会将其删除,后续可以使用Rollback进行恢复。

执行Savepoint

使用Spark SQL管理Savepoint,具体操作请参考SAVE_POINT章节。

示例如下:

  • 创建savepoint:
    call create_savepoint('hudi_test1', '20220908155421949');
  • 查看所有存在的savepoint:
    call show_savepoints(table =>'hudi_test1');
  • 回滚savepoint:
    call rollback_to_savepoint('hudi_test1', '20220908155421949');
  • savepoint的rollback与commit rollback相同,都必须从最新的instant逐个向前rollback。
  • MRS 3.1.2版本:MoR表暂时不支持savepoint。

相关文档