CN111158887B - 一种集中式数据分布式处理方法及装置 - Google Patents
一种集中式数据分布式处理方法及装置 Download PDFInfo
- Publication number
- CN111158887B CN111158887B CN201911424024.9A CN201911424024A CN111158887B CN 111158887 B CN111158887 B CN 111158887B CN 201911424024 A CN201911424024 A CN 201911424024A CN 111158887 B CN111158887 B CN 111158887B
- Authority
- CN
- China
- Prior art keywords
- task
- merging
- processing
- distributed
- data
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 15
- 238000012545 processing Methods 0.000 claims abstract description 144
- 238000004364 calculation method Methods 0.000 claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000007781 pre-processing Methods 0.000 claims abstract description 17
- 238000004590 computer program Methods 0.000 claims description 18
- 229920006395 saturated elastomer Polymers 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 10
- 238000009826 distribution Methods 0.000 claims description 9
- 238000007405 data analysis Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种集中式数据分布式处理方法及装置,其中,方法包括:采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;根据上传状态及合并配置信息,创建合并任务;轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;根据合并状态及计算配置信息,创建计算任务;轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;其中,第一、第二及第三分布式框架中均包括多个处理节点。本发明能够提高数据分析的效率,充分利用闲置资源,不受单点故障影响,保证系统稳定运行。
Description
技术领域
本发明涉及分布式领域,尤其涉及一种集中式数据分布式处理方法及装置。
背景技术
现有技术中,虽然分布式数据处理已逐渐取代集中式处理方式,但仍存在系统内部各产品数据的传输均依赖统一的数据下传平台。数据下传平台接收源系统下发的文件,并按照订阅规则下发至目标系统(如图1所示)。面对集中下发的文件,现有技术中采用单台主机处理,包括应用版本部署、服务启动和运行、日志记录,均在单一节点进行,处理流程中的解压、转码等大量消耗CPU、硬盘资源的操作也在该单一节点进行。
集中式数据处理方式在文件数量少、文件小和该服务器硬件资源足够时并不会发生问题,但在大批量文件时采用此架构就会存在如下问题:
1)处理时间长:例如有些数据文件较大,且需要完成解压、拆分、转码、删除特殊字符、缩减字段等一系列动作,整个处理耗时较长。
2)扩展性差:文件接收服务器以表为单位处理,每增加一个表,处理总时间会加长,随着接入的系统越来越多,极易产生数据堆积,处理滞后。
3)资源闲置:在文件接收服务器处理下传文件的同时HDFS和分布式服务器,甚至于数据库服务器都处于闲置状态,而文件全部上传至HDFS后分布式服务器和HDFS资源尤其是CPU和内存又处于及其忙碌的情景,两个极端的资源使用状态极不合理。
4)单点故障:一旦文件接收服务器因为网络,磁盘或者其他不可预知的因素退出处理任务,集中式瞬间瘫痪。即便很快恢复其上的数据文件和版本程序也需要重新部署,需要检查逐表处理进度,费时费力。
5)脚本关联性强,不易变更。
发明内容
本发明提供一种集中式数据分布式处理方法及装置,用于解决现有技术中集中式数据处理的方式存在处理时间长、扩展性差、耦合度高、处理能力差的问题。
为了解决上述技术问题,本发明的第一方面提供一种集中式数据分布式处理方法,所述方法包括:
采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;
根据上传状态及合并配置信息,创建合并任务;
轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;
根据合并状态及计算配置信息,创建计算任务;
轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;
其中,第一、第二及第三分布式框架中均包括多个处理节点。
进一步实施例中,采用第一分布式框架获取增量数据文件,包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和,若有增量数据文件且处理任务未饱和,则该线程开始获取增量数据文件。
进一步实施例中,轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据。
进一步实施例中,轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔检测是否有待处理计算任务,若有,则获取待处理计算任务;
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中。
本发明的第二方面提供一种集中式数据分布式处理装置,包括:
数据文件获取模块,用于采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;
数据合并模块,用于轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;
计算入库模块,用于轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;
调度模块,用于根据上传状态及合并配置信息,创建合并任务;根据合并状态及计算配置信息,创建计算任务;
其中,第一、第二及第三分布式框架中均包括多个处理节点。
进一步实施例中,数据文件获取模块采用第一分布式框架获取增量数据文件,包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和,若有增量数据文件且处理任务未饱和,则该线程开始获取增量数据文件。
进一步实施例中,数据合并模块轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据。
进一步实施例中,计算入库模块轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔检测是否有待处理计算任务,若有,则获取待处理计算任务;
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中。
本发明的第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述任一实施例所述的集中式数据分布式处理方法。
本发明的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行计算机程序,所述计算机程序被处理器执行时实现前述任一实施例所述的集中式数据分布式处理方法。
本发明提供的集中式数据分布式处理方法及装置,能够实现如下技术效果:1)使开发人员只要关注业务逻辑的实现即可;2)提供了无限扩展的处理方案,提高了数据分析的效率,能够充分利用闲置资源,不受单点故障的影响,保证系统运行的稳定性。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了现有技术中集中式数据集中处理方式的示意图;
图2示出了本发明一实施例的集中式数据分布式处理方法的流程图;
图3示出了本发明一实施例的集中式数据分布式处理装置的电气连接图;
图4示出了本发明一实施例的集中式数据分布式处理装置的结构图;
图5示出了本发明一实施例的第一分布式架构的示意图;
图6示出了本发明一实施例的第二分布式架构的示意图;
图7示出了本发明一实施例的第二分布式架构的示意图。
具体实施方式
为了使本发明的技术特点及效果更加明显,下面结合附图对本发明的技术方案做进一步说明,本发明也可有其他不同的具体实例来加以说明或实施,任何本领域技术人员在权利要求范围内做的等同变换均属于本发明的保护范畴。
本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
关于本说明书所使用的“第一”、“第二”、…等,并非特别指称次序或顺位的意思,也非用以限定本发明,其仅为了区别以相同技术用语描述的元件或操作。
在本说明书的描述中,参考术语“一实施例”、“一具体实施例”、“一些实施例”、“例如”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。各实施例中涉及的步骤顺序用于示意性说明本发明的实施,其中的步骤顺序不作限定,可根据需要作适当调整。
考虑到现有集中式数据处理方式是在集中数据点上部署应用,缺乏横向扩展能力,在数据达到一定规模后无法满足处理要求,另外现有的数据处理过程耦合度较高,也为计算能力的扩展带来了制约。本发明提供了一种分布式处理架构的解决方案,以应对这种传统集中数据前提下的快速数据分析的迫切要求。
具体的,如图2所示,本发明提供的集中式数据分布式处理方法包括:
步骤110,采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;
步骤120,根据上传状态及合并配置信息,创建合并任务;
步骤130,轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;
步骤140,根据合并状态及计算配置信息,创建计算任务;
步骤150,轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;
其中,第一、第二及第三分布式框架中均包括多个处理节点。
详细的说,本发明所述的增量数据文件、历史数据文件利用表格的形式进行存储。上述预处理配置信息中记录有对增量数据文件的处理方式,包括但不限于重命名、解压、转码等。合并配置信息中记录有需要合并处理的表信息及进行合并处理的条件(例如增量表一及增量表二完成上传)。计算配置信息中记录有需要计算处理的表信息及计算结果的存入地址(例如存储数据库或高速缓存器)等。具体实施时,预处理配置信息、合并配置信息及计算配置信息均可根据需求由人工设定,本发明对其具体处理内容不做限定。
具体实施时,上述步骤110可由数据文件处理模块实现,上述步骤130可由数据合并模块实现,上述步骤150可由计算入库模块实现,上述步骤120及步骤140可由调度模块实现。
本实施例能够实现如下技术效果:1)使开发人员只要关注业务逻辑的实现即可;2)提供了无限扩展的处理方案,提高了数据分析的效率,能够充分利用闲置资源,不受单点故障的影响,保证系统运行的稳定性。
本发明一实施例中,上述步骤110采用第一分布式框架获取增量数据文件,包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔(例如N秒)随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和(根据增量数据文件大小和该文件需要完成的处理过程为基准给每个增量数据文件分配权重,饱和度是每个处理节点当前处理正处理的文件权重之和),若有增量数据文件且处理任务未饱和(即饱和度未达到处理上限),则该线程开始获取增量数据文件(即获得文件的处理权)。
具体实施时,各处理节点还用于核查前一日批量增量数据文件是否正确处理完成,若前日批量未处理完毕,则不启动本日处理,配合生产监控告警人工处理完毕后启动批量。如果前一日批量正常结束则开启处理流程。
获得增量数据文件之后,将文件进行更名、解压,根据预先配置的预处理配置信息确定是否需要切分、转码、剔除字段、删除不可见字符、上传路径等配置。将处理后的文件上传至分布式文件系统(如HDFS),上传完成后更改增量数据文件的上传状态为“已完成”。
本步骤采用多线程处理机制,每次获取到一个增量数据文件后即开始处理。在没有达到任务饱和度上限前提下同时开启多个增量数据文件并行处理,极大提升数据处理速度。考虑到每处理一个增量数据文件线程会与调度数据库产生3次交互(检查任务饱和度、获取文件处理权、处理完成更新任务状态),有必要对查询间隔进行随机化处理,即每次轮询的时间可在N秒内随机进行,尽可能减少文件争抢,同时减轻调度数据库并发查询压力,同时也方便后续横向扩展处理节点。
多处理节点处理增量数据文件避免了单处理节点在发生不可控情况下导致某个应用节点宕机使整个应用瘫痪的弊端。在此架构中处理节点之间连接是松散的,它们不直接发生通讯,互相之间是透明的未知的,彼此处理过程互不干扰。即便个别处理节点宕机导致文件未能上传分布式文件系统成功也不影响其他处理节点处理,剩余增量数据文件处理任务也分摊到其他状态健康的处理节点,可靠性有了极大保证。
文件处理采用限制处理上限的机制保证了在大批量文件到达后各处理节点处理任务是均等的,避免了数据处理集中到个别处理节点即数据热点的现象,提高了应用的稳定性。
采用N秒内随机查询调度数据库的方式减轻数据库的并发查询压力,也提高了数据库的可用性。
本发明一实施例中,上述步骤130轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务,具体实施时,可通过更改待处理合并任务的状态来实现待处理合并任务的获取,例如将待处理合并任务的状态修改为“运行中”;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据,合并处理完成后更新合并任务的处理状态为“已完成”。
本步骤运行模式为分布式计算框架,这种可靠性极高的任务和资源调度集群保证了数据完整性和正确性。同时分布式计算框架的调度机制保证了提交多个任务时按顺序完成,不重不漏。当前生产允许运行队列长度为10000,即大量的任务都可以并行运行,并且允许其中一个节点宕机合并任务不会停止,增全合并任务因为有运行状态的控制所以不会被启动两次,在保证一致性的前提下可靠性大大提升。
本发明一实施例中,上述步骤150轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔(例如N分钟)检测是否有待处理计算任务,若有,则获取待处理计算任务(将计算任务的处理状态更新为“运行中”);
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中,同时将计算任务的处理状态更新为“已完成”。
本步骤采用分布式方式处理计算任务,能够保证在一处理节点宕机情况下,计算任务仍继续处理,保证计算任务的处理效率。
基于同一发明构思,本发明实施例中还提供了一种集中式数据分布式处理装置,如下面的实施例所述。由于该装置解决问题的原理与集中式数据分布式处理方法相似,因此该装置的实施可以参见集中式数据分布式处理方法的实施,重复之处不再赘述。
首先考虑将集中式数据处理的整个过程解耦,将其分为数据文件处理、数据合并、计算入库三个部分,每个部分都调整为分布式处理,各部分之间通过调度模块进行协调,调整后的架构如如图3及图4所示,集中式数据分布式处理装置包括:
数据文件获取模块310,用于采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统。
数据合并模块320,用于轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据。
计算入库模块330,用于轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理。
调度模块340,用于根据上传状态及合并配置信息,创建合并任务;根据合并状态及计算配置信息,创建计算任务。详细的说,上传状态及合并状态至少包括两种状态:初始装填和已完成状态,为调度模块340生成任务提供依据。
其中,第一、第二及第三分布式框架中均包括多个处理节点。
进一步的,考虑到数据文件获取模块310、数据合并模块320及计算入库模块330执行过程中的各类异常情况,调度模块340还提供各类任务与其前置任务的检查功能,对于中间因异常导致状态不一致的问题,由调度模块340提供的补偿机制予以修正。
本发明一实施例中,数据文件获取模块310可部署在Hadoop集群的多个处理节点(构成第一分布式框架)上,其具体架构图如图5所示,用于对增量数据文件进行重命名、解压、转码等预处理。具体的,数据文件获取模块310采用第一分布式框架获取增量数据文件,包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和,若有增量数据文件且处理任务未饱和,则该线程开始获取增量数据文件。
本发明一实施例中,数据合并模块320可部署在Hadoop集群的多个处理节点(构成第二分布式框架)上,其具体架构图如图6所示,用于进行数据合并处理。具体的,数据合并模块320轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据。
本发明一实施例中,计算入库模块330可部署在Hadoop集群的多个处理节点(构成第一分布式框架)上,其具体架构图如图7所示,用于对全量数据和/或增量数据文件进行计算,并将计算结果加载到数据库(例如Mongodb或redis中)或高速缓存中。具体的,计算入库模块330轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔检测是否有待处理计算任务,若有,则获取待处理计算任务;
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中。
本发明提供的集中式数据分布式处理装置,使用了分布式文件处理、分布式合并存储和分布式计算,不同模块的不同处理节点互相之间都是透明的,不存在关联性和强耦合,同时兼备了可靠性和一致性。实施后可大大缩短限于集中式数据处理缓慢的现状,同时还预留了完备的配置和充足的硬件,在新系统和表接入时快速开发上线,极大降低了维护成本。本发明一些实施例中,还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行所述计算机程序时实现前述任一实施例所述的集中式数据分布式处理方法。
本发明一些实施例中,还提供一种计算机可读存储介质,计算机可读存储介质存储有执行计算机程序,所述计算机程序被处理器执行时实现前述任一实施例所述的集中式数据分布式处理方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅用于说明本发明的技术方案,任何本领域普通技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围应视权利要求范围为准。
Claims (8)
1.一种集中式数据分布式处理方法,其特征在于,所述方法包括:
采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;
根据上传状态及合并配置信息,创建合并任务;
轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;
根据合并状态及计算配置信息,创建计算任务;
轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;
其中,第一、第二及第三分布式框架中均包括多个处理节点;
其中采用第一分布式框架获取增量数据文件包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和,若有增量数据文件且处理任务未饱和,则该线程开始获取增量数据文件;
其中检查该处理节点的处理任务是否已经饱和包括:
根据增量数据文件大小和该文件需要完成的处理过程为基准给每个增量数据文件分配权重,饱和度是每个处理节点当前处理正处理的文件权重之和。
2.如权利要求1所述的方法,其特征在于,轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据。
3.如权利要求1所述的方法,其特征在于,轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔检测是否有待处理计算任务,若有,则获取待处理计算任务;
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中。
4.一种集中式数据分布式处理装置,其特征在于,包括:
数据文件获取模块,用于采用第一分布式框架获取增量数据文件,根据预处理配置信息对获取的增量数据文件进行预处理,将处理后的文件上传至分布式文件系统;
数据合并模块,用于轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据;
计算入库模块,用于轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理;
调度模块,用于根据上传状态及合并配置信息,创建合并任务;根据合并状态及计算配置信息,创建计算任务;
其中,第一、第二及第三分布式框架中均包括多个处理节点;
其中采用第一分布式框架获取增量数据文件包括:
对于第一分布式框架中的每一处理节点,每隔第一预定时间间隔随机启动一线程,该线程用于检测是否有增量数据文件,并检查该处理节点的处理任务是否已经饱和,若有增量数据文件且处理任务未饱和,则该线程开始获取增量数据文件;
其中检查该处理节点的处理任务是否已经饱和包括:
根据增量数据文件大小和该文件需要完成的处理过程为基准给每个增量数据文件分配权重,饱和度是每个处理节点当前处理正处理的文件权重之和。
5.如权利要求4所述的装置,其特征在于,数据合并模块轮询合并任务,采用第二分布式框架对合并任务所需的历史数据文件及增量数据文件进行合并处理,得到全量数据,包括:
对于第二分布式框架中的每一处理节点,每隔第二预定时间间隔检测是否有待处理的合并任务,若有,则获取待处理的合并任务;
根据获取的待处理合并任务,从分布式文件系统中获取所需的历史数据文件及增量数据文件,并对获取到的历史数据文件及增量数据文件进行合并处理,得到全量数据。
6.如权利要求4所述的装置,其特征在于,计算入库模块轮询计算任务,采用第三分布式框架对计算任务所需的全量数据和/或增量数据文件进行计算处理,包括:
对于第三分布式框架中的每一处理节点,每隔第三预定时间间隔检测是否有待处理计算任务,若有,则获取待处理计算任务;
根据获取的待处理计算任务,获取所需的全量数据和/或增量数据文件,并对获取的全量数据和/或增量数据文件进行计算处理,将计算结果存入数据库中。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3任一项所述的集中式数据分布式处理方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行计算机程序,所述计算机程序被处理器执行时实现如下权利要求1至3任一项所述的集中式数据分布式处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911424024.9A CN111158887B (zh) | 2019-12-31 | 2019-12-31 | 一种集中式数据分布式处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911424024.9A CN111158887B (zh) | 2019-12-31 | 2019-12-31 | 一种集中式数据分布式处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111158887A CN111158887A (zh) | 2020-05-15 |
CN111158887B true CN111158887B (zh) | 2023-11-17 |
Family
ID=70560690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911424024.9A Active CN111158887B (zh) | 2019-12-31 | 2019-12-31 | 一种集中式数据分布式处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111158887B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711512B (zh) * | 2020-07-01 | 2022-10-18 | 中国银行股份有限公司 | 报文发送方法及装置 |
CN113515495B (zh) * | 2021-04-14 | 2024-03-19 | 暨南大学 | 数据文件分配方法及装置、智能设备和计算机存储介质 |
CN114070845B (zh) * | 2021-11-11 | 2024-04-16 | 中国银行股份有限公司 | 协同报送交易信息的方法及装置 |
CN114860349B (zh) * | 2022-07-06 | 2022-11-08 | 深圳华锐分布式技术股份有限公司 | 数据加载方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567312A (zh) * | 2011-12-30 | 2012-07-11 | 北京理工大学 | 一种基于分布式并行计算框架的机器翻译方法 |
CN105162878A (zh) * | 2015-09-24 | 2015-12-16 | 网宿科技股份有限公司 | 基于分布式存储的文件分发系统及方法 |
CN108241539A (zh) * | 2018-01-03 | 2018-07-03 | 百度在线网络技术(北京)有限公司 | 基于分布式系统的交互式大数据查询方法、装置、存储介质和终端设备 |
CN110175209A (zh) * | 2019-04-12 | 2019-08-27 | 中国人民财产保险股份有限公司 | 增量数据同步方法、系统、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103838779B (zh) * | 2012-11-27 | 2019-02-05 | 深圳市腾讯计算机系统有限公司 | 复用空闲计算资源的云转码方法及系统、分布式文件装置 |
-
2019
- 2019-12-31 CN CN201911424024.9A patent/CN111158887B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567312A (zh) * | 2011-12-30 | 2012-07-11 | 北京理工大学 | 一种基于分布式并行计算框架的机器翻译方法 |
CN105162878A (zh) * | 2015-09-24 | 2015-12-16 | 网宿科技股份有限公司 | 基于分布式存储的文件分发系统及方法 |
CN108241539A (zh) * | 2018-01-03 | 2018-07-03 | 百度在线网络技术(北京)有限公司 | 基于分布式系统的交互式大数据查询方法、装置、存储介质和终端设备 |
CN110175209A (zh) * | 2019-04-12 | 2019-08-27 | 中国人民财产保险股份有限公司 | 增量数据同步方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111158887A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111158887B (zh) | 一种集中式数据分布式处理方法及装置 | |
US11353838B2 (en) | Distributed computing in a process control environment | |
US10152382B2 (en) | Method and system for monitoring virtual machine cluster | |
CN107016480B (zh) | 任务调度方法、装置及系统 | |
CN102880503B (zh) | 数据分析系统及数据分析方法 | |
US20170075693A1 (en) | Handling multiple task sequences in a stream processing framework | |
CN106776280B (zh) | 可配置性能测试装置 | |
CN106817408B (zh) | 一种分布式服务器集群调度方法及装置 | |
US10846284B1 (en) | View-based data mart management system | |
CN105786603B (zh) | 一种基于分布式的高并发业务处理系统及方法 | |
CN109726004B (zh) | 一种数据处理方法及装置 | |
US10469616B2 (en) | Data driven bin packing implementation for data centers with variable node capabilities | |
CN111190753A (zh) | 分布式任务处理方法、装置、存储介质和计算机设备 | |
CN108255628A (zh) | 一种数据处理方法及装置 | |
US9832137B1 (en) | Provisioning system and method for a distributed computing environment using a map reduce process | |
US20170068706A1 (en) | Event-stream searching using compiled rule patterns | |
US10922145B2 (en) | Scheduling software jobs having dependencies | |
CN111158889A (zh) | 一种批量任务处理方法及系统 | |
Lei et al. | Redoop: Supporting Recurring Queries in Hadoop. | |
CN115221008A (zh) | 一种基于微服务模式的调度系统监控方法、设备及介质 | |
da Silva et al. | Data replication policy in a cloud computing environment | |
Li et al. | The competence of volunteer computing for MapReduce big data applications | |
Pongpaibool et al. | Netham-nano: A robust and scalable service-oriented platform for distributed monitoring | |
US20100318849A1 (en) | Runtime behavior alteration using behavior injection harness | |
CN117453376B (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 | ||
GR01 | Patent grant |