数据存储方法、装置、服务器及存储介质制造方法及图纸

技术编号:22054335 阅读:30 留言:0更新日期:2019-09-07 14:56
本发明专利技术公开了一种数据存储方法、装置、服务器及存储介质,属于互联网技术领域。所述方法包括:当接收到对第一数据的写入请求时,查询第二数据的存储位置;当查询到第二数据存储在第一缓存单元时,将第一数据存储到第二缓存单元中;返回对第一数据的写入结果。本发明专利技术基于第一缓存单元和第二缓存单元对数据进行存储,相比于单独采用第二缓存单元的数据存储方式,节省了成本,对于已存储在第一缓存单元中的数据,当再次对该数据进行存储时,将该数据存储到第二缓存单元,不仅提高了数据读写速度,而且减少了对第一缓存单元的数据写入次数,避免了第一缓存单元损坏,提高了数据安全性,该种方式兼顾了成本、数据读写速度及安全性等方面的需求。

Data storage methods, devices, servers and storage media

【技术实现步骤摘要】
数据存储方法、装置、服务器及存储介质
本专利技术涉及互联网
,特别涉及一种数据存储方法、装置、服务器及存储介质。
技术介绍
在互联网
,SSD(SolidStateDrives,固态硬盘)的数据读写速度比HDD(HardDiskDrive,硬盘驱动器)的数据读写速度要快,为了满足对读写时延(Latency)要求较高的用户,国内外的公有云厂商尝试使用读写能力较高的SSD缓存数据,以求提高公有云存储的随机读写能力。图1示出了基于SDD进行数据存储的云存储系统的架构图,参见图1,该云存储系统包括逻辑层、缓存层及存储层等。其中,逻辑层负责对数据的写入请求、读取请求进行处理,并对数据的写入请求、读取请求进行重定向;缓存层中的存储介质为SSD,负责缓存公有云存储中的少部分数据;存储层中的存储介质为HDD,负责存储公有云存储中的大部分数据。采用图1所示的云存储系统进行数据存储的过程为:当接收到对数据的写入请求时,将数据写入到SSD中。由于SSD具有数据写入次数限制,而在公有云存储场景下,公有云存储所存储的数据量较大、数据访问量也很大,随着基于SSD的公有云存储的应用,SSD很快就会损坏,后期需要大量的更换,在更换SSD的过程中,存储于SSD上的数据可能存在丢失或泄露的风险,因此,现有的数据存储方式安全性较差。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种数据存储方法、装置、服务器及存储介质。所述技术方案如下:一方面,提供了一种数据存储方法,所述方法包括:当接收到对第一数据的写入请求时,查询第二数据的存储位置,所述第二数据为与所述第一数据具有相同数据标识的已存储数据;当查询到所述第二数据存储在第一缓存单元时,将所述第一数据存储到所述第二缓存单元中,所述第一缓存单元具有确定的数据写入次数;返回对所述第一数据的写入结果。另一方面,提供了一种数据存储装置,所述装置包括:查询模块,用于当接收到对第一数据的写入请求时,查询第二数据的存储位置,所述第二数据为与所述第一数据具有相同数据标识的已存储数据;存储模块,用于当查询到所述第二数据存储在第一缓存单元时,将所述第一数据存储到所述第二缓存单元中,所述第一缓存单元具有确定的数据写入次数,;返回模块,用于返回对所述第一数据的写入结果。另一方面,提供了一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由所述处理器加载并执行以实现数据存储方法。另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集由处理器加载并执行以实现数据存储方法。本专利技术实施例提供的技术方案带来的有益效果是:基于第一缓存单元和第二缓存单元对数据进行存储,相比于单独采用第二缓存单元的数据存储方式,节省了成本,对于已存储在第一缓存单元中的数据,当再次对该数据进行存储时,将该数据存储到第二缓存单元,不仅提高了数据读写速度,而且减少了对第一缓存单元的数据写入次数,避免了第一缓存单元损坏,提高了数据安全性,该种方式兼顾了成本、数据读取速度及安全性等方面的需求。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是一种基于SSD进行数据存储的云存储系统的架构图;图2是本专利技术实施例提供的一种云存储系统的架构图;图3是本专利技术实施例提供的一种数据存储方法的流程图;图4是本专利技术实施例提供的一种数据写入过程的示意图;图5是本专利技术实施例提供的一种数据读取过程的示意图;图6是本专利技术实施例提供的一种数据存储装置的结构示意图;图7是根据一示例性实施例示出的一种用于数据存储的服务器。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。在执行本专利技术之前,首先对本专利技术涉及的名词进行解释。HDD为一种常见的存储器,例如,电脑磁盘分区中的C盘、D盘等。SSD简称固盘,为采用固态电子存储芯片阵列制作而成的硬盘,由控制部件和存储部件(FLASH芯片、DRAM芯片)组成。RAM又称作随机存储器,是与CPU(CentralProcessingUnit,中央处理器)直接交换数据的内部存储器,也叫主存(内存),RAM不仅可以随时读写,而且读写速度较快,可作为操作系统或其他正在运行中的程序的临时数据存储媒介。云存储是指通过集群应用、网络技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同向外部提供数据存储和业务访问功能的系统。云存储包括公有云存储和私有云存储等。本专利技术实施例的云存储系统的架构图在公有云存储场景下,为了能够兼顾成本、数据读写速度及所存储的数据安全性等方面的需求,本专利技术实施例提供了一种数据存储方法,图2为该方法所涉及的云存储系统的架构图,该云存储系统利用了HDD设备低廉、SSD设备读写速度较快、RAM设备的数据写入次数无限制等优点,参见图2,该云存储系统包括逻辑层、缓存层及存储层等。其中,缓存层中的存储介质为RAM和SSD,存储层中的存储介质依然是HDD。通过对公有云存储上数据访问情况进行分析,本专利技术实施例将RAM、SSD及HDD的使用比例设置为1:50:1000,从而在企业成本与数据读写速度上达到一个平衡。本专利技术实施例在数据存储过程中通过在IO路径上进行重定向,可筛选出不同类型的数据,然后,针对不同类型的数据,分别存储在不同的存储介质中。其中,不同类型的数据包括热数据、温数据及冷数据。热数据是指读写量较大、读写时间与当前时间之间距离较近的数据;温数据是指读写量较少、读写时间与当前时间之间距离较远的数据;冷数据是指读写量很少、读写时间与当前时间之间距离很远的数据。利用RAM读写速度快、无数据写入次数限制的优势,本专利技术实施例将热数据存储到RAM中,通过承载大部分写流量,减少对SSD的数据写入次数,提高SSD使用寿命;利用SSD读写速度较快的优势,本专利技术实施例将温数据存储到SSD中,进一步提高系统的响应速度;利用HDD价格低廉的优势,本专利技术实施将冷数据存储到HDD中,降低企业成本。本专利技术实施例提供的数据存储系统具有以下优势第一、采用RAM和SSD结合的缓存方式,解决了基于HDD的云存储读写能力差的问题,使基于HDD的云存储也能有SSD级别的响应速度,极大的提升了用户体验。第二,采用RAM和SSD相结合的缓存方式,使云存储在成本上接近HDD,价格非常低廉,同时节省了企业运维成本。第三,基于RAM和SSD结合的缓存方式,通过将热数据存储到RAM中,将温数据存储到SSD中,极大的减少了SSD的数据写入流量,延长了SSD的使用寿命,进一步降低企业运维成本,同时提高系统的可维护性。基于写入请求的数据存储流程本专利技术实施例提供了一种数据存储方法,该方法应用于图2所示的云存储系统中,该云存储系统包括第一缓存单元和第二缓存单元,该第一缓存单元具有本文档来自技高网...

