数据存储方法、数据存储装置和存储设备制造方法及图纸

技术编号:12348057 阅读:177 留言:0更新日期:2015-11-18 19:57
本发明专利技术实施例提供了一种数据存储方法、装置和存储设备,包括:接收文件处理请求,将所述文件处理请求拆分成多个文件操作,分别对每个文件操作进行文件处理生成多个文件操作信息;将所述多个文件操作信息全部写入所述缓存保护区;当第一控制器发生故障后又上电时,在所述缓存保护区中恢复所述多个文件操作信息;根据所述多个文件操作信息获得数据信息,并将所述数据信息写入所述第一写缓存,以供所述主机访问所述数据信息。可以提高主机访问数据的效率。

【技术实现步骤摘要】

本专利技术涉及存储技术,尤其涉及一种数据存储方法、数据存储装置和存储设备
技术介绍
对于具有文件系统的存储设备来说,写入存储设备的数据需要具有原子性。所谓原子性是指事务的完整操作,与该事务相关的数据要么全部写入,要么全部不写入。在现有技术中,数据的原子性是在磁盘中保证的,缓存中的数据通常不具有原子性,也就是说只有磁盘中存储的数据才能被认为是可靠的数据,可以提供给主机。通常情况下,若存储设备出现故障,需要先在缓存中恢复出数据,然后将缓存中的数据写入磁盘,在将缓存中的数据写入磁盘时通过日志手段保证写入磁盘的数据是具有原子性的。当主机向存储设备发送访问请求要求访问该数据时,也需要先从磁盘中获取具有原子性的数据,再提供给主机,这就延长了处理主机发送的访问请求的时间。
技术实现思路
本专利技术实施例提供了一种数据存储方法、装置和存储设备,以提高主机访问数据的效率。第一方面,本专利技术实施例提供了一种数据存储方法,所述方法应用于存储系统中,所述存储系统包括存储设备和主机,所述存储设备包括第一控制器,所述第一控制器包括缓存保护区和第一写缓存,所述缓存保护区具有数据保护功能,所述方法包括:第一控制器接收文件处理请求,将所述文件处理请求拆分成多个文件操作,分别对每个文件操作进行文件处理生成多个文件操作信息;将所述多个文件操作信息全部写入所述缓存保护区;当第一控制器发生故障后又上电时,在所述缓存保护区中恢复所述多个文件操作信息;根据所述多个文件操作信息获得数据信息,并将所述数据信息写入所述第一写缓存,以供所述主机访问所述数据信息。结合第一方面,在第一种可能的实现方式中,所述将所述多个文件操作信息全部写入所述缓存保护区包括:为每个文件操作信息在所述缓存保护区中申请存储空间;将所述每个文件操作信息保存在所述申请的存储空间中;确定所述多个文件操作信息均已保存在对应的存储空间中;将所述保存有所述多个文件操作信息的存储空间中的数据,保存在所述缓存保护区对应的数据结构中。结合第一方面,在第二种可能的实现方式中,所述将所述多个文件操作信息全部写入所述缓存保护区包括:依次将每个文件操作信息发送给所述缓存保护区;确定所述多个文件操作信息均已发送给所述缓存保护区;设置所述缓存保护区中接收的所述多个文件操作信息对应的标记,所述标记用于表示所述多个文件操作信息已全部写入所述缓存保护区。结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述存储设备包括存储器,所述存储器包括保护区;所述方法还包括:当第一控制器发生故障时,根据所述缓存保护区对应的数据结构确定所述缓存保护区中包括所述多个文件操作信息;通过掉电保护程序将所述多个文件操作信息保存在所述存储器的保护区。结合第一方面的第二种可能的实现方式,在第四种可能的实现方式中,所述存储设备包括存储器,所述存储器包括保护区;所述方法还包括:当第一控制器发生故障时,根据所述标记确定所述缓存保护区中包括所述多个文件操作信息;通过掉电保护程序将所述多个文件操作信息保存在所述存储器的保护区。结合第一方面,在第五种可能的实现方式中,所述存储设备包括第二控制器,所述第二控制器包括第二写缓存;所述方法还包括:第一控制器将所述多个文件操作信息发送给所述第二控制器,使得所述第二控制器根据所述多个文件操作信息获得所述文件处理请求对应的数据信息,并将所述数据信息写入所述第二写缓存。第二方面,本专利技术实施例提供了一种数据存储方法,所述方法应用于存储系统中,所述存储系统包括存储设备和主机,所述存储设备包括第一控制器、第二控制器和存储器,所述第二控制器包括写缓存,所述方法包括:所述第一控制器接收文件处理请求,将所述文件处理请求拆分成多个文件操作,分别对每个文件操作进行文件处理生成多个文件操作信息;将所述多个文件操作信息发送给所述第二控制器;所述第二控制器根据所述文件操作信息获得数据信息,将所述数据信息写入写缓存,以供第一控制器发生故障时,主机访问所述数据信息或者对所述存储器执行与所述文件处理请求相应的操作。结合第二方面,在第一种可能的实现方式中,所述将所述多个文件操作信息发送给所述第二控制器包括:所述第一控制器向所述第二控制器发送第一镜像消息,所述第一镜像消息包括所述多个文件操作信息。结合第二方面,在第二种可能的实现方式中,所述将所述多个文件操作信息发送给所述第二控制器包括:所述第一控制器向所述第二控制器发送多个第二镜像消息,每个所述第二镜像消息包括所述多个文件操作信息中的一个文件操作信息。结合第二方面,在第三种可能的实现方式中,所述第二控制器包括缓存保护区,所述缓存保护区具有数据保护功能;在所述第二控制器根据所述文件操作信息获得数据信息,将所述数据信息写入写缓存之前所述方法还包括:所述第二控制器将所述文件操作信息全部写入所述缓存保护区。结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,还包括:当所述第二控制器发生故障又上电时,在所述缓存保护区中恢复所述多个文件操作信息;所述第二控制器根据所述文件操作信息获得数据信息,将所述数据信息写入写缓存包括:所述第二控制器根据所述缓存保护区中保存的所述多个文件操作信息获得所述数据信息,将所述数据信息写入所述写缓存。结合第二方面的第三种可能的实现方式,在第五种可能的实现方式中,所述第二控制器将所述文件操作信息全部写入所述缓存保护区包括:为每个文件操作信息在所述缓存保护区中申请存储空间;将所述每个文件操作信息保存在所述申请的存储空间中;确定所述多个文件操作信息均已保存在对应的存储空间中;将所述保存有所述多个文件操作信息的存储空间中的数据,保存在所述缓存保护区对应的数据结构中。结合第二方面的第三种可能的实现方式,在第六种可能的实现方式中,所述第二控制器将所述文件操作信息全部写入所述缓存保护区包括:依次将每个文件操作信息发送给所述缓存保护区;确定所述多个文件操作信息均已发送给所述缓存保护区;设置所述缓存保护区中接收的所述多个文件操作信息对应的标记,所述标记用于表示所述多个文件操作信息已全部写入所述缓存保护区。第三方面,本专利技术实施例提供了一种数据存储的装置,包括:文件处理模块,用于接收文件处理请求,将所述文件处理请求拆分成多个文件操作,分别对每个文件操作进行文件处理生成多个文件操作信息;写入模块,用于将所述多个文件操作信息全部写入缓存保护区;恢复模块,用于当第一控制器发生故障后又上电时,在所述缓存保护区中恢复所述多个文件操作信息;所述写入模块,还用于根据所述多个文件操作信息获得数据信息,并将所述数据信息写入第一写缓存,以供所述主机访问所述数据信息。结合第三方面,在第一种可能的实现方式中,所述写入模块用于:为每个文件操作信息在所述缓存保护区中申请存储空间;将所述每个文件操作信息保存在所述申请的存储空间中;确定所述多个文件操作信息均已保存在对应的存储空间中;将所述保存有所述多个文件操作信息的存储空间中的数据,保存在所述缓存保护区对应的数据结构中。结合第三方面,在第二种可能的实现方式中,所述写入模块用于:依次将每个文件操作信息发送给所述缓存保护区;确定所述多个文件操作信息均已发送给所述缓存保护区;设置所述缓存保护区中接收的所述多个文件操作信息对应的标记,所述标记用于表示所述本文档来自技高网...

【技术保护点】
一种数据存储方法,其特征在于,所述方法应用于存储系统中,所述存储系统包括存储设备和主机,所述存储设备包括第一控制器,所述第一控制器包括缓存保护区和第一写缓存,所述缓存保护区具有数据保护功能,所述方法包括:第一控制器接收文件处理请求,将所述文件处理请求拆分成多个文件操作,分别对每个文件操作进行文件处理,生成所述文件处理请求对应的多个文件操作信息;将所述文件处理请求对应的多个文件操作信息全部写入所述缓存保护区;当第一控制器发生故障后又上电时,在所述缓存保护区中恢复所述多个文件操作信息;根据所述多个文件操作信息获得数据信息,并将所述数据信息写入所述第一写缓存,以供所述主机访问所述数据信息。

【技术特征摘要】

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

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

1