CN110825771A - 批量数据处理方法、电子装置、计算机设备及存储介质 - Google Patents
批量数据处理方法、电子装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110825771A CN110825771A CN201910969164.8A CN201910969164A CN110825771A CN 110825771 A CN110825771 A CN 110825771A CN 201910969164 A CN201910969164 A CN 201910969164A CN 110825771 A CN110825771 A CN 110825771A
- Authority
- CN
- China
- Prior art keywords
- processing
- processed
- batch
- unit
- module
- 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 23
- 238000012545 processing Methods 0.000 claims abstract description 220
- 238000000034 method Methods 0.000 claims abstract description 56
- 230000008569 process Effects 0.000 claims abstract description 32
- 235000019580 granularity Nutrition 0.000 claims abstract description 28
- 238000012544 monitoring process Methods 0.000 claims abstract description 25
- 230000002159 abnormal effect Effects 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 12
- 239000003086 colorant Substances 0.000 claims description 8
- 238000000354 decomposition reaction Methods 0.000 claims description 5
- 230000008878 coupling Effects 0.000 abstract description 7
- 238000010168 coupling process Methods 0.000 abstract description 7
- 238000005859 coupling reaction Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000010923 batch production Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24568—Data stream processing; Continuous queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24561—Intermediate data storage techniques for performance improvement
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Accounting & Taxation (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种批量数据处理方法、电子装置、计算机设备及存储介质,通过将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;监控所述单元模块的处理状态;及根据所述网格节点处理完成的单元模块组成目标数据文件并输出。本发明能够将待处理的原始数据文件分解成不同粒度的单元模块,尽量减小单元模块之间的耦合度,从而可以使批处理机的网格节点同时并行处理对应的单元模块,监控并展示各单元模块的处理状态,使用户能够直观的了解数据的处理状态,方便快速的定位运行异常的数据,当批处理出现异常情况可以快速定位解决,节省了人力。
Description
技术领域
本发明涉及批量数据处理技术领域,尤其涉及一种批量数据处理方法、电子装置、计算机设备及存储介质。
背景技术
随着保险业务的逐年增加,核心***产生的数据越来越多,存在大批需要处理的数据,目前大批量的数据处理和同步都是采取批处理的方式来实现的。然而在日常运维过程中,批处理的不可视,包括处理进度、运行异常等信息的不可视,使得可供定位的信息很少,给运维带来了很大的工作量,极大的增加了运维人员的工作难度。
发明内容
有鉴于此,本发明提出一种批量数据处理方法、电子装置、计算机设备及存储介质,能够直观的了解数据的处理状态,方便快速定位运行异常的数据。
首先,为实现上述目的,本发明提出一种批量数据处理方法,该方法包括步骤:
加载待处理的原始数据文件至数据库临时表;
将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
监控所述单元模块的处理状态;及
根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
进一步地,所述处理状态包括:处理异常、等待处理、处理中、处理结束;
所述监控所述单元模块的处理状态的步骤,还包括:
监控所述单元模块是否被网格节点处理并记录处理状态,对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,对正在被所述网格节点处理的单元模块的处理状态记为处理中,对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常;
根据处理状态设置所述单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。
进一步地,所述监控所述单元模块的处理状态的步骤之前,还包括:
从批处理机运行生成的批处理日志中读取所述单元模块的处理状态。
进一步地,所述加载待处理的原始数据文件至数据库临时表的步骤之后,还包括:
统计待处理的原始数据文件的总量A;
记录加载至数据库临时表的原始数据文件的数量B;及
根据所述数量B与总量A的比例关系计算文件加载进度。
进一步地,所述发送所述单元模块至批处理机对应的网格节点处理的步骤之后,还包括:
统计网格节点待处理的单元模块的总量C;
记录所述网格节点已处理的单元模块的数量D;及
根据所述数量D与总量C的比例关系计算处理进度。
进一步地,所述根据所述数量D与总量C的比例关系计算处理进度的步骤之后,还包括:
统计所述网格节点处理单元模块的时间。
进一步地,所述根据所述网格节点处理完成的单元模块组成目标数据文件并输出的步骤之后,还包括:
统计目标数据文件的总量E;根据处理异常的单元模块计算对应的原始数据文件的总量F;及
计算总量E与总量F之和是否等于总量A,以判断批处理过程中是否丢失数据。
此外,为实现上述目的,本发明还提供一种电子装置,其包括:
加载模块,用于加载待处理的原始数据文件至数据库临时表;
分解模块,用于将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
发送模块,用于根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
监控模块,用于监控所述单元模块的处理状态;及
输出模块,用于根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
进一步地,所述处理状态包括:处理异常、等待处理、处理中、处理结束;所述监控模块,还用于监控所述单元模块是否被网格节点处理并记录处理状态,对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,对正在被所述网格节点处理的单元模块的处理状态记为处理中,对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常;根据处理状态设置所述单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。
进一步地,所述电子装置还包括读取模块,用于从批处理机运行生成的批处理日志中读取所述单元模块的处理状态。
进一步地,所述电子装置还包括统计模块,用于统计待处理的原始数据文件的总量A;记录加载至数据库临时表的原始数据文件的数量B;及根据所述数量B与总量A的比例关系计算文件加载进度。
进一步地,所述统计模块,还用于统计网格节点待处理的单元模块的总量C;记录所述网格节点已处理的单元模块的数量D;及根据所述数量D与总量C的比例关系计算处理进度。
进一步地,所述电子装置还包括时间模块,用于统计所述网格节点处理单元模块的时间。
进一步地,所述统计模块,还用于统计目标数据文件的总量E;根据处理异常的单元模块计算对应的原始数据文件的总量F;及计算总量E与总量F之和是否等于总量A,以判断批处理过程中是否丢失数据。
为实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
相较于现有技术,本发明所提出的批量数据处理方法、电子装置、计算机设备及存储介质,能够将待处理的原始数据文件分解成不同粒度的单元模块,尽量减小单元模块之间的耦合度,从而可以使批处理机的网格节点同时并行处理对应的单元模块,通过监控并展示各单元模块的处理状态,使用户能够直观的了解数据的处理状态,方便快速的定位运行异常的数据,当批处理出现异常情况可以快速定位解决,节省了人力。
附图说明
图1是本发明一示例性实施例示出的基于Python的读数方法的流程示意图;
图2是本发明一示例性实施例示出的基于Python的读数方法的流程示意图;
图3是本发明一示例性实施例示出的批量数据处理方法的流程示意图;
图4是本发明一示例性实施例示出的批量数据处理方法的流程示意图;
图5是本发明一示例性实施例示出的批量数据处理方法的流程示意图;
图6是本发明一示例性实施例示出的批量数据处理方法的流程示意图;
图7是本发明一示例性实施例示出的批量数据处理方法的流程示意图;
图8是本发明一示例性实施例示出的电子装置的程序模块示意图;
图9是本发明一示例性实施例示出的电子装置的硬件架构示意图。
附图标记:
电子装置 | 20 |
存储器 | 21 |
处理器 | 22 |
网络接口 | 23 |
内存 | 24 |
加载模块 | 201 |
分解模块 | 202 |
发送模块 | 203 |
监控模块 | 204 |
输出模块 | 205 |
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是本发明一示例性实施例示出的批量数据处理方法的流程示意图,所述方法包括以下步骤:
步骤S110,加载待处理的原始数据文件至数据库临时表;
步骤S120,将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
步骤S130,根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
步骤S140,监控所述单元模块的处理状态;及
步骤S150,根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
随着保险业务的逐年增加,核心***产生的数据越来越多。而核心***产生的数据,需要上传到目标***的应用服务器上,目标***通过批处理,进行逻辑处理后存入数据库中。
在步骤S110中,加载待处理的原始数据文件至数据库临时表。临时表是建立在***临时文件夹中的表,是用来暂时保存临时数据(亦或叫中间数据)的一个数据库对象,可以像永久表一样进行各种操作,但是,当不再使用时会自动删除。
从核心***产生的数据中选取部分数据(待处理的原始数据)存入数据库中,根据待处理的原始数据生成待处理的原始数据文件。例如,需要将车险承保***中的保单生效的数据存入数据库中,则所述待处理的原始数据即指所述保单生效的数据。
在步骤S120中,将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块。对于加载至数据库临时表中的待处理的原始数据文件,根据所述原始数据文件的数据内容按照不同粒度分解成若干小的单元模块,以原始数据文件为保险单为例,保险单必须明确、完整地记载有关保险双方的权利义务,保险单上主要载有保险人和被保险人的名称、保险标的、保险金额、保险费、保险期限、赔偿或给付的责任范围以及其他规定事项,将保险单中记载的数据内容逐层细分至尽可能小的粒度,以尽量减小分解出的各单元模块之间的耦合度,从而可以根据保险单中记载的数据内容,将保险单分解成若干小的单元模块,例如,保险费为20年期缴的保险单,通过对保险单进行文本识别,针对其中期缴年费的部分,可以按第1年、第2年、……、第20年细分成20个粒度的单元模块。本发明并不对原始数据文件分解成的单元模块的个数进行具体的限定,而是根据原始数据文件的实际情况尽量减小分解出的各单元模块之间的耦合度,即单个单元模块所涉及的变量对其他单元模块的影响度最可能小,非不可剥离出去的变量。
在步骤S130中,发送所述单元模块至批处理机对应的网格节点处理。由于各单元模块耦合度低,所以各网格节点可以同时并行处理对应的单元模块。批处理机对应的网格节点数量的设定,是***根据处理该批原始数据文件的批处理机的运行能力,以及对所述原始数据文件的处理结果的紧迫程度,自动进行的。例如,一个原始数据文件X被分解成4个不同粒度的单元模块a、单元模块b、单元模块c和单元模块d,则批处理机可以通过网格节点A处理单元模块a,通过网格节点B处理单元模块b,通过网格节点C处理单元模块c,通过网格节点D处理单元模块d。
在步骤S140中,监控所述单元模块的处理状态。在批处理机处理单元模块的过程中,可以监控并展示所述单元模块的处理状态。所述处理状态可以包括:处理异常、等待处理、处理中、处理结束。
如图2所示,本发明一实施例中,所述监控所述单元模块的处理状态的步骤可以包括以下步骤:
步骤S201,监控所述单元模块是否被网格节点处理并记录处理状态,对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,对正在被所述网格节点处理的单元模块的处理状态记为处理中,对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常。
步骤S202,根据处理状态设置所述单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。
根据所述单元模块是否被网格节点处理及处理的结果等信息,可以记录所述单元模块的处理状态,为了便于用户直观的查看单元模块当前的处理状态,可以将单元模块设置成不同的颜色,以展示所述单元模块的处理状态。例如,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常,可以用红色表示处理异常;对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,可以用黄色表示等待处理;对正在被所述网格节点处理的单元模块的处理状态记为处理中,可以用蓝色表示处理中;对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,可以用绿色表示处理结束等。通过设置不同的颜色,用户可以直观的查看单元模块当前的处理状态,用户还可以从一大批单元模块中快速定位处理异常的单元模块,极大的提高了批处理出现异常时的排查速度。
如图3所示,本发明一实施例中,所述监控所述单元模块的处理状态的步骤之前,还可以包括以下步骤:
步骤S301,从批处理机运行生成的批处理日志中读取所述单元模块的处理状态。
将原始数据文件分解成不同粒度的单元模块,并给不同单元模块生成不同的名称,批处理机在跑批处理的过程中,可以生成批处理日志,每一行日志都记载着单元模块的名称、日期、时间、使用者及动作等相关操作的描述,所述动作包括:处理异常、等待处理、处理中、处理结束。从所述批处理日志中可以获知单元模块的处理状态。
本发明所提出的批量数据处理方法能够将待处理的原始数据文件分解成不同粒度的单元模块,尽量减小单元模块之间的耦合度,从而可以使批处理机的网格节点同时并行处理对应的单元模块,通过监控并展示各单元模块的处理状态,使用户能够直观的了解数据的处理状态,方便快速的定位运行异常的数据,当批处理出现异常情况可以快速定位解决,节省了人力。
常规的跑批处理对用户来说是一个黑盒子,用户无法获知批处理的进度等情况,为了便于用户直观的了解批处理的进度,如图4所示,本发明一实施例中,所述加载待处理的原始数据文件至数据库临时表的步骤之后,还可以包括以下步骤:
步骤S401,统计待处理的原始数据文件的总量A;
步骤S402,记录加载至数据库临时表的原始数据文件的数量B;及
步骤S403,根据所述数量B与总量A的比例关系计算文件加载进度。
待处理的原始数据已剔除了异常数据,所述异常数据包括不符合要求的数据和不符合目标***逻辑的数据。不符合要求的数据包括以下情形,比如,某数据在源端***的字段长度为8个字符长度,而目标数据库的字段长度为7个字符长度,这类数据属于无法入库的数据,会作为不符合要求的数据而被过滤掉。不符合目标***逻辑的数据包括以下情形,比如,需要将保单生效的数据传入目标数据库,则尚未生效的保单数据会被过滤。
统计待处理的原始数据文件的总量A,将待处理的原始数据文件加载至数据库临时表,同时记录加载至数据库临时表的原始数据文件的数量B,根据所述数量B与总量A的比例关系计算文件加载进度。例如,原始数据文件的总量A为10000个,当加载至数据库临时表的原始数据文件的数量B为1000个时,文件加载的完成进度为10%,剩余90%未加载。
通过计算并显示文件加载进度,便于用户直观的了解批处理的进度。
如图5所示,本发明一实施例中,所述发送所述单元模块至批处理机对应的网格节点处理的步骤还可以包括以下步骤:
步骤S501,统计网格节点待处理的单元模块的总量C;
步骤S502,记录所述网格节点已处理的单元模块的数量D;及
步骤S503,根据所述数量D与总量C的比例关系计算处理进度。
原始数据文件按照不同粒度分解成若干小的单元模块,不同的单元模块由对应的网格节点处理,进而可以统计网格节点待处理的单元模块的总量C。同时记录所述网格节点已处理的单元模块的数量D,根据所述数量D与总量C的比例关系计算处理进度。例如,网格节点A待处理的单元模块的总量C为10000个,当已处理的单元模块的数量D为1000个时,单元模块的处理进度为10%,剩余90%未处理。网格节点B待处理的单元模块的总量C为10000个,当已处理的单元模块的数量D为1500个时,单元模块的处理进度为15%,剩余85%未处理。
通过计算并显示单元模块的处理进度,便于用户直观的了解批处理的进度。
如图6所示,本发明一实施例中,所述根据所述数量D与总量C的比例关系计算处理进度的步骤之后,还可以包括以下步骤:
步骤S601,统计所述网格节点处理单元模块的时间。
根据网格节点待处理的单元模块的总量C、当前已处理的单元模块的数量D及处理数量D的单元模块所耗时长,可以计算出所述网格节点处理完剩余单元模块还需要耗费的时长、处理完全部单元模块需要耗费的时长等。
原始数据文件按照不同粒度分解成若干小的单元模块,不同的单元模块交由不同的网格节点处理,通过计算并显示单元模块的处理时间,便于用户直观的了解批处理的进度。进一步地,当某网格节点处理单元模块的耗费的时间较长时,用户可以快速方便的发现耗时长这一情况,并及时进行干预,便于提出应对措施缩短处理时间。
如图7所示,本发明一实施例中,所述根据所述网格节点处理完成的单元模块组成目标数据文件并输出的步骤之后,还可以包括以下步骤:
步骤S701,统计目标数据文件的总量E;
步骤S702,根据处理异常的单元模块计算对应的原始数据文件的总量F;及
步骤S703,计算总量E与总量F之和是否等于总量A,以判断批处理过程中是否丢失数据。
原始数据文件按照不同粒度分解成若干小的单元模块,不同的单元模块交由不同的网格节点处理,当一个原始数据文件的全部单元模块均被网格节点处理后,就可以根据所述网格节点处理完成的单元模块组成目标数据文件,进而统计目标文件的总量E。当然,还有可能存在处理异常的单元模块,由于一个原始数据文件对应的若干个单元模块中,可能存在多个处理异常的单元模块,因此需要根据处理异常的单元模块统计对应的原始数据文件的数量F。同时,针对处理异常的单元模块要记录异常详细信息,供运维查看是否需要人为干预处理。正常情况下,数据库入口处的原始数据文件的总量A,应当等于目标数据文件的总量E与处理异常的原始数据文件的总量F之和,若总量E与总量F之和不等于总量A,则可以判断批处理过程中存在数据丢失的情况。
为了更好地说明上述批量数据处理方案,以下将通过一个实例进行具体解释。
实例:
将100个待处理的原始数据文件加载至数据库临时表中,记录加载至数据库临时表的原始数据文件的数量,以计算文件加载进度,例如,当加载至数据库临时表的原始数据文件的数量B为10个时,文件加载的完成进度为10%,剩余90%未加载。
将加载至数据库临时表的原始数据文件分解成不同粒度的单元模块,为了便于描述,以下以每一个原始数据文件分解成4个单元模块为例进行说明,其中,第1个原始数据文件分解成单元模块a1、单元模块b1、单元模块c1和单元模块d1,第2个原始数据文件分解成单元模块a2、单元模块b2、单元模块c2和单元模块d2,……依次类推。
批处理机中的4个网格节点网格节点A、网格节点B、网格节点C和网格节点D分别并行处理对应的单元模块,其中,网格节点A处理单元模块a1、单元模块a2、……等100个单元模块,通过网格节点B处理单元模块b1、单元模块b2、……等100个单元模块,通过网格节点C处理单元模块c1、单元模块c2、……等100个单元模块,通过网格节点D处理单元模块d1、单元模块d2、……等100个单元模块。
批处理机在跑批处理的过程中生成批处理日志,从所述批处理日志中可以获知单元模块的处理状态,根据处理状态设置单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。例如,针对网格节点A,处理结束的单元模块a1设置成绿色,处理异常的单元模块a2设置成红色,处理中的单元模块a3设置成蓝色,等待处理的单元模块a4至a100设置成黄色。
记录各网格节点已处理的单元模块的数量,以计算各网格节点的处理进度。例如,针对网格节点A,历时15分钟,已处理单元模块的数量为15个时,单元模块的处理进度为15%,剩余85%未处理,预计再过85分钟可以处理完全部的单元模块。
当一个原始数据文件分解成的各单元模块均被对应的网格节点处理结束时,可以根据处理结束的单元模块组成目标数据文件。例如,当第1个原始数据文件分解得到的单元模块a1、单元模块b1、单元模块c1和单元模块d1均被对应的网格节点的处理结束时,可以根据处理结束的单元模块a1、单元模块b1、单元模块c1和单元模块d1组成第1个目标数据文件。批处理结束时,共生成91个目标数据文件。
处理异常的单元模块包括:单元模块a2、单元模块a5、单元模块a10、单元模块b2、单元模块b6、单元模块b11、单元模块c3、单元模块c6、单元模块c12、单元模块d4和单元模块d13。则处理异常的单元模块对应的原始数据文件包括第2个原始数据文件、第3个原始数据文件、第4个原始数据文件、第5个原始数据文件、第6个原始数据文件、第10个原始数据文件、第11个原始数据文件、第12个原始数据文件、第13个原始数据文件共9个原始数据文件。
由于91个目标数据文件与处理异常的9个原始数据文件之和为100,则批处理过程中未丢失数据。
获取各网格节点处理完全部单元模块所耗费的时长,例如,网格节点A用时2小时,网格节点B用时2小时10分钟,网格节点C用时2小时30分钟,网格节点D用时5小时,由于网格节点D处理耗时相较于其他网格节点长得多,运维可以分析查看是否需要对网格节点D进行优化处理,以提高处理速度。
本发明进一步提供一种电子装置。参阅图8,是本发明一示例性实施例示出的电子装置20的程序模块示意图。
所述电子装置20包括:
加载模块201,用于加载待处理的原始数据文件至数据库临时表;
分解模块202,用于将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
发送模块203,用于根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
监控模块204,用于监控所述单元模块的处理状态;及
输出模块205,用于根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
本发明所提出的电子装置20能够将待处理的原始数据文件分解成不同粒度的单元模块,尽量减小单元模块之间的耦合度,从而可以使批处理机的网格节点同时并行处理对应的单元模块,通过展示各单元模块的处理状态,使用户能够直观的了解数据的处理状态,方便快速的定位运行异常的数据,当批处理出现异常情况可以快速定位解决,节省了人力。
进一步地,所述处理状态包括:处理异常、等待处理、处理中、处理结束;所述监控模块204,还用于监控所述单元模块是否被网格节点处理并记录处理状态,对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,对正在被所述网格节点处理的单元模块的处理状态记为处理中,对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常;根据处理状态设置所述单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。
进一步地,所述电子装置20还包括读取模块,用于从批处理机运行生成的批处理日志中读取所述单元模块的处理状态。
进一步地,所述电子装置20还包括统计模块,用于统计待处理的原始数据文件的总量A;记录加载至数据库临时表的原始数据文件的数量B;及根据所述数量B与总量A的比例关系计算文件加载进度。
进一步地,所述统计模块,还用于统计网格节点待处理的单元模块的总量C;记录所述网格节点已处理的单元模块的数量D;及根据所述数量D与总量C的比例关系计算处理进度。
进一步地,所述电子装置20还包括时间模块,用于统计所述网格节点处理单元模块的时间。
进一步地,所述统计模块,还用于统计目标数据文件的总量E;根据处理异常的单元模块计算对应的原始数据文件的总量F;及计算总量E与总量F之和是否等于总量A,以判断批处理过程中是否丢失数据。
为实现上述目的,本发明还提供一种计算机设备20,包括存储器21、处理器22以及存储在存储器21上并可在所述处理器22上运行的计算机程序,所述处理器22执行所述计算机程序时实现上述方法的步骤。可以将所述计算机程序存储于内存24中。
为实现上述目的,本发明还提供计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备至少包括但不限于:可通过***总线相互通信连接的存储器、处理器等。
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储电子装置20,被处理器22执行时实现本发明的批量数据处理方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种批量数据处理方法,其特征在于,所述方法包括步骤:
加载待处理的原始数据文件至数据库临时表;
将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
监控所述单元模块的处理状态;及
根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
2.如权利要求1所述的批量数据处理方法,其特征在于,所述处理状态包括:处理异常、等待处理、处理中、处理结束;
所述监控所述单元模块的处理状态的步骤,还包括:
监控所述单元模块是否被网格节点处理并记录处理状态,对未进入所述网格节点进行处理的单元模块的处理状态记为等待处理,对正在被所述网格节点处理的单元模块的处理状态记为处理中,对已被所述网格节点成功处理的单元模块的处理状态记为处理结束,对所述网格节点处理无法处理或处理结果异常的单元模块的处理状态记为处理异常;
根据处理状态设置所述单元模块的颜色,以通过不同的颜色展示所述单元模块的处理状态。
3.如权利要求2所述的批量数据处理方法,其特征在于,所述监控所述单元模块的处理状态的步骤之前,还包括:
从批处理机运行生成的批处理日志中读取所述单元模块的处理状态。
4.如权利要求1所述的批量数据处理方法,其特征在于,所述加载待处理的原始数据文件至数据库临时表的步骤之后,还包括:
统计待处理的原始数据文件的总量A;
记录加载至数据库临时表的原始数据文件的数量B;及
根据所述数量B与总量A的比例关系计算文件加载进度。
5.如权利要求4所述的批量数据处理方法,其特征在于,所述发送所述单元模块至批处理机对应的网格节点处理的步骤之后,还包括:
统计网格节点待处理的单元模块的总量C;
记录所述网格节点已处理的单元模块的数量D;及
根据所述数量D与总量C的比例关系计算处理进度。
6.如权利要求5所述的批量数据处理方法,其特征在于,所述根据所述数量D与总量C的比例关系计算处理进度的步骤之后,还包括:
统计所述网格节点处理单元模块的时间。
7.如权利要求5所述的批量数据处理方法,其特征在于,所述根据所述网格节点处理完成的单元模块组成目标数据文件并输出的步骤之后,还包括:
统计目标数据文件的总量E;
根据处理异常的单元模块计算对应的原始数据文件的总量F;及
计算总量E与总量F之和是否等于总量A,以判断批处理过程中是否丢失数据。
8.一种电子装置,其特征在于,其包括:
加载模块,用于加载待处理的原始数据文件至数据库临时表;
分解模块,用于将加载至数据库临时表的原始数据文件根据数据内容分解成不同粒度的单元模块;
发送模块,用于根据所述单元模块的粒度发送所述单元模块至批处理机对应的网格节点处理;
监控模块,用于监控所述单元模块的处理状态;及
输出模块,用于根据所述网格节点处理完成的单元模块组成目标数据文件并输出。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述批量数据处理方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至7任一项所述批量数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969164.8A CN110825771B (zh) | 2019-10-12 | 批量数据处理方法、电子装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910969164.8A CN110825771B (zh) | 2019-10-12 | 批量数据处理方法、电子装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110825771A true CN110825771A (zh) | 2020-02-21 |
CN110825771B CN110825771B (zh) | 2024-06-28 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023137919A1 (zh) * | 2022-01-21 | 2023-07-27 | 平安科技(深圳)有限公司 | 虚拟机热迁移的控制方法、***、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004019147A2 (en) * | 2002-08-20 | 2004-03-04 | Tokyo Electron Limited | Method for processing data based on the data context |
CN101000562A (zh) * | 2006-12-30 | 2007-07-18 | 中国建设银行股份有限公司 | 一种执行批处理作业的方法及装置 |
CN105740063A (zh) * | 2014-12-08 | 2016-07-06 | 杭州华为数字技术有限公司 | 一种数据处理方法及装置 |
US20170083378A1 (en) * | 2015-09-18 | 2017-03-23 | Salesforce.Com, Inc. | Managing processing of long tail task sequences in a stream processing framework |
CN108737170A (zh) * | 2018-05-09 | 2018-11-02 | 中国银行股份有限公司 | 一种批量日志异常数据告警方法及装置 |
CN109669766A (zh) * | 2018-09-11 | 2019-04-23 | 深圳平安财富宝投资咨询有限公司 | 批处理作业的处理方法、装置、设备及存储介质 |
US20190197146A1 (en) * | 2017-12-21 | 2019-06-27 | Cisco Technology, Inc. | Using persistent memory to enable consistent data for batch processing and streaming processing |
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004019147A2 (en) * | 2002-08-20 | 2004-03-04 | Tokyo Electron Limited | Method for processing data based on the data context |
CN101000562A (zh) * | 2006-12-30 | 2007-07-18 | 中国建设银行股份有限公司 | 一种执行批处理作业的方法及装置 |
CN105740063A (zh) * | 2014-12-08 | 2016-07-06 | 杭州华为数字技术有限公司 | 一种数据处理方法及装置 |
US20170083378A1 (en) * | 2015-09-18 | 2017-03-23 | Salesforce.Com, Inc. | Managing processing of long tail task sequences in a stream processing framework |
US20190197146A1 (en) * | 2017-12-21 | 2019-06-27 | Cisco Technology, Inc. | Using persistent memory to enable consistent data for batch processing and streaming processing |
CN108737170A (zh) * | 2018-05-09 | 2018-11-02 | 中国银行股份有限公司 | 一种批量日志异常数据告警方法及装置 |
CN109669766A (zh) * | 2018-09-11 | 2019-04-23 | 深圳平安财富宝投资咨询有限公司 | 批处理作业的处理方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023137919A1 (zh) * | 2022-01-21 | 2023-07-27 | 平安科技(深圳)有限公司 | 虚拟机热迁移的控制方法、***、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111078140B (zh) | 核电站文件上传管理方法、装置、终端设备及介质 | |
CN107909486B (zh) | 佣金管理方法、应用服务器及计算机可读存储介质 | |
CN112905323A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
DE112019006673T5 (de) | Schutz vor datenverlust | |
CN111369334B (zh) | 一种薪资计算方法及*** | |
CN112561370A (zh) | 软件发版的管理方法、装置、计算机设备及存储介质 | |
CN110795406A (zh) | 业务文件传输方法、装置、***和存储介质 | |
CN110751452B (zh) | 一种工作流程管理***、方法及存储介质 | |
CN108805725B (zh) | 风险事件确认方法、服务器及计算机可读存储介质 | |
CN110825771A (zh) | 批量数据处理方法、电子装置、计算机设备及存储介质 | |
CN112256532A (zh) | 测试界面生成方法、装置、计算机设备及可读存储介质 | |
CN110825771B (zh) | 批量数据处理方法、电子装置、计算机设备及存储介质 | |
CN116701355A (zh) | 数据视图处理方法、装置、计算机设备及可读存储介质 | |
CN110704462A (zh) | 数据变更通知方法、电子装置、计算机设备及存储介质 | |
CN110659190A (zh) | 质量报告生成方法、装置、设备及计算机可读存储介质 | |
CN114492349A (zh) | 表格拆分方法、装置、电子设备及存储介质 | |
CN114511314A (zh) | 一种支付账户管理的方法、装置、计算机设备和存储介质 | |
CN111767299A (zh) | 数据库操作方法、装置、***、存储介质及电子设备 | |
CN112965793A (zh) | 一种面向标识解析数据的数据仓库任务调度方法和*** | |
JP2007041828A (ja) | Sla達成状況判定方法 | |
CN116433197B (zh) | 一种信息上报方法、装置、上报端及存储介质 | |
CN113630504B (zh) | 用于获取录音***异常信息的方法及装置、电子设备、存储介质 | |
CN112714057B (zh) | 即时消息处理方法、装置、设备及存储介质 | |
CN108282378B (zh) | 一种监控网络流量的方法和装置 | |
CN115099920A (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 | ||
GR01 | Patent grant |