CN111431951A - 一种数据处理方法、节点设备、***及存储介质 - Google Patents
一种数据处理方法、节点设备、***及存储介质 Download PDFInfo
- Publication number
- CN111431951A CN111431951A CN201910018766.5A CN201910018766A CN111431951A CN 111431951 A CN111431951 A CN 111431951A CN 201910018766 A CN201910018766 A CN 201910018766A CN 111431951 A CN111431951 A CN 111431951A
- Authority
- CN
- China
- Prior art keywords
- data
- data processing
- node
- processed
- node device
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种数据处理方法、节点设备、***及存储介质,其中应用于第一节点设备的数据处理方法包括:为待处理数据标记相应的节点设备,其中,待处理数据存储在向各节点设备共享的预定数据目录下;获取第一节点设备相应的待处理数据;处理第一节点设备相应的待处理数据,并将数据处理结果存储在预定结果目录下,其中,预定结果目录向第二节点设备共享,且预定结果目录至少存储第一节点设备的数据处理结果以及第二节点设备的数据处理结果;根据预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。本发明实施例可实现节点设备间的数据共享,并通过优化数据处理方式,避免重复处理待处理数据和实现数据处理结果的统一汇总。
Description
技术领域
本发明实施例涉及数据处理技术领域,具体涉及一种数据处理方法、节点设备、***及存储介质。
背景技术
在数据处理任务的数据量级较大时,单一节点设备的数据处理能力有限,如果仅由单一节点设备执行数据处理任务(即仅由单一节点设备处理量级较大的数据),无疑极为低效耗时;节点设备是指具有数据处理能力的电子设备。
在数据处理任务的数据量级较大时,使用多节点设备并发处理数据无疑是一种较好的选择;然而在使用多节点设备时,如何优化数据处理方式,成为了进一步提升数据处理效果的难题。
发明内容
有鉴于此,本发明实施例提供一种数据处理方法、节点设备、***及存储介质,以在多节点设备并发处理数据时,优化数据处理方式,为进一步提升数据处理效果提供可能。
为解决上述问题,本发明实施例提供一种数据处理方法,所述方法基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述方法应用于第一节点设备,所述方法包括:
为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
获取第一节点设备相应的待处理数据;
处理所述第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
本发明实施例还提供一种数据处理方法,所述方法基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述方法应用于第二节点设备,所述方法包括:
在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
本发明实施例还提供一种数据处理装置,所述数据处理装置基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述数据处理装置应用于第一节点设备,所述数据处理装置包括:
标记模块,用于为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
第一获取模块,用于获取第一节点设备相应的待处理数据;
第一处理模块,用于处理所述第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
结果确定模块,用于根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
本发明实施例还提供一种节点设备,包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述程序,以实现上述所述第一节点设备执行的数据处理方法。
本发明实施例还提供一种存储介质,所述存储介质存储有实现上述所述的第一节点设备执行的数据处理方法的程序。
本发明实施例还提供一种数据处理装置,所述数据处理装置基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述数据处理装置应用于第二节点设备,所述数据处理装置包括:
第二获取模块,用于在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
第二处理模块,用于处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
本发明实施例还提供一种节点设备,包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述程序,以实现上述所述的第二节点设备执行的数据处理方法。
本发明实施例还提供一种存储介质,所述存储介质存储有实现上述所述的第二节点设备执行的数据处理方法的程序。
本发明实施例还提供一种数据处理***,包括:第一节点设备和第二节点设备。
本发明实施提供的数据处理方法可基于分布式平台实施,该分布式平台至少包括多个节点设备,该多个节点设备至少包括第一节点设备和第二节点设备;同时,本发明实施例将执行数据处理任务所需的待处理数据存储在预定数据目录下,通过共享服务将预定数据目录向分布式平台内的节点设备共享;并通过共享服务将第一节点设备的预定结果目录向第二节点设备共享;
基于此,本发明实施例可在预定数据目录下的待处理数据标记相应的节点设备后,各节点设备可按照标记结果获取并处理相应的待处理数据,避免重复处理待处理数据,实现充分利用多节点设备的数据处理能力,提升数据处理效率;同时,使各节点设备相应的数据处理结果统一汇总至第一节点设备的预定结果目录下,可在多节点设备并发处理数据的情况下,保证数据处理结果的目录结构,与在单台节点设备上处理各待处理数据得到的数据处理结果的目录结构相一致,以便统一汇总各待处理数据的数据处理结果,实现数据处理结果的高效整理,为进一步提升数据处理效果提供可能。
本发明实施例提供的数据处理方法可以在多节点设备并发处理数据时,通过共享服务共享预定数据目录和预定结果目录,实现节点设备间的数据共享,并通过优化数据处理方式,避免重复处理待处理数据和实现数据处理结果的统一汇总,为进一步提升数据处理效果提供可能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的数据处理***的可选架构框图;
图2为本发明实施例提供的数据处理方法的示例流程图;
图3为本发明实施例提供的为各待处理数据标记相应的节点设备的示例图;
图4为本发明实施例提供的为各待处理数据标记相应的节点设备的另一示例图;
图5为本发明实施例提供的划分文件的示例图;
图6为本发明实施例提供的完成文件的生成示例图;
图7为本发明实施例提供的获取相应的待处理数据的方法流程图;
图8为本发明实施例提供的检测数据处理状态的方法流程图;
图9为本发明实施例提供的数据处理方法的另一示例流程图;
图10为本发明实施例提供的数据处理装置的结构框图;
图11为本发明实施例提供的数据处理装置的另一结构框图;
图12为本发明实施例提供的数据处理装置的再一结构框图;
图13为本发明实施例提供的节点设备的硬件架构框图;
图14为本发明实施例提供的数据处理装置的又一结构框图;
图15为本发明实施例提供的数据处理装置的又另一结构框图。
具体实施方式
使用多节点设备并发处理数据是利用分布式计算能力的一种体现,一些分布式平台可允许具有数据处理能力的电子设备加入,并成为分布式平台的节点设备。分布式平台例如HDFS(Hadoop Distributed File System,分布式文件***)平台,Jenkins(一种持续集成调度平台)平台等;其中,Jenkins是基于Java开发的一种持续集成工具,用于检测持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
在数据处理任务的数据量级较大时,可以将数据处理任务的待处理数据分配到多个节点设备同时执行,从而实现多节点设备并发处理数据。然而,本发明的发明人发现:在多节点设备并发处理数据时,节点设备之间并不能通信,这并不利于数据处理结果的高效整理等,影响数据处理效果的进一步提升。
基于此,本发明实施例提供一种数据处理方法、节点设备、***及存储介质,以在多节点设备并发处理数据时,优化数据处理方式,为进一步提升数据处理效果提供可能。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
作为本发明实施例公开内容的一种可选实现,图1示出了本发明实施例提供的数据处理***的一种可选架构,本发明实施例提供的数据处理方法可基于图1所示数据处理***实施;参照图1,该***可以包括:平台服务器11,第一节点设备12,第二节点设备13,和共享服务设备14;可选的,第二节点设备13的数量可以是至少一个;
在本发明实施例中,平台服务器11可以是分布式平台的服务器,例如Jenkins平台的Jenkins服务器等;平台服务器可以选择用于并发处理数据的多个节点设备,并启动数据处理任务;可选的,节点设备可以是具有数据处理能力的电子设备,例如PC(个人计算机),智能手机,笔记本电脑,网络中的数据处理节点等;
可选的,第一节点设备可以是从分布式平台的多个节点设备中选取的主节点设备,第二节点设备可以是分布式平台的多个节点设备中除主节点设备外的从节点设备;在一种可选示例中,平台服务器11可以从该多个节点设备中选择一个或多个作为主节点设备,主节点设备则为第一节点设备12;该多个节点设备中,除主节点设备以外的节点设备可以作为从节点设备,从节点设备则为第二节点设备13;
其中,平台服务器11,第一节点设备12和第二节点设备13可以作为分布式平台内的设备;本发明实施例可在分布式平台的基础上结合共享服务能力,以实现分布式平台内节点设备之间的通信。
继续参照图1,共享服务设备14可以是安装有共享服务的数据处理设备,例如安装有共享服务的计算机;示例的,共享服务例如Samba服务,Samba服务是在Linux和UNIX***上实现SMB协议的一个服务,SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务;
在本发明实施例中,共享服务设备14可设置预定数据目录,该预定数据目录下存储有数据处理任务相应的多份待处理数据;共享服务设备14可通过共享服务向各节点设备共享预定数据目录,使得分布式平台内的各节点设备(如第一节点设备和第二节点设备)可访问预定数据目录下的待处理数据;
为实现分布式平台内节点设备之间的通信,使第二节点设备处理数据后的数据处理结果能够汇总到第一节点设备,第一节点设备也可安装共享服务(例如Samba服务);第一节点设备可设置预定结果目录,并将处理数据后的数据处理结果存储在预定结果目录下;同时,第一节点设备可通过共享服务向第二节点设备共享预定结果目录,并使第二节点设备在处理数据后,将数据处理结果上传到预定结果目录下,实现第二节点设备的数据处理结果汇总到第一节点设备。
需要说明的是,图1所示仅是本发明实施例提供的数据处理***的一种可选形式,本发明实施例也可将共享服务设备14的功能集成到第一节点设备12中,即第一节点设备12可安装共享服务,并共享预定数据目录和预定结果目录;第一节点设备12共享的预定数据目录下的待处理数据可被第二节点设备13所访问,并且第二节点设备13可将处理数据后的数据处理结果上传到预定结果目录下。
作为本发明实施例公开内容的一种可选实现,基于上述提供的数据处理***,本发明实施例改进的数据处理方法的一种可选示例流程可如图2所示,需要说明的是,图2所示仅是本发明实施例提供的数据处理方法的一种可选流程。
可选的,在平台服务器选择用于并发处理数据的多个节点设备后,所述多个节点设备可以包括第一节点设备和第二节点设备;例如,平台服务器可以从该多个节点设备中指定主节点设备,从而主节点设备为第一节点设备,主节点设备以外的节点设备作为从节点设备,从而从节点设备为第二节点设备;当然,第一节点设备为主节点设备,第二节点设备为从节点设备仅是一种可选示例,本发明实施例也可在不区分主、从节点设备的情况下,将分布式平台的多个节点设备中的至少一个节点设备作为第一节点设备,除第一节点设备外的其他节点设备作为第二节点设备;
参照图2,本发明实施例提供的数据处理方法的流程可以包括:
步骤S10、第一节点设备为各待处理数据标记相应的节点设备。
其中,所述各待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的各节点设备共享。
可选的,数据处理任务相应的数据源具有多份待处理数据,各份待处理数据的数据量可能相同也可能不同;在执行数据量级较大的数据处理任务时,可利用多节点设备的分布式计算能力,以多节点设备并发处理数据的方式,提升数据处理效率。
可选的,各待处理数据可以存储在预定数据目标下,且预定数据目录可通过共享服务向分布式平台内的各节点设备共享;相应的,各待处理数据可以在预定数据目录下共享,从而使得分布式平台内的各节点设备可访问该预定数据目录下的待处理数据。图2所示是以在共享服务设备的预定数据目录下共享待处理数据为例说明,当然,本发明实施例也可支持在第一节点设备的预定数据目录下共享待处理数据。
在本发明实施例中,第一节点设备可为各待处理数据标记相应的节点设备,以确定出各节点设备相应的待处理数据;各节点设备相应的待处理数据表示,各节点设备需相应处理的待处理数据,即各待处理数据被相应的节点设备处理;可选的,各节点设备相应的待处理数据的数据量可尽量均衡,从而充分利用多节点设备的数据处理能力,提升数据处理效率。
在一种可选实现中,本发明实施例可设置数据量阈值,根据数据量阈值为各待处理数据标记相应的节点设备,以在任一节点设备相应处理的待处理数据达到数据量阈值时,停止继续将待处理数据标记为与该节点设备相应。
在另一种可选实现中,本发明实施例也可根据待处理数据的份数,均匀的为各待处理数据标记相应的节点设备,以使各节点设备相应的待处理数据的份数相同;此种方式优选在各份待处理数据的数据量的大小均衡的情况下适用,例如各份待处理数据的数据量的大小差值不大于预定差值。
可以理解的是,图2所示是基于设置共享服务设备的场景,第一节点设备可通过向共享服务设备发送操作请求,以在共享服务设备共享的预定数据目录下,为各待处理数据标记相应的节点设备;如果将共享服务设备的功能集成到第一节点设备,则第一节点设备可自身实现为各待处理数据标记相应的节点设备。
步骤S11、第一节点设备获取第一节点设备相应的待处理数据。
步骤S12、第二节点设备获取第二节点设备相应的待处理数据。
可以理解的是,待处理数据存储在共享的预定数据目录下,可被分布式平台内的各节点设备所访问;在为各待处理数据标记相应的节点设备后,分布式平台内的各节点设备(如第一节点设备和第二节点设备)可获取相应的待处理数据,以便后续处理待处理数据。
可选的,第二节点设备也可以是在检测到待处理数据标记的节点设备为第二节点设备时,获取第二节点设备相应的待处理数据,而不需等到所有的待处理数据均标记节点设备;可见,第二节点设备可在检测到待处理数据标记的节点设备至少为第二节点设备时,获取第二节点设备相应的待处理数据。
可选的,步骤S11和步骤S12可以不区分先后执行顺序,如步骤S11和步骤S12可以同步执行,也可以是先执行步骤S11再执行步骤S12。
可以理解的是,如果将共享服务设备的功能集成到第一节点设备,第一节点设备可在自身共享的预定数据目录下获取相应的待处理数据,第二节点设备可通过访问第一节点设备共享的预定数据目录,获取第二节点设备相应的待处理数据。
步骤S13、第一节点设备处理第一节点设备相应的待处理数据。
步骤S14、第一节点设备定时向平台服务器上传数据处理状态。
可选的,步骤S13和步骤S14可以不区分先后执行顺序,示例的,第一节点设备可以在处理相应的待处理数据的过程中,定时向平台服务器上传数据处理状态;数据处理状态包括但不限于:数据处理中(即相应的待处理数据正在处理中),数据处理完成(即相应的待处理数据已处理完成)等;示例的,不同的数据处理状态可以使用特定的不同字符表示。
可选的,处理待处理数据可以是操作待处理数据,具体的操作可以视数据处理任务的需求而定,例如,数据加和、数据分类等。
步骤S15、第二节点设备处理第二节点设备相应的待处理数据。
步骤S16、第二节点设备定时向平台服务器上传数据处理状态。
可选的,步骤S15和步骤S16可以不区分先后执行顺序,示例的,第二节点设备可以在处理第二节点设备相应的待处理数据的过程中,定时向平台服务器上传数据处理状态;步骤S15和步骤S16的进一步介绍可参照前文步骤S13和步骤S14部分,此处不再赘述。
可选的,步骤S13和步骤S14,与步骤S15和步骤S16可以不区分先后执行顺序,两者可同步执行。
相应的,平台服务器可记录各节点设备的数据处理状态,并定时更新各节点设备的数据处理状态。
步骤S17、第二节点设备处理第二节点设备相应的待处理数据后,将数据处理结果上传至第一节点设备的预定结果目录下。
第一节点设备可通过共享服务共享预定结果目录,以使得第二节点设备可访问所述预定结果目录;第二节点设备在获取相应的待处理数据并处理后,可将数据处理结果上传至第一节点设备的预定结果目录下。
步骤S18、第一节点设备处理第一节点设备相应的待处理数据后,将数据处理结果存储在所述预定结果目录下。
可选的,步骤S17和步骤S18可不区分先后执行顺序,如步骤S17和步骤S18可同步执行。
可见,在本发明实施例中,各待处理数据的数据处理结果均统一汇总到第一节点设备的预定结果目录下,从而可在多节点设备并发处理数据的情况下,保证数据处理结果的目录结构,与在单台节点设备上处理各待处理数据得到的数据处理结果的目录结构相一致,以便统一汇总各待处理数据的数据处理结果。
步骤S19、第一节点设备在处理第一节点设备相应的待处理数据后,检测第二节点设备的数据处理状态。
可选的,第一节点设备在处理相应的待处理数据后,可向平台服务器请求第二节点设备的数据处理状态(可选的,平台服务器可记录并定时更新各节点设备的数据处理状态),从而检测第二节点设备的数据处理状态。
可选的,由于是由第一节点设备检测第二节点设备的数据处理状态,在本发明实施例中,也可设置第一节点设备不上传数据处理状态(即不执行步骤S14),而仅由第二节点设备上传数据处理状态。
步骤S20、在第二节点设备的数据处理状态为数据处理完成时,确定各待处理数据的数据处理结果。
可选的,第一节点设备在检测到第二节点设备的数据处理状态均为数据处理完成时,说明第二节点设备处理完相应的待处理数据,第一节点设备可确定出数据处理任务相应的数据处理结果(即各待处理数据的数据处理结果),从而可将各待处理数据的数据处理结果进行备份,以便后续的收尾验证等操作。
可选的,图2所示方法中,本发明实施例也可不设置第一节点设备和第二节点设备定时向平台服务器上传数据处理状态,而是节点设备(如第一节点设备和第二节点设备)各自在处理相应的待处理数据后,向平台服务器上传数据处理状态(此时的数据处理状态为数据处理完成);可以理解的是,在此基础上,节点设备未上传数据处理状态,则表示节点设备未处理完相应的待处理数据,节点设备上传数据处理状态,则可表示节点设备处理完相应的待处理数据;
作为另一种替换方式,本发明实施例也可设置第二节点设备各自在处理相应的待处理数据后,向平台服务器上传数据处理状态,而不设置第一节点设备上传数据处理状态;
可见,在第一节点设备处理所述第一节点设备相应的待处理数据,并将数据处理结果存储在预定结果目录下,且第二节点设备处理第二节点设备相应的待处理数据,并将数据处理结果上传至所述预定结果目录下的基础上,第一节点设备可根据所述预定结果目录下的数据处理结果,确定各待处理数据的数据处理结果;例如,第一节点设备可在各节点设备处理完相应的待处理数据后,将所述预定结果目录下的数据处理结果确定为,各待处理数据的数据处理结果。
本发明实施提供的数据处理方法可基于分布式平台实施,该分布式平台至少包括多个节点设备,该多个节点设备包括第一节点设备和第二节点设备;同时,本发明实施例将执行数据处理任务所需的各待处理数据存储在预定数据目录下,通过共享服务将预定数据目录向分布式平台内的各节点设备共享;并通过共享服务将第一节点设备的预定结果目录向第二节点设备共享;
基于此,本发明实施例可在预定数据目录下的各待处理数据标记相应的节点设备后,各节点设备可按照标记结果获取并处理相应的待处理数据,避免重复处理待处理数据,实现充分利用多节点设备的数据处理能力,提升数据处理效率;同时,使各节点设备相应的数据处理结果统一汇总至第一节点设备的预定结果目录下,可在多节点设备并发处理数据的情况下,保证数据处理结果的目录结构,与在单台节点设备上处理各待处理数据得到的数据处理结果的目录结构相一致,以便统一汇总各待处理数据的数据处理结果,实现数据处理结果的高效整理,为进一步提升数据处理效果提供可能。
本发明实施例提供的数据处理方法可以在多节点设备并发处理数据时,通过共享服务共享预定数据目录和预定结果目录,实现节点设备间的数据共享,从而优化数据处理方式,避免重复处理待处理数据和实现数据处理结果的统一汇总,为进一步提升数据处理效果提供可能。
作为本发明实施例公开内容的一种可选实现,第一节点设备为各待处理数据标记相应的节点设备的一种可选方式可以是:依次为各待处理数据标记相应的节点设备;其中,在上一节点设备相应的待处理数据达到数据量阈值时,将下一待处理数据标记至下一节点设备,直至各待处理数据均标记相应的节点设备。
示例的,待处理数据的一种可选形式可以是待处理文件,数据处理任务可以具有需处理的多份待处理文件;为便于说明,本发明实施例假设数据量阈值为30M(兆),如图3所示:
本发明实施例可从待处理文件1开始,依次为各待处理文件标记相应的节点设备,例如,可将待处理文件1(3M)标记为相应节点设备1(即节点设备1处理待处理文件1),此时节点设备1相应的待处理文件的数据量未达到30M,继续将待处理文件2(28M)标记为相应节点设备1,此时节点设备1相应的待处理文件的数据量(31M)达到30M,停止将待处理文件继续标记至节点设备1;将待处理文件3(10M)标记为相应节点设备2,待处理文件4(22M)标记为相应节点设备2,此时节点设备2相应的待处理文件的数据量(32M)达到30M,停止将待处理文件继续标记至节点设备2,从而将下一待处理文件标记为相应下一节点设备,以此类推,直至各待处理文件均标记相应的节点设备。
显然,上述说明的具体数值仅为便于理解方案使用,其不应对本发明的保护范围造成局限。在另一种可选实现中,示例的,如图4所示,本发明实施例也可根据数据量阈值组合各待处理数据,直至每一组合的待处理数据的数据量达到数据量阈值,从而为每一组合的待处理数据标记相应的节点设备,实现为各待处理数据标记相应的节点设备,其中一个组合包括至少一份待处理文件。
作为本发明实施例公开内容的一种可选实现,本发明实施例可在预定数据目录的根目录下建立划分文件,通过划分文件记录各待处理数据与所标记的相应节点设备的关系,并向分布式平台内的各节点设备共享划分文件;
第一节点设备在对数据源中的每份待处理数据标记相应的节点设备后,每份待处理数据均会下载到相应的节点设备;本发明实施例可在每次为一份待处理数据标记相应的节点设备后,将相应的标记结果写入划分文件,从而通过划分文件记录的多份标记结果表示各待处理数据与相应节点设备的关系;其中,所述划分文件可以记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系;
示例的,划分文件可以是文本形式,例如可命名为split.txt;图5示出了划分文件的一种可选示例;参照图5,split.txt文件可记录每份待处理数据相应的节点设备,例如,以待处理文件表示待处理数据,本发明实施例可依次为各待处理文件标记相应的节点设备,并在上一节点设备相应的待处理文件达到数据量阈值时,将下一待处理文件标记至下一节点设备;如图5所示,待处理文件1可相应节点设备1,待处理文件2可相应节点设备1(此时待处理文件1和2达到数据量阈值),待处理文件3可相应节点设备2(待处理文件3达到数据量阈值),待处理文件4可相应节点设备3,以此类推。示例的,节点设备1可作为第一节点设备,其余节点设备可作为第二节点设备,当然,第一节点设备可以是任意指定的节点设备,并不限于在首次标记时,将待处理数据标记为相应第一节点设备。
进一步,作为本发明实施例公开内容的一种可选实现,本发明实施例可在预定数据目录的根目录下建立完成文件,并向分布式平台内的各节点设备共享完成文件,完成文件可用于指示各待处理数据完成标记相应的节点设备;即,第一节点设备可在为各待处理数据标记相应的节点设备后,在所述预定数据目录的根目录下建立完成文件;
进而,第二节点设备可定时检测预定数据目录的根目录下是否建立有完成文件,若是,则可根据该根目录下的划分文件获取相应的待处理数据。
示例的,完成文件可以是文本形式,例如可命名为finish.txt文件,以待处理文件表示待处理数据,图6示出了完成文件的一种生成示例;如图6所示,假设一共有10份待处理文件需要标记,第一节点设备可从第一份待处理文件开始,依次为各待处理文件标记相应的节点设备,并在split.txt文件记录每次标记的标记结果;
在标记过程中,由于各待处理文件并未完成标记相应的节点设备,因此并不在预定数据目录的根目录下建立finish.txt文件,此时,第二节点设备并未在该根目录下检测到finish.txt文件。当第一节点设备为第10份待处理文件标记相应的节点设备,并在split.txt文件记录第10份待处理文件与相应节点设备的关系后,第一节点设备可在预定数据目录的根目录下建立finish.txt文件;此时,第二节点设备可在该根目标下检测到finish.txt文件,从而第二节点设备可根据该根目标下的split.txt文件,获取相应的待处理文件。
可选的,由于本发明实施例是通过第一节点设备标记各待处理数据相应的节点设备,因此第一节点设备可在标记完成后,根据划分文件获取相应的待处理数据,而无需检测完成文件是否建立;当然,本发明实施例也可支持第一节点设备在检测到完成文件后,再根据划分文件获取相应的待处理数据。
可选的,图7示出了本发明实施例提供的第二节点设备获取相应的待处理数据的方法流程,参照图7,该流程可以包括:
步骤S30、判断定时时间是否达到预定时间,若是,执行步骤S31,若否,执行步骤S30。
可选的,定时时间可根据实际情况设定。
步骤S31、检测预定数据目录的根目录下是否建立有完成文件,若是,执行步骤S32,若否,执行步骤S30。
可选的,所述完成文件在各待处理数据均标记相应的节点设备后建立。
步骤S32、根据所述根目录下的划分文件获取相应的待处理数据。
可选的,所述划分文件记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系;对于第二节点设备,第二节点设备检测到所述根目录下建立有完成文件后,可获取所述根目录下的划分文件,确定所述划分文件中记录的与该第二节点设备相应的待处理数据,从而获取预定数据目录下与该第二节点设备相应的待处理数据。
可选的,在本发明实施例中,第二节点设备可定时向平台服务器上传数据处理状态,以使得第一节点设备可通过平台服务器定时检测第二节点设备的数据处理状态,从而在第一节点设备检测到第二节点设备的数据处理状态为数据处理完成时,可确定第二节点设备处理完相应的待处理数据,进而第一节点设备可统一汇总预定数据目录下各待处理数据的数据处理结果;
可选的,图8示出了本发明实施例提供的第一节点设备检测各第二节点设备的数据处理状态的方法流程,参照图8,该方法可以包括:
步骤S40、第一节点设备向平台服务器请求当前数据处理任务相应的节点设备文件。
当前数据处理任务相应的节点设备文件可以记录执行当前数据处理任务所使用的各节点设备(如各节点设备的标识);例如,平台服务器在启动数据处理任务前,可选择用于并发处理数据的多个节点设备,所选择的多个节点设备的标识可记录于节点设备文件中,并且节点设备文件可与当前数据处理任务的任务标识相关联。
可选的,第一节点设备可通过网络接口,向平台服务器请求节点设备文件;请求的消息中可以携带数据处理任务的任务标识,以便平台服务器根据所述任务标识确定相应的节点设备文件,并返回给第一节点设备。
可选的,在选用Jenkins平台时,节点设备文件可以是Jenkins服务器中记录的XML文件;可选的,该XML文件的示例可以如下:<spanstyle="text-decoration:underline;">http://100.XX.XX.XX:8080/job/jobName/lastBuild/api/xml</span>。
可选的,该XML文件可以记录当前数据处理任务的配置信息,包括执行当前数据处理任务的各节点设备的标识(如各节点设备的名称)等。
步骤S41、平台服务器向第一节点设备发送所述节点设备文件。
步骤S42、第一节点设备向平台服务器请求第二节点设备相应的状态文件。
可选的,各节点设备可分别具有相应的状态文件,以记录各自的数据处理状态;例如,一个第二节点设备相应的状态文件可记录,该第二节点设备的数据处理状态。
可选的,本发明实施例可确定当前需获取状态文件的第二节点设备的标识,进而通过网络接口,分别根据当前需获取状态文件的第二节点设备的标识,向平台服务器请求相应的状态文件;
可选的,当前需获取状态文件的第二节点设备可以是,还未处理完相应的待处理数据的第二节点设备(如上一次请求的该第二节点设备的状态文件表示数据处理中);一般而言,在初始请求状态文件时,可请求各第二节点设备相应的状态文件,而随着各第二节点设备处理相应待处理数据,各第二节点设备可能先后处理完相应的待处理数据,因此后续每次请求状态文件可能是针对不同的第二节点设备;
例如,以第二节点设备包括节点设备a、b和c为例,第一次可分别获取节点设备a、b和c相应的状态文件;而在检测到节点设备a处理完相应的待处理数据,则下次可获取节点设备b和c相应的状态文件,而不必再请求节点设备a相应的状态文件,从而可节省请求流量;这种方式在节点设备数量较多,且节点设备的计算能力分布不均时,尤其节省请求流量。
可选的,在选用Jenkins平台时,状态文件可以是Jenkins服务器中记录的XML文件;可选的,该XML文件的示例可以如下:<span style="text-decoration:underline;">http://10.XX.XX.XX:8080/job/jobName/label=slaveName/lastBuild/api/xml</span>。一节点设备相应的该XML文件可以记录该节点设备的数据处理状态,如该节点设备可在处理相应待处理数据的过程中,定时上传数据处理状态,从而平台服务器可在该节点设备相应的状态文件中,定时更新该节点设备的数据处理状态。
步骤S43、平台服务器向第一节点设备发送请求的状态文件。
步骤S44、第一节点设备根据请求的状态文件,检测第二节点设备的数据处理状态是否表示数据处理完成,若否,执行步骤S45,若是,执行步骤S46。
步骤S45、确定数据处理状态为数据处理中的第二节点设备为,下一次请求状态文件相应的第二节点设备,返回执行步骤S42。
可选的,第一节点设备可通过文件记录各第二节点设备,并对数据处理状态为数据处理完成的第二节点设备进行标记;所标记的数据处理状态为数据处理完成的第二节点设备,可随每次获取的状态文件更新;而文件中未被标记的第二节点设备则作为下一次请求状态文件所相应的第二节点设备。
步骤S46、第一节点设备确定第二节点设备处理完相应的待处理数据,将所述预定结果目录下的数据处理结果,确定为各待处理数据的数据处理结果。
可见,在本发明实施例中,第一节点设备可获取当前数据处理任务相应的节点设备文件,所述节点设备文件记录有执行当前数据处理任务的各节点设备;从而第一节点设备可根据所述节点设备文件,定时获取第二节点设备相应的状态文件,直至状态文件表示数据处理完成;其中,若所获取的一节点设备相应的状态文件表示数据处理完成,则停止继续获取该节点设备相应的状态文件。
作为图8所示方法的一种替代实现,本发明实施例也可在获取当前数据处理任务相应的节点设备文件后,定时获取各节点设备相应的状态文件(即每次都获取各节点设备相应的状态文件),从而在获取的所有状态文件均表示数据处理完成时,确定各第二节点设备处理完相应的待处理数据。
作为本发明实施例公开内容的一种可选实现,本发明实施例提供的分布式平台可以选用HDFS平台,Jenkins平台等;由于HDFS复杂度高,部署、使用、维护较为耗费人力,因此本发明实施例可优选使用Jenkins平台;Jenkins平台虽然具有将同一任务的数据分配到多台节点设备同时执行的能力,并具有分布式计算省时高效,维护搭建简单的特点,但是传统的Jenkins平台的缺点也十分明显,主要在于:
执行后的数据处理结果分布在不同节点设备上,即使Jenkins有历史记录备份功能,也不能将数据处理结果统一归纳成预取的汇总结果;分配到每台节点设备上的数据可能存在重复,存在数据处理效率较低的可能;同时,各节点设备之间不能通信,无法获知节点设备的数据处理状态。
基于此,本发明实施例可通过共享服务将第一节点设备的预定结果目录向第二节点设备共享,并使第二节点设备将相应待处理数据的数据处理结果上传至所述预定结果目录下,从而实现分布式平台内第一节点设备和第二节点设备之间的通信,优化节点设备之间的关系,使得各节点设备相应的数据处理结果统一汇总至第一节点设备的预定结果目录下,从而可在多节点设备并发处理数据的情况下,保证数据处理结果的目录结构,与在单台节点设备上处理各待处理数据得到的数据处理结果的目录结构相一致;可见,本发明实施例可实现统一汇总各待处理数据的数据处理结果,为将数据处理结果统一归纳成预定的汇总结果提供了可能;
同时,本发明实施例可通过共享服务,将待处理数据存储在预定数据目录下,并向分布式平台内的各节点设备共享;从而在各待处理数据均标记相应的节点设备后,各节点设备可按照标记结果获取并处理相应的待处理数据,避免重复处理待处理数据,可充分利用多节点设备的数据处理能力,提升数据处理效率;
进一步,在本发明实施例中,第二节点设备可向平台服务器上传数据处理状态,从而第一节点设备可通过平台服务器检测第二节点设备的数据处理状态,实现节点设备之间的间接通信,达到监控第二节点设备的数据处理进度的目的。
在选用Jenkins平台的情况下,本发明实施例可以Jenkins平台的并行执行能力为依托,结合本发明实施例改进的数据处理方法和Samba服务等共享服务,使得Jenkins平台具有让并行执行状态下的节点设备进行通信的能力;并使得节点设备可根据标记结果获取相应的待处理数据,避免待处理数据的重复下载;同时,可在第一节点设备汇总统一各节点设备的数据处理结果,实现分布式平台的调度优化,进一步提升多节点设备并行处理数据的效果。
需要说明的是,HDFS更适用于Linux***,对于Windows***而言,HDFS还需要额外安装cygwin等软件,因此操作十分繁琐,安装配置失败率高;而如果使用Jenkins平台,基于Jenkins平台与Linux和Windows***都有良好的兼容性,因此仅需执行一个java安装包即可完成部署,在运行环境单一,分布式计算机集群较小的情况下,本发明实施例提供的数据处理方法较为适用Jenkins平台;当然,本发明实施例也可不对HDFS和Jenkins平台的使用进行限制。
作为一种示例,以分布式平台使用Jenkins平台为例,Jenkins平台可以包括:Jenkins服务器,主Jenkins节点设备,至少一个从Jenkins节点设备;该Jenkins平台可与共享服务设备交互;
在本发明实施例中,主Jenkins节点设备仅是本发明实施例所指的第一节点设备的一种可选形式,从Jenkins节点设备仅是本发明实施例所指的第二节点设备的一种可选形式,Jenkins服务器仅是本发明实施例所指的平台服务器的一种可选形式;在使用其他类型的分布式平台的情况下,第一节点设备、第二节点设备、平台服务器的形式可适应调整。
以Samba服务作为共享服务,本发明实施例提供的数据处理方法的一种可选示例流程可如图9所示;其中,位于共享服务设备的预定数据目录可通过Samba服务向各节点设备共享,且作为数据源的多份待处理数据存储在预定数据目录下;位于主Jenkins节点设备的预定结果目录可通过Samba服务向从Jenkins节点设备共享;参照图9,本发明实施例提供的数据处理方法的示例流程可以包括:
步骤S50、主Jenkins节点设备为各待处理数据标记相应的节点设备,并将标记结果写入split.txt文件;所述split.txt文件存储在预定数据目录的根目录下。
步骤S51、主Jenkins节点设备在为各待处理数据均标记相应的节点设备后,在所述根目录下建立finish.txt文件。
步骤S52、主Jenkins节点设备根据所述split.txt文件获取相应的待处理数据。
步骤S53、主Jenkins节点处理相应的待处理数据。
步骤S54、从Jenkins节点设备在所述根目录下检测到finish.txt文件,根据所述split.txt文件获取相应的待处理数据。
步骤S55、从Jenkins节点设备处理相应的待处理数据。
可选的,步骤S52和S53,与步骤S54和S55可以同步执行,并不区分先后顺序。
步骤S56、从Jenkins节点设备定时向Jenkins服务器上传数据处理状态。
步骤S57、从Jenkins节点在处理完相应的待处理数据后,将数据处理结果上传至预定结果目录下。
步骤S58、主Jenkins节点在处理完相应的待处理数据后,将数据处理结果上传至预定结果目录下。
步骤S59、主Jenkins节点定时向Jenkins服务器请求从Jenkins节点设备的数据处理状态。
可选的,步骤S56和S57,与步骤S58和S59可以同步执行,并不区分先后顺序。
可选的,步骤S59的实现可参照前文图8方法部分所示,也可以是主Jenkins节点定时向Jenkins服务器请求各节点设备相应的状态文件(即每次都请求各节点设备相应的状态文件)。
步骤S60、主Jenkins节点检测到各从Jenkins节点设备的数据处理状态均表示数据处理完成时,确定所述预定结果目录下存储的各待处理数据的数据处理结果。
在一种可选使用场景中,本发明实施例提供的数据处理方法可应用于车机数据的处理,从而在利用多节点设备并发处理车机数据时,基于本发明实施例提供的数据处理方法,以共享服务共享预定数据目录和预定结果目录,实现节点设备间的数据共享,从而优化车机数据的处理方式,避免各节点设备重复处理待车机数据,和实现统一汇总车机数据的处理结果,为提升车机数据的处理效果提供可能。进一步,第一节点设备还可实现监控各第二节点设备的车机数据处理进度。
上文描述了本发明实施例提供的多个实施例方案,各实施例方案介绍的各可选方式可在不冲突的情况下相互结合、交叉引用,从而延伸出多种可能的实施例方案,这些均可认为是本发明实施例披露、公开的实施例方案。
下面站在第一节点设备的角度,对本发明实施例提供的数据处理装置进行介绍,下文描述的数据处理装置可以认为是第一节点设备为实现本发明实施提供的数据处理方法,所需设置的程序模块架构。下文描述的数据处理装置的内容可与,上文描述的数据处理方法的内容相互对应参照。
图10为本发明实施例提供的数据处理装置的结构框图,该数据处理装置可基于包括多个节点设备的分布式平台,所述多个节点设备包括第一节点设备和第二节点设备;该数据处理装置可应用于第一节点设备,参照图10,该数据处理装置可以包括:
标记模块100,用于为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
第一获取模块110,用于获取第一节点设备相应的待处理数据;
第一处理模块120,用于处理第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
结果确定模块130,用于根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
可选的,标记模块100,用于为待处理数据标记相应的节点设备,具体包括:
根据数据量阈值为待处理数据标记相应的节点设备,以在任一节点设备相应的待处理数据达到数据量阈值时,停止继续将待处理数据标记为与该节点设备相应。
可选的,标记模块100,用于根据数据量阈值为待处理数据标记相应的节点设备,具体包括:
依次为待处理数据标记相应的节点设备;其中,在上一节点设备相应的待处理数据达到数据量阈值时,将下一待处理数据标记至下一节点设备,直至所有待处理数据均标记相应的节点设备。
可选的,图11示出了本发明实施例提供的数据处理装置的另一结构框图,结合图10和图11所示,该数据处理装置还可以包括:
划分文件写入模块140,用于在每为一份待处理数据标记相应的节点设备后,将相应的标记结果写入划分文件;所述划分文件记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系;所述划分文件存储在所述预定数据目录的根目录下,并向分布式平台内的节点设备共享。
可选的,图12示出了本发明实施例提供的数据处理装置的再一结构框图,结合图11和图12所示,该数据处理装置还可以包括:
完成文件建立模块150,用于在为待处理数据均标记相应的节点设备后,在所述预定数据目录的根目录下建立完成文件,以在第二节点设备在所述根目录下检测到完成文件时,使得第二节点设备根据所述根目录下的划分文件获取相应的待处理数据。
可选的,结果确定模块130,用于根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果,具体包括:
通过平台服务器定时检测第二节点设备的数据处理状态;其中,第二节点设备的数据处理状态定时上传至所述平台服务器;
若检测到第二节点设备的数据处理状态表示数据处理完成,将所述预定结果目录下的数据处理结果,确定为待处理数据的数据处理结果。
可选的,结果确定模块130,用于通过平台服务器定时检测第二节点设备的数据处理状态,具体包括:
获取当前数据处理任务相应的节点设备文件,所述节点设备文件记录有执行当前数据处理任务的各节点设备;
根据所述节点设备文件,定时获取第二节点设备相应的表示数据处理状态的状态文件,直至所获取的状态文件指示数据处理完成。
可选的,所述预定数据目录可通过Samba服务共享,所述预定数据目录可位于所述第一节点设备或所述分布式平台的平台服务器;所述预定结果目录可通过Samba服务共享,所述预定结果目录可位于所述第一节点设备;所述分布式平台可以为Jenkins平台。
本发明实施例提供的第一节点设备可以通过程序形式装载上述所述的程序模块架构,以实现本发明实施例提供的第一节点设备执行的数据处理方法;可选的,图13示出了本发明实施例提供的节点设备的一种可选硬件架构,该节点设备可以是上述所述的第一节点设备,该节点设备可以包括:至少一个处理器1,至少一个通信接口2,至少一个存储器3和至少一个通信总线4;
在本发明实施例中,处理器1、通信接口2、存储器3、通信总线4的数量为至少一个,且处理器1、通信接口2、存储器3通过通信总线4完成相互间的通信;显然,图13所示的处理器1、通信接口2、存储器3和通信总线4的通信连接示意仅是可选的一种方式;
可选的,通信接口2可以为通信模块的接口,如GSM模块的接口;
处理器1可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
存储器3可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
其中,存储器3存储有程序,处理器1调用存储器3所存储的程序,以实现本发明实施例提供的第一节点设备执行的数据处理方法。
本发明实施例还提供一种存储介质,该存储介质可存储实现本发明实施例提供的第一节点设备执行的数据处理方法的程序。
可选的,上述所指的程序可具体用于:
为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
获取第一节点设备相应的待处理数据;
处理所述第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
可选的,上述程序的细化功能和扩展功能可参照前文相应部分描述,此处不再赘述。
下面站在第二节点设备的角度,对本发明实施例提供的数据处理装置进行介绍,下文描述的数据处理装置可以认为是第二节点设备为实现本发明实施提供的数据处理方法,所需设置的程序模块架构。下文描述的数据处理装置的内容可与,上文描述的数据处理方法的内容相互对应参照。
图14为本发明实施例提供的数据处理装置的又一结构框图,该数据处理装置可基于包括多个节点设备的分布式平台,所述多个节点设备包括第一节点设备和第二节点设备;该数据处理装置可应用于第二节点设备,参照图14,该数据处理装置可以包括:
第二获取模块200,用于在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
第二处理模块210,用于处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
可选的,第二获取模块200,用于在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据,具体包括:
定时检测所述预定数据目录的根目录是否建立有完成文件;
若检测到所述根目录建立有完成文件,根据所述根目录下的划分文件获取第二节点设备相应的待处理数据;其中,所述划分文件记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系,所述完成文件在待处理数据均标记相应的节点设备后建立。
可选的,图15示出了本发明实施例提供的数据处理装置的又另一结构框图,结合图14和图15所示,该数据处理装置还可以包括:
状态上传模块220,用于定时将数据处理状态上传至分布式平台的平台服务器。
可选的,所述预定数据目录可通过Samba服务共享,所述预定数据目录可位于所述第一节点设备或所述分布式平台的平台服务器;所述预定结果目录可通过Samba服务共享,所述预定结果目录可位于所述第一节点设备;所述分布式平台可以为Jenkins平台。
本发明实施例提供的第二节点设备可以通过程序形式装载上述所述的程序模块架构,以实现本发明实施例提供的第二节点设备执行的数据处理方法;可选的,本发明实施例还提供一种节点设备,该节点设备可以是上述所述的第二节点设备,该节点设备的硬件架构可一同参照图13所示,包括:至少一个存储器和至少一个处理器;
其中,存储器存储有程序,处理器调用所述程序,以实现本发明实施例提供的第二节点设备执行的数据处理方法。
本发明实施例还提供一种存储介质,该存储介质可存储实现本发明实施例提供的第二节点设备执行的数据处理方法的程序。
可选的,上述所指的程序可具体用于:
在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
可选的,上述程序的细化功能和扩展功能可参照前文相应部分描述,此处不再赘述。
本发明实施例还提供一种数据处理***,包括:上述所述的第一节点设备和上述所述的第二节点设备。第一节点设备对应实现的功能,和第二节点设备对应实现的功能可参照前文相应部分描述,此处不再赘述。
虽然本发明实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (19)
1.一种数据处理方法,其特征在于,所述方法基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述方法应用于第一节点设备,所述方法包括:
为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
获取第一节点设备相应的待处理数据;
处理所述第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
2.根据权利要求1所述的数据处理方法,其特征在于,所述为待处理数据标记相应的节点设备包括:
根据数据量阈值为待处理数据标记相应的节点设备,以在任一节点设备相应的待处理数据达到数据量阈值时,停止继续将待处理数据标记为与该节点设备相应。
3.根据权利要求2所述的数据处理方法,其特征在于,所述根据数据量阈值为待处理数据标记相应的节点设备包括:
依次为待处理数据标记相应的节点设备;其中,在上一节点设备相应的待处理数据达到数据量阈值时,将下一待处理数据标记至下一节点设备,直至所有待处理数据均标记相应的节点设备。
4.根据权利要求1-3任一项所述的数据处理方法,其特征在于,所述方法还包括:
在每为一份待处理数据标记相应的节点设备后,将相应的标记结果写入划分文件;所述划分文件记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系;所述划分文件存储在所述预定数据目录的根目录下,并向分布式平台内的节点设备共享。
5.根据权利要求4所述的数据处理方法,其特征在于,所述方法还包括:
在为待处理数据标记相应的节点设备后,在所述预定数据目录的根目录下建立完成文件,以在第二节点设备在所述根目录下检测到完成文件时,使得第二节点设备根据所述根目录下的划分文件获取相应的待处理数据。
6.根据权利要求1所述的数据处理方法,其特征在于,所述根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果包括:
通过平台服务器定时检测第二节点设备的数据处理状态;其中,第二节点设备的数据处理状态定时上传至所述平台服务器;
若检测到第二节点设备的数据处理状态表示数据处理完成,将所述预定结果目录下的数据处理结果,确定为待处理数据的数据处理结果。
7.根据权利要求6所述的数据处理方法,其特征在于,所述通过平台服务器定时检测第二节点设备的数据处理状态包括:
获取当前数据处理任务相应的节点设备文件,所述节点设备文件记录有执行当前数据处理任务的节点设备;
根据所述节点设备文件,定时获取第二节点设备相应的表示数据处理状态的状态文件,直至所获取的状态文件指示数据处理完成。
8.根据权利要求1所述的数据处理方法,其特征在于,所述预定数据目录通过Samba服务共享,所述预定数据目录位于所述第一节点设备或所述分布式平台的平台服务器;所述预定结果目录通过Samba服务共享,所述预定结果目录位于所述第一节点设备;所述分布式平台为Jenkins平台。
9.一种数据处理方法,其特征在于,所述方法基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述方法应用于第二节点设备,所述方法包括:
在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
10.根据权利要求9所述的数据处理方法,其特征在于,所述在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据包括:
定时检测所述预定数据目录的根目录是否建立有完成文件;
若检测到所述根目录建立有完成文件,根据所述根目录下的划分文件获取第二节点设备相应的待处理数据;其中,所述划分文件记录有多份标记结果,一份标记结果表示一份待处理数据与相应节点设备的关系,所述完成文件在待处理数据均标记相应的节点设备后建立。
11.根据权利要求9所述的数据处理方法,其特征在于,还包括:
定时将数据处理状态上传至分布式平台的平台服务器。
12.根据权利要求9所述的数据处理方法,其特征在于,所述预定数据目录通过Samba服务共享,所述预定数据目录位于所述第一节点设备或所述分布式平台的平台服务器;所述预定结果目录通过Samba服务共享,所述预定结果目录位于所述第一节点设备;所述分布式平台为Jenkins平台。
13.一种数据处理装置,其特征在于,所述数据处理装置基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述数据处理装置应用于第一节点设备,所述数据处理装置包括:
标记模块,用于为待处理数据标记相应的节点设备,以确定各节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,且所述预定数据目录向分布式平台内的节点设备共享;
第一获取模块,用于获取第一节点设备相应的待处理数据;
第一处理模块,用于处理所述第一节点设备相应的待处理数据,并将第一节点设备的数据处理结果存储在第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果;
结果确定模块,用于根据所述预定结果目录下的数据处理结果,确定待处理数据的数据处理结果。
14.一种节点设备,其特征在于,包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述程序,以实现权利要求1-8任一项所述的数据处理方法。
15.一种存储介质,其特征在于,所述存储介质存储有实现权利要求1-8任一项所述的数据处理方法的程序。
16.一种数据处理装置,其特征在于,所述数据处理装置基于包括多个节点设备的分布式平台,所述多个节点设备至少包括第一节点设备和第二节点设备;所述数据处理装置应用于第二节点设备,所述数据处理装置包括:
第二获取模块,用于在检测到为待处理数据标记的相应节点设备至少为第二节点设备后,获取第二节点设备相应的待处理数据;其中,所述待处理数据存储在预定数据目录下,所述预定数据目录向分布式平台内的节点设备共享;
第二处理模块,用于处理所述第二节点设备相应的待处理数据,并将第二节点设备的数据处理结果上传至第一节点设备的预定结果目录下;其中,所述预定结果目录向第二节点设备共享,所述预定结果目录至少存储所述第一节点设备的数据处理结果以及所述第二节点设备的数据处理结果。
17.一种节点设备,其特征在于,包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述程序,以实现权利要求9-12任一项所述的数据处理方法。
18.一种存储介质,其特征在于,所述存储介质存储有实现权利要求9-12任一项所述的数据处理方法的程序。
19.一种数据处理***,其特征在于,包括:第一节点设备和第二节点设备;所述第一节点设备为如权利要求14所述的节点设备,所述第二节点设备为如权利要求17所述的节点设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910018766.5A CN111431951B (zh) | 2019-01-09 | 2019-01-09 | 一种数据处理方法、节点设备、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910018766.5A CN111431951B (zh) | 2019-01-09 | 2019-01-09 | 一种数据处理方法、节点设备、***及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111431951A true CN111431951A (zh) | 2020-07-17 |
CN111431951B CN111431951B (zh) | 2022-05-17 |
Family
ID=71545965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910018766.5A Active CN111431951B (zh) | 2019-01-09 | 2019-01-09 | 一种数据处理方法、节点设备、***及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111431951B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392131A (zh) * | 2021-07-05 | 2021-09-14 | 上海幻电信息科技有限公司 | 数据处理方法、装置及计算机设备 |
CN115061825A (zh) * | 2022-08-09 | 2022-09-16 | 深圳致星科技有限公司 | 隐私计算、隐私数据和联邦学习的异构计算***及方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279730A (zh) * | 2010-06-10 | 2011-12-14 | 阿里巴巴集团控股有限公司 | 一种并行的数据处理方法、装置和并行的数据处理*** |
CN103324533A (zh) * | 2012-03-22 | 2013-09-25 | 华为技术有限公司 | 分布式数据处理方法、装置及*** |
US20150222636A1 (en) * | 2008-10-21 | 2015-08-06 | Lookout, Inc. | System and method for assessing an application based on data from multiple devices |
US20160085810A1 (en) * | 2014-09-24 | 2016-03-24 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
CN107679192A (zh) * | 2017-10-09 | 2018-02-09 | 中国工商银行股份有限公司 | 多集群协同数据处理方法、***、存储介质及设备 |
CN108664331A (zh) * | 2018-05-22 | 2018-10-16 | 腾讯大地通途(北京)科技有限公司 | 分布式数据处理方法及装置、电子设备、存储介质 |
-
2019
- 2019-01-09 CN CN201910018766.5A patent/CN111431951B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150222636A1 (en) * | 2008-10-21 | 2015-08-06 | Lookout, Inc. | System and method for assessing an application based on data from multiple devices |
CN102279730A (zh) * | 2010-06-10 | 2011-12-14 | 阿里巴巴集团控股有限公司 | 一种并行的数据处理方法、装置和并行的数据处理*** |
CN103324533A (zh) * | 2012-03-22 | 2013-09-25 | 华为技术有限公司 | 分布式数据处理方法、装置及*** |
US20160085810A1 (en) * | 2014-09-24 | 2016-03-24 | Oracle International Corporation | Scaling event processing using distributed flows and map-reduce operations |
CN107679192A (zh) * | 2017-10-09 | 2018-02-09 | 中国工商银行股份有限公司 | 多集群协同数据处理方法、***、存储介质及设备 |
CN108664331A (zh) * | 2018-05-22 | 2018-10-16 | 腾讯大地通途(北京)科技有限公司 | 分布式数据处理方法及装置、电子设备、存储介质 |
Non-Patent Citations (2)
Title |
---|
HAO LAN ZHANG: "EXTRACTING SAMPLE DATA BASED ON POISSON DISTRIBUTION", 《PROCEEDINGS OF THE 2017 INTERNATIONAL CONFERENCE ON MACHINE LEARNING AND CYBERNETICS》 * |
程鑫: "并行多处理器运动控制***中的分布式存储机制", 《中国机械工程》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113392131A (zh) * | 2021-07-05 | 2021-09-14 | 上海幻电信息科技有限公司 | 数据处理方法、装置及计算机设备 |
CN115061825A (zh) * | 2022-08-09 | 2022-09-16 | 深圳致星科技有限公司 | 隐私计算、隐私数据和联邦学习的异构计算***及方法 |
CN115061825B (zh) * | 2022-08-09 | 2022-11-18 | 深圳致星科技有限公司 | 隐私计算、隐私数据和联邦学习的异构计算***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111431951B (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10735345B2 (en) | Orchestrating computing resources between different computing environments | |
US10805363B2 (en) | Method, device and system for pushing file | |
CN115328663B (zh) | 基于PaaS平台进行资源调度的方法、装置、设备和存储介质 | |
CN105049268A (zh) | 分布式计算资源分配***和任务处理方法 | |
US9535754B1 (en) | Dynamic provisioning of computing resources | |
CN111143133B (zh) | 虚拟机备份方法和备份虚拟机恢复方法 | |
CN111818159A (zh) | 数据处理节点的管理方法、装置、设备及存储介质 | |
CN105450759A (zh) | 一种***镜像的管理方法和装置 | |
CN112463290A (zh) | 动态调整计算容器的数量的方法、***、装置和存储介质 | |
US7219345B2 (en) | System and method for terminating processes in a distributed computing system | |
CN111431951B (zh) | 一种数据处理方法、节点设备、***及存储介质 | |
CN107566470B (zh) | 云数据***中管理虚拟机的方法和装置 | |
CN114296953B (zh) | 一种多云异构***及任务处理方法 | |
CN113434283B (zh) | 服务调度方法及装置、服务器、计算机可读存储介质 | |
CN111126604A (zh) | 模型训练方法、装置、服务器及存储介质 | |
CN109002263B (zh) | 存储容量的调整方法及装置 | |
CN116069493A (zh) | 一种数据处理方法、装置、设备以及可读存储介质 | |
CN113268254A (zh) | 一种集群***安装方法、装置、电子设备及存储介质 | |
CN111767126A (zh) | 分布式批量处理的***和方法 | |
CN114172903B (zh) | slurm调度***的节点扩容方法、装置、设备和介质 | |
CN103425707A (zh) | 数据分析方法和装置 | |
CN111147226A (zh) | 数据存储方法、装置及存储介质 | |
CN114697334A (zh) | 一种编排任务的执行方法和装置 | |
CN112667393A (zh) | 分布式任务计算调度框架搭建的方法、装置及计算机设备 | |
CN117519964B (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 |