一种数据存储方法及装置的制造方法

文档序号:9865143阅读:376来源:国知局
一种数据存储方法及装置的制造方法
【技术领域】
[0001 ]本申请涉及计算机存储技术领域,尤其涉及一种数据存储方法及装置。
【背景技术】
[0002]分布式文件存储系统是指将网络中大量的存储设备通过上层软件集群调度起来进行协同工作,对外提供统一的数据存储和访问功能的一个系统。分布式文件存储系统有效地解决了数据存储和管理的难题,能够对存储节点进行按需在线扩容,对分布在各个地点的存储节点中的数据进行统一管理。由于数据分散在不同的节点,且这些节点都是比较普通的存储服务器,必须考虑它们故障的情况。因此,数据的可靠性是分布式文件存储系统研究的重点问题。
[0003]当今社会是大数据的时代,数据量成爆炸式增长,这就对存储的容量提出了很高的要求。与此同时,数据的安全性也不容小觑,需要提供数据的冗余和备份。然而,存储容量和高可靠性是相对的,难以平衡。一方面,高可靠性可以通过增加数据的副本数提高,但是存单位数据的冗余数据也随之成倍地增加;另一方面,若想节约成本,不对数据进行备份,一旦数据的部分存储设备故障时,整个文件将不能访问,造成数据的丢失。
[0004]现有技术分布式文件系统中,HDFS(Hadoop分布式文件系统,Hadoop DistributedFile System)和GFS(谷歌文件系统,Google File System),一般把数据文件分为若干64MB大小的块,每个块至少有3份相同冗余,且副本尽量分布在不同机架上来以提高可靠性。该技术最大的缺点是比较浪费空间。因为存储一份数据需要备份2倍的额外存储空间,从而提高了成本。
[0005]基于编码技术,一种基于纠删码技术的数据存储方法诞生了。通过把原始数据分成N个原始数据块,然后再计算出M个冗余数据块。N+M个数据块优先选择不同节点的不同磁盘进行存储。在N+M个数据块中,任意M个磁盘故障,原始数据可以从任意N个数据块中恢复。该技术大大提升了存储空间的利用效率。然而,其缺点是系统开销巨大,读写性能下降。
[0006]在既能提供副本和纠删码策略的分布式存储系统中,需要人工手动设置存储目录的保护方式,无法智能切换,常常导致所设置的存储目录无法达到用户对于数据可靠性的要求或者无法达到用户对于存储读写性能的要求。
[0007]现有技术不足在于:
[0008]在既能提供副本和纠删码策略的分布式存储系统中,需要人工手动设置存储目录的保护方式,可能存在由于人为失误导致无法满足数据可靠性和读写性能的要求。

【发明内容】

[0009]本申请实施例提出了一种数据存储方法及装置,以解决现有技术中在既能提供副本和纠删码策略的分布式存储系统中,需要人工手动设置存储目录的保护方式,可能存在由于人为失误导致无法满足数据可靠性和读写性能的要求的技术问题。
[0010]本申请实施例提供了一种数据存储方法,包括如下步骤:
[0011]接收用户的数据写入请求;所述请求中包括用户的数据存储需求以及写入数据的大小;所述数据存储需求包括数据可靠性参数和/或读写性能参数;
[0012]根据所述数据存储需求和写入数据的大小标记所述数据;
[0013]根据所述数据的标记确定数据保护方式;
[0014]将所述数据按照所述数据保护方式存储至数据节点。
[0015]本申请实施例提供了一种数据存储装置,包括:
[0016]接收模块,用于接收用户的数据写入请求;所述请求中包括用户的数据存储需求以及写入数据的大小;所述数据存储需求包括数据可靠性参数和/或读写性能参数;
[0017]标记模块,用于根据所述数据存储需求和写入数据的大小标记所述数据;
[0018]确定模块,用于根据所述数据的标记确定数据保护方式;
[0019]存储模块,用于将所述数据按照所述数据保护方式存储至数据节点。
[0020]有益效果如下:
[0021]由于本申请实施例所提供的数据存储方法及装置,在接收到用户的数据写入请求时,客户端可以根据业务需要增加数据标签,从而根据用户对数据的存储需求以及写入数据的大小等数据标签,决定使用哪种保护方式,为用户的不同存储数据特点提供差异化的数据保护方式,在确保满足数据可靠性和读写性能要求的前提下,这种自适应数据存储方案既可以减轻运维的人力成本,又可以降低由人为失误造成的数据风险。
【附图说明】
[0022]下面将参照附图描述本申请的具体实施例,其中:
[0023]图1示出了现有技术中数据写入流程示意图;
[0024]图2示出了本申请实施例中数据存储方法实施的流程示意图;
[0025]图3示出了本申请实施例中数据写入流程示意图;
[0026]图4示出了本申请实施例中数据存储过程的示意图;
[0027]图5示出了本申请实施例中数据存储装置的结构示意图。
【具体实施方式】
[0028]为了使本申请的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。
[0029]发明人在发明过程中注意到:
[0030]图1中示出了现有技术中数据写入流程示意图,如图所示,传统的数据存储保护策略中数据写入流程可以如下所示:
[0031]用户可以通过应用程序发送数据写入请求;
[0032]客户端收到上层应用的写入请求后,可以将数据块写入集群系统;
[0033]接口模块根据管理员预先设置的数据存储保护策略(如双副本、纠删码等策略),读取元数据以及所要分配的磁盘布局,并计算出数据的存放方式;
[0034]经过数据一致性检查和缓存同步之后,最终将数据写入数据存储节点中。
[0035]针对现有技术的不足,本申请实施例提出了一种数据存储方法及装置,下面进行说明。
[0036]图2示出了本申请实施例中数据存储方法实施的流程示意图,如图所示,所述数据存储方法可以包括如下步骤:
[0037]步骤201、接收用户的数据写入请求;所述请求中包括用户的数据存储需求以及写入数据的大小;所述数据存储需求包括数据可靠性参数和/或读写性能参数;
[0038]步骤202、根据所述数据存储需求和写入数据的大小标记所述数据;
[0039]步骤203、根据所述数据的标记确定数据保护方式;
[0040]步骤204、将所述数据按照所述数据保护方式存储至数据节点。
[0041]客户可以通过应用程序发出数据写入请求,客户端接收到上层应用发送的数据写入请求后,根据所述数据写入请求中包括的数据存储需求和写入数据的大小标记所述数据,并将标记后的数据写入分布式文件系统;在从元数据节点读取元数据和分配磁盘布局之后,可以根据所述数据的标记自适应确定数据保护方式;最终,可以经过数据一致性检查、缓存同步等操作后,将所述数据按照所确定的数据保护方式进行存储。
[0042]其中,数据存储需求可以包括数据可靠性参数、读写性能参数等。数据可靠性参数可以包括允许故障节点数、允许故障磁盘数等,读写性能参数可以包括读写速度。
[0043]本申请实施例中,客户端可以对接收数据的特点进行数据贴标,通过识别数据标识自动选择存储保护方式,采用本申请实施例所提供的方案,可以根据用户差异化的要求自适应的提供最优的数据保护方式,按照该数据保护方式进行存储,从而避免由于人工设置错误导致无法满足可靠性或读写性能要求,减少存储成本
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1