CN110531925B - 数据读取方法、装置、电子设备及机器可读存储介质 - Google Patents
数据读取方法、装置、电子设备及机器可读存储介质 Download PDFInfo
- Publication number
- CN110531925B CN110531925B CN201910707507.3A CN201910707507A CN110531925B CN 110531925 B CN110531925 B CN 110531925B CN 201910707507 A CN201910707507 A CN 201910707507A CN 110531925 B CN110531925 B CN 110531925B
- Authority
- CN
- China
- Prior art keywords
- data
- volume
- snapshot
- reading
- data volume
- 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
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/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- 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/062—Securing storage systems
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- 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/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
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
本申请提供一种数据读取方法、装置、电子设备及机器可读存储介质。在本申请中,创建与所述数据卷对应的镜像卷;生成与写入所述数据卷的用户数据对应的ROW快照;接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。基于为数据卷创建镜像卷并保持数据实时同步;以及,针对数据卷创建ROW快照,检测针对数据卷顺序读取请求,从镜像卷顺序读取数据并返回,提高了启用了ROW快照的数据卷的数据读性能。
Description
技术领域
本申请涉及存储技术领域,尤其涉及数据读取方法、装置、电子设备及机器可读存储介质。
背景技术
机械硬盘是指传统普通硬盘,其主要由:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成;通过磁头可沿盘片的半径方向运动,加上盘片每分钟几千转的高速旋转,磁头就可以定位在盘片的指定位置上进行数据的读写操作;由此,数据通过离磁性表面很近的磁头,由电磁流来改变极性方式被电磁流写到机械硬盘上,数据可以通过相反的方式读取。
在大数据时代,数据量越来越大,数据也越来越重要,把数据保存在专门的存储设备中,并通过存储设备的数据保护特性提高数据可靠性已经成为主流方式。
快照是存储设备的数据保护特性之一,也是应对“软灾难”的常用方案。软灾难,故名思议,指“软”的灾难,通常指由于误操作、软件Bug、病毒等导致生产数据逻辑上损坏或者不能读取。通过快照技术,在写入新数据前,可以把旧数据备份起来,这样当数据发生软灾难时,可以采用之前备份的旧数据来恢复,使数据回滚到一个可用的时间平面。
发明内容
本申请提供一种数据读取方法,所述方法应用于存储设备;所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,所述方法包括:
创建与所述数据卷对应的镜像卷;
生成与写入所述数据卷的用户数据对应的ROW快照;
接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
可选的,所述创建与所述数据卷对应的镜像卷,包括:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
可选的,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据;所述生成与写入所述数据卷的用户数据对应的ROW快照,包括:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
可选的,所述响应于所述读取请求,从所述镜像卷中顺序读取对应数据,包括:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
可选的,还包括:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
本申请还提供一种数据读取装置,所述装置应用于存储设备;所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,所述装置包括:
创建模块,创建与所述数据卷对应的镜像卷;
快照生成模块,生成与写入所述数据卷的用户数据对应的ROW快照;
读取模块,接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
可选的,所述创建模块进一步:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
可选的,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据;所述快照生成模块进一步:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
可选的,所述读取模块进一步:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
可选的,所述读取模块进一步:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述的方法。
本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。
通过以上实施例,基于为数据卷创建镜像卷并保持数据实时同步;以及,针对数据卷创建ROW快照,检测针对数据卷顺序读取请求,从镜像卷顺序读取数据并返回,提高了启用了ROW快照的数据卷的数据读性能。
附图说明
图1是一示例性实施例提供的一种数据卷的数据分布的示意图;
图2是一示例性实施例提供的另一种数据卷的数据分布的示意图;
图3是一示例性实施例提供的再一种数据卷的数据分布的示意图;
图4是一示例性实施例提供的一种数据读取方法的流程图;
图5是一示例性实施例提供的一种数据卷及镜像卷的数据分布的示意图;
图6是一示例性实施例提供的另一种数据卷及镜像卷的数据分布的示意图;
图7是一示例性实施例提供的再一种数据卷及镜像卷的数据分布的示意图;
图8是一示例性实施例提供的一种电子设备的硬件结构图;
图9是一示例性实施例提供的一种数据读取装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面先对本申请实施例涉及的数据读取的相关技术,进行简要说明。
目前常用的快照技术包括:写拷贝模式和写重定向模式;其中,所谓写重定向模式即ROW(Redirect On Write),其是和COW并列的另一种快照技术,其做法是在创建了新的快照后,当数据卷的数据首次发生变化时,额外为新数据分配一块区域写入,而不是覆盖数据卷数据对应原来的区域,同时,把所述数据卷数据对应原来的区域中旧数据变成快照数据,作为快照时间点对应的快照,该快照对应的快照数据由快照元数据进行管理,而数据卷的旧数据位置对应要写入的新数据,也被简称为“用户数据”。
请参见图1,图1是本申请一实施例提供的一种数据卷的数据分布的示意图。
如图1所示,存储设备包括数据卷、用于管理数据卷中数据的活动元数据;存储设备针对所述数据卷已启用ROW快照模式,但还未创建ROW快照;
其中,数据卷中的数据为A、B、C、D、E、F,该数据对应的物理空间是连续的;数据卷中的数据对应逻辑空间到物理空间的映射关系由活动元数据指示(如图1中的活动元数据指向A、B、C、D、E、F)。
如图1所示,在一些场景下,基于ROW模式,随着ROW快照个数增加,计划写入数据卷的用户数据,实际被写到快照空间对应的连续物理空间中;而快照的物理空间与数据卷的物理空间是不连续的。
请参见图2,图2是本申请一实施例提供的另一种数据卷的数据分布的示意图。
图2是在图1基础之上变化而来,图2用于展示数据卷对应一个ROW快照(快照1)完成创建时的数据卷的数据分布及其对应活动元数据、快照元数据。
如图2所示,根据ROW快照模式,针对计划将用户数据(B1、D1)写入至数据B、D对应在数据卷中的物理空间,存储设备实际并不会覆盖数据卷中数据B、D对应原来的物理空间,而是额外分配一个快照空间(如图2所示),在该快照空间对应的物理空间中保存用户数据(B1、D1);其中,该快照空间对应是与数据卷不同的额外的存储卷。
如图2所示,快照1对应的快照数据由如图2所示的快照1的快照元数据到数据卷中各数据及快照空间各数据的对应箭头所指示,如图2中的快照1的快照元数据指向数据卷中的A、B、C、D、E、F。
如图2所示,在用户数据(B1、D1)保存在快照空间后,活动元数据由如图1中的指向A、B、C、D、E、F,更新为指向数据卷中的A、C、E、F;以及,指向快照空间中的B1、D1。
请参见图3,图3是本申请一实施例提供的再一种数据卷的数据分布的示意图。
图3是在图2基础之上变化而来,图3用于展示数据卷对应一个ROW快照(快照2)完成创建时的数据卷的数据分布及其对应活动元数据、快照元数据。
如图3所示,当计划在数据卷中的D、E对应物理空间写入用户数据(D2、E1)时,根据ROW快照模式,存储设备不会覆盖数据D、E在数据卷中对应物理空间(也即,数据卷中的D、E对应物理空间)写入用户数据(D2、E1),而是快照空间(如图3所示)中,继续分配用于保存用户数据(D2、E1)对应的物理空间。
如图3所示,快照2对应的快照数据由如图3所示的快照2的快照元数据到数据卷中各数据及快照空间各数据的对应箭头所指示,如图3所示的快照2的快照元数据指向数据卷中的A、C、E、F;以及,指向快照空间中的B1、D1。
如图3所示,在用户数据(D2、E1)保存在快照空间后,活动元数据由如图2中指向数据卷中的A、C、E、F及指向快照空间中的B1、D1,更新为如图3中指向数据卷中的A、C、F及指向快照空间中的B1、D2、E1。
在一些场景下,当需要读取数据卷中的最新数据时,也即活动元数据对应指示的最新数据时,由于待读取数据分别位于数据卷及快照空间对应的物理空间不连续(也即,非顺序读),需要存储设备驱动机械硬盘的磁头不断寻道,实现待读数据盘片及位置切换,而机械硬盘的转速是固定的,由此导致在该场景下,数据读性能受限机械硬盘转速的影响,相比顺序读取(物理空间连续)大幅度降低。
例如,请参见图2所示,当需要读取图2中活动元数据对应的数据(数据卷中的A、C、E、F及快照空间中的B1、D1)时,存储设备在需要依次执行以下6个步骤读取操作:
1)读取数据卷中的A
2)读取快照空间中的B1
3)读取数据卷中的C
4)读取快照空间中的D1
5)读取数据卷中的E
6)读取数据卷中的F
由上述1至6步骤可见,由于步骤1至步骤5中的数据对应物理空间不连续,所以需要机械硬盘磁头需要切换4次寻道。
又例如,请参见图3所示,当需要读取图3中活动元数据对应的数据(数据卷中的A、C、F及指向快照空间中的B1、D2、E1)时,存储设备在需要依次执行以下6个步骤读取操作:
11)读取数据卷中的A
22)读取快照空间中的B1
33)读取数据卷中的C
44)读取快照空间中的D2
55)读取快照空间中的E1
66)读取数据卷中的F
由上述11至66步骤可见,由于步骤11至步骤44、步骤55至步骤66中的数据对应物理空间不连续,所以需要机械硬盘磁头需要切换4次寻道。
而本申请旨在提出一种,基于为启动ROW快照的数据卷创建对应镜像卷;以及,检测针对数据卷顺序读取请求,从镜像卷顺序读取数据的技术方案。
在实现时,存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式。
进一步地,存储设备创建与所述数据卷对应的镜像卷;生成与写入所述数据卷的用户数据对应的ROW快照;接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜卷中顺序读取对应数据。
在以上方案中,基于为数据卷创建镜像卷并保持数据实时同步;以及,针对数据卷创建ROW快照,检测针对数据卷顺序读取请求,从镜像卷顺序读取数据并返回,提高了启用了ROW快照的数据卷的数据读性能。
下面通过具体实施例并结合具体的应用场景对本申请进行描述。
请参考图4,图4是本申请一实施例提供的一种数据读取方法的流程图,所述方法应用于存储***,所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,上述方法执行以下步骤:
步骤402、创建与所述数据卷对应的镜像卷。
步骤404、生成与写入所述数据卷的用户数据对应的ROW快照。
步骤406、接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
在本说明书中,上述存储设备,包括支持ROW快照模式的、存储介质为任何类型机械硬盘的任何形式的存储设备或存储设备集群。
例如,上述存储设备可以是支持ROW快照模式的、存储介质为SATA(SerialAdvanced Technology Attachment)机械硬盘、SAS(Serial Attached SCSI)机械硬盘、SCSI(Small Computer System Interface)机械硬盘的框式、柜式的存储设备或存储设备集群。
在本说明书中,上述数据卷,是指上述存储设备预设的、用于保存数据的物理空间连续的存储卷;
在实现时,上述数据卷可以是,由上述存储设备基于若干机械硬盘创建的RAID(Redundant Arrays of Independent Drives,独立冗余磁盘阵列)、用于保存数据的物理空间连续的、已启动ROW快照模式的存储卷。
例如,上述数据卷可以是如图1所示的物理空间连续的、已启动ROW快照模式的数据卷,该数据卷中包括数据A、B、C、D、E、F。
在本说明书中,上述活动元数据,是指上述存储设备预设的、用于管理上述数据卷中数据的逻辑空间到物理空间映射关系的元数据。
例如,上述活动元数据可以是如图1所示的活动元数据;上述活动元数据也可以是如图2所示的活动元数据;上述活动元数据也可以是如图3所示的活动元数据。
在本说明书中,上述快照元数据,是指上述存储设备预先创建的用于管理ROW快照对应快照数据的逻辑空间到物理空间映射关系的元数据。
例如,上述快照元数据可以是如图2所示的快照1元数据;上述快照元数据也可以是如图3所示的快照2元数据。
请参见图5,图5是本申请一实施例提供的一种数据卷及镜像卷的数据分布的示意图。
如图5所示,存储设备包括数据卷、用于管理数据卷中数据的活动元数据;存储设备针对所述数据卷已启用ROW快照模式。
图5与图1所示的活动的元数据及其对应管理的数据卷中数据相同,区别在于图5相比图1多了镜像卷;其中,该镜像卷中包括的数据与数据卷中的数据一致,并且对应保存的物理空间是连续的。
在本说明书中,上述镜像卷,是指与上述数据卷的容量及数据内容相同,且物理空间连续的存储卷。
例如,上述数据卷可以是如图5所示的数据卷;上述镜像卷可以是如图5所示的镜像卷。
在本说明书中,上述存储设备创建上述数据卷对应的上述镜像卷。
例如,针对如图1的上述数据卷,上述存储设备创建与其对应的上述镜像卷,则上述数据卷及上述镜像卷分别为如图5所示的数据卷及镜像卷。
在示出的一种实施方式中,上述存储设备创建与上述数据卷容量相同且物理空间连续的存储卷。
例如,请参见图5所示,上述数据卷的容量比如为100GB(吉字节),则存储设备可以新创建另一个容量为100GB且物理空间连续的存储卷。
在本说明书中,进一步地,上述存储设备将上述数据卷中的数据,同步至上述存储卷。
接着以上示例继续举例,上述存储设备将如图5所示数据卷中的数据A、B、C、D、E、F,同步到如图5所示镜像卷中;其中,数据卷及镜像卷中的数据对应的物理空间都是连续的。
请参见图6,图6是本申请一实施例提供的另一种数据卷及镜像卷的数据分布的示意图。
图6是在图5的基础之上变化而来,图6用于展示数据卷对应一个ROW快照(快照1)完成创建时的数据卷的数据分布及其对应活动元数据、快照元数据;以及,用于展示镜像卷的数据分布。
图6与图2所示的活动的元数据及快照1的元数据;以及,其分别对应管理的数据卷及快照空间中的数据都相同,区别在于图6相比图2多了镜像卷;其中,该镜像卷中包括的数据(A、B1、C、D1、E、F),与数据卷中活动元数据指向的数据(包括数据卷中A、C、E、F,及快照空间中B1、D1)相同,并且对应保存的物理空间是连续的。
请参见图7,图7是本申请一实施例提供的再一种数据卷及镜像卷的数据分布的示意图。
图7是在图6的基础之上变化而来,图7用于展示数据卷对应一个ROW快照(快照2)完成创建时的数据卷的数据分布及其对应活动元数据、快照元数据;以及,用于展示镜像卷的数据分布。
图7与图3所示的活动的元数据及快照2的元数据;以及,其分别对应管理的数据卷及快照空间中的数据都相同,区别在于图6相比图2多了镜像卷;其中,该镜像卷中包括的数据(A、B1、C、D2、E1、F),与数据卷中活动元数据指向的数据(包括数据卷中A、C、F,及快照空间中B1、D2、E1)相同,并且对应保存的物理空间是连续的。
在本说明书中,上述用户数据,是指计划写入上述数据卷中已保存数据对应物理空间的新数据。
例如,上述用户数据,可以是如图6所示的数据B1、D1;其中,数据B1、D1计划写入如图6所示的数据卷中数据B、D分别对应的物理空间。又例如,上述用户数据,还可以是如图7所示的数据D2、E1;其中,数据D2、E1计划写入如图7所示的数据卷中数据D、E分别对应的物理空间。
在本说明书中,在上述镜像卷创建后,上述存储设备生成与写入上述用户数据对应的ROW快照。
在示出的一种实施方式中,上述存储设备将上述活动元数据,保存为上述ROW快照对应的快照元数据;将上述用户数据同步至上述镜像卷及保存至快照空间;更新上述活动元数据。
在实现时,上述存储设备首先创建ROW快照对应的快照元数据,然后将ROW快照创建前的活动元数据拷贝至该快照元数据,接着将上述用户数据拷贝至快照空间以及同步至上述镜像卷,最后更新活动元数据。
例如,上述用户数据为如图6所示的B1、D1,与上述用户数据(B1、D1)对应的ROW快照为快照1;上述存储设备首先创建快照1对应的如图6所示的快照1元数据,然后将ROW快照创建前的如图5所示的活动元数据拷贝至如图6所示的快照1元数据(指向A、B、C、D、E、F),接着将上述用户数据(B1、D1)拷贝至如图6所示的快照空间及同步至如图6所示的上述镜像卷(包括数据A、B1、C、D1、E、F),最后将如图5所示的活动元数据(指向A、B、C、D、E、F)更新为如图6所示的活动元数据(指向数据卷中的A、C、E、F;以及,指向快照空间中的B1、D1)。
又例如,上述用户数据为如图7所示的D2、E1,与上述用户数据(D2、E1)对应的ROW快照为快照2;上述存储设备首先创建快照2对应的如图7所示的快照2元数据,然后将ROW快照创建前的如图6所示的活动元数据拷贝至如图7所示的快照2元数据(指向数据卷中的A、C、E、F;以及,指向快照空间中的B1、D1),接着将上述用户数据(D2、E1)拷贝至如图7所示的快照空间及同步至如图7所示的上述镜像卷(包括数据A、B1、C、D2、E1、F),最后将如图6所示的活动元数据(指向数据卷中的A、C、E、F;以及,指向快照空间中的B1、D1)更新为如图7所示的活动元数据(指向数据卷中的A、C、F及指向快照空间中的B1、D2、E1)。
在本说明书中,上述存储设备接收针对上述数据卷读取请求。
例如,请参见图6所示,上述存储设备针对上述数据卷中数据(A、B1、C、D1、E、F)的上述读取请求。又例如,请参见图7所示,上述存储设备针对上述数据卷中数据(A、B1、C、D2、E1、F)的上述读取请求。
在本说明书中,进一步地,上述存储设备响应于上述读取请求,从上述镜像卷中顺序读取对应数据。
例如,在实现时,响应于上述读取请求,从上述镜像卷中与上述数据卷中数据对应的物理空间中顺序读取对应数据。
在示出的一种实施方式中,上述存储设备检查上述读取请求对应待读取的数据;若上述待读取的数据为上述数据卷对应的最新数据,则从上述镜像卷中顺序读取对应数据。
例如,请参见图6所示,上述存储设备可以接收到针对上述数据卷中数据(A、B1、C、D1、E、F)的上述读取请求,响应于上述读取请求,检查上述读取请求对应的上述待读取的数据(A、B1、C、D1、E、F),可以确定上述待读取的数据为上述数据卷对应的最新数据,也即上述活动元数据指向的数据(非快照1对应的快照数据),则从上述镜像卷中与上述数据卷中数据对应的物理空间中顺序读取对应数据,也即从镜像卷中顺序读取数据(A、B1、C、D1、E、F),将其返回给数据读取方。
又例如,请参见图7所示,上述存储设备可以接收到针对上述数据卷中数据(A、B1、C、D2、E1、F)的上述读取请求,响应于上述读取请求,检查上述读取请求对应的上述待读取的数据(A、B1、C、D2、E1、F),可以确定上述待读取的数据为上述数据卷对应的最新数据,也即上述活动元数据指向的数据(非快照1及快照2对应的快照数据),则从上述镜像卷中与上述数据卷中数据对应的物理空间中顺序读取对应数据,也即从镜像卷中顺序读取数据(A、B1、C、D2、E1、F),将其返回给数据读取方。
需要说明的是,由于上述镜像卷中的数据的物理空间是连续的,在数据读取过程中,机械硬盘磁头不需要切换寻道,而是可以连续读取数据,由此数据读性能获得极大地提升。
在示出的另一种实施方式中,上述存储设备检查上述读取请求对应待读取的数据;若上述待读取的数据为上述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及上述数据卷中读取对应数据。
例如,请参见图6所示,上述存储设备可以接收到针对上述数据卷中数据(A、B、C、D、E、F)的上述读取请求,响应于上述读取请求,检查上述读取请求对应的上述待读取的数据(A、B、C、D、E、F),可以确定上述待读取的数据为上述数据卷对应的快照1的数据,也即快照1的快照元数据指向的数据(A、B、C、D、E、F),则基于如图6所示的快照1的快照元数据,从其对应的上述数据卷中读取对应数据(A、B、C、D、E、F),将其返回给数据读取方。
又例如,请参见图7所示,上述存储设备可以接收到针对上述数据卷中数据(A、B1、C、D1、E、F)的上述读取请求,响应于上述读取请求,检查上述读取请求对应的上述待读取的数据(A、B1、C、D1、E、F),可以确定上述待读取的数据为上述数据卷对应的快照2的数据,也即快照2的快照元数据指向的数据(A、B1、C、D1、E、F),则基于如图7所示的快照2的快照元数据,从其对应的快照空间及上述数据卷中读取对应数据(A、B1、C、D1、E、F),将其返回给数据读取方。
在以上技术方案中,基于为数据卷创建镜像卷并保持数据实时同步;以及,针对数据卷创建ROW快照,检测针对数据卷顺序读取请求,从镜像卷顺序读取数据并返回,提高了启用了ROW快照的数据卷的数据读性能。
与上述方法实施例相对应,本申请还提供了数据读取装置的实施例。
与上述方法实施例相对应,本说明书还提供了一种数据读取装置的实施例。本说明书的数据读取装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图8所示,为本说明书的数据读取装置所在电子设备的一种硬件结构图,除了图8所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
图9是本说明书一实施例示出的一种数据读取装置的框图。
请参考图9,所述数据读取装置90可以应用在前述图8所示的电子设备中,所述装置应用于存储设备,所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,所述装置包括:
创建模块901,创建与所述数据卷对应的镜像卷;
快照生成模块902,生成与写入所述数据卷的用户数据对应的ROW快照;
读取模块903,接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
在本实施例中,所述创建模块901进一步:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
在本实施例中,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据;所述快照生成模块902进一步:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
在本实施例中,所述读取模块903进一步:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
在本实施例中,所述读取模块903进一步:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的装置、装置、模块或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
与上述方法实施例相对应,本说明书还提供了一种电子设备的实施例。所述电子设备可以应用于存储设备,所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式;该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。
在本实施例中,通过读取并执行所述存储器存储的与数据读取逻辑对应的机器可执行指令,所述处理器被促使:
创建与所述数据卷对应的镜像卷;
生成与写入所述数据卷的用户数据对应的ROW快照;
接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
在本实施例中,通过读取并执行所述存储器存储的与数据读取逻辑对应的机器可执行指令,所述处理器被促使:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
在本实施例中,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据,通过读取并执行所述存储器存储的与数据读取逻辑对应的机器可执行指令,所述处理器被促使:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
在本实施例中,通过读取并执行所述存储器存储的与数据读取逻辑对应的机器可执行指令,所述处理器被促使:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
在本实施例中,通过读取并执行所述存储器存储的与数据读取逻辑对应的机器可执行指令,所述处理器被促使:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (12)
1.一种数据读取方法,所述方法应用于存储设备;所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,所述方法包括:
创建与所述数据卷对应的镜像卷;
生成与写入所述数据卷的用户数据对应的ROW快照;
接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
2.根据权利要求1所述的方法,其特征在于,所述创建与所述数据卷对应的镜像卷,包括:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
3.根据权利要求1所述的方法,其特征在于,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据;所述生成与写入所述数据卷的用户数据对应的ROW快照,包括:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
4.根据权利要求1所述的方法,其特征在于,所述响应于所述读取请求,从所述镜像卷中顺序读取对应数据,包括:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
5.根据权利要求4所述的方法,其特征在于,还包括:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
6.一种数据读取装置,所述装置应用于存储设备;所述存储设备预设有数据卷及用于管理所述数据卷中数据的活动元数据;所述数据卷已启用ROW快照模式,所述装置包括:
创建模块,创建与所述数据卷对应的镜像卷;
快照生成模块,生成与写入所述数据卷的用户数据对应的ROW快照;
读取模块,接收针对所述数据卷读取请求,响应于所述读取请求,从所述镜像卷中顺序读取对应数据。
7.根据权利要求6所述的装置,其特征在于,所述创建模块进一步:
创建与所述数据卷容量相同且物理空间连续的存储卷;
将所述数据卷中的数据,同步至所述存储卷。
8.根据权利要求6所述的装置,其特征在于,所述存储设备预设有用于管理ROW快照对应快照数据的快照元数据;所述快照生成模块进一步:
将所述活动元数据,保存为所述ROW快照对应的快照元数据;
将所述用户数据同步至所述镜像卷及保存至快照空间;
更新所述活动元数据。
9.根据权利要求6所述的装置,其特征在于,所述读取模块进一步:
检查所述读取请求对应待读取的数据;
若所述待读取的数据为所述数据卷对应的最新数据,则从所述镜像卷中顺序读取对应数据。
10.根据权利要求9所述的装置,其特征在于,所述读取模块进一步:
若所述待读取的数据为所述数据卷对应的ROW快照的数据,则基于ROW快照对应的快照元数据,从其对应的快照空间及所述数据卷中读取对应数据。
11.一种电子设备,其特征在于,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行如权利要求1至5任一项所述的方法。
12.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910707507.3A CN110531925B (zh) | 2019-08-01 | 2019-08-01 | 数据读取方法、装置、电子设备及机器可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910707507.3A CN110531925B (zh) | 2019-08-01 | 2019-08-01 | 数据读取方法、装置、电子设备及机器可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110531925A CN110531925A (zh) | 2019-12-03 |
CN110531925B true CN110531925B (zh) | 2022-11-25 |
Family
ID=68661275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910707507.3A Active CN110531925B (zh) | 2019-08-01 | 2019-08-01 | 数据读取方法、装置、电子设备及机器可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110531925B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111158586A (zh) * | 2019-12-09 | 2020-05-15 | 杭州宏杉科技股份有限公司 | 数据读写方法、装置、电子设备及机器可读存储介质 |
CN112181295B (zh) * | 2020-09-22 | 2022-02-18 | 杭州宏杉科技股份有限公司 | 数据访问方法、装置、存储设备及机器可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354582A (zh) * | 2016-08-18 | 2017-01-25 | 无锡华云数据技术服务有限公司 | 一种连续数据保护方法 |
CN109902034A (zh) * | 2019-02-25 | 2019-06-18 | 杭州宏杉科技股份有限公司 | 快照创建方法、装置、电子设备及机器可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4581518B2 (ja) * | 2003-12-19 | 2010-11-17 | 株式会社日立製作所 | スナップショット取得方法 |
-
2019
- 2019-08-01 CN CN201910707507.3A patent/CN110531925B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354582A (zh) * | 2016-08-18 | 2017-01-25 | 无锡华云数据技术服务有限公司 | 一种连续数据保护方法 |
CN109902034A (zh) * | 2019-02-25 | 2019-06-18 | 杭州宏杉科技股份有限公司 | 快照创建方法、装置、电子设备及机器可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110531925A (zh) | 2019-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106354582B (zh) | 一种连续数据保护方法 | |
KR101702201B1 (ko) | 솔리드 스테이트 드라이브(ssd)에 대한 최적화된 컨텍스트 드롭 | |
CN109902034B (zh) | 快照创建方法、装置、电子设备及机器可读存储介质 | |
CN106776147B (zh) | 一种差异数据备份方法和差异数据备份装置 | |
CN102096561B (zh) | 分层数据存储处理方法、装置以及存储设备 | |
US10452286B2 (en) | Leveraging continuous replication to copy snapshot backup image | |
US8862819B2 (en) | Log structure array | |
KR20130083356A (ko) | 메타데이터 지속성을 위한 방법 | |
KR101584760B1 (ko) | 순서 모드 저널링 파일 시스템을 위한 블록 그룹 단위 저널링 방법 및 장치 | |
US10095585B1 (en) | Rebuilding data on flash memory in response to a storage device failure regardless of the type of storage device that fails | |
US20240020240A1 (en) | Method for storing l2p table, system, device, and medium | |
CN110531925B (zh) | 数据读取方法、装置、电子设备及机器可读存储介质 | |
CN105589733B (zh) | 一种数据处理方法和装置 | |
CN110134551B (zh) | 一种持续数据保护方法及装置 | |
CN111367856A (zh) | 数据复制方法、装置、电子设备及机器可读存储介质 | |
US10169160B2 (en) | Database batch update method, data redo/undo log producing method and memory storage apparatus | |
CN101169705B (zh) | 多硬盘下基于裸文件***实现文件级镜像的方法及装置 | |
CN111913664B (zh) | 一种数据写入方法及装置 | |
CN110018987B (zh) | 快照创建方法、装置及*** | |
CN111399774B (zh) | 分布式存储***下基于快照的数据处理方法和装置 | |
CN115454570A (zh) | 灾备方法、灾备恢复方法、虚拟机***、设备及存储介质 | |
US10146452B2 (en) | Maintaining intelligent write ordering with asynchronous data replication | |
CN111158586A (zh) | 数据读写方法、装置、电子设备及机器可读存储介质 | |
US9875037B2 (en) | Implementing multiple raid level configurations in a data storage device | |
CN110704239A (zh) | 数据复制方法、装置、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
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 |