物化视图refresh_partition_num参数是什么意思

Viewed 7

refresh_partition_num 单次 insert 语句刷新的分区数量,默认为 1。物化视图刷新时会先计算要刷新的分区列表,然后根据该配置拆分成多个 Insert 语句顺序执行。遇到失败的 Insert 语句,整个任务将停止执行。物化视图保证单个 Insert 语句的事务性,失败的 Insert 语句不会影响到已经刷新成功的分区

是什么意思,干嘛用的,没看明白,能不能举例说明一下

1 Answers

这个其实比较好理解,我举个例子,当 refresh_partition_num = 1 的时候,这个时候如果分区异步物化视图中的5个分区中的数据都出现了变更,这5个分区的数据都需要refresh一次,由于 refresh_partition_num = 1,所以单个任务只能refresh 一个分区,如果refresh_partition_num = 5 的话,单个任务就处理5个partition的refresh 任务。

refresh_partition_num 越大,单次处理的数据量越大,但总执行次数越少;越小则反之,每次事务更小,失败重试代价也更小。