使用存储过程维护表
要在Spark中使用Iceberg,首先需要配置Spark catalog。只有在Spark 3.x中使用Iceberg SQL扩展时,存储过程才可用。
1.用法
可以通过CALL从任何配置的Iceberg catalog中使用存储过程。所有存储过程都位于命名空间system中。CALL支持通过名称或位置传递参数,推荐通过名称传递参数。不支持混合位置参数和命名参数。
(1) 命名参数。
所有过程参数都被命名。当通过名称传递参数时,参数可以按任意顺序传递,任何可选参数都可以省略,代码如下:
CALL catalog_name.system.procedure_name(arg_name_2 => arg_2, arg_name_1 => arg_1)
(2) 位置参数。
当按位置传递参数时,如果结尾参数是可选的,则只能省略它们,代码如下:
CALL catalog_name.system.procedure_name(arg_1, arg_2, ... arg_n)
2.快照管理
(1) rollback_to_snapshot()。
将表回滚到指定的快照ID。
要回滚到特定的时间,使用rollback_to_timestamp()方法。此过程将使所有引用受影响表的缓存Spark计划失效。
例如,将表db.sample回滚到快照ID 1,执行语句如下:
CALL catalog_name.system.rollback_to_snapshot('db.s ............
抱歉,只有登录会员才可浏览!会员登录