数据迁移修改,23.11修改为24.01,增加验证分布式ddl任务

This commit is contained in:
wangkuan
2024-01-22 10:17:10 +08:00
parent 7ec558f714
commit 7234898997
5 changed files with 14 additions and 10 deletions

View File

@@ -1,4 +1,4 @@
set distributed_ddl_task_timeout = 1800;
set distributed_ddl_task_timeout = 180;
-- 创建同步源表同步2401临时表物化视图, 七个表

View File

@@ -1,4 +1,4 @@
set distributed_ddl_task_timeout = 1800;
set distributed_ddl_task_timeout = 180;
-- 删除源表同步到临时表物化视图, 七个表
drop view if exists tsg_galaxy_v3.session_record_local_2310_to_2401_view on cluster ck_cluster;

View File

@@ -1,17 +1,21 @@
# 说明
* 请按步骤依次执行,执行脚本报错时联系研发处理后再执行之后的步骤。
* 除了离线同步历史数据步骤需要在ck各data节点执行其它所有ck步骤都需要在query节点执行
* 执行所有sql语句之前需要停止日志留存调度任务确保ck中无分布式ddl语句H执行否则执行的sql会阻塞住影响后续步骤执行
验证sql需要在query节点执行
clickhouse-client -h 127.0.0.1 --port 9001 -m -u default --password ****** --query "select query from system.distributed_ddl_queue where status =0 limit 1"
若返回结果为空则可执行升级步骤,否则需要等待。
# 一、实时同步任务
* 1.创建临时表
```sh
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy2019 --distributed_ddl_task_timeout 180 < 01_create_table_2401.sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password ****** --distributed_ddl_task_timeout 180 < 01_create_table_2401.sql
```
* 2.创建源表同步到临时表的物化视图
```sh
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy2019 --distributed_ddl_task_timeout 180 < 02_create_table_2310_to_2401_view.sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password ****** --distributed_ddl_task_timeout 180 < 02_create_table_2310_to_2401_view.sql
```
# 二、升级各个数据中心(可选)
@@ -28,17 +32,17 @@ clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy201
* 3.重命名旧表和临时表
```sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy2019 --distributed_ddl_task_timeout 180 < 03_rename_table.sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password ****** --distributed_ddl_task_timeout 180 < 03_rename_table.sql
```
* 4.执行2401版本初始化建表语句
```
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy2019 --distributed_ddl_task_timeout 180 < 04_init_new_table.sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password ****** --distributed_ddl_task_timeout 180 < 04_init_new_table.sql
```
* 5.校验表结构
```
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password galaxy2019 --distributed_ddl_task_timeout 180 < 05_check.sql
clickhouse-client -h 127.0.0.1 --port 9001 -m -n -u default --password ****** --distributed_ddl_task_timeout 180 < 05_check.sql
```
无报错信息说明校验通过

View File

@@ -1,6 +1,6 @@
#!/bin/bash
# 本脚本逐时间段按最新往前顺序迁移clickhouse数据TSG23.11日志重组后数据迁移
# 本脚本逐时间段按最新往前顺序迁移clickhouse数据TSG24.01日志重组后数据迁移
# 迁移表 参数可选值session_recordsecurity_eventmonitor_eventtransaction_recordvoip_recordproxy_eventdos_event
table=$1

View File

@@ -1,6 +1,6 @@
#!/bin/bash
# 本脚本逐时间段按最新往前顺序迁移clickhouse数据TSG23.11日志重组后数据迁移
# 本脚本逐时间段按最新往前顺序迁移clickhouse数据TSG24.01日志重组后数据迁移
# 迁移表 参数可选值session_recordsecurity_eventmonitor_eventtransaction_recordvoip_recordproxy_eventdos_event
table=$1
@@ -67,6 +67,6 @@ if [ $timestamp_start -ge $timestamp_end ]; then
fi
# 后台执行,输出日志
nohup ./migrate_local_table_to_2311.sh "$table" "$data_start_time" "$data_end_time" $slice_interval_minute >> "log_$table.txt" 2>&1 &
nohup ./migrate_local_table_to_2401.sh "$table" "$data_start_time" "$data_end_time" $slice_interval_minute >> "log_$table.txt" 2>&1 &
echo "已启动迁移${table}表任务,时间范围[$data_start_time, $data_end_time], 每批迁移段分钟:$slice_interval_minute, 日志输出到:log_$table.txt。请查看日志文件确认每段数据迁移情况"