CN105426779A - 一种利用nvram保证文件系统数据安全的方法 - Google Patents

一种利用nvram保证文件系统数据安全的方法 Download PDF

Info

Publication number
CN105426779A
CN105426779A CN201510802620.1A CN201510802620A CN105426779A CN 105426779 A CN105426779 A CN 105426779A CN 201510802620 A CN201510802620 A CN 201510802620A CN 105426779 A CN105426779 A CN 105426779A
Authority
CN
China
Prior art keywords
nvram
file system
write request
write
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510802620.1A
Other languages
English (en)
Other versions
CN105426779B (zh
Inventor
苑忠科
张会健
李美欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Beijing Electronic Information Industry Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201510802620.1A priority Critical patent/CN105426779B/zh
Publication of CN105426779A publication Critical patent/CN105426779A/zh
Application granted granted Critical
Publication of CN105426779B publication Critical patent/CN105426779B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6272Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database by registering files or documents with a third party

Abstract

本发明公开了一种利用NVRAM保证文件系统数据安全的方法,该方法包括:网络存储NAS客户端将数据的写入请求发送至文件系统层;所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中;所述NVRAM设置于所述文件系统层中;所述NVRAM依据所述写入请求分析要写入的数据是否是安全数据,若是,向所述NAS客户端返回所述写入请求。该方法实现提高文件系统对客户端的响应速度。

Description

一种利用NVRAM保证文件系统数据安全的方法
技术领域
本发明涉及存储技术领域,特别是涉及一种利用NVRAM保证文件系统数据安全的方法。
背景技术
目前,NVRAM(Non-VolatileRandomAccessMemory,非易失性随机访问存储器)是指断电后仍能保持数据的一种随机存储器RAM,常用在存储设备中保护数据写入到磁盘阵列前的数据安全。但是NVRAM成本比较高,文件系统又需要大量的用作缓冲cache的内存,需要将大量的普通RAM和少量NVRAM结合使用,做出既能降低整体成本又能保证数据在写入磁盘阵列前完整一致的规划设计。
常规下unix系统的NVRAM设计在块设备层,即块层,如附图1,这样网络存储NAS客户端需要将数据写到块设备层中的NVRAM才能保证文件系统数据的安全,这样需要让数据从网络存储NAS客户端写入文件系统层,再从文件系统写入块设备层,再进入到NVRAM中,这样使得文件系统响应客户端产生较长的时延,响应速度较低。
发明内容
本发明的目的是提供一种利用NVRAM保证文件系统数据安全的方法,以实现提高文件系统对客户端的响应速度。
为解决上述技术问题,本发明提供一种利用NVRAM保证文件系统数据安全的方法,该方法包括:
网络存储NAS客户端将数据的写入请求发送至文件系统层;
所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中;所述NVRAM设置于所述文件系统层中;
所述NVRAM依据所述写入请求分析要写入的数据是否是安全数据,若是,向所述NAS客户端返回所述写入请求。
优选的,所述NVRAM包括两个NVRAM空间,分别为第一NVRAM空间和第二NVRAM空间,所述第一NVRAM空间和第二NVRAM空间的存储容量是相同的。
优选的,所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中,包括:
所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间;其中,在同一个时间点,所述第一NVRAM空间和所述第二NVRAM空间之中仅有一个被用来接收并存储所述写入请求。
优选的,所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间之后,还包括:
当当前正在使用的一个NVRAM空间被写满时或者使用时间超过时间阈值时,所述文件系统将所述写入请求切换到另一个NVRAM空间。
优选的,所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间之后,还包括:
当当前正在使用的一个NVRAM空间被写满时,将被写满的NVRAM空间组织进行一次下刷。
优选的,当所述写入请求的操作标识为建立标识时,所述写入请求的数据格式包括:create标识、父目录inode,文件名和权限标识。
优选的,当所述写入请求的操作标识为写入标识时,所述写入请求的数据格式包括:write标识、文件inode,偏移量,长度和写入内容。
优选的,当所述写入请求的操作标识为打开标识时,所述写入请求的数据格式为:open标识、文件inode和偏移量。
本发明所提供的一种利用NVRAM保证文件系统数据安全的方法,网络存储NAS客户端将数据的写入请求发送至文件系统层;所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中;所述NVRAM设置于所述文件系统层中;所述NVRAM依据所述写入请求分析要写入的数据是否是安全数据,若是,向所述NAS客户端返回所述写入请求。该方法将NVRAM设计在文件系统一层,当NAS客户端的写入请求到达文件系统层后,会被首先存储在NVRAM中,这时NAS客户端的写请求便会返回,提高了文件系统对客户请求的反应速度,通过将NVRAM设计在文件系统层,提高了文件系统对NAS客户端的响应速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为传统unix系统NVRAM使用示意图;
图2为本发明提供的一种利用NVRAM保证文件系统数据安全的方法的流程示意图;
图3为本发明NVRAM使用示意图;
图4为NVRAM数据下刷示意图。
具体实施方式
本发明的核心是提供一种利用NVRAM保证文件系统数据安全的方法,以实现提高文件系统对客户端的响应速度。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图2,图2为本发明提供的一种利用NVRAM保证文件系统数据安全的方法的流程示意图,该方法包括:
S11:网络存储NAS客户端将数据的写入请求发送至文件系统层;
其中,数据的写入请求的格式有多种,当写入请求的操作标识为建立标识时,写入请求的数据格式包括:create标识、父目录inode,文件名和权限标识。当写入请求的操作标识为写入标识时,写入请求的数据格式包括:write标识、文件inode,偏移量,长度和写入内容。当写入请求的操作标识为打开标识时,写入请求的数据格式为:open标识、文件inode和偏移量。这样通过对要保护的数据的写入请求的数据格式优化,减少对NVRAM的用量比例,也降低整体成本,而且数据格式被优化,更加简化,对于简化的写入数据,响应速度更快,提高文件系统对NAS客户端的响应速度,
S12:文件系统层将写入请求存储在非易失性随机访问存储器NVRAM中;
其中,NVRAM设置于文件系统层中。将NVRAM设计在文件系统层,可参考图3,图3为本发明NVRAM使用示意图,文件系统层中包括文件系统和NVRAM,通过将NVRAM设计在文件系统层,提高了文件系统对NAS客户端的响应速度,。
其中,NVRAM包括两个NVRAM空间,分别为第一NVRAM空间和第二NVRAM空间,第一NVRAM空间和第二NVRAM空间的存储容量是相同的。
其中,文件系统层将写入请求存储在非易失性随机访问存储器NVRAM中的过程具体为:文件系统将写入请求写入第一NVRAM空间或者第二NVRAM空间;其中,在同一个时间点,第一NVRAM空间和第二NVRAM空间之中仅有一个被用来接收并存储写入请求。
其中,文件系统将写入请求写入第一NVRAM空间或者第二NVRAM空间之后,当当前正在使用的一个NVRAM空间被写满时或者使用时间超过时间阈值时,文件系统将写入请求切换到另一个NVRAM空间,当当前正在使用的一个NVRAM空间被写满时,将被写满的NVRAM空间组织进行一次下刷。这样通过写满的NVRAM空间组织下刷流程,使异常宕机再上电后能有效的组织下刷停留在NVRAM中的数据,尽快恢复正常作业,NVRAM中仍有充足的存储空间用来处理写入请求,这样在宕机再上电之后的情况下,仍能提高文件系统对NAS客户端的响应速度。
S13:NVRAM依据写入请求分析要写入的数据是否是安全数据,若是,向NAS客户端返回写入请求。
本发明所提供的一种利用NVRAM保证文件系统数据安全的方法,该方法将NVRAM设计在文件系统一层,当NAS客户端的写入请求到达文件系统层后,会被首先存储在NVRAM中,这时NAS客户端的写请求便会返回,提高了文件系统对客户请求的反应速度,通过将NVRAM设计在文件系统层,提高了文件系统对NAS客户端的响应速度。
具体的,对于NVRAM位置设置,将NVRAM设计在文件系统一层,当NAS客户端的写数据即写入请求到达文件系统层后,会被首先存储在NVRAM中,这时NAS客户端的写入请求便会返回,提高了文件系统对客户请求的反应速度。通过将NVRAM设计在文件系统层,提高了文件系统对NAS客户端的响应速度。
对于NVRAM使用方面,将NVRAM会被平均分成两份空间,在一个时间点只有一块空间被用来接收并储存NAS客户端的写入请求即写请求数据。当当前使用的空间被写满或者超过一定时间阈值,例如8s,文件系统会将NAS客户端的写入请求切换到另一块空间。被写满的NVRAM空间中的数据会被组织进行一次下刷,这样不断在两块空间进行切换存储客户端的写入请求。这样通过写满的NVRAM空间组织下刷流程,使异常宕机再上电后能有效的组织下刷停留在NVRAM中的数据,尽快恢复正常作业,NVRAM中仍有充足的存储空间用来处理写入请求,这样在宕机再上电之后的情况下,仍能提高文件系统对NAS客户端的响应速度。
详细的,当一块NVRAM空间写满或者时间超过一定阈值,文件系统会触发一次下刷流程。当异常宕机再次上电后也会先进行一次彻底的数据下刷工作,参考图4,图4为NVRAM数据下刷示意图。图4中,NVRAM分为两部分,左端部分和右端部分,左端NVRAM空间是左端第一行存储openc.test的那一列存储空间,是还没有写进数据的NVRAM空间;右端NVRAM空间是右边第一行为removeb.test的那一列存储空间,是已经被写满的存储空间,由于右端NVRAM空间已经被写满了,NAS客户端下发的业务转移到左端NVRAM空间;右端NVRAM空间里面的数据中,与事物b相对应的存储数据都读入到缓冲器B中,与事务a相对应的存储数据都读入到缓冲器A中。
具体下刷流程如下:
(1)发起程序发出下刷请求,这时客户端发来的正常业务已经被转移到另一块NVRAM空间中。
(2)发起程序通过访问NVRAM中请求报文reqheader确定请求req的数量。一组相关联的请求对应一个事务,并将事务块的状态设置成新状态,即设置为“new”。每个事务块包含状态标志位和一个指针指向缓冲器buffer。
(3)如果事务块的状态不是再次加载状态,即“loadagain”,则将各个事务所需数据并行的读入缓冲器buffer中,读取成功后设置事务块的状态为被加载状态,即“loaded”。如果读取失败,标记错误并把事务块的状态设置成再次加载状态,即“loadagain”,当所有先决条件事务完成后重新加载。
(4)按照日志记录nvlog记录顺序,依次对缓冲器buffer中的数据执行修改操作,包括文件数据和元数据。如果修改成功则将事务块状态设置为被改进的,即“modified”。
(5)全部事务的数据处理完毕后,将事务相关的缓冲器buffer的数据下刷到磁盘。如果某个事物重新加载的次数超过阈值则返回错误。
对于NVRAM存储的数据的写入请求的数据格式方面,进行了优化,具体的,NVRAM存储的内容类似于线上交易处理OLTP数据库系统的log记录,每条NAS客户端的写入请求的数据格式被记录为类似如下形式:
create标识父目录inode文件名权限标识;
open标识文件inode偏移量;
write标识文件inode偏移量长度写入内容;
remove标识文件inode;
如此,当create操作时除了给出父目录inode和文件名外还需要相应权限字段。open操作时需要给出偏移量。write操作为主要操作,需要给出偏移量、写入长度和写入内容,当写入内容为空或特殊标识时为删除文件内容操作。Remove操作为删除整个文件。这样尽最大程度精简每条NAS客户端写入请求的数据格式的内容,以最大程度利用NVRAM空间。这样通过对要保护的数据的写入请求的数据格式优化,减少对NVRAM的用量比例,也降低整体成本,而且数据格式被优化,更加简化,对于简化的写入数据,响应速度更快,提高文件系统对NAS客户端的响应速度。
综上,本发明所提供的一种利用NVRAM保证文件系统数据安全的方法,本发明所提供的一种利用NVRAM保证文件系统数据安全的方法,该方法将NVRAM设计在文件系统一层,当NAS客户端的写入请求到达文件系统层后,会被首先存储在NVRAM中,这时NAS客户端的写入请求便会返回,提高了文件系统对客户请求的反应速度,通过将NVRAM设计在文件系统层,提高了文件系统对NAS客户端的响应速度。
并且,通过对要保护的数据的写入请求的数据格式优化,减少对NVRAM的用量比例,也降低整体成本,而且数据格式被优化,更加简化,对于简化的写入数据,响应速度更快,提高文件系统对NAS客户端的响应速度;通过写满的NVRAM空间组织下刷流程,使异常宕机再上电后能有效的组织下刷停留在NVRAM中的数据,尽快恢复正常作业,NVRAM中仍有充足的存储空间用来处理写入请求,这样在宕机再上电之后的情况下,仍能提高文件系统对NAS客户端的响应速度。
以上对本发明所提供的一种利用NVRAM保证文件系统数据安全的方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (8)

1.一种利用NVRAM保证文件系统数据安全的方法,其特征在于,包括:
网络存储NAS客户端将数据的写入请求发送至文件系统层;
所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中;所述NVRAM设置于所述文件系统层中;
所述NVRAM依据所述写入请求分析要写入的数据是否是安全数据,若是,向所述NAS客户端返回所述写入请求。
2.如权利要求1所述的方法,其特征在于,所述NVRAM包括两个NVRAM空间,分别为第一NVRAM空间和第二NVRAM空间,所述第一NVRAM空间和第二NVRAM空间的存储容量是相同的。
3.如权利要求2所述的方法,其特征在于,所述文件系统层将所述写入请求存储在非易失性随机访问存储器NVRAM中,包括:
所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间;其中,在同一个时间点,所述第一NVRAM空间和所述第二NVRAM空间之中仅有一个被用来接收并存储所述写入请求。
4.如权利要求3所述的方法,其特征在于,所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间之后,还包括:
当当前正在使用的一个NVRAM空间被写满时或者使用时间超过时间阈值时,所述文件系统将所述写入请求切换到另一个NVRAM空间。
5.如权利要求3所述的方法,其特征在于,所述文件系统将所述写入请求写入所述第一NVRAM空间或者所述第二NVRAM空间之后,还包括:
当当前正在使用的一个NVRAM空间被写满时,将被写满的NVRAM空间组织进行一次下刷。
6.如权利要求1至5中任意一项所述的方法,其特征在于,当所述写入请求的操作标识为建立标识时,所述写入请求的数据格式包括:create标识、父目录inode,文件名和权限标识。
7.如权利要求1至5中任意一项所述的方法,其特征在于,当所述写入请求的操作标识为写入标识时,所述写入请求的数据格式包括:write标识、文件inode,偏移量,长度和写入内容。
8.如权利要求1至5中任意一项所述的方法,其特征在于,当所述写入请求的操作标识为打开标识时,所述写入请求的数据格式为:open标识、文件inode和偏移量。
CN201510802620.1A 2015-11-19 2015-11-19 一种利用nvram保证文件系统数据安全的方法 Active CN105426779B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510802620.1A CN105426779B (zh) 2015-11-19 2015-11-19 一种利用nvram保证文件系统数据安全的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510802620.1A CN105426779B (zh) 2015-11-19 2015-11-19 一种利用nvram保证文件系统数据安全的方法

Publications (2)

Publication Number Publication Date
CN105426779A true CN105426779A (zh) 2016-03-23
CN105426779B CN105426779B (zh) 2018-06-05

Family

ID=55504982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510802620.1A Active CN105426779B (zh) 2015-11-19 2015-11-19 一种利用nvram保证文件系统数据安全的方法

Country Status (1)

Country Link
CN (1) CN105426779B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014929A (zh) * 2004-07-30 2007-08-08 美国联合包裹服务公司 使用nvram进行存储器管理的系统、方法、计算机可读介质和设备
KR20110076345A (ko) * 2009-12-29 2011-07-06 홍익대학교 산학협력단 비휘발성 램을 이용하여 연산 처리의 원자성을 보장하는 컴퓨팅 시스템 및 방법
US20110271144A1 (en) * 2010-04-30 2011-11-03 Honeywell International Inc. Approach for data integrity in an embedded device environment
CN102799497A (zh) * 2011-05-24 2012-11-28 鸿富锦精密工业(深圳)有限公司 Nvram数据恢复系统及方法
CN103975287A (zh) * 2011-12-13 2014-08-06 英特尔公司 使用非易失性随机存取存储器的服务器中的增强系统睡眠状态支持

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014929A (zh) * 2004-07-30 2007-08-08 美国联合包裹服务公司 使用nvram进行存储器管理的系统、方法、计算机可读介质和设备
KR20110076345A (ko) * 2009-12-29 2011-07-06 홍익대학교 산학협력단 비휘발성 램을 이용하여 연산 처리의 원자성을 보장하는 컴퓨팅 시스템 및 방법
US20110271144A1 (en) * 2010-04-30 2011-11-03 Honeywell International Inc. Approach for data integrity in an embedded device environment
CN102799497A (zh) * 2011-05-24 2012-11-28 鸿富锦精密工业(深圳)有限公司 Nvram数据恢复系统及方法
CN103975287A (zh) * 2011-12-13 2014-08-06 英特尔公司 使用非易失性随机存取存储器的服务器中的增强系统睡眠状态支持

Also Published As

Publication number Publication date
CN105426779B (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
CN107967124B (zh) 一种分布式持久性内存存储系统及方法
CN105718217B (zh) 一种精简配置存储池数据一致性维护的方法及装置
CN102467408B (zh) 一种虚拟机数据的访问方法和设备
CN103136243B (zh) 基于云存储的文件系统去重方法及装置
US10140194B2 (en) Storage system transactions
CN108170768A (zh) 数据库同步方法、装置及可读介质
CN103761190B (zh) 数据处理方法及装置
CN103514249B (zh) 一种数据自精简方法和系统及存储装置
CN109800185B (zh) 一种数据存储系统中的数据缓存方法
CN102843396A (zh) 一种分布式缓存系统中的数据写入及读取方法及装置
CN102024044A (zh) 分布式文件系统
CN106066890B (zh) 一种分布式高性能数据库一体机系统
KR101574451B1 (ko) 트랜잭션 메모리 시스템 내구성 부여
CN103605630B (zh) 一种虚拟服务器系统及其数据读写方法
CN102750317A (zh) 数据持久化处理方法、装置及数据库系统
CN106445409A (zh) 一种分布式块存储的数据写入方法及装置
CN104809178A (zh) 一种键值数据库内存日志的写入方法
CN103678149A (zh) 数据处理的方法及设备
CN110347613A (zh) 多租户固态盘中实现raid的方法、控制器及多租户固态盘
CN106201652A (zh) 一种数据处理方法及虚拟机
CN103744975A (zh) 基于分布式文件的高效缓存服务器
CN107632780A (zh) 一种基于分布式存储系统的条带卷实现方法及其存储架构
CN108965054A (zh) 一种客户端与服务端数据快速交互方法
CN104079600A (zh) 文件存储方法、装置、访问客户端及元数据服务器系统
CN106610788B (zh) 硬盘阵列控制方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant