写点什么

基于 Apache Dolphinscheduler3.1.9 中的 Task 处理流程解析

作者:白鲸开源
  • 2024-12-06
    广东
  • 本文字数:806 字

    阅读完需:约 3 分钟

问题描述

由于 Apache DolphinScheduler 长期运行,任务数量不断增加,相关任务数据主要存储在数据库中的 t_ds_task_instancet_ds_process_instance 两张表中。


随着这两张表数据量的持续增长,导致系统页面出现卡顿现象。


解决方案

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

数据备份

在进行数据清理之前,首先备份原表数据,以确保数据安全。


use dolphinscheduler;-- 创建备份表 t_ds_process_instance_backup20241120 和 t_ds_task_instance_backup20241120CREATE 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_backup20241120SELECT * FROM t_ds_process_instance;
INSERT INTO t_ds_task_instance_backup20241120SELECT * 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_instanceWHERE submit_time < '2024-10-19 23:59:59';
-- 删除 t_ds_process_instance 表中 2024年10月19日 23:59:59 之前的数据DELETE FROM t_ds_process_instanceWHERE end_time < '2024-10-19 23:59:59';
复制代码


参考:https://blog.csdn.net/weixin_40255084/article/details/141442462

用户头像

白鲸开源

关注

一家开源原生的DataOps商业公司。 2022-03-18 加入

致力于打造下一代开源原生的DataOps 平台,助力企业在大数据和云时代,智能化地完成多数据源、多云及信创环境的数据集成、调度开发和治理,以提高企业解决数据问题的效率,提升企业分析洞察能力和决策能力。

评论

发布
暂无评论
基于 Apache Dolphinscheduler3.1.9中的Task 处理流程解析_白鲸开源_InfoQ写作社区