CN103324533B - 分布式数据处理方法、装置及系统 - Google Patents

分布式数据处理方法、装置及系统 Download PDF

Info

Publication number
CN103324533B
CN103324533B CN201210077763.7A CN201210077763A CN103324533B CN 103324533 B CN103324533 B CN 103324533B CN 201210077763 A CN201210077763 A CN 201210077763A CN 103324533 B CN103324533 B CN 103324533B
Authority
CN
China
Prior art keywords
data block
working node
task
instruction information
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
Application number
CN201210077763.7A
Other languages
English (en)
Other versions
CN103324533A (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.)
Beijing Zhenxixin Group Co.,Ltd.
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210077763.7A priority Critical patent/CN103324533B/zh
Publication of CN103324533A publication Critical patent/CN103324533A/zh
Application granted granted Critical
Publication of CN103324533B publication Critical patent/CN103324533B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供一种分布式数据处理方法、装置及系统,该分布式数据处理方法包括:根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,上传节点指示信息包括多个数据块分别对应的工作节点的地址,Map任务对应的数据块分布在发送任务获取请求的工作节点上;将Map任务分配给工作节点,以使工作节点对Map任务对应的数据块进行相应地处理。本发明实施例提供的分布式数据处理方法、装置及系统,避免了分布式数据处理过程中各工作节点间的数据迁移造成的网络流量大的问题,也避免了磁盘读写所占用的系统资源,提高系统的分布式数据处理效果。

Description