【技术保护点】
1.一种数据存储方法,其特征在于,所述方法包括:当接收到对第一数据的写入请求时,查询第二数据的存储位置,所述第二数据为与所述第一数据具有相同数据标识的已存储数据;当查询到所述第二数据存储在第一缓存单元时,将所述第一数据存储到所述第二缓存单元中,所述第一缓存单元具有确定的数据写入次数;返回对所述第一数据的写入结果。

【技术特征摘要】
1.一种数据存储方法,其特征在于,所述方法包括:当接收到对第一数据的写入请求时,查询第二数据的存储位置,所述第二数据为与所述第一数据具有相同数据标识的已存储数据;当查询到所述第二数据存储在第一缓存单元时,将所述第一数据存储到所述第二缓存单元中,所述第一缓存单元具有确定的数据写入次数;返回对所述第一数据的写入结果。2.根据权利要求1所述的方法,其特征在于,所述当查询到所述第二数据存储在所述第一缓存单元时,将所述第一数据存储到所述第二缓存单元中,包括:检测所述第二缓存单元中是否存在剩余存储位置;当所述第二缓存单元中存在剩余存储位置,将所述第一数据存储到第一数据队列的头部,所述第一数据队列用于存储所述第二缓存单元中的数据;当所述第二缓存单元中不存在剩余存储位置,将所述第一数据队列的尾部数据转移到第二数据队列的头部,将所述第一数据存储到所述第一数据队列的头部,所述第二数据队列用于存储所述第一缓存单元中的数据。3.根据权利要求2所述的方法,其特征在于,所述当所述第二缓存单元中不存在剩余存储位置,将所述第一数据队列的尾部数据转移到第二数据队列的头部,包括:检测所述第一缓存单元中是否存在剩余存储位置;当所述第一缓存单元中存在剩余存储位置,将所述第一数据队列的尾部数据转移到所述第二数据队列的头部;当所述第一缓存单元中不存在剩余存储位置,将所述第二数据队列的尾部数据转移到存储单元中,并将所述第一数据队列的尾部数据转移到所述第二数据队列的头部;其中,所述存储单元的数据读写速度慢于所述第一缓存单元的数据读写速度,所述第一缓存单元的数据读写速度慢于所述第二缓存单元的数据读写速度。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当查询到所述第二数据存储在所述第二缓存单元时,将所述第一数据转移到第一数据队列的头部,所述第一数据队列用于存储所述第二缓存单元中的数据。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当查询到所述第二数据未存储在所述第一缓存单元和所述第二缓存单元时,将所述第一数据存储到所述第一缓存单元中。6.根据权利要求5所述的方法,其特征在于,所述将所述第一数据存储到所述第一缓存单元中,包括:检测所述第一缓存单元中是否存在剩余存储位置;当所述第一缓存单元中存在剩余存储位置,将所述第一数据存储到第二数据队列的头部,所述第二数据队列用于存储所述第一缓存单元中的数据;当所述第一缓存单元中不存在剩余存储位置,将所述第二数据队列的尾部数据转移到存储单元中,并将所述第一数据存储到所述第二数据队列的头部;其中,所述存储单元的数据读写速度慢于所述第一缓存单元的数据读写速度,所述第一缓存单元的数据读写速度慢于所述第二缓存单元的数据读写速度。7.根据权利要求1至6中任一项所述的方法,其特征在于,所述方法还包括:当接收到对第三数据的读取请求时,获取所述第三数据;调整所述第三数据的存储位置,并返回...

【专利技术属性】
技术研发人员:胡健鹰陈光明周可王桦程彬肖志立吉永光
申请(专利权)人:腾讯科技深圳有限公司华中科技大学
类型:发明
国别省市:广东,44

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

1