批量创建分区

starrocks不能自动创建多个分区,如果很多个分区为空,需要补分区的时候,就需要通过脚本提前创建添加分区语句

#!/bin/bash

stat_date=$1
condition_date=$2
dt=date -d "yesterday $stat_date" +%Y%m%d
dt1=date -d "yesterday $stat_date" +%Y-%m-%d

echo “参数打印…” $stat_date $condition_date

while [ $stat_date != $condition_date ]
do
echo “alter table db_name.table_name add partition p$dt values [(’$dt1’),(’$stat_date’));” >> add.log
stat_date=date -d "yesterday $stat_date" +%Y-%m-%d
dt=date -d "yesterday $stat_date" +%Y%m%d
dt1=date -d "yesterday $stat_date" +%Y-%m-%d
done

1赞

可以在建表的时候,使用START (“2022-01-01”) END (“2022-09-29”) EVERY (INTERVAL 1 DAY)语句批量创建的,但是如果历史分区比较多,很慢很慢 慢…

建表的时候是可以指定,我这个解决方案是针对于已经存在的表再补历史数据时,分区缺失,批量添加分区