一种Hadoop的数据快速加载方法与系统技术方案

技术编号:19903583 阅读:23 留言:0更新日期:2018-12-26 02:57
本发明专利技术公开了一种Hadoop的数据快速加载方法与系统包括使用DLS执行:从元数据节点实时采集元数据信息,并根据元数据信息获得当前可用的数据节点信息;将本数据节点的待加载数据根据数据节点信息分割为多个数据分段,并使当前可用的数据节点同时加载多个数据分段;接收所有当前可用的数据节点的加载完成信息以结束数据加载。本发明专利技术能够将不同待加载数据或不同类型的待加载数据快速加载到HDFS中,通过并行加载方式提高加载效率。

【技术实现步骤摘要】
一种Hadoop的数据快速加载方法与系统
本专利技术涉及计算机领域,更具体地,特别是指一种Hadoop的数据快速加载方法与系统。
技术介绍
在现有技术的Hadoop分布式大数据系统中,外部数据通常被存储在某一Datanode节点的普通文件系统中。如果把想这些外部数据加载或导入Hadoop,加载的数据会被优先存放到同一Datanode节点的HDFS文件系统中,只有当本地的HDFS文件系统已满时,才会存入其他Datanode节点的HDFS文件系统。因此数据只能先向一个datanode节点加载,不能无条件地向其他节点并行加载,导致数据加载效率很低。针对现有技术中外部数据加载到HDFS文件系统的数据加载效率很低的问题,目前尚未有有效的解决方案。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提出一种Hadoop的数据快速加载方法与系统,能够将不同待加载数据或不同类型的待加载数据快速加载到HDFS中,通过并行加载方式提高加载效率。基于上述目的,本专利技术的一方面提供了一种Hadoop的数据快速加载方法,包括使用DLS执行以下步骤:从元数据节点实时采集元数据信息,并根据元数据信息获得当前可用的数据节点信息;将本数据节点的待加载数据根据数据节点信息分割为多个数据分段,并使当前可用的数据节点同时加载多个数据分段;接收所有当前可用的数据节点的加载完成信息以结束数据加载。在一些实施方式中,元数据信息包括当前所有的数据节点的运行状态;根据元数据信息获得当前可用的数据节点信息为:根据元数据信息获得当前所有的数据节点的运行状态并提取出当前可用的数据节点信息。在一些实施方式中,当前可用的数据节点信息包括当前可用的数据节点的数量;将本数据节点的待加载数据根据数据节点信息分割为多个数据分段为:将本数据节点的待加载数据分割为与当前可用的数据节点的数量相同的数据分段。在一些实施方式中,每个数据分段的大小相等、或每个数据分段的大小分别根据每个当前可用的数据节点的数据加载能力确定。在一些实施方式中,使当前可用的数据节点同时加载多个数据分段为:使当前可用的数据节点将多个数据分段同时地并行加载到各自的HDFS中。在一些实施方式中,当前可用的数据节点包括或不包括本数据节点。在一些实施方式中,在使当前可用的数据节点同时加载多个数据分段之后、并且接收所有当前可用的数据节点的加载完成信息之前,方法还包括以下步骤:当因特定数据节点的数据加载出现超时或报错而无法接收到特定数据节点的加载完成信息、并且超时或报错次数未达预定阈值时,使特定数据节点重新加载未完成加载的数据分段;当因特定数据节点的数据加载出现超时或报错而无法接收到特定数据节点的加载完成信息、并且超时或报错次数达到预定阈值时,寻找其他当前的空闲数据节点并使空闲数据节点来加载未完成加载的数据分段。在一些实施方式中,在使当前可用的数据节点同时加载多个数据分段之后、并且接收所有当前可用的数据节点的加载完成信息之前,方法还包括以下步骤:当因特定数据节点宕机而无法接收到特定数据节点的加载完成信息时,寻找其他当前的空闲数据节点并使空闲数据节点来加载未完成加载的数据分段。在一些实施方式中,寻找其他当前的空闲数据节点为:从元数据节点实时采集元数据信息,根据元数据信息获得当前可用的数据节点信息,并根据当前可用的数据节点信息来选择一个当前的空闲数据节点。本专利技术实施例的另一方面,还提供了一种Hadoop的数据快速加载系统,包括全部连接到网络总线的至少一个元数据节点和多个数据节点,其中每个数据节点包括:处理器;存储器,所述存储器存储有:存储该待加载数据的FS;存储已加载文件的HDFS;DLS,DLS包括可在处理器上运行的DLS程序代码,其中处理器在运行DLS程序代码时执行上述的Hadoop的数据快速加载方法来将待加载数据加载到多个数据节点的HDFS中。本专利技术具有以下有益技术效果:本专利技术实施例提供的Hadoop的数据快速加载方法与系统,通过从元数据节点实时采集元数据信息并获得当前可用的数据节点信息、将本数据节点的待加载数据根据数据节点信息分割为多个数据分段并使当前可用的数据节点同时加载多个数据分段、接收所有当前可用的数据节点的加载完成信息以结束数据加载的技术方案,能够将不同待加载数据或不同类型的待加载数据快速加载到HDFS中,通过并行加载方式提高加载效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为现有技术的数据加载示意图;图2为本专利技术提供的Hadoop的数据快速加载方法的流程示意图;图3为本专利技术提供的Hadoop的数据快速加载方法的数据加载示意图;图4为本专利技术提供的Hadoop的数据快速加载系统的硬件结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本专利技术实施例的限定,后续实施例对此不再一一说明。基于上述目的,本专利技术实施例的第一个方面,提出了一种能够将不同待加载数据或不同类型的待加载数据快速加载到HDFS中的方法的实施例。图2示出的是本专利技术提供的Hadoop的数据快速加载方法的实施例的流程示意图。所述Hadoop的数据快速加载方法,如图2所示包括使用DLS执行以下步骤:步骤S201,从元数据节点实时采集元数据信息,并根据元数据信息获得当前可用的数据节点信息;步骤S203,将本数据节点的待加载数据根据数据节点信息分割为多个数据分段,并使当前可用的数据节点同时加载多个数据分段;步骤S205,接收所有当前可用的数据节点的加载完成信息以结束数据加载。本专利技术通过在每个节点配置并启动一个DLS(数据加载服务)程序来实现并行加载数据的功能。如图2所示,DLS服务——按照上述步骤——实时读取Namdenode节点(即元数据节点)的元数据信息来实时监控所有Datanode节点(即数据节点)的运行状态,以判断Datanode节点是否在在线;并且在数据加载时对要加载的数据分段,并且对每个在线Datanode节点分配加载任务来实现并行数据加载,由此提高数据加载效率,充分利用集群中的每个Datanode节点。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。所述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。现有技术的情况如图1所示:外部数据存储于Datanode1节点的普通文件系统FS。如果想把这些数据加载进大数据集群HDFS中,系统默认会先把数据放入Datanode的HDFS中,等到Datanode空间用满或邻近用满本文档来自技高网...

