找回密码
 立即注册
首页 业界区 安全 【技巧帖】 DolphinScheduler 任务数据清理与备份策略, ...

【技巧帖】 DolphinScheduler 任务数据清理与备份策略,确保页面不卡顿

炀餮氢 2025-6-10 23:44:42
问题描述

由于 Apache DolphinScheduler 长期运行,任务数量不断增加,相关任务数据主要存储在数据库中的 t_ds_task_instance 和 t_ds_process_instance 两张表中。
随着这两张表数据量的持续增长,导致系统页面出现卡顿现象。
1.png

解决方案

为解决上述问题,采取的措施是定期清理数据库中 t_ds_process_instance 和 t_ds_task_instance 两张表中一个月之前的数据。
数据备份

在进行数据清理之前,首先备份原表数据,以确保数据安全。
  1. use dolphinscheduler;
  2. -- 创建备份表 t_ds_process_instance_backup20241120 和 t_ds_task_instance_backup20241120
  3. CREATE TABLE t_ds_process_instance_backup20241120 LIKE t_ds_process_instance;
  4. CREATE TABLE t_ds_task_instance_backup20241120 LIKE t_ds_task_instance;
  5. -- 将原表数据备份到相应的备份表中
  6. INSERT INTO t_ds_process_instance_backup20241120
  7. SELECT * FROM t_ds_process_instance;
  8. INSERT INTO t_ds_task_instance_backup20241120
  9. SELECT * FROM t_ds_task_instance;
复制代码
检查备份情况

为了确保备份操作成功,可以检查备份表和原表的数据行数。
  1. -- 检查备份表的数据行数
  2. SELECT COUNT(*) FROM t_ds_process_instance_backup20241120;
  3. SELECT COUNT(*) FROM t_ds_task_instance_backup20241120;
  4. -- 检查原表的数据行数
  5. SELECT COUNT(*) FROM t_ds_process_instance;
  6. SELECT COUNT(*) FROM t_ds_task_instance;
复制代码
数据清理

在备份完成并确认无误后,执行清理操作,删除 2024年10月19日 23:59:59 之前 的数据。
  1. -- 删除 t_ds_task_instance 表中 2024年10月19日 23:59:59 之前的数据
  2. DELETE FROM t_ds_task_instance
  3. WHERE submit_time < '2024-10-19 23:59:59';
  4. -- 删除 t_ds_process_instance 表中 2024年10月19日 23:59:59 之前的数据
  5. DELETE FROM t_ds_process_instance
  6. WHERE end_time < '2024-10-19 23:59:59';
复制代码
参考:https://blog.csdn.net/weixin_40255084/article/details/141442462
本文由 白鲸开源 提供发布支持!

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册