CN114168314A - 一种多线程并发的数据指标批量处理方法、装置及存储介质 - Google Patents
一种多线程并发的数据指标批量处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114168314A CN114168314A CN202111258372.0A CN202111258372A CN114168314A CN 114168314 A CN114168314 A CN 114168314A CN 202111258372 A CN202111258372 A CN 202111258372A CN 114168314 A CN114168314 A CN 114168314A
- Authority
- CN
- China
- Prior art keywords
- index
- calculation
- queue
- concurrent
- dependent
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims abstract description 87
- 230000001419 dependent effect Effects 0.000 claims abstract description 67
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 24
- 230000008569 process Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000004927 fusion Effects 0.000 claims description 4
- 230000008520 organization Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种多线程并发的数据指标批量处理方法、装置及存储介质,其通过获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;根据不同的指标类型,对全量指标作业清单中的指标作业和依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;判定指标作业对应的依赖任务是否完成;对满足并发条件的指标作业创建合并队列;并根据不同的作业计算类型,对合并队列中的指标作业进行整合,形成并发计算队列;对并发计算队列中的指标作业进行并发计算,能够对指标作业对应的依赖任务进行调度和合并,并且能够对多维度的数据进行并发计算,不仅极大的提高了算法的效率,而且使得算法更灵活,应用场景更广。
Description
技术领域
本发明涉及多线程并发的数据指标批量处理技术领域,特别是一种多线程并发的数据指标批量处理方法及其应用该方法的多线程并发的数据指标批量处理系统及计算机可读存储介质。
背景技术
大数据已经广泛应用于日常生活的诸多领域,特别是金融领域对于大数据的依赖远超其他领域。在数据大集中的发展趋势下,如何从海量数据中抽取具有共性特征的数据集,并对这些具有共性特征的数据集进行快速交互地批量处理或批量加工,将是管理信息系统中日益突出的问题,也是数据集中工程中亟待解决的问题。
在批量数据加工环节中,有个特殊场景就是指标加工。指标是一系列有规律、多维度、多加工方式数据的汇总。由于指标通常会有成千上万个,例如金融领域的指标包括:BSN0100017零售存款余额、BSN0100051小微企业零售存款、BSN0100052收单商户零售存款、BSN0100018零售存款余额、BSN0100023零售结构性存款、BSN0100025零售活期存款、BSN0100026零售定期存款等;每个指标的计算公式并不一致,并且可能有衍生依赖关系(如BSN0100018=BSN0100025+BSN0100026+BSN0100023)。
如果将所有指标配置成SQL放置到调度里面计算,可能需要生成上万个调度任务。这些任务之间错综复杂,维护不便,并且加工逻辑可能高度雷同,既给调度系统带来较大维护压力,也给数据库带来巨大的计算资源浪费。
如果将所有指标编写成一个或者少数几个SQL放到调度任务里面,理论上可以解决资源浪费问题,但是不同指标需要相互等待直至所有指标达到计算条件,任务才能启动,会影响数据的时效性。
发明内容
本发明的主要目的在于提供了一种多线程并发的数据指标批量处理方法、装置及存储介质,旨在解决现有的批量数据加工遇到的多维度指标如何并发计算的技术问题。
为实现上述目的,本发明提供了一种多线程并发的数据指标批量处理方法,包括以下步骤:
获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;
对所述并发计算队列中的指标作业进行并发计算。
本发明通过建立作业与作业、作业与指标的依赖关系,通过对指标作业和依赖任务进行计算方法的配置,并根据配置规则进行队列合并和作业整合,实现高并发计算,极大的提高了算法的效率。
优选的,所述指标的维度包括机构级别维度、客户级别维度、产品级别维度中的任一种或两种以上维度;每个维度指标对应的指标类型包括基础指标、衍生指标、融合指标中的任一种或两种以上类型。
优选的,所述作业计算类型包括SQL、DTL、CAL、BTL、MTL、HGJ、BLCAL中的任一种或两种以上类型;所述作业计算类型对应的技术公式类型包括SQL公式、DTL公式、CAL公式、BTL公式、MTL公式、HGJ公式、BLCAL公式中的任一种或两种以上类型。
优选的,所述依赖任务清单中的依赖任务包括内部依赖任务和外部依赖任务,所述外部依赖任务由批量调度系统执行,并对已成功完成作业任务的外部依赖任务实时更新至所述依赖任务清单;同时,对已成功完成作业任务的内部依赖任务也实时更新至所述依赖任务清单。
本发明可同时协调内外部资源完成作业任务,并实时更新作业状态和结果,从而使得各项作业能够尽快进行指标合并和并发计算,进一步提高了算法的效率,更适用于实时性要求较高的场景。
优选的,对所述合并队列中的指标作业进行整合,是指将维度一致的指标自动合并和统一计算;对所述并发计算队列中的指标作业进行并发计算,是指对不同维度的指标进行线程级别的并发。
本发明通过分步骤构建合并队列和计算队列,通过合并队列实现指标维度的合并,通过计算队列使得不同维度的指标实现线程级别的并发,实现多指标、多维度、多线程、高并发的作业计算。
优选的,所述并发计算,是根据不同的作业计算类型配置不同的计算模板,所述计算模板包括计算指标的维度和计算的内容;所述合并队列中的指标作业与所述计算模板进行匹配后,整合形成完整算法,再进入所述计算队列进行并发计算。
本发明的算法,采用模板与作业的匹配和整合得到最终完整算法,提高了开发人员的工作效率。
优选的,所述线程级别的并发,是通过设置线程池,所述线程池包括一个以上的线程,每个线程支持运行一项指标作业的计算,所述线程池中的线程数量大于或等于所述计算队列中的指标作业的数量。
与所述多线程并发的数据指标批量处理方法相对应的,本发明提供一种多线程并发的数据指标批量处理系统,其包括:
指标配置模块,用于获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
计算公式配置模块,用于根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
依赖判定模块,用于判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
高并发指标计算模块,用于对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;对所述并发计算队列中的指标作业进行并发计算。
优选的,所述批量处理系统为批量调度系统的子作业系统,由批量调度系统在特定时间点唤醒执行;或者,所述批量处理系统为独立系统,并在执行过程中从批量调度系统获取所述依赖任务清单。
本发明可作为批量调度平台的一个子作业,由调度系统在特定时间点唤醒执行,也可单独进行部署。其执行过程中时可从调度系统获取当前调度系统已经完成的作业清单,作为自己外部作业的依赖就绪情况,可以快速进行功能扩展。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有多线程并发的数据指标批量处理程序,所述多线程并发的数据指标批量处理程序被处理器执行时实现如上文所述的多线程并发的数据指标批量处理方法的步骤。
本发明的有益效果是:
现有的指标计算引擎,指标计算脱离批量调度平台,需要先把基础数据进行加工完再提供给调度平台,不仅存在效率问题,也同样存在数据时效性问题;另外衍生指标方面针对汇总值才支持各类计算公式,而带维度的数据只能做简单加减,实际使用灵活性非常欠缺。
本发明通过获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;对所述并发计算队列中的指标作业进行并发计算,能够对指标作业对应的依赖任务进行调度和合并,并且能够对多维度的数据进行并发计算,不仅极大的提高了算法的效率,而且使得算法更灵活,应用场景更广。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明多线程并发的数据指标批量处理方法的计算过程简图;
图2为本发明多线程并发的数据指标批量处理方法的依赖判断过程简图图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明的一种多线程并发的数据指标批量处理方法,其包括以下步骤:
获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;
对所述并发计算队列中的指标作业进行并发计算。
所述指标的维度包括机构级别维度、客户级别维度、产品级别维度中的任一种或两种以上维度;每个维度指标对应的指标类型包括基础指标、衍生指标、融合指标中的任一种或两种以上类型。对于金融领域,本实施例包括以下维度的指标:1、机构级别的(主要维度:日期、机构、币种、指标类型,指标值是:金额);2、客户级别的(主要维度:日期、机构、币种、指标类型、客户号,指标值是金额);3、产品级别(主要维度是:日期、机构、币种、产品,指标类型,指标值是金额)等,不同维度考核的重点不同,以机构级别最为复杂,设置的指标最多。机构按分类可分核心机构、账务机构等,按分级,又有总行、分行、支行、网点等,都分开计算所有指标,并且进行同比环比等其他计算。不同行业的指标维度可根据实际需求进行设置。
根据不同的指标类型,配置对应的作业计算类型和计算公式,举例如下:
本实施例中,所述依赖任务清单中的依赖任务包括内部依赖任务和外部依赖任务,所述外部依赖任务由批量调度系统执行,并对已成功完成作业任务的外部依赖任务实时更新至所述依赖任务清单;同时,对已成功完成作业任务的内部依赖任务也实时更新至所述依赖任务清单。
本实施例中,对所述合并队列中的指标作业进行整合,是指将维度一致的指标自动合并和统一计算;对所述并发计算队列中的指标作业进行并发计算,是指对不同维度的指标进行线程级别的并发。所述并发计算,是根据不同的作业计算类型配置不同的计算模板,所述计算模板包括计算指标的维度和计算的内容;所述合并队列中的指标作业与所述计算模板进行匹配后,整合形成完整算法,再进入所述计算队列进行并发计算。所述线程级别的并发,是通过设置线程池,所述线程池包括一个以上的线程,每个线程支持运行一项指标作业的计算,所述线程池中的线程数量大于或等于所述计算队列中的指标作业的数量。
其中,所述作业计算类型包括SQL、DTL、CAL、BTL、MTL、HGJ、BLCAL中的任一种或两种以上类型;所述作业计算类型对应的技术公式类型包括SQL公式、DTL公式、CAL公式、BTL公式、MTL公式、HGJ公式、BLCAL公式中的任一种或两种以上类型。
各种公式类型的执行过程简述如下:
A、SQL公式:可以自由编写任意SQL,实现数据的各类加工,兼容外部的调度系统(调度系统的任务可以平移到SQL公式底下运行)。该模式下SQL将实现线程级别的并发(10个线程可以同时执行10个SQL作业)。
B、DTL公式:可以实现明细数据按照支行、分行、总行、战区、币种等维度、多层次自动向上汇总。该模式下SQL将实现维度一致的指标自动合并统一计算,在此基础上不同维度的指标实现线程级别的并发(并发度=本次参与合并的指标数*线程数)。
C、CAL公式:内部指标计算公式,也是本发明的衍生指标或融合指标的加工公式,可以实现带维度的指标任意的计算,包含加减乘除、平均、开方、取余、取整、加权等运算;目前业界一般只能实现带维度的指标的加减,能够实现乘除的较少,并且乘除需要耗费较大的资源,能通过SQL实现其他运算的,本发明是首创;其中,所述的带维度计算,是指公式要作用于相关维度的所有记录。该模式下SQL将实现线程级别的并发。
D、BTL公式:可以实现各维度数据同期、同比、环比、并上年、比上月等公共计算。该模式下SQL将实现维度一致的指标自动合并统一计算,在此基础上不同维度的指标实现线程级别的并发(并发度=本次参与合并的指标数*线程数)
E、MTL公式:自定义模板公式,部分指标拥有高度一致的取数规则(只是取数的字段、值稍有不同),因此,对取数规则一致的指标,可以实现统一计算。该模式下SQL将进行口径一致的指标自动合并统一计算,在此基础上不同口径的指标实现线程级别的并发(并发度=本次参与合并的指标数*线程数)。
另外,本发明还对应提供一种多线程并发的数据指标批量处理系统,其包括:
与所述多线程并发的数据指标批量处理方法相对应的,本发明提供一种多线程并发的数据指标批量处理系统,其包括:
指标配置模块,用于获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
计算公式配置模块,用于根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
依赖判定模块,用于判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
高并发指标计算模块,用于对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;对所述并发计算队列中的指标作业进行并发计算。
本实施例中,所述批量处理系统为批量调度系统的子作业系统,由批量调度系统在特定时间点唤醒执行;或者,所述批量处理系统为独立系统,并在执行过程中从批量调度系统获取所述依赖任务清单。
如图2所示,本发明的具体实施例的处理过程包括如下步骤:
步骤(1):指标配置模块,用于获取全量指标作业清单,及其每个指标作业依赖的依赖任务清单;
步骤(2):依赖判定模块,用于判定每个指标所依赖的作业是否已经完成,如果指标的依赖任务(可能有多个)都已完成,则该指标作业即可进入下一步的高并发指标计算模块。这里面依赖任务分为两种,一种是批量调度平台已成功完成的依赖任务清单(批量调度平台也在同时执行跑批任务,其成功完成的依赖任务清单实时更新);另一种就是本系统自己的依赖任务清单,当某个指标计算成功,就会更新;
步骤(3):高并发指标计算模块:
步骤3-1:经步骤(2)判断依赖已经满足的指标作业会进入等待合并队列;
步骤3-2:当前合并队列的指标作业,根据不同的作业计算类型,与计算公式配置模块进行匹配,整合形成完整的SQL代码,进入并发计算队列;其中,
A:SQL公式的指标,直接引用指标自带的SQL代码,并进行跑批参数变量的替换(跑批参数主要包含,跑批的数据日期、跑批的数据库变量);
B:DTL公式的指标(BTL、MTL指标类同),所有维度一致的DTL公式的指标,合并一起组成SQL中的in条件(例如In('BSN0100017','BSN0100018','BSN0100019')),并从计算公式配置模块获取SQL模板(该模板包含计算的维度,以及计算的内容,如汇总总行、汇总分行、汇总支行、汇总各个币种、同比、环比等,可以对IN条件里面的所有指标同时计算,实现高并发)进行跑批替换。
例如:
Insert into指标计算目标表
SELECT
日期,
总行机构,
指标号,
Sum(金额)
From指标计算基础表
Where指标号in('BSN0100017','BSN0100018','BSN0100019')
And日期=跑批日
Group by日期,
总行机构,
指标号。
C:CAL公式的指标,从指标配置模块获得配置公式:
例如指标配置公式:
BSN0100020=BSN0100017/(BSN0100018+BSN0100019),
需要将其中涉及的指标号拆解出来形成in条件:
in('BSN0100017','BSN0100018','BSN0100019')
从计算公式配获得框架代码并整合上述公式形成如下:
Insert into指标计算目标表,
SELECT
日期,
机构,
BSN0100020as指标号,
SUM(CASE WHEN指标号=BSN0100017 THEN金额ELSE 0END)/(SUM(CASE WHEN指标号=BSN0100018 THEN金额ELSE 0END),
+SUM(CASE WHEN指标号=BSN0100019 THEN金额ELSE 0END))计算指标值,
From指标计算目标表,
Where指标号in('BSN0100017','BSN0100018','BSN0100019'),
And日期=跑批日,
Group by日期,
机构。
步骤3-3:设置线程池,每个线程支持运行一个SQL脚本(例如,本实施例根据数据库资源总量,设置线程池是25个,即允许同时运行25个SQL)。进入计算队列的所有指标(汇总成各类SQL)就表示其已满足计算条件,可以并发进行计算,通过申请独立线程进行跑批,并根据跑批情况反馈结果。
步骤(4):指标计算结果判定,不同线程的指标计算完成后针对结果进行判定,如果执行返回是成功的,根据不同的指标类型进行状态的判定:
A、SQL公式的指标,将该指标状态设置成成功;
B、DTL公式的指标(BTL、MTL指标类同),将所有参与该SQL代码的指标都是设置成成功;
C、CAL公式的指标,将该指标状态设置成成功。
如果执行返回是失败的,按照上述方式,将指标设置成失败,失败的指标会重复进入待计算清单进行跑批,当失败次数达到3次时,进入人工干预状态。
步骤(5):经过上轮高并发计算,如果指标计算成功,表示该指标已经完成(指标所依赖内部作业)。系统重新进入步骤(2):依赖判定模块,循环直至所有的指标都已成功。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现图1或图2所示的多线程并发的数据指标批量处理方法。所述计算机可读存储介质可以是只读存储器,磁盘或光盘等。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置实施例及存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
并且,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
上述说明示出并描述了本发明的优选实施例,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (10)
1.一种多线程并发的数据指标批量处理方法,其特征在于,包括以下步骤:
获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;
对所述并发计算队列中的指标作业进行并发计算。
2.根据权利要求1所述的多线程并发的数据指标批量处理方法,其特征在于:所述指标的维度包括机构级别维度、客户级别维度、产品级别维度中的任一种或两种以上维度;每个维度指标对应的指标类型包括基础指标、衍生指标、融合指标中的任一种或两种以上类型。
3.根据权利要求1所述的多线程并发的数据指标批量处理方法,其特征在于:所述作业计算类型包括SQL、DTL、CAL、BTL、MTL、HGJ、BLCAL中的任一种或两种以上类型;所述作业计算类型对应的技术公式类型包括SQL公式、DTL公式、CAL公式、BTL公式、MTL公式、HGJ公式、BLCAL公式中的任一种或两种以上类型。
4.根据权利要求1所述的多线程并发的数据指标批量处理方法,其特征在于:所述依赖任务清单中的依赖任务包括内部依赖任务和外部依赖任务,所述外部依赖任务由批量调度系统执行,并对已成功完成作业任务的外部依赖任务实时更新至所述依赖任务清单;同时,对已成功完成作业任务的内部依赖任务也实时更新至所述依赖任务清单。
5.根据权利要求1所述的多线程并发的数据指标批量处理方法,其特征在于:对所述合并队列中的指标作业进行整合,是指将维度一致的指标自动合并和统一计算;对所述并发计算队列中的指标作业进行并发计算,是指对不同维度的指标进行线程级别的并发。
6.根据权利要求1或5所述的多线程并发的数据指标批量处理方法,其特征在于:所述并发计算,是根据不同的作业计算类型配置不同的计算模板,所述计算模板包括计算指标的维度和计算的内容;所述合并队列中的指标作业与所述计算模板进行匹配后,整合形成完整算法,再进入所述计算队列进行并发计算。
7.根据权利要求5所述的多线程并发的数据指标批量处理方法,其特征在于:所述线程级别的并发,是通过设置线程池,所述线程池包括一个以上的线程,每个线程支持运行一项指标作业的计算,所述线程池中的线程数量大于或等于所述计算队列中的指标作业的数量。
8.一种多线程并发的数据指标批量处理系统,其特征在于,包括:
指标配置模块,用于获取全量指标作业清单,及其每个指标作业对应的依赖任务清单;
计算公式配置模块,用于根据不同的指标类型,对所述全量指标作业清单中的指标作业和所述依赖任务清单中的依赖任务,配置对应的作业计算类型和计算公式;
依赖判定模块,用于判断所述指标作业对应的依赖任务是否完成;若是,则判定所述指标作业满足并发条件;
高并发指标计算模块,用于对满足并发条件的所述指标作业创建合并队列;并根据不同的作业计算类型,对所述合并队列中的指标作业进行整合,形成并发计算队列;对所述并发计算队列中的指标作业进行并发计算。
9.一种根据权利要求8所述的多线程并发的数据指标批量处理系统,其特征在于,所述批量处理系统为批量调度系统的子作业系统,由批量调度系统在特定时间点唤醒执行;或者,所述批量处理系统为独立系统,并在执行过程中从批量调度系统获取所述依赖任务清单。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有多线程并发的数据指标批量处理程序,所述多线程并发的数据指标批量处理程序被处理器执行时实现如权利要求1至7任一项所述的多线程并发的数据指标批量处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111258372.0A CN114168314B (zh) | 2021-10-27 | 2021-10-27 | 一种多线程并发的数据指标批量处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111258372.0A CN114168314B (zh) | 2021-10-27 | 2021-10-27 | 一种多线程并发的数据指标批量处理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114168314A true CN114168314A (zh) | 2022-03-11 |
CN114168314B CN114168314B (zh) | 2022-09-20 |
Family
ID=80477680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111258372.0A Active CN114168314B (zh) | 2021-10-27 | 2021-10-27 | 一种多线程并发的数据指标批量处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114168314B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115759019A (zh) * | 2022-11-15 | 2023-03-07 | 广州天维信息技术股份有限公司 | 业务数据计算方法、装置、存储介质、计算机设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446174A (zh) * | 2018-03-06 | 2018-08-24 | 苏州大学 | 基于资源预分配与公共引导代理的多核作业调度方法 |
CN108733476A (zh) * | 2017-04-20 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种执行多任务的方法和装置 |
CN110554909A (zh) * | 2019-09-06 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 任务的调度处理方法、装置及计算机设备 |
CN110647387A (zh) * | 2019-08-29 | 2020-01-03 | 武汉天喻教育科技有限公司 | 一种教育云大数据任务调度方法与系统 |
US20200073713A1 (en) * | 2016-09-23 | 2020-03-05 | Imagination Technologies Limited | Task Scheduling in a GPU Using Wakeup Event State Data |
CN111813554A (zh) * | 2020-07-17 | 2020-10-23 | 济南浪潮数据技术有限公司 | 一种任务调度处理方法、装置及电子设备和存储介质 |
CN112269719A (zh) * | 2020-09-16 | 2021-01-26 | 苏州浪潮智能科技有限公司 | 基于ai训练平台的文件操作队列控制方法、装置及介质 |
-
2021
- 2021-10-27 CN CN202111258372.0A patent/CN114168314B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200073713A1 (en) * | 2016-09-23 | 2020-03-05 | Imagination Technologies Limited | Task Scheduling in a GPU Using Wakeup Event State Data |
CN108733476A (zh) * | 2017-04-20 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 一种执行多任务的方法和装置 |
CN108446174A (zh) * | 2018-03-06 | 2018-08-24 | 苏州大学 | 基于资源预分配与公共引导代理的多核作业调度方法 |
CN110647387A (zh) * | 2019-08-29 | 2020-01-03 | 武汉天喻教育科技有限公司 | 一种教育云大数据任务调度方法与系统 |
CN110554909A (zh) * | 2019-09-06 | 2019-12-10 | 腾讯科技(深圳)有限公司 | 任务的调度处理方法、装置及计算机设备 |
CN111813554A (zh) * | 2020-07-17 | 2020-10-23 | 济南浪潮数据技术有限公司 | 一种任务调度处理方法、装置及电子设备和存储介质 |
CN112269719A (zh) * | 2020-09-16 | 2021-01-26 | 苏州浪潮智能科技有限公司 | 基于ai训练平台的文件操作队列控制方法、装置及介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115759019A (zh) * | 2022-11-15 | 2023-03-07 | 广州天维信息技术股份有限公司 | 业务数据计算方法、装置、存储介质、计算机设备 |
CN115759019B (zh) * | 2022-11-15 | 2023-10-20 | 广州天维信息技术股份有限公司 | 业务数据计算方法、装置、存储介质、计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114168314B (zh) | 2022-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7023718B2 (ja) | リアルタイムデータストリームに対して実行するためのクエリの選択 | |
Ali et al. | From conceptual design to performance optimization of ETL workflows: current state of research and open problems | |
US8060544B2 (en) | Representation of data transformation processes for parallelization | |
CN105719126B (zh) | 一种基于生命周期模型的互联网大数据任务调度的系统及方法 | |
CN105243528A (zh) | 大数据环境下金融it系统中图形化集中对账系统与方法 | |
CN101589366A (zh) | 面向生成器图形的编程框架中的并行化和植入 | |
CN112579273B (zh) | 任务调度方法及装置、计算机可读存储介质 | |
CN109408591B (zh) | 支持sql驱动的ai与特征工程的决策型分布式数据库系统 | |
CN114168314B (zh) | 一种多线程并发的数据指标批量处理方法、装置及存储介质 | |
Müller et al. | Pydron:{Semi-Automatic} Parallelization for {Multi-Core} and the Cloud | |
CN112365157A (zh) | 智能派工方法、装置、设备及存储介质 | |
US9043772B2 (en) | Optimization hints for a business process flow | |
CN104750522A (zh) | 任务或流程的动态执行方法和系统 | |
EP1217515A1 (en) | Workflow system | |
Camacho-Rodríguez et al. | Reuse-based optimization for pig latin | |
CN112035230A (zh) | 一种任务调度文件生成方法、装置及存储介质 | |
CN113157421A (zh) | 一种基于用户作业流程的分布式集群资源调度方法 | |
CN115857918A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN106874080B (zh) | 基于分布式服务器集群的数据计算方法及系统 | |
CN112035229A (zh) | 一种计算图处理方法、装置及存储介质 | |
US10395301B2 (en) | Method, medium, and system for using a combination of batch-processing and on-demand processing to provide recommendations | |
Danelutto et al. | Parallelizing high-frequency trading applications by using c++ 11 attributes | |
JP5474743B2 (ja) | プログラム開発支援システム | |
WO2020229900A1 (en) | Service management in a dbms | |
Wang et al. | FineQuery: Fine-grained query processing on CPU-GPU integrated architectures |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |