snail_job_mysql.sql 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545
  1. SET NAMES utf8mb4;
  2. DROP DATABASE IF EXISTS snail_job;
  3. CREATE DATABASE snail_job;
  4. USE snail_job;
  5. CREATE TABLE `sj_namespace`
  6. (
  7. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  8. `name` varchar(64) NOT NULL COMMENT '名称',
  9. `unique_id` varchar(64) NOT NULL COMMENT '唯一id',
  10. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  11. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  12. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  13. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  14. PRIMARY KEY (`id`),
  15. KEY `idx_name` (`name`),
  16. UNIQUE KEY `uk_unique_id` (`unique_id`)
  17. ) ENGINE = InnoDB
  18. DEFAULT CHARSET = utf8mb4 COMMENT ='命名空间';
  19. INSERT INTO `sj_namespace` (`id`, `name`, `unique_id`, `create_dt`, `update_dt`, `deleted`)
  20. VALUES (1, 'Default', '764d604ec6fc45f68cd92514c40e9e1a', now(), now(), 0);
  21. CREATE TABLE `sj_group_config`
  22. (
  23. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  24. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  25. `group_name` varchar(64) NOT NULL DEFAULT '' COMMENT '组名称',
  26. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '组描述',
  27. `token` varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token',
  28. `group_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
  29. `version` int(11) NOT NULL COMMENT '版本号',
  30. `group_partition` int(11) NOT NULL COMMENT '分区',
  31. `id_generator_mode` tinyint(4) NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式',
  32. `init_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是',
  33. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  34. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  35. PRIMARY KEY (`id`),
  36. UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`, `group_name`)
  37. ) ENGINE = InnoDB
  38. AUTO_INCREMENT = 0
  39. DEFAULT CHARSET = utf8mb4 COMMENT ='组配置'
  40. ;
  41. CREATE TABLE `sj_notify_config`
  42. (
  43. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  44. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  45. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  46. `notify_name` varchar(64) NOT NULL DEFAULT '' COMMENT '通知名称',
  47. `system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务',
  48. `notify_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知状态 0、未启用 1、启用',
  49. `recipient_ids` varchar(128) NOT NULL COMMENT '接收人id列表',
  50. `notify_threshold` int(11) NOT NULL DEFAULT 0 COMMENT '通知阈值',
  51. `notify_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知场景',
  52. `rate_limiter_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '限流状态 0、未启用 1、启用',
  53. `rate_limiter_threshold` int(11) NOT NULL DEFAULT 0 COMMENT '每秒限流阈值',
  54. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  55. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  56. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  57. PRIMARY KEY (`id`),
  58. KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`)
  59. ) ENGINE = InnoDB
  60. AUTO_INCREMENT = 0
  61. DEFAULT CHARSET = utf8mb4 COMMENT ='通知配置'
  62. ;
  63. CREATE TABLE `sj_notify_recipient`
  64. (
  65. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  66. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  67. `recipient_name` varchar(64) NOT NULL COMMENT '接收人名称',
  68. `notify_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书 5 webhook',
  69. `notify_attribute` varchar(512) NOT NULL COMMENT '配置属性',
  70. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  71. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  72. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  73. PRIMARY KEY (`id`),
  74. KEY `idx_namespace_id` (`namespace_id`)
  75. ) ENGINE = InnoDB
  76. AUTO_INCREMENT = 0
  77. DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人'
  78. ;
  79. CREATE TABLE `sj_retry_dead_letter`
  80. (
  81. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  82. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  83. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  84. `group_id` bigint(20) NOT NULL COMMENT '组Id',
  85. `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
  86. `scene_id` bigint(20) NOT NULL COMMENT '场景ID',
  87. `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
  88. `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
  89. `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
  90. -- jackson 兼容历史数据 预计1.8.0默认改为fury
  91. `serializer_name` varchar(32) NOT NULL DEFAULT 'jackson' COMMENT '执行方法参数序列化器名称',
  92. `args_str` text NOT NULL COMMENT '执行方法参数',
  93. `ext_attrs` text NOT NULL COMMENT '扩展字段',
  94. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  95. PRIMARY KEY (`id`),
  96. KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
  97. KEY `idx_idempotent_id` (`idempotent_id`),
  98. KEY `idx_biz_no` (`biz_no`),
  99. KEY `idx_create_dt` (`create_dt`)
  100. ) ENGINE = InnoDB
  101. AUTO_INCREMENT = 0
  102. DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表'
  103. ;
  104. CREATE TABLE `sj_retry`
  105. (
  106. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  107. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  108. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  109. `group_id` bigint(20) NOT NULL COMMENT '组Id',
  110. `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
  111. `scene_id` bigint(20) NOT NULL COMMENT '场景ID',
  112. `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
  113. `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
  114. `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
  115. `args_str` text NOT NULL COMMENT '执行方法参数',
  116. `ext_attrs` text NOT NULL COMMENT '扩展字段',
  117. -- jackson 兼容历史数据 预计1.8.0默认改为fury
  118. `serializer_name` varchar(32) NOT NULL DEFAULT 'jackson' COMMENT '执行方法参数序列化器名称',
  119. `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
  120. `retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
  121. `retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
  122. `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
  123. `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
  124. `parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父节点id',
  125. `deleted` bigint(20) NOT NULL DEFAULT 0 COMMENT '逻辑删除',
  126. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  127. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  128. PRIMARY KEY (`id`),
  129. KEY `idx_biz_no` (`biz_no`),
  130. KEY `idx_idempotent_id` (`idempotent_id`),
  131. KEY `idx_retry_status_bucket_index` (`retry_status`, `bucket_index`),
  132. KEY `idx_parent_id` (`parent_id`),
  133. KEY `idx_create_dt` (`create_dt`),
  134. UNIQUE KEY `uk_scene_tasktype_idempotentid_deleted` (`scene_id`, `task_type`, `idempotent_id`, `deleted`)
  135. ) ENGINE = InnoDB
  136. AUTO_INCREMENT = 0
  137. DEFAULT CHARSET = utf8mb4 COMMENT ='重试信息表'
  138. ;
  139. CREATE TABLE `sj_retry_task`
  140. (
  141. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  142. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  143. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  144. `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
  145. `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
  146. `ext_attrs` text NOT NULL COMMENT '扩展字段',
  147. `task_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '重试状态',
  148. `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
  149. `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
  150. `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
  151. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  152. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  153. PRIMARY KEY (`id`),
  154. KEY `idx_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
  155. KEY `task_status` (`task_status`),
  156. KEY `idx_create_dt` (`create_dt`),
  157. KEY `idx_retry_id` (`retry_id`)
  158. ) ENGINE = InnoDB
  159. AUTO_INCREMENT = 0
  160. DEFAULT CHARSET = utf8mb4 COMMENT ='重试任务表'
  161. ;
  162. CREATE TABLE `sj_retry_task_log_message`
  163. (
  164. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  165. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  166. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  167. `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
  168. `retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id',
  169. `message` longtext NOT NULL COMMENT '异常信息',
  170. `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
  171. `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
  172. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  173. PRIMARY KEY (`id`),
  174. KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`, `group_name`, `retry_task_id`),
  175. KEY `idx_create_dt` (`create_dt`)
  176. ) ENGINE = InnoDB
  177. AUTO_INCREMENT = 0
  178. DEFAULT CHARSET = utf8mb4 COMMENT ='任务调度日志信息记录表'
  179. ;
  180. CREATE TABLE `sj_retry_scene_config`
  181. (
  182. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  183. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  184. `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
  185. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  186. `scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
  187. `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
  188. `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
  189. `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
  190. `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
  191. `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
  192. `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
  193. `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
  194. `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
  195. `cb_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '回调状态 0、不开启 1、开启',
  196. `cb_trigger_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
  197. `cb_max_count` int(11) NOT NULL DEFAULT 16 COMMENT '回调的最大执行次数',
  198. `cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数',
  199. `owner_id` bigint(20) NULL DEFAULT NULL COMMENT '负责人id',
  200. `labels` varchar(512) NULL DEFAULT '' COMMENT '标签',
  201. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  202. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  203. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  204. PRIMARY KEY (`id`),
  205. UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
  206. ) ENGINE = InnoDB
  207. AUTO_INCREMENT = 0
  208. DEFAULT CHARSET = utf8mb4 COMMENT ='场景配置'
  209. ;
  210. CREATE TABLE `sj_server_node`
  211. (
  212. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  213. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  214. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  215. `host_id` varchar(64) NOT NULL COMMENT '主机id',
  216. `host_ip` varchar(64) NOT NULL COMMENT '机器ip',
  217. `host_port` int(16) NOT NULL COMMENT '机器端口',
  218. `expire_at` datetime NOT NULL COMMENT '过期时间',
  219. `node_type` tinyint(4) NOT NULL COMMENT '节点类型 1、客户端 2、是服务端',
  220. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  221. `labels` varchar(512) NULL DEFAULT '' COMMENT '标签',
  222. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  223. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  224. PRIMARY KEY (`id`),
  225. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
  226. KEY `idx_expire_at_node_type` (`expire_at`, `node_type`),
  227. UNIQUE KEY `uk_host_id_host_ip` (`host_id`, `host_ip`)
  228. ) ENGINE = InnoDB
  229. AUTO_INCREMENT = 0
  230. DEFAULT CHARSET = utf8mb4 COMMENT ='服务器节点'
  231. ;
  232. CREATE TABLE `sj_distributed_lock`
  233. (
  234. `name` varchar(64) NOT NULL COMMENT '锁名称',
  235. `lock_until` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '锁定时长',
  236. `locked_at` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '锁定时间',
  237. `locked_by` varchar(255) NOT NULL COMMENT '锁定者',
  238. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  239. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '修改时间',
  240. PRIMARY KEY (`name`)
  241. ) ENGINE = InnoDB
  242. AUTO_INCREMENT = 0
  243. DEFAULT CHARSET = utf8mb4 COMMENT ='锁定表'
  244. ;
  245. CREATE TABLE `sj_system_user`
  246. (
  247. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  248. `username` varchar(64) NOT NULL COMMENT '账号',
  249. `password` varchar(128) NOT NULL COMMENT '密码',
  250. `role` tinyint(4) NOT NULL DEFAULT 0 COMMENT '角色:1-普通用户、2-管理员',
  251. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  252. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  253. PRIMARY KEY (`id`),
  254. UNIQUE KEY `uk_username` (`username`) USING BTREE
  255. ) ENGINE = InnoDB
  256. DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表';
  257. -- pwd: admin
  258. INSERT INTO `sj_system_user` (username, password, role)
  259. VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2);
  260. CREATE TABLE `sj_system_user_permission`
  261. (
  262. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  263. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  264. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  265. `system_user_id` bigint(20) NOT NULL COMMENT '系统用户id',
  266. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  267. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  268. PRIMARY KEY (`id`),
  269. UNIQUE KEY `uk_namespace_id_group_name_system_user_id` (`namespace_id`, `group_name`, `system_user_id`)
  270. ) ENGINE = InnoDB
  271. DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户权限表';
  272. -- 分布式调度DDL
  273. CREATE TABLE `sj_job`
  274. (
  275. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  276. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  277. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  278. `job_name` varchar(64) NOT NULL COMMENT '名称',
  279. `args_str` text DEFAULT NULL COMMENT '执行方法参数',
  280. `args_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '参数类型 ',
  281. `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
  282. `job_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务状态 0、关闭、1、开启',
  283. `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、集群 2、广播 3、切片',
  284. `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
  285. `executor_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '执行器类型',
  286. `executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称',
  287. `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
  288. `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
  289. `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
  290. `executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
  291. `max_retry_times` int(11) NOT NULL DEFAULT 0 COMMENT '最大重试次数',
  292. `parallel_num` int(11) NOT NULL DEFAULT 1 COMMENT '并行数',
  293. `retry_interval` int(11) NOT NULL DEFAULT 0 COMMENT '重试间隔(s)',
  294. `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
  295. `resident` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否是常驻任务',
  296. `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
  297. `owner_id` bigint(20) NULL DEFAULT NULL COMMENT '负责人id',
  298. `labels` varchar(512) NULL DEFAULT '' COMMENT '标签',
  299. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  300. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  301. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  302. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  303. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  304. PRIMARY KEY (`id`),
  305. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
  306. KEY `idx_job_status_bucket_index` (`job_status`, `bucket_index`),
  307. KEY `idx_create_dt` (`create_dt`)
  308. ) ENGINE = InnoDB
  309. AUTO_INCREMENT = 0
  310. DEFAULT CHARSET = utf8mb4 COMMENT ='任务信息';
  311. CREATE TABLE `sj_job_log_message`
  312. (
  313. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  314. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  315. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  316. `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
  317. `task_batch_id` bigint(20) NOT NULL COMMENT '任务批次id',
  318. `task_id` bigint(20) NOT NULL COMMENT '调度任务id',
  319. `message` longtext NOT NULL COMMENT '调度信息',
  320. `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
  321. `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
  322. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  323. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  324. PRIMARY KEY (`id`),
  325. KEY `idx_task_batch_id_task_id` (`task_batch_id`, `task_id`),
  326. KEY `idx_create_dt` (`create_dt`),
  327. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
  328. ) ENGINE = InnoDB
  329. AUTO_INCREMENT = 0
  330. DEFAULT CHARSET = utf8mb4 COMMENT ='调度日志';
  331. CREATE TABLE `sj_job_task`
  332. (
  333. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  334. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  335. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  336. `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
  337. `task_batch_id` bigint(20) NOT NULL COMMENT '调度任务id',
  338. `parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父执行器id',
  339. `task_status` tinyint NOT NULL DEFAULT 0 COMMENT '执行的状态 0、失败 1、成功',
  340. `retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
  341. `mr_stage` tinyint DEFAULT NULL COMMENT '动态分片所处阶段 1:map 2:reduce 3:mergeReduce',
  342. `leaf` tinyint NOT NULL DEFAULT '1' COMMENT '叶子节点',
  343. `task_name` varchar(255) NOT NULL DEFAULT '' COMMENT '任务名称',
  344. `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
  345. `wf_context` text DEFAULT NULL COMMENT '工作流全局上下文',
  346. `result_message` text NOT NULL COMMENT '执行结果',
  347. `args_str` text DEFAULT NULL COMMENT '执行方法参数',
  348. `args_type` tinyint NOT NULL DEFAULT 1 COMMENT '参数类型 ',
  349. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  350. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  351. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  352. PRIMARY KEY (`id`),
  353. KEY `idx_task_batch_id_task_status` (`task_batch_id`, `task_status`),
  354. KEY `idx_create_dt` (`create_dt`),
  355. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
  356. ) ENGINE = InnoDB
  357. AUTO_INCREMENT = 0
  358. DEFAULT CHARSET = utf8mb4 COMMENT ='任务实例';
  359. CREATE TABLE `sj_job_task_batch`
  360. (
  361. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  362. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  363. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  364. `job_id` bigint(20) NOT NULL COMMENT '任务id',
  365. `workflow_node_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流节点id',
  366. `parent_workflow_node_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流任务父批次id',
  367. `workflow_task_batch_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '工作流任务批次id',
  368. `task_batch_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
  369. `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
  370. `execution_at` bigint(13) NOT NULL DEFAULT 0 COMMENT '任务执行时间',
  371. `system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
  372. `parent_id` varchar(64) NOT NULL DEFAULT '' COMMENT '父节点',
  373. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  374. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  375. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  376. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  377. PRIMARY KEY (`id`),
  378. KEY `idx_job_id_task_batch_status` (`job_id`, `task_batch_status`),
  379. KEY `idx_create_dt` (`create_dt`),
  380. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
  381. KEY `idx_workflow_task_batch_id_workflow_node_id` (`workflow_task_batch_id`, `workflow_node_id`)
  382. ) ENGINE = InnoDB
  383. AUTO_INCREMENT = 0
  384. DEFAULT CHARSET = utf8mb4 COMMENT ='任务批次';
  385. CREATE TABLE `sj_job_summary`
  386. (
  387. `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  388. `namespace_id` VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  389. `group_name` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '组名称',
  390. `business_id` bigint NOT NULL COMMENT '业务id (job_id或workflow_id)',
  391. `system_task_type` tinyint(4) NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
  392. `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
  393. `success_num` int NOT NULL DEFAULT 0 COMMENT '执行成功-日志数量',
  394. `fail_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
  395. `fail_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
  396. `stop_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
  397. `stop_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
  398. `cancel_num` int NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
  399. `cancel_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
  400. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  401. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  402. PRIMARY KEY (`id`),
  403. KEY `idx_namespace_id_group_name_business_id` (`namespace_id`, `group_name`, business_id),
  404. UNIQUE KEY `uk_trigger_at_system_task_type_business_id` (`trigger_at`, `system_task_type`, `business_id`) USING BTREE
  405. ) ENGINE = InnoDB
  406. AUTO_INCREMENT = 1
  407. DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Job';
  408. CREATE TABLE `sj_retry_summary`
  409. (
  410. `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  411. `namespace_id` VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  412. `group_name` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '组名称',
  413. `scene_name` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '场景名称',
  414. `trigger_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
  415. `running_num` int NOT NULL DEFAULT 0 COMMENT '重试中-日志数量',
  416. `finish_num` int NOT NULL DEFAULT 0 COMMENT '重试完成-日志数量',
  417. `max_count_num` int NOT NULL DEFAULT 0 COMMENT '重试到达最大次数-日志数量',
  418. `suspend_num` int NOT NULL DEFAULT 0 COMMENT '暂停重试-日志数量',
  419. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  420. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  421. PRIMARY KEY (`id`),
  422. KEY `idx_trigger_at` (`trigger_at`),
  423. UNIQUE KEY `uk_scene_name_trigger_at` (`namespace_id`, `group_name`, `scene_name`, `trigger_at`) USING BTREE
  424. ) ENGINE = InnoDB
  425. AUTO_INCREMENT = 1
  426. DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Retry';
  427. CREATE TABLE `sj_workflow`
  428. (
  429. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  430. `workflow_name` varchar(64) NOT NULL COMMENT '工作流名称',
  431. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  432. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  433. `workflow_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启',
  434. `trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
  435. `trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
  436. `next_trigger_at` bigint NOT NULL COMMENT '下次触发时间',
  437. `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
  438. `executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
  439. `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
  440. `flow_info` text DEFAULT NULL COMMENT '流程信息',
  441. `wf_context` text DEFAULT NULL COMMENT '上下文',
  442. `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
  443. `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
  444. `version` int(11) NOT NULL COMMENT '版本号',
  445. `owner_id` bigint(20) NULL DEFAULT NULL COMMENT '负责人id',
  446. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  447. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  448. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  449. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  450. PRIMARY KEY (`id`),
  451. KEY `idx_create_dt` (`create_dt`),
  452. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
  453. ) ENGINE = InnoDB
  454. AUTO_INCREMENT = 0
  455. DEFAULT CHARSET = utf8mb4 COMMENT ='工作流';
  456. CREATE TABLE `sj_workflow_node`
  457. (
  458. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  459. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  460. `node_name` varchar(64) NOT NULL COMMENT '节点名称',
  461. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  462. `job_id` bigint(20) NOT NULL COMMENT '任务信息id',
  463. `workflow_id` bigint(20) NOT NULL COMMENT '工作流ID',
  464. `node_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、任务节点 2、条件节点',
  465. `expression_type` tinyint(4) NOT NULL DEFAULT 0 COMMENT '1、SpEl、2、Aviator 3、QL',
  466. `fail_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '失败策略 1、跳过 2、阻塞',
  467. `workflow_node_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流节点状态 0、关闭、1、开启',
  468. `priority_level` int(11) NOT NULL DEFAULT 1 COMMENT '优先级',
  469. `node_info` text DEFAULT NULL COMMENT '节点信息 ',
  470. `version` int(11) NOT NULL COMMENT '版本号',
  471. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  472. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  473. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  474. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  475. PRIMARY KEY (`id`),
  476. KEY `idx_create_dt` (`create_dt`),
  477. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
  478. ) ENGINE = InnoDB
  479. AUTO_INCREMENT = 0
  480. DEFAULT CHARSET = utf8mb4 COMMENT ='工作流节点';
  481. CREATE TABLE `sj_workflow_task_batch`
  482. (
  483. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  484. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  485. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  486. `workflow_id` bigint(20) NOT NULL COMMENT '工作流任务id',
  487. `task_batch_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
  488. `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
  489. `flow_info` text DEFAULT NULL COMMENT '流程信息',
  490. `wf_context` text DEFAULT NULL COMMENT '全局上下文',
  491. `execution_at` bigint(13) NOT NULL DEFAULT 0 COMMENT '任务执行时间',
  492. `ext_attrs` varchar(256) NULL DEFAULT '' COMMENT '扩展字段',
  493. `version` int(11) NOT NULL DEFAULT 1 COMMENT '版本号',
  494. `deleted` tinyint(4) NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
  495. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  496. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  497. PRIMARY KEY (`id`),
  498. KEY `idx_job_id_task_batch_status` (`workflow_id`, `task_batch_status`),
  499. KEY `idx_create_dt` (`create_dt`),
  500. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
  501. ) ENGINE = InnoDB
  502. AUTO_INCREMENT = 0
  503. DEFAULT CHARSET = utf8mb4 COMMENT ='工作流批次';
  504. CREATE TABLE `sj_job_executor`
  505. (
  506. `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
  507. `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
  508. `group_name` varchar(64) NOT NULL COMMENT '组名称',
  509. `executor_info` varchar(256) NOT NULL COMMENT '任务执行器名称',
  510. `executor_type` varchar(3) NOT NULL COMMENT '1:java 2:python 3:go',
  511. `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  512. `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
  513. PRIMARY KEY (`id`),
  514. KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
  515. KEY `idx_create_dt` (`create_dt`)
  516. ) ENGINE = InnoDB
  517. AUTO_INCREMENT = 0
  518. DEFAULT CHARSET = utf8mb4 COMMENT ='任务执行器信息';