【技术保护点】
1.一种Hadoop的数据快速加载方法,其特征在于,包括使用DLS执行以下步骤:从元数据节点实时采集元数据信息,并根据所述元数据信息获得当前可用的数据节点信息;将本数据节点的待加载数据根据所述数据节点信息分割为多个数据分段,并使当前可用的所述数据节点同时加载所述多个数据分段;接收所有当前可用的所述数据节点的加载完成信息以结束数据加载。

【技术特征摘要】
1.一种Hadoop的数据快速加载方法,其特征在于,包括使用DLS执行以下步骤:从元数据节点实时采集元数据信息,并根据所述元数据信息获得当前可用的数据节点信息;将本数据节点的待加载数据根据所述数据节点信息分割为多个数据分段,并使当前可用的所述数据节点同时加载所述多个数据分段;接收所有当前可用的所述数据节点的加载完成信息以结束数据加载。2.根据权利要求1所述的方法,其特征在于,所述元数据信息包括当前所有的所述数据节点的运行状态;根据所述元数据信息获得当前可用的所述数据节点信息为:根据所述元数据信息获得当前所有的所述数据节点的运行状态并提取出当前可用的所述数据节点信息。3.根据权利要求1所述的方法,其特征在于,当前可用的所述数据节点信息包括当前可用的所述数据节点的数量;将本数据节点的待加载数据根据所述数据节点信息分割为多个数据分段为:将本数据节点的待加载数据分割为与当前可用的所述数据节点的数量相同的数据分段。4.根据权利要求3所述的方法,其特征在于,每个所述数据分段的大小相等、或每个所述数据分段的大小分别根据每个当前可用的所述数据节点的数据加载能力确定。5.根据权利要求1所述的方法,其特征在于,使当前可用的所述数据节点同时加载所述多个数据分段为:使当前可用的所述数据节点将所述多个数据分段同时地并行加载到各自的HDFS中。6.根据权利要求1所述的方法,其特征在于,当前可用的所述数据节点包括或不包括本数据节点。7.根据权利要求1所述的方法,其特征在于,在使当前可用的所述数据节点同时加载所述多个数据分段之后、并且接收所有当前可用的所述数据节点的加载完成信息之前,所述...

【专利技术属性】
技术研发人员:魏本帅杜彦魁
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1