一种将数据写入存储设备的方法及存储设备技术

技术编号:12737367 阅读:92 留言:0更新日期:2016-01-20 21:40
本发明专利技术公开了一种将数据写入存储设备的方法及存储设备,用于解决因写缓存中存储的数据过多而导致写缓存失效的技术问题。该方法包括:确定所述第一存储空间中可用的存储容量,所述第一存储空间用于存储通过回写模式写入的数据及通过透写模式写入的数据;若所述第一存储空间中可用的存储容量小于等于预设容量,则将所述写缓存中存储的数据写入所述第二存储空间;所述第二存储空间用于存储从所述写缓存写入的数据。

【技术实现步骤摘要】

本专利技术涉及存储
,特别涉及一种将数据写入存储设备的方法及存储设备
技术介绍
目前,存储设备为了缩短对主机的响应时延,通常都工作在回写(write back)模式下,回写模式是一种缓存技术,即,先将数据写到写缓存,再从写缓存中写到SSD(SolidState Drive,固态硬盘)中的缓存技术。在回写模式中,数据先写到写缓存中,一旦数据写到写缓存中,存储设备就会发送写请求已完成信号,之后再将写缓存的数据写到SSD中。然而,随着写入的数据增多,SSD的空间也会逐渐耗尽,当SSD的空间耗尽时,如果写缓存中有未写入SSD中的数据,那么这些数据就会滞留在写缓存中,无法写入SSD。如果存储在写缓存中的数据过多,则可能会占满写缓存,导致写缓存失效。
技术实现思路
本专利技术实施例提供一种将数据写入存储设备的方法及存储设备,用于解决因写缓存中存储的数据过多而导致写缓存失效的技术问题。第一方面,提供一种将数据写入存储设备的方法,所述存储设备包括SSD、写缓存和处理器,所述SSD至少包括第一存储空间和第二存储空间,所述写缓存中存储有数据;所述方法由所述处理器执行包括以下步骤:确定所述第一存储空间中可用的存储容量,所述第一存储空间用于存储通过回写模式写入的数据及通过透写模式写入的数据;若所述第一存储空间中可用的存储容量小于等于预设容量,则将所述写缓存中存储的数据写入所述第二存储空间;所述第二存储空间用于存储从所述写缓存写入的数据。结合第一方面,在第一方面的第一种可能的实现方式中,所述存储设备还包括第一缓存,所述第一缓存用于存储写数据模式对应的标识,所述写数据模式对应的标识用于指示所述存储设备的写数据模式;在确定所述第一存储空间中可用的存储容量之后,还包括:若所述第一存储空间中可用的存储容量小于等于所述预设容量,将所述写数据模式对应的标识设置为所述透写模式对应的标识,以将所述存储设备的写数据模式设置为所述透写模式。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,在将所述存储设备的写数据模式对应的标识设置为透写模式对应的标识之后,还包括:接收待写入所述存储设备的第一数据;根据所述写数据模式对应的标识确定所述存储设备的写数据模式为所述透写模式;确定所述第一存储空间中可用的存储容量;若所述第一存储空间中可用的存储容量小于等于所述预设容量,拒绝将所述第一数据写入所述SSD,并返回写入失败的消息;否则,将所述第一数据写入所述第一存储空间。结合第一方面,在第一方面的第三种可能的实现方式中,在确定所述第一存储空间中可用的存储容量之后,还包括:若所述第一存储空间中可用的存储容量小于等于所述预设容量,设置所述第一存储空间对应的标识,所述第一存储空间对应的标识用于指示所述第一存储空间中可用的存储容量小于等于所述预设容量;接收待写入所述存储设备的第二数据;判断是否存在所述第一存储空间对应的标识;若存在所述第一存储空间对应的标识,则拒绝将所述第一数据写入所述存储设备,并返回写入失败的消息;否则,若不存在所述第一存储空间对应的标识,则根据写数据模式对应的标识确定当前的写数据模式,并根据确定的写数据模式将所述第二数据写入所述存储设备;其中,所述存储设备还包括第一缓存,所述第一缓存用于存储所述写数据模式对应的标识,所述写数据模式对应的标识用于指示所述存储设备的写数据模式。结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,在设置所述第一存储空间对应的标识之后,还包括:若所述第一存储空间中可用的存储容量大于所述预设容量,则删除所述第一存储空间对应的标识。结合第一方面或第一方面的第一种可能的实现方式至第四种可能的实现方式中的任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述第一存储空间中可用的存储容量通过以下公式计算:K = S-R-Y其中,K为所述第一存储空间中可用的存储容量,S为所述SSD的总存储容量,R为所述第二存储空间的存储容量,Y为所述第一存储空间中已用的存储容量;其中,R通过以下公式计算:R = C/U+BXT其中,C为所述写缓存的存储容量,U为所述SSD的最差空间利用率,B为在写数据时系统能够接受的最大带宽,T为时长,且在所述时长内接收的待写入所述SSD的数据量小于等于所述第二存储空间的存储容量。第二方面,提供一种存储设备,包括SSD、写缓存和处理器,所述SSD至少包括第一存储空间和第二存储空间,所述写缓存中存储有数据;其中,所述处理器用于:确定所述第一存储空间中可用的存储容量,所述第一存储空间用于存储通过回写模式写入的数据及通过透写模式写入的数据;若所述第一存储空间中可用的存储容量小于等于所述预设容量,则将所述写缓存中存储的数据写入所述第二存储空间;所述第二存储空间用于存储从所述写缓存写入的数据。结合第二方面,在第二方面的第一种可能的实现方式中,所述存储设备还包括第一缓存,所述第一缓存用于存储写数据模式对应的标识,所述写数据模式对应的标识用于指示所述存储设备的写数据模式;所述处理器还用于:在确定所述第一存储空间中可用的存储容量之后,若所述第一存储空间中可用的存储容量小于等于所述预设容量,将所述写数据模式对应的标识设置为所述透写模式对应的标识,以将所述存储设备的写数据模式设置为所述透写模式。结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述处理器还用于:在将所述存储设备的写数据模式对应的标识设置为透写模式对应的标识之后,接收待写入所述存储设备的第一数据;根据所述写数据模式对应的标识确定所述存储设备的写数据模式为所述透写模式;确定所述第一存储空间中可用的存储容量;若所述第一存储空间中可用的存储容量小于等于所述预设容量,拒绝将所述第一数据写入所述SSD,并返回写入失败的消息;否则,将所述第一数据写入所述第一存储空间。结合第二方面,在第二方面的第三种可能的实现方式中,所述处理器还用于:在确定所述第一存储空间中可用的存储容量之后,若所述第一存储空间中可用的存储容量小于等于所述预设容量,设置所述第一存储空间对应的标识,所述第一存储空间对应的标识用于指示所述第一存储空间中可用的存储容量小于等于所述预设容量;接收待写入所述存储设备的第二数据;判断是否存在所述第一存储空间对应的标识;若存在所述第一存储空间对应的标识,则拒绝将所述第一数据写入所述存储设备,并返回写入失败的消息;否则,若不存在所述第一存储空间对应的标识,则根据写数据模式对应的标识确定当前的写数据模式,并根据确定的写数据模式将所述第二数据写入所述存储设备;其中,所述存储设备还包括第一缓存,所述第一缓存用于存储所述写数据模式对应的标识,所述写数据模式对应的标识用于指示所述存储设备的写数据模式。结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述处理器还用于:在设置所述第一存储空间对应的标识之后,若所述第一存储空间中可用的存储容量大于所述预设容量,则删除所述第一存储空间对应的标识。结合第二方面或第二方面的第一种可能的实现方式至第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述第一存储空间中可用的存储容量通过以下公式计算:K = S-R-Y其中,K为所述第一存储本文档来自技高网...
一种将数据写入存储设备的方法及存储设备

【技术保护点】
一种将数据写入存储设备的方法,其特征在于,所述存储设备包括固态硬盘SSD、写缓存和处理器,所述SSD至少包括第一存储空间和第二存储空间,所述写缓存中存储有数据;所述方法由所述处理器执行包括以下步骤:确定所述第一存储空间中可用的存储容量,所述第一存储空间用于存储通过回写模式写入的数据及通过透写模式写入的数据;若所述第一存储空间中可用的存储容量小于等于预设容量,则将所述写缓存中存储的数据写入所述第二存储空间;所述第二存储空间用于存储从所述写缓存写入的数据。

【技术特征摘要】

【专利技术属性】
技术研发人员:李劲松
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1