CN115687491A - 一种基于关系型数据库的数据分析任务调度系统 - Google Patents
一种基于关系型数据库的数据分析任务调度系统 Download PDFInfo
- Publication number
- CN115687491A CN115687491A CN202211473574.1A CN202211473574A CN115687491A CN 115687491 A CN115687491 A CN 115687491A CN 202211473574 A CN202211473574 A CN 202211473574A CN 115687491 A CN115687491 A CN 115687491A
- Authority
- CN
- China
- Prior art keywords
- task
- module
- relational database
- scheduling
- tasks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于关系型数据库的数据分析任务调度系统,其包括:任务提交模块,用于提供任务提交接口,上传任务参数;任务持久化模块,与任务提交模块连接,用于对任务进行持久化,并存入关系型数据库;关系型数据库,与任务持久化模块连接,用于进行持久化存储;任务调度模块,与任务持久化模块连接,用于按照预定义的调度策略进行任务调度;任务执行模块,与任务调度模块连接,用于执行任务调度模块中被调度的任务。其便于集成使用,提高业务实现的效率,减少研发资源浪费。
Description
技术领域
本发明涉及保险数据分析领域,具体涉及基于关系型数据库的数据分析任务调度系统。
背景技术
随着社会的发展,各个行业的数据分析需求日渐增多,特别的在保险数据分析领域,高度定制化、快速实现分析业务方向需求迫切。
CN113449024A公开了一种基于大数据的保险数据分析方法、装置、设备及介质,能够调用Sqoop从上游数据中抽取待处理数据写入Hive表,调用Hive加工待处理数据,得到标志位,在检测到标志位满足配置条件时,才执行计算,有效节约了系统的计算资源,调用Hive从待处理数据中提取每个目标维度下的计算因子计算每个目标维度的UPR值,调用Sqoop同步每个目标维度的UPR值至本地数据库,进而能够结合大数据计算,统一操作方式,避免由于数据量等的差异而采用不同的计算方式造成系统资源的浪费,并有效降低了人力成本,避免由于人为计算引入较高的误差,使计算的UPR值更加准确,同时提高了计算效率。此外,还涉及区块链技术,UPR值可存储于区块链节点中。其并未考虑任务调度系统的集成性和定制化方面的问题,同时由于引入大数据框架技术,使得系统的复杂度急剧升高,维护难度大幅降低。
CN115016915A公开了一种任务调度方法、装置、计算机设备、存储介质和程序产品。方法包括:获取分布式系统中的所有候选任务和各候选任务的任务并发数量;候选任务表示分布式系统中当前已被执行容错机制的任务;获取各候选任务对应的关键服务节点的最小空闲线程数;根据各关键服务节点的最小空闲线程数,对对应候选任务的任务并发数量进行调整,得到各候选任务的目标任务并发数;目标任务并发数为各关键服务节点能够执行对应候选任务的任务数量。采用本方法能够降低再次执行候选任务时仍然可能会发生阻塞的风险。其未考虑任务调度系统的定制化问题,引入分布式系统的同时使得系统使用及维护复杂度升高。
综上,多数任务调度系统关注分布式、大数据方向,系统庞大,维护成本高,定制难度极高,任务调度系统的易用性、定制化程度不足,无法满足需要快速实现、定制化需求较高的场景。
针对此类问题进行分析,迫切的需要一种方案提供易于定制、集成的任务调度系统,具备定制化能力,包括自定义调度策略、自定义执行器等。
发明内容
本发明的目的是提供一种基于关系型数据库的数据分析任务调度系统,其便于集成使用,提高业务实现的效率,减少研发资源浪费。
本发明所述的基于关系型数据库的数据分析任务调度系统,其包括:
任务提交模块,用于提供任务提交接口,上传任务参数;
任务持久化模块,与任务提交模块连接,用于对任务进行持久化,并存入关系型数据库;
关系型数据库,与任务持久化模块连接,用于进行持久化存储;
任务调度模块,与任务持久化模块连接,用于按照预定义的调度策略进行任务调度;
任务执行模块,与任务调度模块连接,用于执行任务调度模块中被调度的任务。
进一步,还包括任务维护模块,任务执行完成之后由任务维护模块同步更新任务状态到关系型数据库中;所述任务维护模块在系统启动时同步未执行的任务到任务调度模块,并执行任务重试策略,以便任务能在意外中断后继续。
进一步,所述重试策略根据实际需求进行自定义。
进一步,任务执行过程中记录并监测任务执行时间、计算资源、存储资源,并实时同步到任务维护模块,任务维护模块根据预定义的策略进行任务执行干涉,针对超过配置资源及时间的运行任务进行中断,释放资源,并标记任务状态为失败。
进一步,所述任务提交模块选择HTTP接口或RPC接口。
进一步,所述关系型数据库使用MySQL作为持久化层实现。
进一步,所述任务调度模块按照预设的计算资源并发度进行并发任务调度,并发度由硬件服务器配置决定。
进一步,所述任务执行模块的处理流程具体为:获取任务参数,检查任务参数的合法性,对任务参数进行解析,执行任务,完成后更新任务状态。
进一步,所述任务调度模块的预定义的调度策略为优先级队列策略、先进先出策略或定时重复策略。
本发明与现有技术相比具有如下有益效果。
1、本发明在任务提交后先同步存储到关系型数据库,进行持久化存储,确保任务提交成功后不会因异常情况丢失,此过程依赖关系型数据库的事务能力确保任务状态的一致性。由于该调度系统依赖于关系型数据库及其提供的事务能力,不依赖关系型数据库的实现方案,可以方便切换不同的关系型数据库实现。
2、本发明所述的基于关系型数据库的保险任务分析调度系统,提供多种易用的任务提交界面,兼容性好。
3、本发明所述的基于关系型数据库的保险任务分析调度系统,能够自定义执行策略及执行动作,自定义方便,灵活性高。
4、本发明所述的基于关系型数据库的保险任务分析调度系统,外部依赖少,复杂度低,降低了系统维护的复杂度。
5、本发明所述的基于关系型数据库的保险任务分析调度系统,便于集成使用,提高了任务实现的效率,减少了研发资源浪费。
附图说明
图1是本发明所述基于关系型数据库的数据分析任务调度系统的结构图。
图中,1—任务提交模块,2—任务持久化模块,3—关系型数据库,4—任务调度模块,5—任务执行模块,6—任务维护模块。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,所示的基于关系型数据库的数据分析任务调度系统,其包括:
任务提交模块1,用于提供任务提交接口,上传任务参数。
任务持久化模块2,与任务提交模块1连接,用于对任务进行持久化,并存入关系型数据库3。即提交的任务先同步存储到关系型数据库3,进行持久化存储,确保任务提交成功后不会因异常情况丢失,此过程依赖关系型数据库3的事务能力确保任务状态的一致性。
关系型数据库3,与任务持久化模块2连接,用于进行持久化存储。
任务调度模块4,与任务持久化模块2连接,用于按照预定义的调度策略进行任务调度。
任务执行模块5,与任务调度模块4连接,用于执行任务调度模块4中被调度的任务。
任务维护模块6,维护未完成及失败任务,并记录任务资源占用信息。
图1是本发明的模块流程图,根据任务流转逻辑进行,部分步骤可以省略。
在本实施例中,依赖关系型数据库3提供的事务能力保证任务状态的一致性。
任务持久化为方便集成方定制抽象出持久化层,集成方能够根据需要自行配置数据源,以保险分析数据为例,需要配置MySQL驱动及其数据库连接参数。本实施例中关系型数据库可以使用但不限于MySQL作为持久化层实现,其他具备事务能力的关系型数据库可以替换。
任务执行所需的计算资源主要由任务调度模块4的多核中央处理器提供,并发能力由中央处理器的核数和用户配置决定。
任务提交由任务提交模块1进入任务调度系统,任务提交方法选择HTTP接口或RPC接口界面,提交成功或失败均有相应的响应提示。任务参数包括任务名称、任务类型、任务执行参数、任务创建人、任务创建时间等必要参数,其他参数可按需添加。
任务提交之后由任务持久化模块2进行持久化,并存入关系型数据库3,确保任务不因服务重启而丢失,持久化完成返回响应成功,提示任务交成功。
任务持久化模块2在任务持久化成功后提交任务到任务调度模块4进入调度队列。
任务调度模块4任务策略能够自由定制,常用的策略包括优先级队列策略、先进先出策略或定时重复策略。默认调度策略为先进先出策略:按任务提交时间的先后顺序进行调度,所述任务调度模块4按照预设的计算资源并发度进行并发任务调度,并发度由硬件服务器配置决定。在计算资源充足的情况下并发进行任务的执行,后续任务提交后资源不足时排队等待,直到先前的任务执行完成。
优先级队列策略:进入任务调度模块4的任务带有优先级标识,按不同的优先级进入不同队列,在有可用资源的情况下,优先执行高优先级队列中的任务,重复此策略,直到无可用资源,进入等待状态。
定时重复策略:进入任务调度模块4的任务按照各自预定的定时策略进行重复执行,定时表达式参照cron表达式 秒-分-时-天-月-周,示例1:每天0点0分执行 0-0-0-*-*-*,示例2:每十分钟执行一次 0-0/10-*-*-*-*。
被调度的任务进入任务执行模块5由具体的执行模块执行任务,所述任务执行模块5的处理流程具体为:获取任务参数,检查任务参数的合法性,对任务参数进行解析,执行任务,完成后更新任务状态。任务执行动作由集成方自行实现,以保险数据分析为例,任务执行模块先进行SQL分析任务的语法分析,检测SQL注入的问题,验证通过后进行SQL语法分析,抽取待分析的字段列表、源数据表,生成目的数据表,之后进行数据分批次抽取转存。
任务执行完成之后由任务维护模块6同步更新任务状态到关系型数据库3中。任务状态的一致性依赖于关系型数据库提供的事务能力,确保缓存与持久化后的任务状态保持一致。
任务维护模块6在系统启动时同步未执行的任务到任务调度模块4,并执行任务重试策略,以便任务能在意外中断后继续。此处所述重试策略根据实际需求进行自定义。提供默认重试策略重试三次,失败后标记任务状态为任务失败并不再重试。
任务执行过程中记录并监测任务执行时间、计算资源、存储资源,并实时同步到任务维护模块6,任务维护模块6根据预定义的策略进行任务执行干涉,针对超过配置资源及时间的运行任务进行中断,释放资源,并标记任务状态为失败。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。
Claims (9)
1.一种基于关系型数据库的数据分析任务调度系统,其特征在于,包括:
任务提交模块,用于提供任务提交接口,上传任务参数;
任务持久化模块,与任务提交模块连接,用于对任务进行持久化,并存入关系型数据库;
关系型数据库,与任务持久化模块连接,用于进行持久化存储;
任务调度模块,与任务持久化模块连接,用于按照预定义的调度策略进行任务调度;
任务执行模块,与任务调度模块连接,用于执行任务调度模块中被调度的任务。
2.根据权利要求1所述的基于关系型数据库的数据分析任务调度系统,其特征在于:还包括任务维护模块,任务执行完成之后由任务维护模块同步更新任务状态到关系型数据库中;
所述任务维护模块在系统启动时同步未执行的任务到任务调度模块,并执行任务重试策略,以便任务能在意外中断后继续。
3.根据权利要求2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述重试策略根据实际需求进行自定义。
4.根据权利要求2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:任务执行过程中记录并监测任务执行时间、计算资源、存储资源,并实时同步到任务维护模块,任务维护模块根据预定义的策略进行任务执行干涉,针对超过配置资源及时间的运行任务进行中断,释放资源,并标记任务状态为失败。
5.根据权利要求1或2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述任务提交模块选择HTTP接口或RPC接口。
6.根据权利要求1或2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述关系型数据库使用MySQL作为持久化层实现。
7.根据权利要求1或2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述任务调度模块按照预设的计算资源并发度进行并发任务调度,并发度由硬件服务器配置决定。
8.根据权利要求1或2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述任务执行模块的处理流程具体为:获取任务参数,检查任务参数的合法性,对任务参数进行解析,执行任务,完成后更新任务状态。
9.根据权利要求1或2所述的基于关系型数据库的数据分析任务调度系统,其特征在于:所述任务调度模块的预定义的调度策略为优先级队列策略、先进先出策略或定时重复策略。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211473574.1A CN115687491A (zh) | 2022-11-23 | 2022-11-23 | 一种基于关系型数据库的数据分析任务调度系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211473574.1A CN115687491A (zh) | 2022-11-23 | 2022-11-23 | 一种基于关系型数据库的数据分析任务调度系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115687491A true CN115687491A (zh) | 2023-02-03 |
Family
ID=85056794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211473574.1A Pending CN115687491A (zh) | 2022-11-23 | 2022-11-23 | 一种基于关系型数据库的数据分析任务调度系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115687491A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117271102A (zh) * | 2023-11-23 | 2023-12-22 | 山东省工业技术研究院 | 一种任务调度系统 |
-
2022
- 2022-11-23 CN CN202211473574.1A patent/CN115687491A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117271102A (zh) * | 2023-11-23 | 2023-12-22 | 山东省工业技术研究院 | 一种任务调度系统 |
CN117271102B (zh) * | 2023-11-23 | 2024-03-19 | 山东省工业技术研究院 | 一种任务调度系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10453010B2 (en) | Computer device, method, and apparatus for scheduling business flow | |
US8938421B2 (en) | Method and a system for synchronizing data | |
CN106802826B (zh) | 一种基于线程池的业务处理方法及装置 | |
US8763012B2 (en) | Scalable, parallel processing of messages while enforcing custom sequencing criteria | |
US7680793B2 (en) | Commit-time ordered message queue supporting arbitrary read and dequeue patterns from multiple subscribers | |
US20090217272A1 (en) | Method and Computer Program Product for Batch Processing | |
US20080201712A1 (en) | Method and System for Concurrent Message Processing | |
CN110941502A (zh) | 消息处理方法、装置、存储介质及设备 | |
CN111580939B (zh) | 一种分级异步处理事务的方法及装置 | |
CN111198769A (zh) | 信息处理方法及其系统、计算机系统及计算机可读介质 | |
CN112181621A (zh) | 一种任务调度系统、方法、设备及存储介质 | |
CN112286661A (zh) | 任务调度方法及装置、存储介质、终端 | |
CN115994053A (zh) | 数据库备机的并行回放方法、装置、电子设备及介质 | |
CN112667382A (zh) | 任务调度方法、装置、设备及存储介质 | |
CN115687491A (zh) | 一种基于关系型数据库的数据分析任务调度系统 | |
US20070083866A1 (en) | Leveraging advanced queues to implement event based job scheduling | |
CN115964153A (zh) | 一种异步任务处理方法、装置、设备以及存储介质 | |
US20090100434A1 (en) | Transaction management | |
CN115185787A (zh) | 处理事务日志的方法及装置 | |
WO2020253045A1 (zh) | 配置化的数据转发异常补处理方法、装置及可读存储介质 | |
JP2006338197A (ja) | トランザクション制御プログラム、トランザクション制御方法及びトランザクション処理システム | |
CN111352704A (zh) | 基于策略管理的分布式全局事务处理系统和方法 | |
JP2000078169A (ja) | サーバ設定装置 | |
CN112948096A (zh) | 一种批量调度方法、装置和设备 | |
CN117076096A (zh) | 任务流程的执行方法、装置、计算机可读介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |