hudi cli savepoint与rollback使用指南(表数据回滚)
hudi cli savepoint与rollback使用指南(表数据回滚)
hudi-cli是hudi官方提供的以spring shell为基础构建的、操作hudi表的命令行工具。
hudi-cli内的命令以spark为引擎进行配置执行。具体可以参考hudi-cli代码。
savepoint和rollback是hudi cli提供的hudi表快照与回滚方法,通过hudi cli命令行可快速实现。
当我们编译完hudi时,进入hudi-cli包可看到如下目录:
执行如下命令进入hudi-cli:
./hudi-cli.sh
得到:
执行help命令可以看到所有可用的命令行
在正式使用之前,需要先使用connect命令连接一个hudi表,下述以t28表为例,并且已知表中先后写入过两次数据。
连接t28表:
connect --path hdfs://bigdata:9000/user/hive/warehouse/hudidb.db/t28
我们可以通过如下命令查看上述hudi表两次数据写入对应的commit
我们通过如下命令保留其中较小的commit,
savepoint create --commit 20220718214610849 --sparkMaster spark://bigdata:7077
接着从这个commit恢复hudi表
savepoint rollback --savepoint 20220718214610849 --sparkMaster spark://bigdata:7077
再次查看commits,可以看到只保留了本次commit,较新的commit已被删除
通过上述方法,可实现表数据回退。
当然,假如说只做了savepoint操作,而不做rollback,那么本次savepoint对应的commit会被保留下来,而不被clean策略清除。
Powered by Waline v2.14.1