- 作者:老汪软件技巧
- 发表时间:2024-12-08 04:02
- 浏览量:
问题描述
由于 Apache DolphinScheduler 长期运行,任务数量不断增加,相关任务数据主要存储在数据库中的 t_ds_task_instance 和 t_ds_process_instance 两张表中。
随着这两张表数据量的持续增长,导致系统页面出现卡顿现象。
解决方案
为解决上述问题,采取的措施是定期清理数据库中 t_ds_process_instance 和 t_ds_task_instance 两张表中一个月之前的数据。
use dolphinscheduler;
-- 创建备份表 t_ds_process_instance_backup20241120 和 t_ds_task_instance_backup20241120
CREATE TABLE t_ds_process_instance_backup20241120 LIKE t_ds_process_instance;
CREATE TABLE t_ds_task_instance_backup20241120 LIKE t_ds_task_instance;
-- 将原表数据备份到相应的备份表中
INSERT INTO t_ds_process_instance_backup20241120
SELECT * FROM t_ds_process_instance;
INSERT INTO t_ds_task_instance_backup20241120
SELECT * FROM t_ds_task_instance;
检查备份情况
为了确保备份操作成功,可以检查备份表和原表的数据行数。
-- 检查备份表的数据行数
SELECT COUNT(*) FROM t_ds_process_instance_backup20241120;
SELECT COUNT(*) FROM t_ds_task_instance_backup20241120;
-- 检查原表的数据行数
SELECT COUNT(*) FROM t_ds_process_instance;
SELECT COUNT(*) FROM t_ds_task_instance;
数据清理
在备份完成并确认无误后,执行清理操作,删除 2024年10月19日 23:59:59 之前 的数据。
-- 删除 t_ds_task_instance 表中 2024年10月19日 23:59:59 之前的数据
DELETE FROM t_ds_task_instance
WHERE submit_time < '2024-10-19 23:59:59';
-- 删除 t_ds_process_instance 表中 2024年10月19日 23:59:59 之前的数据
DELETE FROM t_ds_process_instance
WHERE end_time < '2024-10-19 23:59:59';
参考:/weixin_4025…
本文由 白鲸开源科技 提供发布支持!