云数据库 GAUSSDB-创建和管理定时任务:背景信息

时间:2025-01-06 11:07:37

背景信息

当客户在使用数据库过程中,如果白天执行一些耗时比较长的任务(例如:统计数据汇总之类或从其他数据库同步数据的任务),会对正常的业务有性能影响,所以客户经常选择在晚上执行,无形中增加了客户的工作量。因此 GaussDB Kernel数据库兼容A数据库中定时任务的功能,可以由客户创建定时任务,当任务时间点到达后可以自动触发任务的执行,从而减少客户运维的工作量。

GaussDB Kernel数据库兼容A定时任务功能主要通过DBE_TASK高级包提供的接口,可以实现定时任务的创建、任务到期自动执行、任务删除和修改任务属性(包括:任务id、任务的关闭开启、任务的触发时间、触发时间间隔和任务内容等)等功能。

  • PG_JOB系统表中next_run_date字段标识定时任务实际开始执行的时间,而不是计划任务开始的时间。
  • 当前定时任务计算开始执行的时间依赖于上一次任务的实际执行时间,在不指定freq时会导致执行时间有较短时间的偏差。
    1
    2
    3
    4
    5
    gaussdb=# SELECT start_date, next_run_date, interval FROM pg_job WHERE job_name = 'job1';
            start_date         |       next_run_date        |      interval      
    ---------------------------+----------------------------+--------------------
     2024-12-03 15:24:11.94422 | 2024-12-03 15:26:12.197623 | interval'1 minute'
    (1 row)
    
support.huaweicloud.com/centralized-devg-v8-gaussdb/gaussdb-42-0050.html