一种基于HDFS启动并行加载元数据的方法及装置制造方法及图纸

技术编号:24888317 阅读:44 留言:0更新日期:2020-07-14 18:15
本申请公开了一种基于HDFS启动并行加载元数据的方法,包括:在HDFS启动过程中,确定待加载至内存的元数据的数据量;根据该数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;生成目标数量的线程;并行调用目标数量的线程,将待加载至内存的元数据加载至内存中。可见,该方法能够根据待加载的元数据的数据量以及主机的状态信息,自动得出合理的线程数量,以便后续并行调用多线程执行元数据的加载操作,避免了人工设置线程数量的过程,提升了元数据加载效率。此外,本申请还提供了一种基于HDFS启动并行加载元数据的装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应。

【技术实现步骤摘要】
一种基于HDFS启动并行加载元数据的方法及装置
本申请涉及计算机
,特别涉及一种基于HDFS启动并行加载元数据的方法、装置、设备及可读存储介质。
技术介绍
Hadoop是一个由Apache基金会所开发的分布式系统基础架构,Hadoop主要实现了一个分布式文件系统HDFS、分布式计算框架MapReduce和分布式资源调度管理框架YARN,其中HDFS有高容错性的特点,并且设计用来部署在低廉的硬件上;而且它提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。HDFS放宽了POSIX的要求,可以以流的形式访问文件系统中的数据。事实上该系统实现的HDFS已被公众认为是大数据存储的标准。在整个HDFS运行期间,所有元数据均在NameNode的内存集中管理。为了更好的容错能力,NameNode会周期进行检查监测点,将其中的一部分元数据持久化磁盘上,即二进制文件FSImage,这样的话即使NameNode出现异常也能从持久化设备上恢复元数据,保证了数据的安全可靠。HDFS启动过程中耗时阶段主要在NameNode的启动过程,当前加载方案能够并行调用多线程实现元数据加载功能,从而减少HDFS启动过程中元数据的加载时间,但依然需要手动配置合理的线程数量,降低了元数据加载效率。
技术实现思路
本申请的目的是提供一种基于HDFS启动并行加载元数据的方法、装置、设备及可读存储介质,用以解决在HDFS启动过程中,当前的元数据加载方案需要人工手动设置线程数量,导致元数据加载效率低下的问题。其具体方案如下:第一方面,本申请提供了一种基于HDFS启动并行加载元数据的方法,包括:在HDFS启动过程中,确定待加载至内存的元数据的数据量;根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;生成所述目标数量的线程;并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中。优选的,所述根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量,包括:根据所述数据量以及当前主机的CPU信息、内存信息和负载信息,确定用于执行元数据加载操作的线程的目标数量。优选的,所述在HDFS启动过程中,确定待加载至内存的元数据的数据量,包括:在HDFS启动过程中,确定待加载至内存的元数据的数量级。优选的,在所述并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中之前,还包括:将所述待加载至内存的元数据的原始索引信息转换为可多线程操作的目标索引信息。优选的,所述将所述待加载至内存的元数据的原始索引信息转换为可多线程操作的目标索引信息,包括:根据所述待加载至内存的元数据的原始索引信息,确定所述目标数量的目标索引信息,其中所述目标索引信息与所述线程一一对应。优选的,所述并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中,包括:对于所述目标数量的线程,同时调用每个所述线程根据相应的目标索引信息执行元数据加载操作,以实现将所述待加载至内存的元数据加载至内存中。第二方面,本申请提供了一种基于HDFS启动并行加载元数据的装置,包括:数据量确定模块:用于在HDFS启动过程中,确定待加载至内存的元数据的数据量;线程数量确定模块:用于根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;线程生成模块:用于生成所述目标数量的线程;元数据加载模块:用于并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中。优选的,所述线程数量确定模块用于:根据所述数据量以及当前主机的CPU信息、内存信息和负载信息,确定用于执行元数据加载操作的线程的目标数量。第三方面,本申请提供了一种基于HDFS启动并行加载元数据的设备,包括:存储器:用于存储计算机程序;处理器:用于执行所述计算机程序,以实现如上所述的基于HDFS启动并行加载元数据的方法的步骤。第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的基于HDFS启动并行加载元数据的方法的步骤。本申请所提供的一种基于HDFS启动并行加载元数据的方法,包括:在HDFS启动过程中,确定待加载至内存的元数据的数据量;根据该数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;生成目标数量的线程;并行调用目标数量的线程,将待加载至内存的元数据加载至内存中。可见,该方法在HDFS启动过程中,能够根据待加载的元数据的数据量以及主机的状态信息,自动得出合理的线程数量,以便后续并行调用多线程执行元数据的加载操作,避免了人工设置线程数量的过程,提升了元数据加载效率,缩短HDFS启动过程的耗时。此外,本申请还提供了一种基于HDFS启动并行加载元数据的装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。附图说明为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请所提供的一种基于HDFS启动并行加载元数据的方法实施例一的实现流程图;图2为本申请所提供的一种基于HDFS启动并行加载元数据的方法实施列二的实现流程图;图3为本申请所提供的一种基于HDFS启动并行加载元数据的装置实施例的功能框图;图4为本申请所提供的一种基于HDFS启动并行加载元数据的设备实施例的结构示意图。具体实施方式本申请的核心是提供一种基于HDFS启动并行加载元数据的方法、装置、设备及可读存储介质,避免了人工设置线程数量的过程,提升了元数据加载效率,缩短HDFS启动过程的耗时。为了使本
的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。下面对本申请提供的一种基于HDFS启动并行加载元数据的方法实施例一进行介绍,参见图1,实施例一包括:S101、在HDFS启动过程中,确定待加载至内存的元数据的数据量;S102、根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;S103、生成所述目标数量的线程;S104、并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中。HDFS表示Hadoop分布式文件系统,指一套能够部署在廉价机器上并且可提供高度容错性的大型分布式文本文档来自技高网
...

【技术保护点】
1.一种基于HDFS启动并行加载元数据的方法,其特征在于,包括:/n在HDFS启动过程中,确定待加载至内存的元数据的数据量;/n根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;/n生成所述目标数量的线程;/n并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中。/n

【技术特征摘要】
1.一种基于HDFS启动并行加载元数据的方法,其特征在于,包括:
在HDFS启动过程中,确定待加载至内存的元数据的数据量;
根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量;
生成所述目标数量的线程;
并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中。


2.如权利要求1所述的方法,其特征在于,所述根据所述数据量和当前主机的状态信息,确定用于执行元数据加载操作的线程的目标数量,包括:
根据所述数据量以及当前主机的CPU信息、内存信息和负载信息,确定用于执行元数据加载操作的线程的目标数量。


3.如权利要求2所述的方法,其特征在于,所述在HDFS启动过程中,确定待加载至内存的元数据的数据量,包括:
在HDFS启动过程中,确定待加载至内存的元数据的数量级。


4.如权利要求1所述的方法,其特征在于,在所述并行调用所述目标数量的线程,将所述待加载至内存的元数据加载至内存中之前,还包括:
将所述待加载至内存的元数据的原始索引信息转换为可多线程操作的目标索引信息。


5.如权利要求4所述的方法,其特征在于,所述将所述待加载至内存的元数据的原始索引信息转换为可多线程操作的目标索引信息,包括:
根据所述待加载至内存的元数据的原始索引信息,确定所述目标数量的目标索引信息,其中所述目标索引信息与所述线程一一对应。


6.如权利要...

【专利技术属性】
技术研发人员:潘利杰常洪耀
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1