CN110879760B - 一种统一存储系统及方法、电子设备 - Google Patents
一种统一存储系统及方法、电子设备 Download PDFInfo
- Publication number
- CN110879760B CN110879760B CN201811033879.4A CN201811033879A CN110879760B CN 110879760 B CN110879760 B CN 110879760B CN 201811033879 A CN201811033879 A CN 201811033879A CN 110879760 B CN110879760 B CN 110879760B
- Authority
- CN
- China
- Prior art keywords
- data
- storage
- file
- storage device
- block
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000001360 synchronised effect Effects 0.000 claims abstract description 19
- 230000015654 memory Effects 0.000 claims description 33
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000013500 data storage Methods 0.000 claims description 15
- 238000007726 management method Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012806 monitoring device Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种统一存储系统及方法、电子设备,包括互为主、备用存储设备的两存储设备,包括NAS存储模块,用于进行文件数据的读/写操作;SAN存储模块,用于进行块数据的读/写操作;VFS文件系统接口,用于进行文件数据的读/写操作控制;SCST目标子系统接口,用于进行块数据的读/写操作控制;缓存单元,若为主存储设备,用于根据写操作控制,对文件数据和/或块数据进行缓存,并进行备份然后将备份数据发送至备用存储设备,及根据读操作控制,查找获取所请求的文件数据和/或块数据;若为备用存储设备,接收由主存储设备发送的备份数据。本发明能够实现统一存储功能,以及数据的同步备份与管理,无需额外配置专用存储设备。
Description
技术领域
本发明涉及统一存储技术领域,特别是指一种统一存储系统及方法、电子设备。
背景技术
统一存储系统可通过统一管理界面实现多种类型数据的存储管理,既支持基于文件的NAS存储,又支持基于块数据的SAN存储,能够大幅降低企业内部数据存储管理的复杂性,扩展容易,成本较低。
现有的统一存储系统实现方案包括以下几种:第一种是配置独立的块存储设备与独立的NAS存储机头,虽能实现统一存储功能,但因产生额外费用导致成本较高;第二种是单端设备实现数据存储功能,无数据同步备份功能,一旦单端设备故障,数据容易丢失,可靠性不高。在单端设备的基础上,为实现数据备份可配置专用的数据同步卡或IB卡,虽可实现单端设备中数据的同步备份,但会产生额外费用,更无法实现数据存储的管理。
发明内容
有鉴于此,本发明的目的在于提出一种统一存储系统及方法、电子设备,能够实现统一存储功能,以及数据的同步备份与管理。
基于上述目的,本发明提供了一种统一存储系统,包括互为主、备用存储设备的两个存储设备,所述存储设备包括:
NAS存储模块,用于进行文件数据的读/写操作;
SAN存储模块,用于进行块数据的读/写操作;
VFS文件系统接口,用于进行文件数据的读/写操作控制;
SCST目标子系统接口,用于进行块数据的读/写操作控制;
缓存单元,若为主存储设备,用于根据所述写操作控制,对所述文件数据和/或块数据进行缓存,并进行备份然后将备份数据发送至备用存储设备,以及根据所述读操作控制,查找获取所请求的文件数据和/或块数据;若为备用存储设备,接收由所述主存储设备发送的备份数据。
可选的,所述缓存单元包括:
数据接收模块,用于接收所述VFS文件系统接口和/或SCST目标子系统接口发送的写数据请求,所述写数据请求包括写文件数据请求、写块数据请求;
数据同步模块,若为所述主存储设备,用于根据所述写数据请求,将接收的文件数据和/或块数据进行缓存,并进行备份然后将备份数据发送至所述备用存储设备,若为所述备用存储设备,用于接收并保存所述主存储设备发送的备份数据;
数据存储模块,用于将接收的文件数据和/或块数据传输至系统的存储阵列单元。
可选的,所述VFS文件系统接口包括:
文件数据存储控制模块,用于生成所述写文件数据请求,所述写文件数据请求包括文件数据、存储所述文件数据的目标设备信息,所述目标设备信息包括将所述文件数据直接写入所述缓存单元的控制参数。
可选的,所述缓存单元还包括:
所述数据接收模块,用于接收所述VFS文件系统接口和/或SCST目标子系统接口发送的读数据请求,所述读数据请求包括读文件数据请求、读块数据请求;
数据读取模块,用于根据所述读数据请求,查找所述缓存单元中是否存在所请求的数据,若存在则将查找到的数据返回,若不存在则从所述存储阵列单元中查找所请求的数据。
可选的,所述VFS文件系统接口还包括:
文件数据读取控制模块,用于生成所述读文件数据请求,所述读文件数据请求包括读取文件数据,及存储所述读取文件数据的目标设备信息。
可选的,所述SCST目标子系统接口包括:
块数据存储控制模块,用于生成所述写块数据请求,所述写块数据请求包括块数据,及存储所述块数据的目标设备信息。
可选的,所述SCST目标子系统接口还包括:
块数据读取控制模块,用于生成所述读块数据请求,所述读块数据请求包括读取块数据,及存储所述读取块数据的目标设备信息。
可选的,所述缓存单元对所述文件数据和/或块数据进行缓存,以及进行备份然后将备份数据发送至所述备用存储设备的过程同步进行。
可选的,所述主、备用存储设备之间通过万兆网建立数据同步传输通道。
可选的,所述统一存储系统,还包括:
HA管理模块,用于定时检测所述主、备用存储设备之间的心跳信号是否正常,以及当检测到所述主、备用存储设备之一存在故障或二者的数据同步传输通道存在故障时,进行主备切换操作。
本发明实施例还提供一种基于所述统一存储系统实现的统一存储方法,包括:
进行写数据操作;
将数据直接传输至缓存单元;
所述缓存单元接收所述数据,缓存所述数据,并将数据进行备份然后将备份数据发送至备用存储设备。
可选的,所述统一存储方法,还包括:
进行读数据操作;
查找所述缓存单元中是否存在所请求的数据;
若存在,则直接从所述缓存单元中获取所述数据,返回数据;
若不存在,则从系统的存储阵列单元中获取所述数据,返回数据。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述所述统一存储方法。
从上面所述可以看出,本发明提供的统一存储系统及方法、电子设备,包括互为主、备用存储设备的两个存储设备,包括NAS存储模块,用于进行文件数据的读/写操作;SAN存储模块,用于进行块数据的读/写操作;VFS文件系统接口,用于进行文件数据的读/写操作控制;SCST目标子系统接口,用于进行块数据的读/写操作控制;缓存单元,若为主存储设备,用于根据写操作控制,对文件数据和/或块数据进行缓存,并进行备份然后将备份数据发送至备用存储设备,以及根据读操作控制,查找获取所请求的文件数据和/或块数据;若为备用存储设备,接收由主存储设备发送的备份数据。本发明的统一存储系统能够实现统一存储功能,以及数据的同步备份与管理,无需额外配置专用存储设备。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的统一存储系统的结构示意图;
图2为本发明实施例的缓存单元的结构示意图;
图3为本发明实施例的统一存储方法的写数据流程示意图;
图4为本发明实施例的统一存储方法的读数据流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
图1为本发明实施例的统一存储系统的结构示意图。如图所示,本发明实施例提供的统一存储系统基于高可用集群(HA,High Available)架构实现,系统包括第一存储设备10与第二存储设备20,第一存储设备10的结构与第二存储设备20的结构相同,工作过程中,其中一个为主存储设备,另一个为备用存储设备。
本发明实施例中,第一存储设备10包括;
NAS存储模块,用于进行文件数据的读/写操作;
SAN存储模块,用于进行块数据的读/写操作;
VFS文件系统接口,用于进行文件数据的读/写操作控制;
SCST目标子系统接口,用于进行块数据的读/写操作控制;
缓存单元,用于根据读/写操作控制进行文件数据和/或块数据的缓存和备份,以及查找;
存储阵列单元,用于存储文件数据和/或块数据。
NAS存储模块与SAN存储模块配置于用户空间,用户可通过NAS存储模块进行文件数据的读/写操作,通过SAN存储模块进行块数据的读/写操作。NAS存储模块通过内核空间的VFS文件系统接口与缓存单元相连接,实现文件数据的读/写操作与同步备份。SAN存储模块通过内核空间的SCST目标子系统接口与缓存单元相连接,实现块数据的读/写操作与同步备份。
第一存储设备10的缓存单元与第二存储设备20的缓存单元通过网络连接实现数据高速传输,实现主存储设备中的数据在备用存储设备中的同步备份。
图2为本发明实施例的缓存单元的结构示意图。如图所示,本发明实施例中,对于写操作,所述缓存单元包括:
数据接收模块,用于接收VFS文件系统接口和/或SCST目标子系统接口发送的写数据请求,写数据请求包括写文件数据请求、写块数据请求;
数据同步模块,若为主存储设备,用于根据写数据请求,将接收的数据进行缓存,并进行备份并将备份数据发送至备用存储设备,若为备用存储设备,用于接收并保存主存储设备发送的备份数据;
数据存储模块,用于将接收的数据传输至存储阵列单元。
本发明实施例中,所述VFS文件系统接口包括:
文件数据存储控制模块,用于生成写文件数据请求,该写文件数据请求包括文件数据,存储文件数据的目标设备信息,该目标设备信息包括将文件数据直接写入缓存单元的控制参数。
对于文件数据的写操作,通过用户空间的NAS存储模块执行文件数据写操作,NAS存储模块通过VFS文件系统接口向缓存单元发送写文件数据请求。VFS文件系统接口的文件数据存储控制模块生成写文件数据请求,该写文件数据请求包括存储文件数据的目标设备信息,该目标设备信息包括将文件数据直接写入缓存单元的控制参数(由非directio方式统一修改设置directio方式),通过将待写入的文件数据直接写入缓存单元,而不经过VFS文件系统的缓存区,能够在缓存单元实现数据的自管理,不经过不受控的内核内存管理单元,所有数据均在缓存单元里进行保存与同步备份管理,保证数据的一致性及高速访问。
缓存单元的数据接收模块接收写文件数据请求,一方面,通过数据同步模块将文件数据进行备份,然后将备份数据发送至备用存储设备的缓存单元,实现文件数据的同步备份;另一方面,将文件数据缓存,后续可根据写文件数据请求中的目标设备信息,通过数据存储模块将文件数据保存于目标设备中。其中,文件数据的备份与缓存过程同步进行,能够提高数据的写入速度。
当文件数据保存于缓存单元之后,且发送至备用存储设备的缓存单元的文件数据成功保存之后,才通过VFS文件系统接口向NAS存储模块发送写文件数据成功消息,能够保证主备存储设备之间的数据一致性,即使主存储设备出现故障,备用存储设备也可在保证与主存储设备数据一致的情况下提供数据读/写操作功能。
如图2所示,对于读操作,本发明实施例中,所述缓存单元还包括:
数据接收模块,用于接收VFS文件系统接口和/或SCST目标子系统接口发送的读数据请求,读数据请求包括读文件数据请求、读块数据请求;
数据读取模块,用于根据所述读数据请求,查找缓存单元中是否存在读取目标数据,若存在则将查找到的读取目标数据返回给用户,若不存在则根据读数据请求从目标设备中查找读取目标数据。
本发明实施例中,所述VFS文件系统接口还包括:
文件数据读取控制模块,用于生成读文件数据请求,该读文件数据请求包括读取文件数据,存储读取文件数据的目标设备信息。
对于文件数据的读操作,通过用户空间的NAS存储模块执行文件数据读操作,NAS存储模块通过VFS文件系统接口向缓存单元发送读文件数据请求。VFS文件系统接口的文件数据读取控制模块生成读文件数据请求,该读文件数据请求包括读取文件数据,读取文件数据的目标设备信息。
缓存单元的数据接收模块接收读文件数据请求,根据读取文件数据的目标设备信息判断目标设备是否属于主存储设备;
如果属于主存储设备,则先从缓存单元中查找读取文件数据是否存在,如果存在,则直接返回查找到的读取文件数据,并将查找到的读取文件数据返回给用户;如果不存在,则从存储阵列单元中查找获取读取文件数据,即根据目标设备信息及读取文件数据,从目标设备中查找读取文件数据(将读文件数据请求发送至主存储设备的通用块设备层,等待返回读取文件数据),然后将查找到的读取文件数据返回给用户。
如果不属于主存储设备,则从缓存单元中查找读取文件数据是否存在,如果存在,则直接返回查找到的读取文件数据;如果不存在,则通过主、备用存储设备之间的数据同步传输通道将读文件数据请求转发至主存储设备,主存储设备接收读文件数据请求,根据目标设备信息及读取文件数据,从目标设备中查找读取文件数据,将查找到的读取文件数据通过数据同步传输通道发送至备用存储设备,当备用存储设备将全部读取文件数据接收完毕后,通过VFS文件系统接口返回数据读取完成,并将读取的读取目标数据返回给用户。
本发明实施例中,所述SCST目标子系统接口包括:
块数据存储控制模块,用于生成写块数据请求,该写块数据请求包括块数据、存储块数据的目标设备信息。
块数据的写操作过程与文件数据的写操作过程类似。对于块数据的写操作,通过用户空间的SAN存储模块执行块数据写操作,SAN存储模块通过SCST目标子系统接口向缓存单元发送写块数据请求。SCST目标子系统接口的块数据存储控制模块生成写块数据请求,通过将待写入的块数据直接写入缓存单元,能够在缓存单元实现数据的保存与备份管理。
缓存单元的数据接收模块接收写块数据请求,一方面,通过数据同步模块将块数据进行备份,然后将备份数据以阻塞方式(等待接收端确认收到数据后才返回到发送端,以确保数据已由接收端接收到)发送至备用存储设备的缓存单元,实现块数据的同步备份;另一方面,将块数据缓存,后续可根据写块数据请求中的目标设备信息,通过数据存储模块将块数据保存于目标设备的专用高速缓存中。当块数据保存于缓存单元之后,且发送至备用存储设备的缓存单元的块数据成功保存之后,才通过SCST目标子系统接口向SAN存储模块发送写块数据成功消息。
本发明实施例中,所述SCST目标子系统接口还包括:
块数据读取控制模块,用于生成读块数据请求,该读块数据请求包括读取块数据,读取块数据的目标设备信息。
块数据的读操作过程与文件数据的读操作过程类似。对于块数据的读操作,通过用户空间的SAN存储模块执行块数据读操作,SAN存储模块通过SCST目标子系统接口向缓存单元发送读块数据请求。SCST目标子系统接口的块数据读取控制模块生成读块数据请求,该读块数据请求包括读取块数据,读取块数据的目标设备信息。
缓存单元的数据接收模块接收读块数据请求,根据读取块数据的目标设备信息判断目标设备是否属于主存储设备;
如果属于主存储设备,则先从缓存单元中查找读取块数据是否存在,如果存在,则直接返回查找到的读取块数据,并将查找到的读取块数据返回给用户;如果不存在,则从存储阵列单元中查找获取读取块数据,即根据目标设备信息及读取块数据,从目标设备中查找读取块数据(将读块数据请求发送至主存储设备的通用块设备层,等待返回读取块数据),然后将查找到的读取块数据返回给用户。
如果不属于主存储设备,则从缓存单元中查找读取块数据是否存在,如果存在,则直接返回查找到的读取块数据;如果不存在,则通过主、备用存储设备之间的数据同步传输通道将读块数据请求转发至主存储设备,主存储设备接收读块数据请求,根据目标设备信息及读取块数据,从目标设备中查找读取块数据,将查找到的读取块数据通过数据同步传输通道发送至备用存储设备,当备用存储设备将全部读取块数据接收完毕后,通过SCST目标子系统接口返回数据读取完成,并将读取的读取目标数据返回给用户。
如图1所示,本发明实施例中,第一存储设备10还包括:
HA管理模块(图1中为HA),用于定时检测主、备用存储设备之间的心跳信号是否正常,以及当检测到主、备用存储设备之一存在故障或二者的数据同步传输通道存在故障时,进行主备切换操作。
第一存储设备10的缓存单元与第二存储设备20的缓存单元通过万兆网建立数据同步通道,以实现数据的高速传输。若第一存储设备10为主存储设备,第二存储设备20为备用存储设备,只有主存储设备可以执行数据读/写操作,主、备用存储设备的HA管理模块定时检测主、备用存储设备之间的心跳信号是否正常,若正常检测到主、备用存储设备之间的心跳信号,则判断主、备用存储设备正常工作,若无法检测到主、备用存储设备的心跳信号或是心跳信号异常,则判断主、备用存储设备工作异常,此时可进行主、备用存储设备的切换。
其中,主、备用存储设备进行切换的具体方法是:首先检测主存储设备和/或备用存储设备是否出现故障,若主、备用存储设备没有故障,则检测二者之间的数据同步通道是否异常;
若经过检测确定主存储设备发生故障,则将备用存储设备切换为主存储设备,并将切换后的主存储设备的数据读写模式变更为透写模式(之前存在于缓存单元中的数据进行刷写落盘操作,完成后,新写入的数据不经过缓存单元,直接交由通用块设备层),不再进行数据缓存同步操作,以保证单机掉电数据不丢失,保证系统的正常运行,由于主存储设备与备用存储设备之间实现了数据同步备份,能够保证系统数据的一致性,保证备用存储设备实现正常的数据读/写操作功能;
若经过检测确定备用存储设备发生故障,则主存储设备直接进行离线切换操作(主备用存储设备之间的数据同步传输通道不再传输数据)即可,并且当前主存储设备的数据读写模式也变更为透写模式,不在进行数据缓存同步,保障单机故障后数据不丢失;
若为主备用存储设备之间的数据同步通道发生网络故障,则为了避免脑裂问题,失效备用存储设备,所有数据都只经过主存储设备的读写处理。
图3为本发明实施例的统一存储方法的写数据流程示意图。如图所示,基于所述统一存储系统实现的统一存储方法,写数据过程包括:
S10:进行写数据操作;
写数据操作包括写文件数据操作、写块数据操作。只有主存储设备可以执行读/写数据操作。
S11:将数据直接传输至缓存单元;
用户于用户空间执行写数据操作,根据数据类型(文件数据或是块数据),该写数据操作通过内核空间的VFS文件系统接口或是SCST目标子系统接口生成相应的写数据请求,根据写数据请求,将数据直接写入缓存单元。
S12:缓存单元接收数据,缓存数据,并将数据进行备份然后将备份数据发送至备用存储设备。
缓存单元一方面缓存接收的数据,一方面将数据进行备份,然后将备份数据发送至备用存储设备,且缓存数据与备份数据、发送备份数据的过程同步进行。当缓存数据成功且备份数据成功保存于备用存储设备之后,才返回写数据成功消息。
图4为本发明实施例的统一存储方法的读数据流程示意图。如图所示,读数据过程包括:
S20:进行读数据操作;
S21:查找缓存单元中是否存在所请求的数据;若存在,则执行步骤S22;否则执行S23;
S22:直接从缓存单元中获取所请求的数据,返回数据;
S23:从系统的存储阵列单元中获取所请求的数据,返回数据。
基于上述目的,本发明实施例还提出了一种执行所述统一存储方法的装置的一个实施例。所述装置包括:
一个或多个处理器以及存储器。
所述执行所述统一存储方法的装置还可以包括:输入装置和输出装置。
处理器、存储器、输入装置和输出装置可以通过总线或者其他方式连接。
存储器作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的所述统一存储方法对应的程序指令/模块(例如,图2所示的数据同步模块、数据读取模块)。处理器通过运行存储在存储器中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的统一存储方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据执行所述统一存储方法的装置的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至会员用户行为监控装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置可接收输入的数字或字符信息,以及产生与执行所述统一存储方法的装置的用户设置以及功能控制有关的键信号输入。输出装置可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器中,当被所述一个或者多个处理器执行时,执行上述任意方法实施例中的统一存储方法。所述执行所述统一存储方法的装置的实施例,其技术效果与前述任意方法实施例相同或者类似。
本发明实施例还提供了一种非暂态计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中的列表项操作的处理方法。所述非暂态计算机存储介质的实施例,其技术效果与前述任意方法实施例相同或者类似。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。所述计算机程序的实施例,其技术效果与前述任意方法实施例相同或者类似。
此外,典型地,本公开所述的装置、设备等可为各种电子终端设备,例如手机、个人数字助理(PDA)、平板电脑(PAD)、智能电视等,也可以是大型终端设备,如服务器等,因此本公开的保护范围不应限定为某种特定类型的装置、设备。本公开所述的客户端可以是以电子硬件、计算机软件或两者的组合形式应用于上述任意一种电子终端设备中。
此外,根据本公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
此外,应该明白的是,本文所述的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)以及直接RambusRAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现所述的功能,但是这种实现决定不应被解释为导致脱离本公开的范围。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里所述功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核、或任何其它这种配置。
结合这里的公开所描述的方法或算法的步骤可以直接包含在硬件中、由处理器执行的软件模块中或这两者的组合中。软件模块可以驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域已知的任何其它形式的存储介质中。示例性的存储介质被耦合到处理器,使得处理器能够从该存储介质中读取信息或向该存储介质写入信息。在一个替换方案中,所述存储介质可以与处理器集成在一起。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在用户终端中。在一个替换方案中,处理器和存储介质可以作为分立组件驻留在用户终端中。
在一个或多个示例性设计中,所述功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将所述功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外先、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
公开的示例性实施例,但是应当注公开的示例性实施例,但是应当注意,在不背离权利要求限定的本公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本公开的元素可以以个体形式描述或要求,但是也可以设想多个,除非明确限制为单数。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”(“a”、“an”、“the”)旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (12)
1.一种统一存储系统,其特征在于,包括互为主、备用存储设备的两个存储设备,所述存储设备包括:
NAS存储模块,用于执行用户在用户空间进行的文件数据的读/写操作,所述NAS存储模块通过内核空间的VFS文件系统接口向缓存单元发送写文件数据请求和/或读文件数据请求;
SAN存储模块,用于执行用户在用户空间进行的块数据的读/写操作,所述SAN存储模块通过内核空间的SCST目标子系统接口向所述缓存单元发送写块数据请求和/或读块数据请求;
所述缓存单元,若为主存储设备,用于根据所述写文件数据请求和/或写块数据请求,对所述文件数据和/或块数据进行缓存,并进行备份然后将备份数据发送至备用存储设备,将所述文件数据和/或块数据传输至系统的存储阵列单元,以及根据所述读文件数据请求和/或读块数据请求,查找所述缓存单元中是否存在所请求的数据,若存在则将查找到的数据返回,若不存在则从所述存储阵列单元中查找所请求的数据;若为备用存储设备,接收由所述主存储设备发送的备份数据。
2.根据权利要求1所述的统一存储系统,其特征在于,所述VFS文件系统接口包括:
文件数据存储控制模块,用于生成所述写文件数据请求,所述写文件数据请求包括文件数据、存储所述文件数据的目标设备信息,所述目标设备信息包括将所述文件数据直接写入所述缓存单元的控制参数。
3.根据权利要求2所述的统一存储系统,其特征在于,所述VFS文件系统接口还包括:
文件数据读取控制模块,用于生成所述读文件数据请求,所述读文件数据请求包括读取文件数据,及存储所述读取文件数据的目标设备信息。
4.根据权利要求1所述的统一存储系统,其特征在于,所述SCST目标子系统接口包括:
块数据存储控制模块,用于生成所述写块数据请求,所述写块数据请求包括块数据,及存储所述块数据的目标设备信息。
5.根据权利要求4所述的统一存储系统,其特征在于,所述SCST目标子系统接口还包括:
块数据读取控制模块,用于生成所述读块数据请求,所述读块数据请求包括读取块数据,及存储所述读取块数据的目标设备信息。
6.根据权利要求1所述的统一存储系统,其特征在于,所述缓存单元对所述文件数据和/或块数据进行缓存,以及进行备份然后将备份数据发送至所述备用存储设备的过程同步进行。
7.根据权利要求1所述的统一存储系统,其特征在于,所述主、备用存储设备之间通过万兆网建立数据同步传输通道。
8.根据权利要求1所述的统一存储系统,其特征在于,还包括:
HA管理模块,用于定时检测所述主、备用存储设备之间的心跳信号是否正常,以及当检测到所述主、备用存储设备之一存在故障或二者的数据同步传输通道存在故障时,进行主备切换操作。
9.根据权利要求8所述的统一存储系统,其特征在于,
所述HA管理模块,用于当检测所述主存储设备发生故障时,将所述备用存储设备切换为主存储设备,将切换后的主存储设备的数据读写模式设置为透写模式;或者,当检测所述备用存储设备发生故障时,所述数据同步传输通道不再传输数据,并将所述主存储设备的数据读写模式设置为所述透写模式;或者当所述数据同步传输通道发生故障时,所述备用存储设备失效。
10.基于权利要求1-9中任意一项所述统一存储系统实现的统一存储方法,应用于主存储设备,其特征在于,包括:
进行写数据操作;
将数据直接传输至缓存单元;
所述缓存单元接收所述数据,缓存所述数据,并将数据进行备份然后将备份数据发送至备用存储设备,将所述数据传输至系统的存储阵列单元。
11.根据权利要求10所述的统一存储方法,其特征在于,还包括:
进行读数据操作;
查找所述缓存单元中是否存在所请求的数据;
若存在,则直接从所述缓存单元中获取所述数据,返回数据;
若不存在,则从系统的存储阵列单元中获取所述数据,返回数据。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求10至11任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811033879.4A CN110879760B (zh) | 2018-09-05 | 2018-09-05 | 一种统一存储系统及方法、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811033879.4A CN110879760B (zh) | 2018-09-05 | 2018-09-05 | 一种统一存储系统及方法、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110879760A CN110879760A (zh) | 2020-03-13 |
CN110879760B true CN110879760B (zh) | 2022-09-02 |
Family
ID=69727101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811033879.4A Active CN110879760B (zh) | 2018-09-05 | 2018-09-05 | 一种统一存储系统及方法、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110879760B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111478947B (zh) * | 2020-03-20 | 2023-02-17 | 珠海高凌信息科技股份有限公司 | 主备控制板实时同步方法及系统 |
CN111949661A (zh) * | 2020-08-12 | 2020-11-17 | 国网信息通信产业集团有限公司 | 一种配用电数据的存取方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1648842A (zh) * | 2004-01-29 | 2005-08-03 | 株式会社日立制作所 | 具有多个接口的存储装置 |
CN1838128A (zh) * | 2005-03-24 | 2006-09-27 | 株式会社日立制作所 | 存储装置系统的控制技术 |
CN104050248A (zh) * | 2014-06-05 | 2014-09-17 | 北京捷成世纪科技股份有限公司 | 一种文件存储系统及存储方法 |
CN105653406A (zh) * | 2015-12-31 | 2016-06-08 | 华为技术有限公司 | 一种管理分布式存储系统的方法及分布式存储系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7873700B2 (en) * | 2002-08-09 | 2011-01-18 | Netapp, Inc. | Multi-protocol storage appliance that provides integrated support for file and block access protocols |
AU2012200446B2 (en) * | 2005-06-24 | 2012-05-31 | Catalogic Software, Inc. | System and method for high performance enterprise data protection |
US8370302B2 (en) * | 2009-06-02 | 2013-02-05 | Hitachi, Ltd. | Method and apparatus for block based volume backup |
CN102088490B (zh) * | 2011-01-19 | 2013-06-12 | 华为技术有限公司 | 数据存储方法、设备和系统 |
-
2018
- 2018-09-05 CN CN201811033879.4A patent/CN110879760B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1648842A (zh) * | 2004-01-29 | 2005-08-03 | 株式会社日立制作所 | 具有多个接口的存储装置 |
CN1838128A (zh) * | 2005-03-24 | 2006-09-27 | 株式会社日立制作所 | 存储装置系统的控制技术 |
CN104050248A (zh) * | 2014-06-05 | 2014-09-17 | 北京捷成世纪科技股份有限公司 | 一种文件存储系统及存储方法 |
CN105653406A (zh) * | 2015-12-31 | 2016-06-08 | 华为技术有限公司 | 一种管理分布式存储系统的方法及分布式存储系统 |
Non-Patent Citations (2)
Title |
---|
SAN与NAS融合的存储备份系统的设计与应用;胡春宇;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20090415;第2009年卷(第4期);I138-33 * |
Snins: A Storage Network Integrating NAS and SAN;De-Zhi Han;《2005 International Conference on Machine Learning and Cybernetics》;20051107;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110879760A (zh) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6404907B2 (ja) | 効率的な読み取り用レプリカ | |
US10108367B2 (en) | Method for a source storage device sending data to a backup storage device for storage, and storage device | |
US11907561B2 (en) | Data backup method and apparatus | |
US11307776B2 (en) | Method for accessing distributed storage system, related apparatus, and related system | |
JP7588670B2 (ja) | クラウドデグレードモードにおいてデバイス動作信頼性を継続的に確保するための方法および装置 | |
CN105159795A (zh) | 数据同步方法、装置和系统 | |
KR101983208B1 (ko) | 데이터 관리 방법, 노드, 그리고 데이터베이스 클러스터를 위한 시스템 | |
CN109739435B (zh) | 文件存储和更新方法及装置 | |
CN110781157B (zh) | 一种基于nas的备份与恢复方法和装置 | |
CN111352943A (zh) | 实现数据一致性的方法和装置、服务器和终端 | |
US20180225183A1 (en) | SMB Service Fault Processing Method and Storage Device | |
US12045137B2 (en) | Data backup method, apparatus, and system | |
CN110879760B (zh) | 一种统一存储系统及方法、电子设备 | |
CN110442601B (zh) | 一种Openstack镜像数据并行加速的方法和装置 | |
JP2020525921A (ja) | 独立したバックアップおよび復元機能を提供する補助記憶装置およびこれを適用した機器 | |
CN111339019A (zh) | 一种通过cpld进行i2c总线扩展的方法和装置 | |
CN113157487A (zh) | 数据恢复方法及其设备 | |
CN112966046A (zh) | 数据同步方法和装置、电子设备和存储介质 | |
WO2021237431A1 (zh) | 数据处理方法、装置、处理设备以及数据存储系统 | |
CN111176904A (zh) | 一种私有云架构下的数据备份的方法、系统、设备及介质 | |
CN110673992A (zh) | 一种多镜像融合自启方法和系统 | |
CN111240933B (zh) | 多数据中心的性能数据监测的方法、系统、设备及介质 | |
CN113391759B (zh) | 一种通信方法和设备 | |
US20220138177A1 (en) | Fault tolerance for transaction mirroring | |
CN114676166B (zh) | 数据处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |