CN108664331B - 分布式数据处理方法及装置、电子设备、存储介质 - Google Patents

分布式数据处理方法及装置、电子设备、存储介质 Download PDF

Info

Publication number
CN108664331B
CN108664331B CN201810492658.7A CN201810492658A CN108664331B CN 108664331 B CN108664331 B CN 108664331B CN 201810492658 A CN201810492658 A CN 201810492658A CN 108664331 B CN108664331 B CN 108664331B
Authority
CN
China
Prior art keywords
data
data blocks
configuration file
client
processing
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
Application number
CN201810492658.7A
Other languages
English (en)
Other versions
CN108664331A (zh
Inventor
刘宸宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Tencent Dadi Tongtu Beijing Technology Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Tencent Dadi Tongtu Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd, Tencent Dadi Tongtu Beijing Technology Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810492658.7A priority Critical patent/CN108664331B/zh
Publication of CN108664331A publication Critical patent/CN108664331A/zh
Application granted granted Critical
Publication of CN108664331B publication Critical patent/CN108664331B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Abstract

本发明揭示了一种分布式数据处理方法及装置、电子设备、计算机可读存储介质。该方案包括:响应接收到的数据处理指令,读取配置文件;根据配置文件所指示的数据存放目录,读取数据存放目录对应的待处理数据;按照配置文件所指示的计算节点数量,对待处理数据进行划分,获得相应数量的数据块;向每个计算节点上传数据块以及根据配置文件读取的数据分析程序,触发计算节点利用数据分析程序对数据块进行分析处理。该方案无需修改现有的数据分析程序,无需进行数据分析程序的语言转换,在配置文件的控制下,即可在几十甚至上百万台计算节点并行执行数据分析任务,大大缩短了从算法研究到数据处理的周期,降低了设计人员的学习成本和开发成本。

Description

分布式数据处理方法及装置、电子设备、存储介质
技术领域
本发明涉及计算机技术领域,特别涉及一种分布式数据处理方法及装置、电子设备、计算机可读存储介质。
背景技术
随着互联网的发展,图像数据成井喷式爆发,通常分析图像的做法是研究人员获取一小部分图像数据,然后编写独立算法分析图像,之后再将写好的算法用于分析海量的数据。但是从一个本地运行的独立程序,到处理海量的数据有一个巨大的挑战——怎么快速并行运行已有的程序。针对此类问题各个组织也提出了一些方案。
通常的方案是开发人员编写master-slave(主从式)分布式程序,开发量巨大,且需要分布式编程、网络通信等相关知识储备。另外一种模式是使用已有的框架(比如Hadoop分布式系统基础架构),Hadoop的MapReduce(分布式计算框架)和HDFS(分布式文件系统)均采用Java进行实现,默认提供Java编程接口,用户通过这些编程接口,可以定义map、reduce函数等等。由于Hadoop是用java语言进行开发的,为了处理海量的图片,开发人员要先学习java语言,然后学习Hadoop的开发模式以及mapreduce对应的接口调用,最后才能实际运行图像分析的程序。而图像分析程序由于通常要求性能较高,大多数程序都是使用c++语言写成,java调用c\c++又需要相关的跨语言调用的知识储备,所以在真正的运行图像分析程序之前,学习成本太大。http://hipi.cs.virginia.edu提出的Hadoop的hipi模块虽然可以处理图像数据,但是只有java的接口,将c++算法全部翻译成java代价很大,而且c++开发人员新学java语言的成本也很大。Hadoop后来推出了针对其他语言的hadoop streaming(运行作业的实用工具),但是此接口要求开发者仍然按照map reduce套路编写程序,map和reduce模块都需要修改已有的图像分析程序,是入侵式的逻辑。
综上所述,现有分布式数据处理方法,程序开发的工作量大,开发成本高。
发明内容
为了解决相关技术存在的程序开发的工作量大,开发成本高的问题,本发明提供了一种分布式数据处理方法。
一方面,本发明提供了一种分布式数据处理方法,所述方法包括:
响应接收到的数据处理指令,读取配置文件;
根据所述配置文件所指示的数据存放目录,读取所述数据存放目录对应的待处理数据;
按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块;
向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理。
另一方面,本发明还提供了另一种分布式数据处理方法,所述方法包括:
接收客户端根据配置文件上传的多个数据块;所述多个数据块是所述客户端根据所述配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
通过运行分布式文件系统存储所述多个数据块;
控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理。
进一步的,本发明还提供了一种分布式数据处理装置,所述装置包括:
配置读取模块,用于响应接收到的数据处理指令,读取配置文件;
数据读取模块,用于根据所述配置文件所指示的数据存放目录,读取所述数据存放目录对应的待处理数据;
数据切分模块,用于按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块;
数据处理模块,用于向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理。
更进一步的,本发明还提供另一种分布式数据处理装置,所述装置包括:
数据块接收模块,用于接收客户端根据配置文件上传的多个数据块;所述多个数据块是所述客户端根据所述配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
数据块存储模块,用于通过运行分布式文件系统存储所述多个数据块;
数据块处理模块,用于控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理。
此外,本发明还提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置执行完成上述分布式数据处理方法。
另外,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序可由处理器执行完成上述分布式数据处理方法。
本发明的实施例提供的技术方案可以包括以下有益效果:
本发明提供的技术方案实现了另一种分布式数据处理方式,通过读取配置文件,并在配置文件的指示下,获取待处理数据和已有的数据分析程序,将待处理数据按照配置文件指示的计算节点数量划分成多个数据块,并向每个计算节点上传数据块和数据分析程序,从而每个计算节点均可通过运行上传的数据分析程序对分配的数据块进行处理,实现待处理数据的分布式处理。该方案无需修改现有的数据分析程序,无需进行数据分析程序的语言转换,在配置文件的控制下,即可在几十甚至上百万台计算节点并行执行数据分析任务,大大缩短了从算法研究到数据处理的周期,降低了设计人员的学习成本和开发成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并于说明书一起用于解释本发明的原理。
图1是根据本发明所涉及的实施环境的示意图;
图2是根据一示例性实施例示出的一种装置的框图;
图3是根据一示例性实施例示出的一种分布式数据处理方法的流程图;
图4是图3对应实施例的步骤330的细节流程图;
图5是图3对应实施例的步骤340的细节流程图;
图6是在图5对应实施例的基础上示出的分布式数据处理方法的流程图;
图7是根据另一示例性实施例示出的一种分布式数据处理方法的流程图;
图8是图7对应实施例的步骤730的细节流程图;
图9是在图8对应实施例的基础上示出的分布式数据处理方法的流程图;
图10是用户通过本发明实现分布式数据处理的流程示意图;
图11是本发明实现数据分布式处理的架构示意图;
图12是本发明实现数据分布式处理的流程示意图;
图13是根据一示例性实施例示出的一种分布式数据处理装置的框图;
图14是图13对应实施例的数据处理模块1340的细节框图;
图15是图13对应实施例的数据切分模块1330的细节框图;
图16是根据另一示例性实施例示出的一种分布式数据处理装置的框图;
图17是图16对应实施例的数据处理模块1630的细节框图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1是根据本发明所涉及的实施环境的示意图。该实施环境包括:客户端110和服务端120。
客户端110可以是电子设备中运行的应用程序,服务端120是指服务器集群,服务器集群通常包括多台服务器,一台服务器可以认为是一个计算节点。客户端110可以采用本发明提供的分布式数据处理方法,读取本地存储的配置文件或者从其他终端设备中读取配置文件,并在配置文件的指示下,获取数据和对数据进行处理的数据分析程序,并将数据切分为多个数据块,将多个数据块和数据分析程序分发至服务端120的多个计算节点,多个计算节点利用该数据分析程序实现对所分配数据块的分布式分析处理。
图2是根据一示例性实施例示出的一种装置200的框图。例如,装置200可以用于运行图1所示实施环境中的客户端110。
参照图2,装置200可以包括以下一个或多个组件:处理组件202,存储器204,电源组件206,多媒体组件208,音频组件210,传感器组件214以及通信组件216。
处理组件202通常控制装置200的整体操作,诸如与显示,电话呼叫,数据通信,相机操作以及记录操作相关联的操作等。处理组件202可以包括一个或多个处理器218来执行指令,以完成下述的方法的全部或部分步骤。此外,处理组件202可以包括一个或多个模块,便于处理组件202和其他组件之间的交互。例如,处理组件202可以包括多媒体模块,以方便多媒体组件208和处理组件202之间的交互。
存储器204被配置为存储各种类型的数据以支持在装置200的操作。这些数据的示例包括用于在装置200上操作的任何应用程序或方法的指令。存储器204可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static RandomAccess Memory,简称SRAM),电可擦除可编程只读存储器(Electrically ErasableProgrammable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。存储器204中还存储有一个或多个模块,该一个或多个模块被配置成由该一个或多个处理器218执行,以完成下述图3-图6任一所示方法中的全部或者部分步骤。
电源组件206为装置200的各种组件提供电力。电源组件206可以包括电源管理系统,一个或多个电源,及其他与为装置200生成、管理和分配电力相关联的组件。
多媒体组件208包括在所述装置200和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称LCD)和触摸面板。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。屏幕还可以包括有机电致发光显示器(Organic Light Emitting Display,简称OLED)。
音频组件210被配置为输出和/或输入音频信号。例如,音频组件210包括一个麦克风(Microphone,简称MIC),当装置200处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器204或经由通信组件216发送。在一些实施例中,音频组件210还包括一个扬声器,用于输出音频信号。
传感器组件214包括一个或多个传感器,用于为装置200提供各个方面的状态评估。例如,传感器组件214可以检测到装置200的打开/关闭状态,组件的相对定位,传感器组件214还可以检测装置200或装置200一个组件的位置改变以及装置200的温度变化。在一些实施例中,该传感器组件214还可以包括磁传感器,压力传感器或温度传感器。
通信组件216被配置为便于装置200和其他设备之间有线或无线方式的通信。装置200可以接入基于通信标准的无线网络,如WiFi(WIreless-Fidelity,无线保真)。在一个示例性实施例中,通信组件216经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件216还包括近场通信(Near FieldCommunication,简称NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RadioFrequency Identification,简称RFID)技术,红外数据协会(Infrared DataAssociation,简称IrDA)技术,超宽带(Ultra Wideband,简称UWB)技术,蓝牙技术和其他技术来实现。
在示例性实施例中,装置200可以被一个或多个应用专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、数字信号处理器、数字信号处理设备、可编程逻辑器件、现场可编程门阵列、控制器、微控制器、微处理器或其他电子元件实现,用于执行下述方法。
图3是根据一示例性实施例示出的一种分布式数据处理方法的流程图。该分布式数据处理方法的适用范围和执行主体,例如,该方法用于图1所示实施环境的客户端110。如图3所示,该数据处理方法可以由客户端110执行,可以包括以下步骤。
在步骤310中,响应接收到的数据处理指令,读取配置文件。
需要说明的是,用户可以提前修改好配置文件,配置文件可以存储在客户端110所在的本地存储单元中,还可以存储在外部设备中。在一种实施例中,配置文件存储在客户端110所在的本地存储单元中时,客户端110响应用户触发的数据处理指令,读取本地存储单元中提前存储的配置文件。在另一实施例中,配置文件存储在外部设备中,外部设备是相对客户端110所在电子设备而言的,外部设备可以是具有数据存储功能的终端设备,如移动终端、服务器、存储设备等。运行客户端110的电子设备响应用户触发的数据处理指令,从外部设备读取提前存储的配置文件。
其中,配置文件中存储了数据处理所需的参数。例如,本地数据存放地址(local_data)、本地算子存放地址(local_operator)、计算节点数量(num_node)、日志存放地址(log_dir)等。
在步骤320中,根据配置文件所指示的数据存放目录,读取数据存放目录对应的待处理数据。
其中,数据存放目录是指配置文件中记载的待处理数据的存放地址。待处理数据可以是文本、图片、语音等形式。举例来说,对文本的处理可以是从大量文本片段中找出关键词所在的片段。对图片的处理可以是对大量图片进行图片质量检测、图片清晰化处理等。对语音的处理可以是将大量语音片段转换成文本片段等。在一种实施例中,客户端110根据配置文件中记载的待处理数据的存放地址,读取该存放地址对应存储的数据,得到待处理数据。
在步骤330中,按照配置文件所指示的计算节点数量,对待处理数据进行划分,获得相应数量的数据块。
其中,计算节点数量可以是图1所示实施环境中服务端120的服务器个数。一台服务器可以认为是一个计算节点。用户可以修改配置文件中的参数(num_node),在配置文件中记载当前计算节点的数量。客户端110根据配置文件中记载的计算节点数量,将待处理数据划分成相同数量的数据块。每个数据块的大小(block_size)可以是数据总量(num_data)除以计算节点数量(num_node)。每个数据块可以分别移动到im1,im2,im3.....imn目录中,即一个目录下存放找一个数据块。
在步骤340中,向每个计算节点上传所述数据块以及根据配置文件读取的数据分析程序,触发计算节点利用数据分析程序对数据块进行分析处理。
其中,数据分析程序是指对待处理数据进行处理的计算机程序。根据待处理数据的数据类型(如文本、语音、图像),数据分析程序可能是现有的图像清晰化程序、图像质量检测程序、文本识别程序或语音识别程序等。
客户端110将数据分析程序上传至每个计算节点,并将划分得到的多个数据块分布式上传至每个计算节点,一个计算节点对应上传一个数据块。每个计算节点通过运行上传的数据分析程序对分配的数据块进行分析处理,从而实现对数据的分布式分析处理。
需要说明的是,图像分析程序通常是C或C++语言写成的,而hadoop(分布式系统的平台)集群是采用Java语言编写成的,当利用hadoop集群处理海量图片时,需要将C或C++算法全部翻译成java语言,由此需要耗费较多的时间。虽然hadoop后来推出了跨语言调用的接口,但是开发者仍然需要按照mapreduce(分布式计算框架)的套路编写程序,也就是说需要修改已有的图像分析程序。由此,现有技术对大量图片进行分布式分析处理,需要耗费开发者较多的时间,工作量大。
本发明上述实施例提供的技术方案,提供了另一种分布式数据处理方法,通过读取配置文件,并在配置文件的指示下,获取待处理数据和已有的数据分析程序,将待处理数据按照配置文件指示的计算节点数量划分成多个数据块,并向每个计算节点上传数据块和数据分析程序,从而每个计算节点均可通过运行上传的数据分析程序对分配的数据块进行处理,实现待处理数据的分布式处理。该方案无需修改现有的数据分析程序,无需进行数据分析程序的语言转换,在配置文件的控制下,即可在几十甚至上百万台计算节点并行执行数据分析任务,大大缩短了从算法研究到数据处理的周期,降低了设计人员的学习成本和开发成本。
在一种示例性实施例中,在上述步骤340之前,本发明提供的分布式数据处理的方法还可以包括以下步骤:
根据配置文件所指示的算子存放目录,读取算子存放目录对应的数据分析程序。
其中,算子存放目录是指存储对待处理数据进行分析处理的计算机程序的存储地址。数据分析程序就是指对待处理数据进行分析处理的计算机程序。算子存放地址可以是客户端110所在的本地存储单元中。用户可以提前在客户端110本地进行待处理数据、数据分析程序以及配置文件的存储。然后客户端110接收用户触发的数据处理指令,读取配置文件,进而根据配置文件指示的算子存放目录读取对应存储的数据分析程序,根据配置文件指示的数据存放目录,获取对应存储的待处理数据。根据配置文件指示的计算节点数量,将待处理数据拆分成多个数据块,并向每个计算节点分发数据块和数据分析程序,使每个计算节点均可利用数据分析程序对分发的数据块进行并行分析处理。
在一种示例性实施例中,待处理数据包括连续图像序列;如图4所示,上述步骤330具体包括:
在步骤331中,随机打乱连续图像序列,生成图像数据列表。
其中,连续图像序列是指不是按照时间顺序排列的前后连贯的一帧帧图像。连续图像序列可以是摄像头拍摄的一段视频。随机打乱则是指变换连续图像序列帧与帧之间的顺序,使前后帧图像之间没有连贯性。举例来说,第1、2、3、4、5、6帧图像变成4、1、3、6、2、5的顺序。图像数据列表就是将连续图像序列的前后顺序打乱后形成的图像序列。
需要说明的是,由于连续图像序列可能存在连续几帧图像中都存在较多的目标物体,如果将这几帧划分至同一个数据块由同一个计算节点进行处理,则可能导致该计算节点的数据计算量较大,耗费时间较长。将连续图像序列随机打乱,从而使目标物体较多的图像不会聚集在一起被分配至同一个计算节点,从而使各个计算节点的计算量相近,不会因一个计算节点计算量较多,而增加完成数据处理任务的整体时间。
在步骤332中,按照配置文件所指示的计算节点数量,平均划分图像数据列表,获得相应数量的数据块。
具体的,假设图像数据列表中存在500张图像,计算节点数量是50个,则可以将500张图像划分成50个数据块,每个数据块存在10张图片。进而将50个数据块上传至50个计算节点,每个计算节点处理一个数据块,实现计算任务的均衡。
在一种示例性实施例,如图5所示,上述步骤340具体包括:
在步骤341中,将相应数量的数据块以及数据分析程序上传至服务器集群,触发服务器集群通过运行分布式文件系统存储数据块和数据分析程序。
其中,服务器集群可以作为图1所示实施环境中的服务端120。服务器集群可以是hadoop集群,客户端110将相应数量的数据块以及数据分析程序上传至hadoop集群。Hadoop集群包括多台服务器,多台服务器分为一个名字节点和多个数据节点,一个节点可以认为是一台服务器。其中,名字节点用于管理数据块映射以及处理客户端110的读写请求。
具体的,hadoop集群运行分布式文件系统(HDFS)的过程如下,客户端110向服务器集群的名字节点发送写数据请求,名字节点记录写数据请求所携带的数据块信息和数据分析程序,向客户端110返回可用的数据节点,进而客户端110向数据节点上传切分得到的多个数据块和数据分析程序,实现数据块的分布式存储。
其中,客户端110的主线调度模块可以记录当前时间戳作为该次数据处理任务的唯一标识,并在在配置文件中设置HDFS上remote_input为该次数据处理任务的输入文件夹,用于存放客户端110上传的数据块。另外,客户端110的主线调度模块还可以在配置文件中设置HDFS上remote_output为该次计算任务的输出文件夹,用于存放数据块的分析处理结果,客户端110在上传数据块和数据分析程序时,还可以将配置文件上传至hadoop集群,从而实现在remote_input目录存放客户端110上传的数据块。
在步骤342中,创建对相应数量的数据块进行分析处理的任务派发列表。
客户端110创建对所有数据块进行分析处理的任务派发列表,其中,任务派发列表是指对所有数据块进行分析处理的任务派发顺序。客户端110的主线调度模块在配置文件中设置任务派发列表为该次数据处理任务的任务列表。一个数据块作为一个任务,从而对多个数据块的处理任务形成任务列表。
在步骤343中,将任务派发列表上传至服务器集群的主服务器,触发主服务器根据任务派发列表控制服务器集群的各计算节点通过接入跨语言调用接口运行数据分析程序对存储的数据块进行分析处理。
需要说明的是,服务器集群包括多个服务器,多台服务器又可以分成主服务器和多个计算节点,每个计算节点可以认为是一台服务器。也就是说,根据需要,一台服务器既可以既作为计算节点又可以作为HDFS的数据节点。其中,客户端110的主线调度模块会查询hadoop集群的待处理任务队列,当hadoop集群的待处理任务队列过长时,客户端110继续等待,反之则向hadoop集群的主服务器上传任务派发列表。由此,主服务器根据任务派发列表控制各计算节点,通过shell命令接入hadoop streaming(即跨语言调用接口)加载配置文件读取相关配置,运行客户端110上传的数据分析程序,从HDFS的remote_output拉取存储的数据块,并对数据块进行分析处理。
在一种实施例中,计算节点对数据块进行解压缩。例如对数据块解压缩得到图片列表。计算节点通过shell命令语言接入hadoop streaming,调用数据分析程序依次对图片列表中的每张图片进行计算,并保存计算结果在本地目录。在当前计算节点完成所分配数据块的计算后,打包本地目录中的数据,根据配置文件所指示的该次计算任务的输出文件夹remote_output,上传数据块的分析处理结果到在HDFS的remote_output目录下。
当所有数据块的处理任务执行完毕后,客户端110判断任务执行结果,若任务执行失败,反复向hadoop集群提交任务三次,若仍然失败,则发送邮件至用户邮箱提醒用户执行失败。若执行成功,客户端110调用数据回传模块从hadoop集群的HDFS拉取数据分析处理结果到本地目录,并发送邮件至用户邮箱,提醒用户数据分析任务完成。
在一种示例性实施例中,上述步骤343之后,如图6所示,本发明提供的方法还可以包括以下步骤:
在步骤601中,向服务器集群发送数据块分析处理结果的查询请求;
客户端110的数据回传模块可以向服务器集群的名字节点发送查询请求,请求查询hadoop集群HDFS系统remote_output输出文件夹下存储的计算结果压缩包数量。通常,一个数据块对应一个计算结果压缩包,数据块的数量与计算节点的数量相同,由此,通过查询计算结果压缩包的数量,如果压缩包数量和计算节点数量相同,可以认为hadoop集群HDFS系统中已存储所有数据块的分析处理结果,当前数据分析处理任务已完成。
在步骤602中,根据服务器集群响应查询请求返回的查询结果,判断服务器集群运行的分布式文件系统是否已存储所有数据块的分析处理结果;
具体的,服务器集群运行的HDFS系统响应客户端110发送的查询请求,返回查询结果,其中查询结果包括HDFS系统remote_output输出文件夹中存储的计算结果压缩包数量。客户端110的数据回传模块接收查询结果,根据查询结果中记载的计算结果压缩包数量以及计算节点数量,判断计算结果压缩包数量和计算节点数量是否相等,以此判断主服务器是否已存储所有数据块的分析处理结果。
在步骤603中,当服务器集群的分布式文件系统已存储所有数据块的分析处理结果时,向服务器集群请求获取所有数据块对应的分析处理结果。
具体的,当客户端110的数据回传模块判断出计算结果压缩包数量和计算节点数量相同时,确定服务器集群的分布式文件系统已存储所有数据块的分析处理结果,进而向服务器集群的名字节点发送数据获取请求,请求获取所有数据块的分处理结果。
图7是根据一示例性实施例示出的一种分布式数据处理方法的流程图。该分布式数据处理方法的适用范围和执行主体,例如,该方法用于图1所示实施环境的服务端120。如图7示,该数据处理方法可以由服务端120执行,可以包括以下步骤。
在步骤710中,接收客户端根据配置文件上传的多个数据块;多个数据块是客户端根据配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
其中,上述客户端可以是图1所示实施环境中的客户端110,参照上述客户端110执行的分布式数据处理方法,客户端110读取配置文件,根据配置文件中记载的数据存放目录,读取数据存放目录对应的待处理数据。然后根据配置文件中记载的计算节点数量,将待处理数据拆分成多个数据块。数据块的数量可以和计算节点的数量相同。服务端120接收客户端上传的多个数据块。
在步骤720中,通过运行分布式文件系统存储多个数据块;
其中,服务端120可以是hadoop集群,hadoop集群通过运行HDFS(分布式文件系统)分布式存储客户端110上传的多个数据块。即将多个数据块分散存储至hadoop集群的多个数据节点。
在步骤730中,控制自身部署的多个计算节点拉取存储的数据块,并运行客户端根据配置文件上传的数据分析程序对拉取的数据块进行分析处理。
具体的,客户端110根据配置文件指示的算子存放目录,读取算子存放目录下存放的用于对数据块进行分析处理的数据分析程序,客户端110将数据分析程序上传至服务端120。服务端120包括多个计算节点,服务端120控制自身部署的多个计算节点拉取分布式存储的数据块,并通过shell命令接入hadoopstreaming调用数据分析程序对分配的数据块进行分析处理,并存储所有数据块的分析处理结果。
在一种示例性实施例中,客户端110上传至服务端120的多个数据块是经过压缩的,服务端120将接收到的多个数据块分配至多个计算节点,由此每个计算节点对于所分配的数据块需要进行解压缩,从而得到每个数据块解压缩产生的图片列表。其中,图片列表包括一张或多张图片。服务端120的每个计算节点将分配的数据块解压得到图片列表后,运行数据分析程序依次对图片列表中的每张图片进行分析处理,得到图片列表中每张图片的分析处理结果。之后,服务端120的每个计算节点将图片列表中每张图片的分析处理结果存储至计算节点本地目录中,在当前计算节点完成所有图片的分析处理后,服务端120的每个计算节点将所有图片的分析处理结果上传至HDFS上的remote_output输出文件夹
在一种实施例中,上述步骤730具体包括:
在步骤731中,接收客户端所创建对多个数据块进行分析处理的任务派发列表。
参照上述客户端110执行的分布式数据处理方式,客户端110创建对所有数据块进行分析处理的任务派发列表,其中,任务派发列表是指对所有数据块进行分析处理的任务派发顺序。客户端110的主线调度模块在配置文件中设置任务派发列表为该次数据处理任务的任务列表。一个数据块作为一个任务,从而对多个数据块的处理任务形成任务列表。
在步骤732中,按照任务派发列表指示的数据块处理顺序,控制自身部署的多个计算节点依次拉取存储的数据块并通过接入跨语言调用接口运行数据分析程序对拉取的数据块进行分析处理。
在一种示例性实施例中,在上述步骤732之后,如图9所示,本发明提供的分布式数据处理方法还包括:
在步骤901中,响应客户端所发送对数据块分析处理结果的查询请求,向客户端返回已完成分析处理的数据块数量;
具体的,服务端120可以是hadoop集群,每个计算节点在完成所分配数据块的分析处理后,将该数据块的分析处理结果上传至hadoop集群HDFS系统的remote_output输出文件夹,由此服务端120响应客户端110发送的查询请求,其中,该查询请求用于请求查询服务端120存储的数据块分析处理结果,进而向客户端120返回已完成分析处理的数据块数量。
在步骤902中,在已完成分析处理的数据块数量与所有计算节点的数量相同时,响应客户端发送的数据获取请求,向客户端返回所有数据块的分析处理结果。
具体的,客户端110根据返回的已完成分析处理的数据块数量,如果数据块数量与计算节点的数量相同,向服务端120发送数据获取请求,服务端120响应客户端110发送的数据获取请求,向客户端110返回所有数据块的分析处理结果。其中,服务端120可以将所有数据块的分析处理结果进行打包压缩,然后下发到客户端110,客户端110对接收到的数据包进行解压缩,得到所有数据块的分析处理结果。
图10是用户通过本发明实现分布式数据处理的流程示意图,如图10所示,用于运行客户端的电子设备可以提前存储用户输入的待处理图像以及对图像进行分析的程序。电子设备可以接收用户触发修改配置文件中的内容,包括图像、程序的存放位置、计算节点数量等。电子设备通过运行客户端,启动本发明分布式数据处理方法的框架,将待处理图像划分成多个数据块,并分散派发至多个计算节点,每个计算节点可以通过shell命令接入hadoop streaming,从而跨语言调用对图像进行分析的程序,对分配的数据块进行分析处理,完成对数据的分布式处理任务。
图11是本发明实现数据分布式处理的架构示意图,如图11所示,用户可以在第一电子设备中提前存储用户提供的数据和算子,数据是指待处理的数据,可以是图像、语音、文字等。算子是现有的对图像、语音或文字进行分析的算法程序。
计算配置模块可以在第二电子设备中,计算配置模块用于根据用户输入的信息生成配置文件,配置文件可以包括数据存放目录、算子存放目录、计算节点数量等。
客户端可以位于第三电子设备中,其中,第一电子设备、第二电子设备和第三电子设备可以是同一或不同终端设备。客户端包括多个功能模块,数据切分模块、打包上传模块、主线调度模块、结果回传模块、HDFS shell强化模块、日志监控模块。
其中,数据切分模块用于按照计算节点的能力,将数据按照合适的粒度,切分为多个数据块。具体的,数据切分模块通过读取配置文件中记载的计算节点数量n、并统计待处理的数据总量m,通过m/n计算得到每个数据块的分块大小。数据切分模块还可以打乱语音、图像或文字片段列表,使每个计算节点的计算量相近。
打包上传模块用于将数据切分模块切分得到的每个数据块打包压缩,打包压缩算子,并生成所有数据块的任务派发列表,将数据块压缩包上传至hadoop集群的HDFS系统,将任务派发列表、算子、配置文件打包传递至主线调度模块。
主线调度模块用于调用数据切分模块对待处理的数据进行切分,并调用打包上传模块打包数据块和算子,并将算子压缩包、配置文件以及任务派发列表上传至hadoop集群。调用数据回传模块从hadoop集群HDFS系统上的remote_output文件夹下拉取算子对数据的计算结果。其中,计算结果是hadoop集群的计算节点通过运行算子对分配的数据块进行分析处理产生的。
结果回传模块用于回传算子对数据块的计算结果并展开。具体的,调用HDFSshell强化模块检查remote_output文件夹中是否有和计算节点数量相同的计算结果压缩包,并记录计算结果压缩包数量。然后调用HDFS shell强化模块下拉remote_output文件夹中的所有文件到本地目录,一次解压压缩包,并邮件通知user email。
HDFS shell强化模块是针对HDFS shell做的强化操作。由于hadoop不是一个足够稳定的框架,所以采用了多次重试的机制来增大shell执行的成功率。另外还加入了文件或目录是否存在,pull(下拉)或push(上传)的参数中是否含有非法字符等安全检查机制。
日志监控模块,用于记录整体及上述子模块关键步骤的日志。
Hadoop集群作为服务端,包括主服务器和多个计算节点,每个计算节点包括核心计算模块,核心计算模块用于运行算子对分配的数据块进行分析处理。其中,核心计算模块具体通过shell命令接入hadoop streaming,从而实现跨语言调用C或C++编写的算子,对客户端上传的保存在HDFS系统remote_intput文件夹下的数据块进行分析处理生成计算结果,并将结果保存在HDFS系统上的remote_output文件夹。
图12是本发明实现数据分布式处理的流程示意图,如图12所示,在进行数据分布式处理之前,提前存储好了待处理的数据以及对数据进行分析处理的算子。
在步骤1201中,客户端的主调调度模块读取计算配置模块生成的配置文件。
在步骤1202中,主线调度模块调用数据切分模块,按照配置文件指示的数据存放目录,读取数据,并按照配置文件指示的计算节点数量,将数据切分打包成多个数据块。
在步骤1203中,客户端的打包上传模块按照配置文件指示的算子存放目录,读取算子并打包压缩。压缩切分得到多个数据块,并生成所有数据块的任务派发列表。
在步骤1204中,客户端的主线调度模块调用HDFS shell强化模块将数据块、算子上传至hadoop集群的HDFS系统。
在步骤1205中,客户端的主线调度模块上传任务派发列表至hadoop集群的主服务器,主服务器控制多个计算节点从HDFS系统获取算子和数据块,通过算子对数据块进行分析处理,并将处理结果存储在HDFS系统。
在步骤1206中,客户端的主线调度模块调用数据回传模块从HDFS系统下拉存储的处理结果。
下述为本发明装置实施例,可以用于执行本发明上述客户端110执行的分布式数据处理方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明分布式数据处理方法实施例。
图13是根据一示例性实施例示出的一种分布式数据处理装置的框图,该分布式数据处理装置可以用于图1所示实施环境的客户端110中,执行图3-图6任一所示的分布式数据处理方法的全部或者部分步骤。如图13所示,该装置包括但不限于:配置读取模块1310、数据读取模块1320、数据切分模块1330以及数据处理模块1340。
配置读取模块1310,用于响应接收到的数据处理指令,读取配置文件;
数据读取模块1320,用于根据所述配置文件所指示的数据存放目录,读取所述数据存放目录对应的待处理数据;
数据切分模块1330,用于按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块;
数据处理模块1340,用于向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理。
上述装置中各个模块的功能和作用的实现过程具体详见上述分布式数据处理方法中对应步骤的实现过程,在此不再赘述。
配置读取模块1310比如可以是图2中的某一个物理结构通信组件216。
数据读取模块1320、数据切分模块1330以及数据处理模块1340也可以是功能模块,用于执行上述分布式数据处理方法中的对应步骤。可以理解,这些模块可以通过硬件、软件、或二者结合来实现。当以硬件方式实现时,这些模块可以实施为一个或多个硬件模块,例如一个或多个专用集成电路。当以软件方式实现时,这些模块可以实施为在一个或多个处理器上执行的一个或多个计算机程序,例如图2的处理器218所执行的存储在存储器204中的程序。
在一种示例性实施例中,上述分布式数据处理装置还包括:
程序读取模块,用于根据所述配置文件所指示的算子存放目录,读取所述算子存放目录对应的数据分析程序。
在一种示例性实施例中,如图14所示,上述数据处理模块1340具体包括:
数据上传单元1341,用于将所述相应数量的数据块以及所述数据分析程序上传至服务器集群,触发所述服务器集群通过运行分布式文件系统存储所述数据块和数据分析程序;
任务创建单元1342,用于创建对所述相应数量的数据块进行分析处理的任务派发列表;
任务提交单元1343,用于将所述任务派发列表上传至所述服务器集群的主服务器,触发所述主服务器根据所述任务派发列表控制所述服务器集群的各计算节点通过接入跨语言调用接口运行所述数据分析程序对存储的所述数据块进行分析处理。
在一种示例性实施例中,上述待处理数据包括连续图像序列;如图15所示,所述数据切分模块1330具体包括:
顺序打乱单元1331,用于随机打乱所述连续图像序列,生成图像数据列表;
列表划分单元1332,用于按照所述配置文件所指示的计算节点数量,平均划分所述图像数据列表,获得相应数量的数据块。
在一种示例性实施例中,上述分布式数据处理装置还包括:
请求发送模块,用于向所述服务器集群发送数据块分析处理结果的查询请求;
结果判断模块,用于根据所述服务器集群响应所述查询请求返回的查询结果,判断所述服务器集群运行的分布式文件系统是否已存储所有数据块的分析处理结果;
结果请求模块,用于当所述服务器集群的分布式文件系统已存储所有数据块的分析处理结果时,向所述服务器集群请求获取所有数据块对应的分析处理结果。
图16是根据另一示例性实施例示出的一种分布式数据处理装置的框图,该分布式数据处理装置可以用于图1所示实施环境的服务端110中,执行图7-图9任一所示的分布式数据处理方法的全部或者部分步骤。如图16所示,该分布式数据处理装置包括但不限于:数据块接收模块1610、数据块存储模块1620以及数据块处理模块1630。
数据块接收模块1610,用于接收客户端根据配置文件上传的多个数据块;所述多个数据块是所述客户端根据所述配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
数据块存储模块1620,用于通过运行分布式文件系统存储所述多个数据块;
数据块处理模块1630,用于控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理
上述装置中各个模块的功能和作用的实现过程具体详见图7以及上述分布式数据处理方法中对应步骤的实现过程,在此不再赘述。
在一种示例性实施例中,如图17所示,上述数据块处理模块1630具体包括:
任务接收单元1631,用于接收所述客户端所创建对所述多个数据块进行分析处理的任务派发列表;
程序运行单元1632,用于按照所述任务派发列表指示的数据块处理顺序,控制自身部署的多个计算节点依次拉取存储的所述数据块并通过接入跨语言调用接口运行所述数据分析程序对拉取的所述数据块进行分析处理。
在一种示例性实施例中,本发明提供的分布式数据处理装置还包括:
数量返回模块用于,用于响应所述客户端所发送对数据块分析处理结果的查询请求,向所述客户端返回已完成分析处理的数据块数量;
结果返回模块,用于在已完成分析处理的数据块数量与所有计算节点的数量相同时,响应所述客户端发送的数据获取请求,向所述客户端返回所有数据块的分析处理结果。
可选的,本发明还提供一种电子设备,该电子设备可以用于运行图1所示实施环境的客户端110,执行图3-图6任一所示的分布式数据处理方法的全部或者部分步骤。该电子设备也可以用于图1所示实施环境的服务端110中,执行图7-图9任一所示的分布式数据处理方法的全部或者部分步骤,上述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述示例性实施例所述的分布式数据处理方法。
该实施例中的装置的处理器执行操作的具体方式已经在有关该分布式数据处理方法的实施例中执行了详细描述,此处将不做详细阐述说明。
在示例性实施例中,还提供了一种存储介质,该存储介质为计算机可读存储介质,例如可以为包括指令的临时性和非临时性计算机可读存储介质。该存储介质例如包括指令的存储器204,上述指令可由装置200的处理器218执行以完成上述分布式数据处理方法。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围执行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

Claims (12)

1.一种分布式数据处理方法,其特征在于,所述方法包括:
响应接收到的数据处理指令,读取配置文件;
根据所述配置文件所指示的数据存放目录,读取所述数据存放目录对应的待处理数据;
按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块;
向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理;
所述向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理包括:
将所述相应数量的数据块以及所述数据分析程序上传至服务器集群,触发所述服务器集群通过运行分布式文件系统存储所述数据块和数据分析程序;
创建对所述相应数量的数据块进行分析处理的任务派发列表;
将所述任务派发列表上传至所述服务器集群的主服务器,触发所述主服务器根据所述任务派发列表控制所述服务器集群的各计算节点通过接入跨语言调用接口运行所述数据分析程序对存储的所述数据块进行分析处理。
2.根据权利要求1所述的方法,其特征在于,所述向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序之前,所述方法还包括:
根据所述配置文件所指示的算子存放目录,读取所述算子存放目录对应的数据分析程序。
3.根据权利要求1所述的方法,其特征在于,所述待处理数据包括连续图像序列;所述按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块,包括:
随机打乱所述连续图像序列,生成图像数据列表;
按照所述配置文件所指示的计算节点数量,平均划分所述图像数据列表,获得相应数量的数据块。
4.根据权利要求1所述的方法,其特征在于,所述将所述任务派发列表上传至所述服务器集群的主服务器,触发所述主服务器根据所述任务派发列表控制所述服务器集群的各计算节点通过接入跨语言调用接口运行所述数据分析程序对存储的所述数据块进行分析处理之后,所述方法还包括:
向所述服务器集群发送数据块分析处理结果的查询请求;
根据所述服务器集群响应所述查询请求返回的查询结果,判断所述服务器集群运行的
分布式文件系统是否已存储所有数据块的分析处理结果;
当所述服务器集群的分布式文件系统已存储所有数据块的分析处理结果时,向所述服务器集群请求获取所有数据块对应的分析处理结果。
5.一种分布式数据处理方法,其特征在于,所述方法包括:
接收客户端根据配置文件上传的多个数据块;
所述多个数据块是所述客户端根据所述配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
通过运行分布式文件系统存储所述多个数据块;
控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理;
所述控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理,包括:
接收所述客户端所创建对所述多个数据块进行分析处理的任务派发列表;
按照所述任务派发列表指示的数据块处理顺序,控制自身部署的多个计算节点依次拉取存储的所述数据块并通过接入跨语言调用接口运行所述数据分析程序对拉取的所述数据块进行分析处理。
6.根据权利要求5所述的方法,其特征在于,所述按照所述任务派发列表指示的数据块处理顺序,控制自身部署的多个计算节点依次拉取存储的所述数据块并通过接入跨语言调用接口运行所述数据分析程序对拉取的所述数据块进行分析处理之后,所述方法还包括:
响应所述客户端所发送对数据块分析处理结果的查询请求,向所述客户端返回已完成分析处理的数据块数量;
在已完成分析处理的数据块数量与所有计算节点的数量相同时,响应所述客户端发送的数据获取请求,向所述客户端返回所有数据块的分析处理结果。
7.一种分布式数据处理装置,其特征在于,所述装置包括:
配置读取模块,用于响应接收到的数据处理指令,读取配置文件;
数据读取模块,用于根据所述配置文件所指示的数据存放目录,读取所述数据存放目录对应的待处理数据;
数据切分模块,用于按照所述配置文件所指示的计算节点数量,对所述待处理数据进行划分,获得相应数量的数据块;
数据处理模块,用于向每个计算节点上传所述数据块以及根据所述配置文件读取的数据分析程序,触发所述计算节点利用所述数据分析程序对所述数据块进行分析处理;
所述数据处理模块包括:
数据上传单元,用于将所述相应数量的数据块以及所述数据分析程序上传至服务器集群,触发所述服务器集群通过运行分布式文件系统存储所述数据块和数据分析程序;
任务创建单元,用于创建对所述相应数量的数据块进行分析处理的任务派发列表;
任务提交单元,用于将所述任务派发列表上传至所述服务器集群的主服务器,触发所述主服务器根据所述任务派发列表控制所述服务器集群的各计算节点通过接入跨语言调用接口运行所述数据分析程序对存储的所述数据块进行分析处理。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
程序读取模块,用于根据所述配置文件所指示的算子存放目录,读取所述算子存放目录对应的数据分析程序。
9.根据权利要求7所述的装置,其特征在于,所述待处理数据包括连续图像序列;所述数据切分模块包括:
顺序打乱单元,用于随机打乱所述连续图像序列,生成图像数据列表;
列表划分单元,用于按照所述配置文件所指示的计算节点数量,平均划分所述图像数据列表,获得相应数量的数据块。
10.一种分布式数据处理装置,其特征在于,所述装置包括:
数据块接收模块,用于接收客户端根据配置文件上传的多个数据块;所述多个数据块是所述客户端根据所述配置文件所指示的计算节点数量,对所获取的待处理数据进行划分得到的;
数据块存储模块,用于通过运行分布式文件系统存储所述多个数据块;
数据块处理模块,用于控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理;
所述控制自身部署的多个计算节点拉取存储的所述数据块,并运行所述客户端根据所述配置文件上传的数据分析程序对拉取的所述数据块进行分析处理,包括:
接收所述客户端所创建对所述多个数据块进行分析处理的任务派发列表;
按照所述任务派发列表指示的数据块处理顺序,控制自身部署的多个计算节点依次拉取存储的所述数据块并通过接入跨语言调用接口运行所述数据分析程序对拉取的所述数据块进行分析处理。
11.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置执行完成权利要求1-6任意一项所述的分布式数据处理方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序可由处理器执行完成权利要求1-6任意一项所述的分布式数据处理方法。
CN201810492658.7A 2018-05-22 2018-05-22 分布式数据处理方法及装置、电子设备、存储介质 Active CN108664331B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810492658.7A CN108664331B (zh) 2018-05-22 2018-05-22 分布式数据处理方法及装置、电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810492658.7A CN108664331B (zh) 2018-05-22 2018-05-22 分布式数据处理方法及装置、电子设备、存储介质

Publications (2)

Publication Number Publication Date
CN108664331A CN108664331A (zh) 2018-10-16
CN108664331B true CN108664331B (zh) 2020-08-11

Family

ID=63777317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810492658.7A Active CN108664331B (zh) 2018-05-22 2018-05-22 分布式数据处理方法及装置、电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN108664331B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491789A (zh) * 2018-11-02 2019-03-19 浪潮电子信息产业股份有限公司 一种分布式存储系统业务均衡处理方法、装置及设备
CN111382131B (zh) * 2018-12-27 2023-05-09 浙江大学 数据处理方法、装置及存储介质
CN111431951B (zh) * 2019-01-09 2022-05-17 阿里巴巴集团控股有限公司 一种数据处理方法、节点设备、系统及存储介质
CN110134516A (zh) * 2019-05-16 2019-08-16 深圳前海微众银行股份有限公司 金融数据处理方法、装置、设备及计算机可读存储介质
CN110618791B (zh) * 2019-09-10 2022-03-22 北京浪潮数据技术有限公司 一种cfs存储域配置方法、装置、设备及可读存储介质
CN111291227B (zh) * 2020-01-13 2023-04-11 鹏城实验室 大数据分析方法、装置、系统、设备和计算机存储介质
CN111415007B (zh) * 2020-03-26 2023-01-17 中科寒武纪科技股份有限公司 一种计算数据的方法、装置、板卡及计算机可读存储介质
CN111444017A (zh) * 2020-03-27 2020-07-24 北京金山云网络技术有限公司 多媒体数据处理方法、装置、系统、电子设备及存储介质
CN112232498B (zh) * 2020-10-12 2022-11-18 安徽寒武纪信息科技有限公司 一种数据处理装置、集成电路芯片、电子设备、板卡和方法
CN112270281A (zh) * 2020-11-02 2021-01-26 深圳市商汤科技有限公司 用户心理分析系统、方法、装置及存储介质
CN113515495B (zh) * 2021-04-14 2024-03-19 暨南大学 数据文件分配方法及装置、智能设备和计算机存储介质
CN113360490B (zh) * 2021-06-22 2023-07-28 北京百度网讯科技有限公司 数据处理方法、装置、设备、介质及程序产品
CN115061785A (zh) * 2022-04-15 2022-09-16 支付宝(杭州)信息技术有限公司 信息下发方法、装置、存储介质及服务器
CN117131001B (zh) * 2023-10-25 2024-01-16 北京优特捷信息技术有限公司 一种分布式大数据有序智能分管方法、系统及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102904919B (zh) * 2011-07-29 2015-05-20 国际商业机器公司 流处理方法和实现流处理的分布式系统
CN102567312A (zh) * 2011-12-30 2012-07-11 北京理工大学 一种基于分布式并行计算框架的机器翻译方法
CN104331464A (zh) * 2014-10-31 2015-02-04 许继电气股份有限公司 一种基于MapReduce的监控数据优先预取处理方法
WO2017035495A1 (en) * 2015-08-26 2017-03-02 Pivotal Software, Inc. Determining data locality in a distributed system using aggregation of locality summaries

Also Published As

Publication number Publication date
CN108664331A (zh) 2018-10-16

Similar Documents

Publication Publication Date Title
CN108664331B (zh) 分布式数据处理方法及装置、电子设备、存储介质
US11070648B2 (en) Offline client replay and sync
CN109766253B (zh) 一种性能数据发送方法、装置、计算机设备及存储介质
CN111277869B (zh) 视频播放方法、装置、设备和存储介质
US20200236373A1 (en) Media storage
CN108287894B (zh) 数据处理方法、装置、计算设备及存储介质
JP7397094B2 (ja) リソース構成方法、リソース構成装置、コンピューター機器、及びコンピュータープログラム
US11240290B2 (en) Application download method and apparatus, application sending method and apparatus, and system
CN112653579B (zh) 一种基于OpenResty的灰度发布方法及相关设备
CN110557689B (zh) 视频播放方法及装置
CN111182065A (zh) 基于mqtt协议的消息处理方法、装置和计算机设备
JP2018532202A (ja) クラウドファイル処理方法および装置
CN111651418A (zh) 一种文档内容下载方法、装置、计算机设备和存储介质
CN107277146B (zh) 一种分布式存储业务流量模型生成方法及系统
CN110209964A (zh) 一种页面显示方法、装置及设备
JP7217181B2 (ja) ウェアラブルデバイス、情報処理方法、装置及びシステム
CN114996134A (zh) 容器化部署方法、电子设备及存储介质
CN109213955B (zh) 数据处理方法及相关设备
CN108173898A (zh) 用于资源访问服务的方法、装置及终端设备
CN113472638A (zh) 边缘网关控制方法及系统、装置、电子设备、存储介质
US10701413B2 (en) Real-time sub-second download and transcode of a video stream
CN112306337B (zh) 一种会议同屏系统、方法、装置、计算机设备及存储介质
CN112988530B (zh) 一种用户数据处理方法、装置、存储介质及用户终端
CN116775276A (zh) 分布式计算方法、装置、设备及存储介质
CN116846889A (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