一种数据存储方法、装置及电子设备制造方法及图纸

技术编号:35897009 阅读:21 留言:0更新日期:2022-12-10 10:31
本说明书公开了一种数据存储方法、装置及电子设备,能够实现数据均衡存储,优化用户体验。所述方法应用于名称节点,所述名称节点存储有用于表征数据节点的存储利用率以及数据节点中多个数据磁盘的磁盘利用率的存储报告信息;所述方法包括:从客户端接收目标数据的数据写入请求;根据所述存储利用率从多个所述数据节点中选取确定目标数据节点;根据所述磁盘利用率在所述目标数据节点中选取确定目标数据磁盘;根据所述目标数据节点与所述目标数据磁盘确定目标存储地址;将所述目标存储地址发送至所述客户端,以使所述客户端按所述目标存储地址对所述目标数据进行存储。所述装置及电子设备用于执行所述数据存储方法。电子设备用于执行所述数据存储方法。电子设备用于执行所述数据存储方法。

【技术实现步骤摘要】
一种数据存储方法、装置及电子设备


[0001]本专利技术涉及数据存储
,具体涉及一种数据存储方法、装置及电子设备。

技术介绍

[0002]Hadoop分布式文件系统(Hadoop Distributed File System,简称HDFS)是一种高容错性的分布式存储系统,随着业务扩展HDFS系统中不同数据节点的使用率以及同数据节点中不同磁盘的使用率会出现差异,系统稳定性、容错性以及存储性能都会受到影响。因此需要对HDFS系统进行数据均衡。
[0003]HDFS系统原生数据均衡方法中,人工定期对节点磁盘数据以及集群节点数据进行数据均均衡,数据均衡时对已写入的数据进行迁移调整。这样的方式运维成本高,且需要占用大量的网络资源,对于数据规模较大的HDFS系统,数据均衡时间长、效率低,占用正常数据业务时间,影响用户使用体验。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供了一种数据存储方法、装置及电子设备,能够降低运维成本,提高数据均衡效率,优化用户体验。
[0005]在第一方面,本说明书实施例提供了一种数据存储方法。
[0006]所述方法应用于名称节点,所述名称节点存储有多个数据节点的存储报告信息,所述存储报告信息用于表征所述数据节点的存储利用率以及所述数据节点中多个数据磁盘的磁盘利用率。所述方法包括:
[0007]从客户端接收目标数据的数据写入请求;
[0008]根据所述存储利用率从多个所述数据节点中选取确定目标数据节点;
[0009]根据所述磁盘利用率在所述目标数据节点中选取确定目标数据磁盘;
[0010]根据所述目标数据节点与所述目标数据磁盘确定目标存储地址;
[0011]将所述目标存储地址发送至所述客户端,以使所述客户端按所述目标存储地址对所述目标数据进行存储。
[0012]可选的,所述根据所述存储利用率从多个所述数据节点中选取确定目标数据节点,包括:
[0013]选取所述存储利用率最低的数据节点作为所述目标数据节点。
[0014]可选的,所述方法在从客户端接收目标数据的数据写入请求后,还包括:
[0015]根据所述数据写入请求确定待写入副本数;
[0016]所述根据所述存储利用率从多个所述数据节点中选取确定目标数据节点,包括:
[0017]根据所述存储利用率选取与所述待写入副本数相对应的多个所述数据节点作为所述目标数据节点。
[0018]可选的,多个所述数据节点相应的多项所述存储报告信息按所述存储利用率从小到达排序构成存储报告序列;
[0019]所述根据所述存储利用率选取与所述待写入副本数相对应的多个所述数据节点作为所述目标数据节点,包括:
[0020]从所述存储报告序列的第一项开始,选取与所述待写入副本数相应的多项所述存储报告信息;
[0021]将与所述待写入副本数相应的多项所述存储报告信息所对应的多个所述数据节点作为所述目标数据节点。
[0022]可选的,所述根据所述磁盘利用率在所述目标数据节点中选取确定目标数据磁盘,包括:
[0023]在所述目标数据节点中选取所述磁盘利用率最低的数据磁盘作为所述目标数据磁盘。
[0024]可选的,所述方法在将所述目标存储地址发送至所述客户端前,还包括:
[0025]获取所述目标数据磁盘的剩余存储量,根据所述数据写入请求确定所述目标数据的数据量;
[0026]将所述剩余存储量与所述数据量进行对比,若所述剩余存储量小于所述数据量,在所述目标数据节点中重新选取目标数据磁盘。
[0027]可选的,所述方法还包括:
[0028]周期性获取多个所述数据节点的基本存储信息;
[0029]根据所述基本存储信息对所述存储报告信息进行更新。
[0030]可选的,所述基本存储信息包括所述数据节点的数据总容量与数据存储量以及所述数据节点中多个所述数据磁盘的磁盘总容量与磁盘存储量;
[0031]所述根据所述基本存储信息对所述存储报告信息进行更新,包括:
[0032]根据所述数据存储量与所述数据总容量计算确定所述数据节点的所述存储利用率;
[0033]根据所述数据磁盘的所述磁盘存储量与所述磁盘总容量计算确定所述数据磁盘的所述磁盘利用率。
[0034]在第二方面,本说明书实施例还提供了一种数据存储装置。
[0035]所述装置应用于名称节点,所述名称节点存储有多个数据节点的存储报告信息,所述存储报告信息用于表征所述数据节点的存储利用率以及所述数据节点中多个数据磁盘的磁盘利用率。所述装置包括:
[0036]请求接收模块,用于从客户端接收目标数据的数据写入请求;
[0037]目标节点分配模块,用于根据所述存储利用率从多个所述数据节点中选取目标数据节点;
[0038]目标磁盘分配模块,用于根据所述磁盘利用率在所述目标数据节点中选取目标数据磁盘;
[0039]地址确定模块,用于根据所述目标数据节点与所述目标数据磁盘确定目标存储地址;
[0040]以及地址发送模块,用于将所述目标存储地址发送至所述客户端,以使所述客户端按所述目标存储地址对所述目标数据进行存储。
[0041]在第三方面,本说明书实施例还提供了一种电子设备,包括存储器、处理器以及存
储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的数据存储方法
[0042]从上面可以看出,本说明书实施例所提供的一种数据存储方法、装置及电子设备,具有如下有益技术效果:
[0043]在数据写入阶段提前为待写入的目标数据分配目标存储地址并发送给客户端。所述目标存储地址由所述目标数据节点与所述目标数据磁盘组成,指向存储利用率较低数据节点中磁盘利用率较低的数据磁盘。这样每次目标数据写入时,所述客户端都会将按照所述目标存储地址进行存储。在同一数据节点中,能够逐渐减小多个数据磁盘的磁盘利用率差异;在不同数据节点间,能够逐渐减小多个数据节点的存储利用率差异,从而实现分布式文件系统的前置数据均衡。所述数据存储方法采用上述的前置均衡方式,无需人工定期进行数据迁移均衡,可以降低系统运维成本,能够快捷高效的实现数据均衡,减少网络资源与时间资源的浪费,优化用户体验
附图说明
[0044]通过参考附图会更加清楚的理解本专利技术的特征和优点,附图是示意性的而不应理解为对本专利技术进行任何限制,在附图中:
[0045]图1示出了HDFS系统架构示意图;
[0046]图2示出了本说明书实施例所提供的一种数据存储方法示意图;
[0047]图3示出了本说明实施例所提供的一种数据存储方法中选取确定目标数据节点的方法示意图;
[0048]图4示出了本说明书实施例所提供的一种数据存储方法中选取确定目标数据磁盘的方法示意图;
[0049]图5示出了本说明书实施例所提供的一种数据存储方法中存储报告信息更新方法示本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法应用于名称节点,所述名称节点存储有多个数据节点的存储报告信息,所述存储报告信息用于表征所述数据节点的存储利用率以及所述数据节点中多个数据磁盘的磁盘利用率;所述方法包括:从客户端接收目标数据的数据写入请求;根据所述存储利用率从多个所述数据节点中选取确定目标数据节点;根据所述磁盘利用率在所述目标数据节点中选取确定目标数据磁盘;根据所述目标数据节点与所述目标数据磁盘确定目标存储地址;将所述目标存储地址发送至所述客户端,以使所述客户端按所述目标存储地址对所述目标数据进行存储。2.根据权利要求1所述的方法,其特征在于,所述根据所述存储利用率从多个所述数据节点中选取确定目标数据节点,包括:选取所述存储利用率最低的数据节点作为所述目标数据节点。3.根据权利要求1所述的方法,其特征在于,在从客户端接收目标数据的数据写入请求后,还包括:根据所述数据写入请求确定待写入副本数;所述根据所述存储利用率从多个所述数据节点中选取确定目标数据节点,包括:根据所述存储利用率选取与所述待写入副本数相对应的多个所述数据节点作为所述目标数据节点。4.根据权利要求3所述的方法,其特征在于,多个所述数据节点相应的多项所述存储报告信息按所述存储利用率从小到达排序构成存储报告序列;所述根据所述存储利用率选取与所述待写入副本数相对应的多个所述数据节点作为所述目标数据节点,包括:从所述存储报告序列的第一项开始,选取与所述待写入副本数相应的多项所述存储报告信息;将与所述待写入副本数相应的多项所述存储报告信息所对应的多个所述数据节点作为所述目标数据节点。5.根据权利要求1所述的方法,其特征在于,所述根据所述磁盘利用率在所述目标数据节点中选取确定目标数据磁盘,包括:在所述目标数据节点中选取所述磁盘利用率最低的数据磁盘作为所述目标数据磁盘。6.根据权利要求1所述的方...

【专利技术属性】
技术研发人员:于胜强
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:

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

1