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

技术编号:38510043 阅读:13 留言:0更新日期:2023-08-19 16:54
本申请实施例提供了一种数据存储方法、装置、电子设备及存储介质,涉及计算机技术领域。该方法包括:每隔一个预设时间间隔获取第一数据存储节点的主机的各目标采集指标的实时数值;每隔一个预设时间间隔,根据各实时数值获取第一数据存储节点的健康指标参数;对于每一文件,根据各第一数据存储节点的健康指标参数获取第二数据存储节点,根据文件的标识从第二数据存储节点中获取第三数据存储节点,并将文件数据存储至第三数据存储节点中。通过计算每个数据存储节点的健康指标参数,并为每个文件从健康度较高的数据存储节点中选取最优数据存储节点。保证了获取到的数据存储节点能存入所有文件数据,不易造成文件数据的丢失。不易造成文件数据的丢失。不易造成文件数据的丢失。

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


[0001]本申请涉及计算机
,具体而言,本申请涉及一种数据存储方法、装置、电子设备及存储介质。

技术介绍

[0002]大数据存储是大数据领域的一个关键技术,近些年随着大数据技术的持续走热,如何更好的优化分布式数据存储成为了热门话题。如何在保证数据可用性、容错机制和读写性能的前提下实现分布式数据存储的负载均衡是大数据工程师需要着重考虑的问题。
[0003]现有技术的方案中,分布式文件系统客户端先通过管理节点获取到各数据存储节点的存储负载信息,然后根据所有数据存储节点的存储负载信息获取可用的数据存储节点,最后将需要存储的文件数据根据针对分布式数据存储的算法(如Round

Robin(循环算法)、Hash(哈希算法)、一致性Hash算法等等)存储至各可用的数据存储节点中。
[0004]但是,在上述的存储过程中,获取可用的数据存储节点时仅考虑了数据存储节点的存储负载信息(即存储的文件数据多少),因此现有技术方案获取到的可用数据存储节点中,有可能存在有读写压力较大或存在潜在软硬件故障的数据存储节点,导致文件数据无法被存储在这些数据存储节点上,使得部分文件数据在存储过程中容易丢失。

技术实现思路

[0005]本申请的目的旨在至少能解决上述的技术缺陷之一,本申请实施例所提供的技术方案如下:
[0006]第一方面,本申请实施例提供了一种数据存储方法,包括:
[0007]对于每一第一数据存储节点,每隔一个第一预设时间间隔获取第一数据存储节点对应的主机的各目标采集指标的实时数值;其中,目标采集指标表征第一数据存储节点对应的主机的当前性能;
[0008]每隔一个第二预设时间间隔,根据各属于当前时刻前第一预设时间段内的实时数值获取第一数据存储节点的健康指标参数;其中,第二预设时间间隔不小于第一预设时间间隔;
[0009]当接收到文件数据存储请求时,对于文件数据存储请求中的任一文件,根据各第一数据存储节点属于当前时刻前第二预设时间段内的健康指标参数获取至少一个第二数据存储节点,根据任一文件的标识从各第二数据存储节点中获取第三数据存储节点,并将任一文件的数据存储至第三数据存储节点中。
[0010]在本申请的一种可选实施例中,根据各属于当前时刻前第一预设时间段内的实时数值获取第一数据存储节点的健康指标参数,具体包括:
[0011]对于每一目标采集指标,若目标采集指标为硬件类型的指标,则将各属于第一预设时间段内的实时数值的平均值作为第一参考值,若目标采集指标为非硬件类型的指标,则将各属于第一预设时间段内的实时数值的中位数作为第一参考值;
[0012]根据各第一参考值获取第一数据存储节点的健康指标参数。
[0013]在本申请的一种可选实施例中,硬件类型的指标,包括:中央处理器CPU(Central

Processing

Unit)空闲时间与总时间之比、内存使用占比、磁盘使用占比、磁盘读写请求响应时间、磁盘读写总数;
[0014]非硬件类型的指标,包括:收发数据量、网络延迟。
[0015]在本申请的一种可选实施例中,根据各第一参考值获取第一数据存储节点的健康指标参数,具体包括:
[0016]对于每一目标采集指标,根据第一参考值获取目标采集指标的健康度,并根据健康度计算目标采集指标的健康指标参数;
[0017]将各目标采集指标中健康指标参数的最小值作为第一数据存储节点的健康指标参数。
[0018]在本申请的一种可选实施例中,具体包括:
[0019]若磁盘读写请求响应时间对应的健康指标参数不小于第一预设阈值,则不获取CPU空闲时间与总时间之比对应的健康指标参数;其中,第一预设阈值表征CPU空闲时间与总时间之比是否具有参考意义。
[0020]在本申请的一种可选实施例中,根据各第一数据存储节点属于当前时刻前第二预设时间段内的健康指标参数获取至少一个第二数据存储节点,具体包括:
[0021]对于每一第一数据存储节点,获取第一数据存储节点在第二预设时间段内的各健康指标参数的平均值,并将平均值作为第二参考值;
[0022]将第二参考值大于第二预设阈值的第一数据存储节点作为第二数据存储节点;其中,第二预设阈值表征处于健康状态的第一数据存储节点。
[0023]在本申请的一种可选实施例中,根据任一文件的标识从各第二数据存储节点中获取第三数据存储节点,具体包括:
[0024]对任一文件的标识进行一致性哈希计算,获取计算结果,并根据计算结果从各第二数据存储节点中获取第三数据存储节点;
[0025]其中,计算结果与各第二数据存储节点预设有对应关系。
[0026]第二方面,本申请实施例提供了一种数据存储装置,包括:
[0027]实时数值采集模块,用于对于每一第一数据存储节点,每隔一个第一预设时间间隔获取第一数据存储节点对应的主机的各目标采集指标的实时数值;其中,目标采集指标表征第一数据存储节点对应的主机的当前性能;
[0028]健康指标参数获取模块,用于每隔一个第二预设时间间隔,根据各属于当前时刻前第一预设时间段内的实时数值获取第一数据存储节点的健康指标参数;其中,第二预设时间间隔不小于第一预设时间间隔;
[0029]文件数据存储模块,用于当接收到文件数据存储请求时,对于文件数据存储请求中的任一文件,根据各第一数据存储节点属于当前时刻前第二预设时间段内的健康指标参数获取至少一个第二数据存储节点,根据任一文件的标识从各第二数据存储节点中获取第三数据存储节点,并将任一文件的数据存储至第三数据存储节点中。
[0030]在本申请的一种可选实施例中,健康指标参数获取模块具体用于:
[0031]对于每一目标采集指标,若目标采集指标为硬件类型的指标,则将各属于第一预
设时间段内的实时数值的平均值作为第一参考值,若目标采集指标为非硬件类型的指标,则将各属于第一预设时间段内的实时数值的中位数作为第一参考值;
[0032]根据各第一参考值获取第一数据存储节点的健康指标参数。
[0033]在本申请的一种可选实施例中,硬件类型的指标,包括:中央处理器CPU空闲时间与总时间之比、内存使用占比、磁盘使用占比、磁盘读写请求响应时间、磁盘读写总数;
[0034]非硬件类型的指标,包括:收发数据量、网络延迟。
[0035]在本申请的一种可选实施例中,健康指标参数获取模块进一步用于:
[0036]对于每一目标采集指标,根据第一参考值获取目标采集指标的健康度,并根据健康度计算目标采集指标的健康指标参数;
[0037]将各目标采集指标中健康指标参数的最小值作为第一数据存储节点的健康指标参数。
[0038]在本申请的一种可选实施例中,健康指标参数获取模块还可以用于:
[0039]若磁盘读写请求响应时间对应的健康指标参数不小于第一预设阈值本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,其特征在于,包括:对于每一第一数据存储节点,每隔一个第一预设时间间隔获取所述第一数据存储节点对应的主机的各目标采集指标的实时数值;其中,所述目标采集指标表征所述第一数据存储节点对应的主机的当前性能;每隔一个第二预设时间间隔,根据各属于当前时刻前第一预设时间段内的实时数值获取所述第一数据存储节点的健康指标参数;其中,所述第二预设时间间隔不小于所述第一预设时间间隔;当接收到文件数据存储请求时,对于所述文件数据存储请求中的任一文件,根据各第一数据存储节点属于当前时刻前第二预设时间段内的健康指标参数获取至少一个第二数据存储节点,根据所述任一文件的标识从各第二数据存储节点中获取第三数据存储节点,并将所述任一文件的数据存储至所述第三数据存储节点中。2.根据权利要求1中所述的方法,其特征在于,所述根据各属于当前时刻前第一预设时间段内的实时数值获取所述第一数据存储节点的健康指标参数,包括:对于每一目标采集指标,若所述目标采集指标为硬件类型的指标,则将各属于所述第一预设时间段内的实时数值的平均值作为第一参考值,若所述目标采集指标为非硬件类型的指标,则将各属于所述第一预设时间段内的实时数值的中位数作为所述第一参考值;根据各第一参考值获取所述第一数据存储节点的健康指标参数。3.根据权利要求2中所述的方法,其特征在于,所述硬件类型的指标,包括:中央处理器CPU空闲时间与总时间之比、内存使用占比、磁盘使用占比、磁盘读写请求响应时间、磁盘读写总数;所述非硬件类型的指标,包括:收发数据量、网络延迟。4.根据权利要求3中所述的方法,其特征在于,所述根据各第一参考值获取所述第一数据存储节点的健康指标参数,包括:对于每一目标采集指标,根据所述第一参考值获取所述目标采集指标的健康度,并根据所述健康度计算所述目标采集指标的健康指标参数;将各目标采集指标中所述健康指标参数的最小值作为所述第一数据存储节点的健康指标参数。5.根据权利要求4中所述的方法,其特征在于,所述方法还包括:若所述磁盘读写请求响应时间对应的健康指标参数不小于第一预设阈值,则不获取所述CPU空闲时间与总时间之比对应的健康指标参数;其中,所述第一预设阈值表征所述CPU空...

【专利技术属性】
技术研发人员:张振野席超敏郭思曼
申请(专利权)人:广州亚信技术有限公司
类型:发明
国别省市:

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

1