分布式数据处理方法、装置及系统
技术领域
本发明实施例涉及数据处理技术,尤其涉及一种分布式数据处理方法、装置及系统。
背景技术
随着互联网技术的迅猛发展,海量数据时代已经来临,如何对海量数据进行处理成为了必须要面对的严峻考验。映射-化简(Map-Reduce)系统是一种分布式的并行系统,通常应用于分布式海量数据处理场景。Map-Reduce系统通过映射(Map)和化简(Reduce)过程实现对数据的分布式处理。
现有技术的Map-Reduce系统中,用于数据处理的工作节点通常为多个,客户端将待处理的文件划分为多个数据块后,将数据块分块上传至各个工作节点。但是,由于工作节点执行的Map任务所对应的多个数据块并不一定全都存储在该工作节点上,则需要将其他工作节点上的数据块迁移到一个工作节点上,再对该节点上的数据块执行Map任务。但由于Map-Reduce系统中处理的数据块的容量都比较大,数据块迁移过程会势必造成网络流量大的问题,影响了系统的计算效率。
发明内容
本发明实施例提供一种分布式数据处理方法、装置及系统,以避免分布式数据处理过程中各工作节点间的数据迁移造成的网络流量大的问题,提高系统的分布式数据处理效果。
本发明实施例提供一种分布式数据处理方法,包括:
根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上;
将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理。
本发明实施例提供一种分布式数据处理装置,包括:
任务生成单元,用于根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上;
任务分配单元,用于将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理。
本发明实施例提供一种分布式数据处理系统,包括主节点和至少两个工作节点,其中,
所述主节点为本发明提供的分布式数据处理装置;
所述工作节点用于向所述主节点发送任务获取请求,以及接收所述主节点分配的映射Map任务,对所述Map任务对应的数据块进行相应地处理。
由上述技术方案可知,本发明提供的分布式数据处理方法、装置及系统,主节点根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成Map任务,将Map任务分配给工作节点,以使工作节点对Map任务对应的数据块进行相应地处理。由于Map任务是主节点在工作节点发送任务获取请求时根据上传节点指示信息生成的,该Map任务对应于该工作节点上的数据块,因此,工作节点根据该Map任务对数据块进行处理时,无需从其他工作节点进行数据块的迁移,避免了分布式数据处理过程中各工作节点间的数据迁移造成的网络流量大的问题,也避免了磁盘读写所占用的系统资源,提高系统的分布式数据处理效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的分布式数据处理方法流程图;
图2为本发明实施例一提供的数据块分布示意图;
图3为本发明实施例二提供的分布式数据处理方法流程图;
图4为本发明实施例二提供的任务请求和分配示意图;
图5为本发明实施例二提供的一种数据块结构示意图;
图6为本发明实施例二提供的另一种数据块结构示意图;
图7为本发明实施例三提供的分布式数据处理装置结构示意图;
图8为本发明实施例四提供的分布式数据处理装置结构示意图;
图9为本发明实施例五提供的一种分布式数据处理系统结构示意图;
图10为本发明实施例五提供的另一种分布式数据处理系统结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的分布式数据处理方法流程图。如图1所示,本实施例提供的分布式数据处理方法具体应用于Map-Reduce系统的数据处理过程,该Map-Reduce系统具体可以包括主节点和至少两个工作节点。本实施例提供的分布式数据处理方法可以通过分布式数据处理装置来执行,该分布式数据处理装置可以为主节点,可以通过软件和/或硬件的方式来实现。
本实施例提供的分布式数据处理方法具体包括:
步骤10、主节点根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上;
具体地,用户可以通过客户端与该Map-Reduce系统的主节点和工作节点交互,用户需要对某个文件进行处理,例如统计该文件中所有单词出现的次数,可以向主节点发送文件处理请求,该文件处理请求中可以携带待处理文件的文件信息,文件信息具体可以包括该待处理文件的容量等信息。主节点当接收到该文件处理请求时,根据该文件信息生成文件划分指示信息和上传节点指示信息并发送给客户端,该文件划分指示信息具体用以指示客户端以预设数据块容量(如64M)将待处理文件划分为多个数据块,具体可以为各数据块分配标识,该标识可以为顺序编码。该上传节点指示信息包括客户端划分生成的数据块分别对应的工作节点的地址。
客户端可以根据该文件划分指示信息将待处理文件划分为多个数据块,每个数据块的容量为该预设数据块容量,并根据上传节点指示信息中的数据块与工作节点的对应关系,将各数据块发送至对应的工作节点。工作节点向主节点发送任务获取请求,以获取Map任务。
主节点接收到该任务获取请求时,根据上传节点指示信息可以获知发送该任务获取请求的工作节点上的数据块的情况。例如发送该任务获取请求的工作节点为第一工作节点,客户端根据该上传节点指示信息将标识为1、5和8的数据块发送给该第一工作节点。则主节点根据该上传节点指示信息可以获知第一工作节点上存在的数据块标识分别为1、5和8,则可以生成针对于标识为1、5和8的数据块的Map任务。
以下结合图2做详细说明。图2为本发明实施例一提供的数据块分布示意图。如图2所示,客户端根据上传节点指示信息将标识为1、5和8的数据块发送给该第一工作节点,将标识为3、4和9的数据块发送给第二工作节点,将标识为2、6和7的数据块发送给第三工作节点。当第一工作节点向主节点发送任务获取请求时,主节点生成针对于标识为1、5和8的数据块的Map任务,当第二工作节点向主节点发送任务获取请求时,主节点生成针对于标识为3、4和9的数据块的Map任务,当第三工作节点向主节点发送任务获取请求时,主节点生成针对于标识为2、6和7的数据块的Map任务。
步骤20、所述主节点将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理。
主节点将该Map任务分配给工作节点,该工作节点对该Map任务对应的数据块进行相应地处理。例如,上述第一工作节点分别对标识为1、5和8的数据块进行相应地处理。当用户需要对待处理文件中所有单词出现的次数进行统计时,对数据块的处理过程可以为对该数据块中的所有单词出现的次数进行统计。
本实施例提供的分布式数据处理方法,主节点根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成Map任务,将Map任务分配给工作节点,以使工作节点对Map任务对应的数据块进行相应地处理。由于Map任务是主节点在工作节点发送任务获取请求时根据上传节点指示信息生成的,该Map任务对应于该工作节点上的数据块,因此,工作节点根据该Map任务对数据块进行处理时,无需从其他工作节点进行数据块的迁移,避免了分布式数据处理过程中各工作节点间的数据迁移造成的网络流量大的问题,也避免了磁盘读写所占用的系统资源,提高系统的分布式数据处理效果。
实施例二
图3为本发明实施例二提供的分布式数据处理方法流程图。如图3所示,本实施例提供的分布式数据处理方法在图1所示实施例的基础上,步骤10,主节点根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务之前,具体还可以包括如下步骤:
步骤30、所述主节点根据客户端发送所述文件信息,生成文件划分指示信息和所述上传节点指示信息,将所述文件划分指示信息和所述上传节点指示信息发送给所述客户端,以使所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点。
具体地,文件划分指示信息可以为预设数据块容量信息,客户端可以根据该文件划分指示信息将待处理文件换分为多个数据块,该数据块的容量与预设数据块容量相等。客户端根据上传节点指示信息中每个数据块对应的工作节点的地址,将各数据块上传至对应的工作节点。优选地,上传节点指示信息中每个数据块可以对应于至少两个工作节点的地址,客户端可以根据该上传节点指示信息将一个数据块发送给至少两个工作节点,例如,将标识为1的数据块分别发送给第一工作节点和第二工作节点,以实现对数据块的备份,提高数据的可靠性。在本实施例中,步骤10,主节点根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,具体可以包括如下步骤:
步骤101、所述主节点当接收到所述工作节点发送的任务获取请求时,根据所述上传节点指示信息确定发送给所述工作节点的数据块,获取所述工作节点对应的数据块的处理状态;
数据块的处理状态具体可以包括未处理和已处理两种,可以通过真值表的方式来记录数据块的处理状态,如已处理的数据块标记为“真”,未处理的数据块标记为“假”,或者已处理的数据块标记为“1”,未处理的数据块标记为“0”,记录数据块的处理状态的方式可以根据实际需要来设置,不以本实施例为限。步骤102、所述主节点根据所述处理状态为未处理的数据块生成所述Map任务,将所述Map任务对应的数据块的处理状态更改为已处理。例如,主节点接收到第一工作节点发送的任务获取请求,主节点根据上传节点指示信息确定发送给该第一工作节点的数据块的标识分别为1、3、5、8、9和13。该六个数据块中,标识为1、8和9的三个数据块的处理状态为已处理,标识为3、5和13的三个数据块的处理状态为未处理,则根据处理状态为未处理的三个数据块生成对应于该三个数据块的Map任务,并将标识为3、5和13的三个数据块的处理状态更改为已处理。
以下再结合图4对通过真值表的方式来记录数据块的处理状态的实现过程做详细说明。图4为本发明实施例二提供的任务请求和分配示意图。如图4所示,假设第一工作节点上存储有标识为1、5和8的数据块,第二工作节点上存储有标识为3、4和9的数据块,第三工作节点上存储有标识为2、6和7的数据块,主节点可以根据上传节点指示信息获知上述数据块的分布情况。真值表中记录了所有数据块的处理状态,初始时,所有数据块的处理状态标记为“假”,即所有数据块均未处理。第一工作节点向主节点发送任务获取请求,主节点生成针对于标识为1、5和8的数据块的Map任务,将真值表中标识为1、5和8的数据块的处理状态标记为“真”,将该Map任务分配给第一工作节点。通过对数据块处理状态的查询,当工作节点上存在多个数据块时,主节点可以针对该工作节点上对数据块的处理情况来生成Map任务,使工作节点可以对数据块进行批次处理。而且,当每个数据块存在多个备份时,通过处理状态的标识,可以避免对数据块的重复处理,大大提高了处理效果。
进一步地,在本实施例中,步骤101中的所述主节点获取所述工作节点对应的数据块的处理状态,具体可以包括如下步骤:
所述主节点对数据块处理状态记录表进行查询,获取所述工作节点对应的数据块的处理状态,其中,所述数据块处理状态记录表用以记录各所述数据块的处理状态;
主节点可以根据客户端发送的文件信息生成该数据块处理状态记录表,该数据块处理状态记录表中记录的各数据块的初始处理状态均为未处理。该数据块存处理状态记录表可以存储在主节点中,通过数据块存处理状态记录表的设置,可以对数据块的处理状态进行管理。
相应地,步骤102中的所述主节点将所述Map任务对应的数据块的处理状态更改为已处理,具体可以包括如下步骤:
所述主节点将所述数据块处理状态记录表中的所述Map任务对应的数据块的处理状态更改为已处理。
在本实施例中,进一步地,步骤30中的所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,具体可以包括如下步骤:
所述客户端根据所述文件划分指示信息将所述待处理文件划分为多个所述数据块,相邻的两个数据块具有重叠区域,在第一个数据块的起始位置添加首数据块标识,其中,所述待处理文件包括多条数据记录,所述重叠区域的容量大于所述数据记录的容量;
具体地,待处理文件包括多条数据记录,该多条数据记录的容量可以相同也可以不同。则若根据预设数据块容量将该待处理文件划分为多个数据块,数据块首尾的数据记录可能为不完整的。数据块中包含有多条数据记录,具体地,每条数据记录具体可以包括结束指示位,以指示该条数据记录结束。为了避免对数据块处理时,由于数据块首尾存在不完整的数据记录,而对该不完整的数据记录丢弃造成的文件内容的丢失,可以在对待处理文件进行划分时,划分生成的各数据块中,相邻的两个数据块具有重叠区域J,即相邻的两个数据块中前一个数据块的尾部预设容量的数据内容与后一个数据块首部预设容量的数据内容相同,以形成该重叠区域J,如图5所示。重叠区域J的容量大于数据记录的容量,当待处理文件中的数据记录的容量不同时,重叠区域J的容量可以大于容量最大的数据记录,也可以根据各数据记录的容量大小来设置重叠区域J,如重叠区域J的容量大于各数据记录容量的均值,以避免重叠区域J容量过小而无法包括大多数的数据记录,或重叠区域J容量过大而造成的浪费。在第一个数据块的起始位置添加首数据块标识,以指示该数据块为该待处理文件对应的首个数据块。
相应地,步骤20中的所述工作节点对所述Map任务对应的数据块进行相应地处理,具体可以包括如下步骤:
若所述数据块尾部的数据记录为不完整的,则所述工作节点将所述不完整的数据记录删除,若所述数据块的起始位置不具有所述首数据块标识,则将所述数据块首部的重叠区域中包含的结束指示位对应的数据记录删除,将所述数据块中的剩余的数据记录进行相应地处理,其中,所述结束指示位用以指示所述数据记录结束。
工作节点根据分配到的Map任务对相应的数据块进行处理时,首先对数据块中包含的数据记录的情况进行检测,若该数据块的尾部的数据记录为不完整的,则将该不完整的数据记录删除。具体可以通过对数据记录中的结束指示位的检测来获知该数据记录的完整性,若数据块尾部的数据记录中不存在该结束指示位,则说明该数据记录是不完整的。
对于第一个数据块,该第一个数据块的首部的数据记录一定是完整的,则只判断该第一个数据块的尾部的数据记录的完整性。对于其他的数据块,出了对其尾部的数据记录的完整性进行判断外,还需要对数据块首部的重叠区域中包含的结束指示位进行检测,并删除检测到的结束指示位对应的数据记录。
以下结合图6对本实施例提供的数据块的处理过程做详细说明。
图6示出两个连续的数据块,分别为数据块A和数据块B,数据块A和数据块B具有重合区域J,数据块A的起始位置具有首数据块标识。数据块A和数据块B分别发送给第一工作节点和第二工作节点。第一工作节点对数据块A进行处理时,检测到数据块A的起始位置具有首数据块标识,则确定该数据块A为第一个数据块。数据块A尾部的数据记录L中不具有结束指示位,则该数据记录L为不完整的数据记录,将该数据记录L删除。第一工作节点对数据块A中剩余的数据记录进行相应地处理。第二工作节点对数据块B进行处理时,检测到数据块B的起始位置不具有首数据块标识,则确定该数据块B不是第一个数据块。将该数据块B首部的重叠区域J中包含的结束指示位进行检测,获知该重叠区域J中包含有两个结束指示位,则将该两个结束指示位分别对应的数据记录M和数据记录N删除,第二工作节点对数据块B中剩余的数据记录进行相应地处理。由于数据块A和数据块B具有重合区域J,数据块A中删除的不完整的数据记录L保留在数据块B的剩余的数据记录中,数据块B中删除的数据记录M和数据记录N删除保留在数据块A中的剩余的数据记录中。通过重叠区域J的设置,保证了处理的数据的完整性。
实施例三
图7为本发明实施例三提供的分布式数据处理装置结构示意图。如图7所示,本实施例提供的分布式数据处理装置具体可以实现本发明任意实施例提供的分布式数据处理方法的各个步骤,此不再赘述。
本实施例提供的分布式数据处理装置具体包括任务生成单元11和任务分配单元12。任务生成单元11用于根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上。任务分配单元12用于将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理。
本实施例提供的分布式数据处理装置,任务生成单元11根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成Map任务,任务分配单元12将Map任务分配给工作节点,以使工作节点对Map任务对应的数据块进行相应地处理。由于Map任务是分布式数据处理装置在工作节点发送任务获取请求时根据上传节点指示信息生成的,该Map任务对应于该工作节点上的数据块,因此,工作节点根据该Map任务对数据块进行处理时,无需从其他工作节点进行数据块的迁移,避免了分布式数据处理过程中各工作节点间的数据迁移造成的网络流量大的问题,也避免了磁盘读写所占用的系统资源,提高系统的分布式数据处理效果。
实施例四
图8为本发明实施例四提供的分布式数据处理装置结构示意图。如图8所示,本实施例提供的分布式数据处理装置在图5所示的实施例的基础上,具体还可以包括指示信息生成单元13,指示信息生成单元13用于根据客户端发送所述文件信息,生成文件划分指示信息和所述上传节点指示信息,将所述文件划分指示信息和所述上传节点指示信息发送给所述客户端,以使所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点。
进一步地,在本实施例中,所述任务生成单元11具体可以包括处理状态获取子单元111和任务生成子单元112。处理状态获取子单元111用于当接收到所述工作节点发送的任务获取请求时,根据所述上传节点指示信息确定发送给所述工作节点的数据块,获取所述工作节点对应的数据块的处理状态。任务生成子单元112用于根据所述处理状态为未处理的数据块生成所述Map任务,将所述Map任务对应的数据块的处理状态更改为已处理。通过对数据块处理状态的查询,当工作节点上存在多个数据块时,可以针对该工作节点上对数据块的处理情况来生成Map任务,使工作节点可以对数据块进行批次处理。而且,当每个数据块存在多个备份时,通过处理状态的标识,可以避免对数据块的重复处理,大大提高了处理效果。
在本实施例中,所述处理状态获取子单元111具体还可以用于对数据块处理状态记录表进行查询,获取所述工作节点对应的数据块的处理状态,其中,所述数据块处理状态记录表用以记录各所述数据块的处理状态。相应地,所述任务生成子单元112具体还可以用于将所述数据块处理状态记录表中的所述Map任务对应的数据块的处理状态更改为已处理。通过设置数据块存处理状态记录表对数据块的处理状态进行管理,进一步提高了数据块的处理效率。
实施例五
图9为本发明实施例五提供的一种分布式数据处理系统结构示意图。如图9所示,本实施例提供的分布式数据处理系统,包括主节点81和至少两个工作节点82(图中示出三个工作节点),所述主节点81为本发明任意实施例提供的分布式数据处理装置。所述工作节点82用于向所述主节点81发送任务获取请求,以及接收所述主节点81分配的映射Map任务,对所述Map任务对应的数据块进行相应地处理。
具体的,上述节点(包括主节点、工作节点)可以是服务器、客户机或者其他网络设备。
本实施例提供的分布式数据处理系统,由于主节点81为本发明任意实施例提供的分布式数据处理装置,主节点81根据获取到的上传节点指示信息和工作节点82发送的任务获取请求生成Map任务,将Map任务分配给工作节点82,以使工作节点82对Map任务对应的数据块进行相应地处理。由于Map任务是主节点81在工作节点82发送任务获取请求时根据上传节点指示信息生成的,该Map任务对应于该工作节点82上的数据块,因此,工作节点82根据该Map任务对数据块进行处理时,无需从其他工作节点82进行数据块的迁移,避免了分布式数据处理过程中各工作节点82间的数据迁移造成的网络流量大的问题,也避免了磁盘读写所占用的系统资源,提高系统的分布式数据处理效果。
图10为本发明实施例五提供的另一种分布式数据处理系统结构示意图。如图10所示,在本实施例中,该分布式数据处理系统还可以包括客户端83,所述客户83端用于向所述主节点81发送文件信息,以及接收所述主节点81发送的文件划分指示信息和上传节点指示信息,根据所述文件划分指示信息将待处理文件划分为多个数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点82。
具体的,上述客户端可以是客户机(例如智能手机、台式电脑、笔记本、平板手机、掌上电脑等等)。
进一步地,在本实施例中,所述客户端83还用于根据所述文件划分指示信息将所述待处理文件划分为多个所述数据块,相邻的两个数据块具有重叠区域,在第一个数据块的起始位置添加首数据块标识,其中,所述待处理文件包括多条数据记录,所述重叠区域的容量大于所述数据记录的容量。相应地,所述工作节点82还用于若所述数据块尾部的数据记录为不完整的,则将所述不完整的数据记录删除,若所述数据块的起始位置不具有所述首数据块标识,则将所述数据块首部的重叠区域中包含的结束指示位对应的数据记录删除,将所述数据块中的剩余的数据记录进行相应地处理,其中,所述结束指示位用以指示所述数据记录结束。通过重叠区域的设置,避免了在对数据块进行处理时,对数据块中不完整的数据记录丢弃造成的文件内容的丢失,保证了处理的数据的完整性。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (8)

1.一种分布式数据处理方法,其特征在于,包括:
根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上;
将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理;
所述根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务之前,还包括:
根据客户端发送文件信息,生成文件划分指示信息和所述上传节点指示信息,将所述文件划分指示信息和所述上传节点指示信息发送给所述客户端,以使所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点;
所述根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,包括:
当接收到所述工作节点发送的任务获取请求时,根据所述上传节点指示信息确定发送给所述工作节点的数据块,获取所述工作节点对应的数据块的处理状态;
根据所述处理状态为未处理的数据块生成所述Map任务,将所述Map任务对应的数据块的处理状态更改为已处理。
2.根据权利要求1所述的分布式数据处理方法,其特征在于:
获取所述工作节点对应的数据块的处理状态,包括:
对数据块处理状态记录表进行查询,获取所述工作节点对应的数据块的处理状态,其中,所述数据块处理状态记录表用以记录各所述数据块的处理状态;
将所述Map任务对应的数据块的处理状态更改为已处理,包括:
将所述数据块处理状态记录表中的所述Map任务对应的数据块的处理状态更改为已处理。
3.根据权利要求1所述的分布式数据处理方法,其特征在于:
所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,包括:
所述客户端根据所述文件划分指示信息将所述待处理文件划分为多个所述数据块,相邻的两个数据块具有重叠区域,在第一个数据块的起始位置添加首数据块标识,其中,所述待处理文件包括多条数据记录,所述重叠区域的容量大于所述数据记录的容量;
所述工作节点对所述Map任务对应的数据块进行相应地处理,包括:
若所述数据块尾部的数据记录为不完整的,则所述工作节点将所述不完整的数据记录删除,若所述数据块的起始位置不具有所述首数据块标识,则将所述数据块首部的重叠区域中包含的结束指示位对应的数据记录删除,将所述数据块中的剩余的数据记录进行相应地处理,其中,所述结束指示位用以指示所述数据记录结束。
4.一种分布式数据处理装置,其特征在于,包括:
任务生成单元,用于根据获取到的上传节点指示信息和工作节点发送的任务获取请求生成映射Map任务,其中,所述上传节点指示信息包括多个数据块分别对应的工作节点的地址,所述Map任务对应的数据块分布在发送所述任务获取请求的工作节点上;
任务分配单元,用于将所述Map任务分配给所述工作节点,以使所述工作节点对所述Map任务对应的数据块进行相应地处理;
该装置还包括:
指示信息生成单元,用于根据客户端发送文件信息,生成文件划分指示信息和所述上传节点指示信息,将所述文件划分指示信息和所述上传节点指示信息发送给所述客户端,以使所述客户端根据所述文件划分指示信息将待处理文件划分为多个所述数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点;
所述任务生成单元包括:
处理状态获取子单元,用于当接收到所述工作节点发送的任务获取请求时,根据所述上传节点指示信息确定发送给所述工作节点的数据块,获取所述工作节点对应的数据块的处理状态;
任务生成子单元,用于根据所述处理状态为未处理的数据块生成所述Map任务,将所述Map任务对应的数据块的处理状态更改为已处理。
5.根据权利要求4所述的分布式数据处理装置,其特征在于:
所述处理状态获取子单元还用于对数据块处理状态记录表进行查询,获取所述工作节点对应的数据块的处理状态,其中,所述数据块处理状态记录表用以记录各所述数据块的处理状态;
所述任务生成子单元还用于将所述数据块处理状态记录表中的所述Map任务对应的数据块的处理状态更改为已处理。
6.一种分布式数据处理系统,包括主节点和至少两个工作节点,其特征在于:
所述主节点为如权利要求4或5所述的分布式数据处理装置;
所述工作节点用于向所述主节点发送任务获取请求,以及接收所述主节点分配的映射Map任务,对所述Map任务对应的数据块进行相应地处理。
7.根据权利要求6所述的分布式数据处理系统,其特征在于,还包括客户端,所述客户端用于向所述主节点发送文件信息,以及接收所述主节点发送的文件划分指示信息和上传节点指示信息,根据所述文件划分指示信息将待处理文件划分为多个数据块,根据所述上传节点指示信息将各所述数据块分别发送给对应的工作节点。
8.根据权利要求7所述的分布式数据处理系统,其特征在于:
所述客户端还用于根据所述文件划分指示信息将所述待处理文件划分为多个所述数据块,相邻的两个数据块具有重叠区域,在第一个数据块的起始位置添加首数据块标识,其中,所述待处理文件包括多条数据记录,所述重叠区域的容量大于所述数据记录的容量;
所述工作节点还用于若所述数据块尾部的数据记录为不完整的,则将所述不完整的数据记录删除,若所述数据块的起始位置不具有所述首数据块标识,则将所述数据块首部的重叠区域中包含的结束指示位对应的数据记录删除,将所述数据块中的剩余的数据记录进行相应地处理,其中,所述结束指示位用以指示所述数据记录结束。
CN201210077763.7A 2012-03-22 2012-03-22 分布式数据处理方法、装置及系统 Active CN103324533B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210077763.7A CN103324533B (zh) 2012-03-22 2012-03-22 分布式数据处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210077763.7A CN103324533B (zh) 2012-03-22 2012-03-22 分布式数据处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN103324533A CN103324533A (zh) 2013-09-25
CN103324533B true CN103324533B (zh) 2016-12-28

Family

ID=49193295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210077763.7A Active CN103324533B (zh) 2012-03-22 2012-03-22 分布式数据处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN103324533B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103701906B (zh) * 2013-12-27 2017-06-09 北京奇安信科技有限公司 分布式实时计算系统及其数据处理方法
CN104320382B (zh) * 2014-09-30 2018-04-20 华为技术有限公司 分布式的实时流处理装置、方法和单元
CN105589756B (zh) * 2014-12-03 2019-02-15 中国银联股份有限公司 批处理集群系统以及方法
CN105740085B (zh) * 2014-12-11 2019-04-19 华为技术有限公司 容错处理方法及装置
CN105022796B (zh) * 2015-06-30 2019-03-15 北京奇艺世纪科技有限公司 一种文件遍历方法、装置及系统
CN108027801A (zh) * 2015-12-31 2018-05-11 华为技术有限公司 数据处理方法、装置和系统
CN107103009B (zh) * 2016-02-23 2020-04-10 杭州海康威视数字技术股份有限公司 一种数据处理方法及装置
CN106331153B (zh) * 2016-09-20 2019-10-25 北京华为数字技术有限公司 一种业务请求的过滤方法、装置及系统
CN107888684A (zh) * 2017-11-13 2018-04-06 小草数语(北京)科技有限公司 分布式系统计算任务处理方法、装置及控制器
CN108763963B (zh) * 2018-06-12 2022-08-26 北京奇虎科技有限公司 基于数据访问权限的分布式处理方法、装置及系统
CN109242428A (zh) * 2018-08-31 2019-01-18 邹平县供电公司 一种基于智能移动终端的业务提醒系统及方法
CN111431951B (zh) * 2019-01-09 2022-05-17 阿里巴巴集团控股有限公司 一种数据处理方法、节点设备、系统及存储介质
CN111897638B (zh) * 2020-07-27 2024-04-19 广州虎牙科技有限公司 分布式任务调度方法及系统
CN114647559A (zh) * 2022-03-21 2022-06-21 北京百度网讯科技有限公司 一种存储使用量的统计方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073546A (zh) * 2010-12-13 2011-05-25 北京航空航天大学 一种云计算环境中分布式计算模式下的任务动态调度方法
CN102207891A (zh) * 2011-06-10 2011-10-05 浙江大学 对数据划分分布式环境实现动态划分和负载均衡的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020099806A1 (en) * 2000-11-30 2002-07-25 Phillip Balsamo Processing node for eliminating duplicate network usage data
US20060015505A1 (en) * 2004-07-16 2006-01-19 Henseler David A Role-based node specialization within a distributed processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102073546A (zh) * 2010-12-13 2011-05-25 北京航空航天大学 一种云计算环境中分布式计算模式下的任务动态调度方法
CN102207891A (zh) * 2011-06-10 2011-10-05 浙江大学 对数据划分分布式环境实现动态划分和负载均衡的方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Evaluation of Expanded Heuristics in a Heterogeneous Distributed Data Staging Network;Mitchell D. Theys等;《Heterogeneous Computing Workshop, 2000. (HCW 2000) Proceedings. 9th》;20001231;第75-89页 *
Hadoop平台在云计算中的应用;王宏宇;《软件》;20110801;第32卷(第4期);第36-38,50页 *
Using the Gfarm File System as a POSIX compatible storage platform for Hadoop MapReduce applications;Shunsuke Mikami等;《Grid Computing (GRID), 2011 12th IEEE/ACM International Conference on》;20110923;第181-189页 *
基于高性能云的分布式数据并行处理机制;桂兵祥等;《武汉工业学院学报》;20100315;第29卷(第1期);第60-63页 *

Also Published As

Publication number Publication date
CN103324533A (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
CN103324533B (zh) 分布式数据处理方法、装置及系统
CN103475682B (zh) 文件迁移方法及设备
US10901619B2 (en) Selecting pages implementing leaf nodes and internal nodes of a data set index for reuse
CN101924797B (zh) 资源下载的处理方法、装置及系统
CN106446159B (zh) 一种存储文件的方法、第一虚拟机及名称节点
CN110134338B (zh) 一种分布式存储系统及其数据冗余保护方法和相关设备
US9940331B1 (en) Proactive scavenging of file system snaps
CN104580439B (zh) 一种云存储系统中使数据均匀分布的方法
CN102611745A (zh) 文件在线迁移方法、装置和系统
CN107329704A (zh) 一种缓存镜像方法及控制器
CN107423301B (zh) 一种数据处理的方法、相关设备及存储系统
CN106126374B (zh) 数据写入方法、数据读取方法及装置
US10812543B1 (en) Managed distribution of data stream contents
CN105677904B (zh) 基于分布式文件系统的小文件存储方法及装置
CN108073352A (zh) 虚拟磁盘处理方法及装置
CN106686095A (zh) 一种基于纠删码技术的数据存储方法及装置
CN110147203A (zh) 一种文件管理方法、装置、电子设备及存储介质
CN109783462A (zh) 一种基于分布式文件系统的数据访问方法和装置
CN111399761B (zh) 存储资源分配方法、装置及设备、存储介质
US10095706B2 (en) Data access system and data access method
CN105791370B (zh) 一种数据处理方法及相关服务器
CN108228099A (zh) 一种数据存储的方法及装置
CN105471955A (zh) 分布式文件系统的写方法、客户端设备及分布式文件系统
CN111435286A (zh) 一种数据存储方法、装置和系统
CN102833295B (zh) 分布式缓存系统中的数据操作方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200617

Address after: No. 799, Xueqian East Road, Liangxi District, Wuxi City, Jiangsu Province

Patentee after: Wuxi Qianke cloud Information Technology Co.,Ltd.

Address before: 518000 Baoan District Xin'an street, Shenzhen, Guangdong, No. 625, No. 625, Nuo platinum Plaza,

Patentee before: SHENZHEN SHANGGE INTELLECTUAL PROPERTY SERVICE Co.,Ltd.

Effective date of registration: 20200617

Address after: 518000 Baoan District Xin'an street, Shenzhen, Guangdong, No. 625, No. 625, Nuo platinum Plaza,

Patentee after: SHENZHEN SHANGGE INTELLECTUAL PROPERTY SERVICE Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220510

Address after: 202-1-5320, feifeng Road, Hongshan street, Xinwu District, Wuxi City, Jiangsu Province, 214000

Patentee after: Wuxi Suhui Information Technology Service Co.,Ltd.

Address before: 214 000 s3-010, 799 Xueqian East Road, Liangxi District, Wuxi City, Jiangsu Province

Patentee before: Wuxi Qianke cloud Information Technology Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20240523

Address after: 100071 Room 307, Building 5, West Expo Park (opposite Gate 6 of the Garden Expo Park), Dongheyan Village, Changxindian Town, Fengtai District, Beijing

Patentee after: Beijing Zhenxixin Group Co.,Ltd.

Country or region after: China

Address before: 202-1-5320, feifeng Road, Hongshan street, Xinwu District, Wuxi City, Jiangsu Province, 214000

Patentee before: Wuxi Suhui Information Technology Service Co.,Ltd.

Country or region before: China