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。