CN114860154A - 使用缓存状态改变的数据迁移 - Google Patents
使用缓存状态改变的数据迁移 Download PDFInfo
- Publication number
- CN114860154A CN114860154A CN202111208625.3A CN202111208625A CN114860154A CN 114860154 A CN114860154 A CN 114860154A CN 202111208625 A CN202111208625 A CN 202111208625A CN 114860154 A CN114860154 A CN 114860154A
- Authority
- CN
- China
- Prior art keywords
- storage system
- cache
- data
- state
- 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.)
- Granted
Links
- 230000005012 migration Effects 0.000 title claims description 80
- 238000013508 migration Methods 0.000 title claims description 80
- 238000000034 method Methods 0.000 claims description 39
- 239000003795 chemical substances by application Substances 0.000 claims description 29
- 230000008569 process Effects 0.000 claims description 28
- 238000012546 transfer Methods 0.000 claims description 11
- 239000003999 initiator Substances 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 239000004744 fabric Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- 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/061—Improving I/O performance
-
- 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
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- 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/0629—Configuration or reconfiguration of 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/0647—Migration 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/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/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- 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/0683—Plurality of storage devices
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
在一些示例中,为了将数据从第一存储系统迁移到第二存储系统,一种系统进行以下操作:在所述第一存储系统处创建代理,以将在所述第一存储系统处接收的写入请求定向到所述第二存储系统;最初将所述第一存储系统中的缓存设置为第一状态,在所述第一状态中,所述缓存存储第一写入请求的写入数据;以及将所述缓存的状态从所述第一状态改变到第二状态,在所述第二状态中,第二写入请求的写入数据绕过所述缓存并且被所述代理定向到所述第二存储系统。
Description
背景技术
存储系统用于存储一个或多个计算设备的数据。在一些示例中,存储系统可以直接连接到计算设备。在其他示例中,存储系统可由计算设备通过网络访问。
附图说明
关于以下附图描述了本公开的一些实施方式。
图1是根据一些示例的在存储系统之间迁移数据的布置的框图。
图2A至图2F是图示根据一些示例的数据迁移过程的框图。
图3是根据一些示例的存储机器可读指令的存储介质的框图。
图4是根据一些示例的源存储系统的框图。
图5是根据一些示例的过程的流程图。
在所有附图中,相同的附图标记指代相似但不一定相同的元件。附图不一定是成比例的,并且一些部分的尺寸可以被放大以更清楚地图示所示的示例。此外,附图提供了与描述一致的示例和/或实施方式;然而,描述不限于附图中提供的示例和/或实施方式。
具体实施方式
在本公开中,除非上下文另外明确指示,否则使用术语“一个/一种(a/an)”或“所述(the)”旨在同样包括复数形式。同样地,当在本公开中使用时,术语“包括(includes/including/comprises/comprising)”、“具有(have/having)”指明存在所述元件,但不排除存在或添加其他元件。
可以出于各种目的在不同存储系统之间执行数据的迁移。在一些示例中,数据的迁移可以指将数据从第一存储系统复制到第二存储系统,其中数据的副本保持在第一存储系统处。可替代地,数据的迁移可以指将数据从第一存储系统移动到第二存储系统,其中数据未保持在第一存储系统处。
存储系统可以包括存储设备或多个存储设备的集合。存储设备的示例包括基于磁盘的存储设备、固态存储设备等。
在以下场景中的任意场景中,可以将数据从第一存储系统迁移到第二存储系统:作为将现有存储系统升级到不同(例如,更高性能)的存储系统的一部分,该存储系统的型号或类型可能与现有存储系统(无论是来自相同还是不同的制造商)不兼容;将数据移动到目标位置(例如,物理上更靠近要使用数据的(多个)计算设备的位置、比先前位置更安全的位置等);或用于任何其他目的。
在一些情况下,数据可以存储在存储卷集合中。“存储卷”可以指数据的逻辑容器,其中存储卷可以存储在一个存储设备中或跨多个存储设备存储。在一些示例中,存储卷可以由逻辑单元号(LUN)或其他类型的标识符来标识。
在一些示例中,可以执行在线数据迁移,其中主机系统可以继续发出输入/输出(I/O)请求,以访问存储卷中从源存储系统迁移到目的地存储系统的数据。由主机系统发出的I/O请求可以请求读取访问数据和/或写入数据。“主机系统”可以指能够读取和/或写入数据的任何电子设备。电子设备的示例包括以下各项中的任一项或其某种组合:超级计算机、台式计算机、笔记本计算机、平板计算机、服务器计算机、存储控制器、通信节点、智能电话、游戏设备、车辆、车辆中的控制器、家用电器等。
在一些示例中,在数据迁移期间提交的主机I/O请求可能由中间层(包括机器可读指令和/或硬件处理电路)处理,这可能会给I/O请求增加大量时延。I/O请求的时延可以指处理I/O请求和执行I/O请求所请求的动作所涉及的时间量,其中,该动作可以包括将数据返回到该请求主机系统以供读取,或者将数据写入存储系统以供写入。
由于在数据迁移期间可能会降低I/O请求的速度,一些系统可能会尝试在非高峰时段,即,与其他时段相比预期的对存储系统的I/O活动更少的时段调度数据迁移。
然而,在一些计算环境中,可能没有非高峰时段,因为存储系统中的数据可能会一天24小时、一周7天持续地被访问。在这种情况下,当执行数据迁移时,主机系统可能会经历I/O请求处理速度变慢的情况。
根据本公开的一些实施方式,提供了集中式缓存辅助代理绕过迁移技术或机制,其中,源存储系统中的代理将从一定数量的主机系统(例如,一个主机系统或多个主机系统)接收的写入请求重定向到目的地存储系统(使得源存储系统被有效地绕过),并且其中,源存储系统中的缓存改变状态以完成迁移。
“代理”可以指支持将由代理接收的数据访问重定向或转发到比如目的地存储系统等另一个端点的任何实体。可以使用数据结构、机器可读指令和硬件的任何组合来实施代理。
集中式缓存辅助代理绕过迁移技术或机制在整个迁移持续时间中采用缓存。缓存辅助代理绕过迁移技术或机制可以在不影响主机I/O性能或减少对其不利影响的情况下执行数据迁移。换句话说,在迁移期间,主机系统在与主机系统发出的I/O请求相关联的时延方面经历相对低的影响。在整个迁移持续时间使用的缓存包括:在迁移期间使用源存储系统处的缓存进行读取和写入缓存(当缓存被设置为第一状态时);以及当源存储系统处的缓存被转换到第二状态时,使用目的地存储系统处的缓存进行读取和写入缓存(源存储系统中的缓存的第一状态和第二状态的细节将在下面进一步讨论)。使用中央控制器(例如,迁移引擎)实施缓存辅助代理绕过迁移技术,该中央控制器可以是源存储系统、目的地存储系统或与源存储系统和目的地存储系统不同的系统的一部分,或者在它们的任意组合中。
图1是包括源存储系统102和目的地存储系统104的示例布置的框图。如结合存储系统102和104使用的标签“源”和“目的地”假设了其中数据要从存储系统102迁移到存储系统104的示例。在其他示例中,如果要将数据从存储系统104迁移到存储系统102,则存储系统104可以被称为源存储系统,并且存储系统102可以被称为目的地存储系统。
存储系统102和104连接到通信结构106,该通信结构可以使用局域网(LAN)、广域网(WAN)、存储区域网(SAN)或任何其他类型的网络中的任何一项或其某种组合来实施。主机系统108能够通过发出用于访问数据(读取数据和/或写入数据)的I/O请求来访问存储系统102或104。由主机系统108发出的I/O请求通过通信结构106传输到存储系统102或104。
尽管在图1中仅示出了一个主机系统108,但是应注意,在其他示例中,多个主机系统108可以访问存储系统102或104。同样,在其他示例中,可以有两个以上的存储系统。
图1还示出了迁移系统110,该迁移系统包括用于将数据从源存储系统102迁移到目的地存储系统104的迁移引擎112。如这里所使用的,“引擎”可以指硬件处理电路,该硬件处理电路可以包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列或另一个硬件处理电路中的任何一项或其某种组合。可替代地,“引擎”可以指硬件处理电路和可在硬件处理电路上执行的机器可读指令(软件和/或固件)的组合。
在一些示例中,迁移系统110可以与源存储系统102和目的地存储系统104分离。如这里所使用的,“系统”可以指计算设备或计算设备集合。在其他示例中,代替在单独的迁移系统110中实施迁移引擎112,反而可以将迁移引擎112包括在源存储系统102中和/或目的地存储系统104中。
源存储系统102包括存储设备阵列114,并且目的地存储系统104包括存储设备阵列116。尽管每个存储系统102或104被描绘为具有多个存储设备,但是在其他示例中,存储系统102或104可以仅包括一个存储设备。
源存储系统102包括源存储卷118。源存储卷118的数据可以跨存储设备114的阵列存储。在一些示例中,可以在迁移引擎112的控制下将多个源存储卷118作为一组迁移——作为数据迁移的一部分。
数据迁移将源存储卷118的数据传送到目的地存储系统104中的目的地存储卷120。目的地存储卷120的数据跨目的地存储系统104中的存储设备116的阵列存储。
尽管图1示出了将多个源存储卷118迁移到多个目的地存储卷120的示例,但是在其他示例中,迁移可以是从一个源存储卷118到一个目的地存储卷120、或者从一个源存储卷118到多个目的地存储卷120、或者从多个源存储卷118到一个目的地存储卷120。
源存储系统102包括源存储控制器140,并且目的地存储系统104包括目的地存储控制器142。存储控制器响应于来自主机系统的命令(读取命令、写入命令等)来管理对存储系统中的存储卷的数据的访问。
如此处所使用的,“控制器”可以指硬件处理电路,其可以包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列或其他硬件处理电路中的任一项或其某种组合。可替代地,“控制器”可以指硬件处理电路与可在硬件处理电路上执行的机器可读指令(软件和/或固件)的组合。
根据本公开的一些实施方式,作为数据迁移的集中式控制器的迁移引擎112可以发起数据从源存储系统102到目的地存储系统104的缓存辅助代理绕过迁移。在缓存辅助代理绕过迁移期间,迁移引擎112使得在源存储系统102处创建代理130,以将源存储系统102处的从主机系统108(或多个主机系统108)接收的写入请求定向到目的地存储系统104。
迁移引擎112使得在源存储系统102处创建代理130可以包括迁移引擎112在源存储系统102处创建代理130,或者迁移引擎112请求源存储系统102的源存储控制器140创建代理130。下面进一步讨论代理130的细节。
源存储系统102包括可以用于存储写入请求的写入数据的缓存132。注意,缓存132可以用于进行读取缓存和写入缓存两者。利用读取缓存,缓存132中的数据可以用于满足来自主机系统108的读取请求,使得不必执行从较慢的存储设备(例如,存储设备114和/或116)取得读取数据。利用写入缓存,要写入另一存储设备(例如,存储设备114和/或116)的写入数据可以首先存储在缓存132中,以供稍后写入另一存储设备。
“缓存”可以指存储当前(或将)存储在另一个存储中的数据的存储器,比如源存储系统102的存储设备114和/或目的地存储系统104的存储设备116。缓存可以使用一定数量的存储器设备(例如,一个存储器设备或多个存储器设备)来实施,包括如动态随机存取存储器(DRAM)设备或静态随机存取存储器(SRAM)设备等易失性存储器设备,和/或如闪速存储器设备等非易失性存储器设备。
目的地存储系统104也包括缓存134,该缓存用于存储由目的地存储系统104从(多个)主机系统108接收的写入请求的写入数据。目的地存储系统104中的缓存134可以用于进行读取缓存和写入缓存。
根据本公开的一些实施方式,为了支持缓存辅助代理绕过迁移,可以选择性地将缓存132设置为多种不同的状态。缓存132的不同状态包括其中缓存132存储写入请求的写入数据的第一状态,并且缓存132可以用于进行读取缓存和写入缓存。可以将缓存132的状态改变到不同的第二状态,在该第二状态中,写入请求的写入数据绕过缓存132并且被代理130定向到目的地存储系统104(缓存132的直写模式)。同样地,在第二状态中,缓存132是读取无效的,这意味着缓存中的数据被认为是无效的。缓存132的直写模式和读取无效模式有效地使得读取请求和写入请求绕过源存储系统102。
根据一些示例,图2A至图2F图示了可以由迁移引擎112发起的示例迁移过程。虽然图2A至图2F示出了一个主机系统108可以在迁移过程期间发出请求的示例,但是应注意,可能有多个主机系统108可以在迁移过程期间发出请求。同样地,尽管提及了一个源存储系统102和一个目的地存储系统104,但是应注意,根据本公开的一些实施方式的技术或机制可以应用于存在多个源存储系统和/或多个目的地存储系统的示例(例如,一对多迁移或多对一迁移或多对多迁移)。
最初,如图2A所示,在迁移引擎112发起迁移之后,源存储系统102继续将源存储卷202呈现给主机系统108。主机系统108能够使用根据通过主机系统108与源存储系统102之间的源路径203发送的存储接口协议的命令来访问存储在源存储系统102中的存储卷202的数据。
主机系统与存储系统之间的路径可以包括通过主机系统的端口与存储系统的端口之间的通信结构106(图1)的路径。
主机系统108可以使用的存储接口协议的示例是小型计算机系统接口(SCSI)协议。在其他示例中,可以采用其他存储接口协议。“存储接口协议”是指管理存储系统中的数据访问控制的协议。
在使用SCSI的示例中,可以使用非对称逻辑单元访问(ALUA)以允许给定存储卷(比如存储卷202)的多路径传送。多路径传送是指向存储卷提供在主机系统与存储系统之间的多于一条路径。根据ALUA,对给定存储卷的I/O请求可能存在最优化路径和非最优化路径。被配置为使用ALUA的主机系统可以应用多路径传送策略来确定使用哪条路径发出访问(读取和/或写入)给定存储卷中数据的请求。
ALUA允许使用多个控制器(比如源存储系统102和目的地存储系统104的存储控制器)访问同一存储卷,比如要迁移的存储卷202。
尽管在一些示例中提及了ALUA,但是应注意,在其他示例中可以采用用于定义主机系统与存储卷之间的路径的状态的其他技术。
根据一些示例,在迁移过程期间,主机系统108与源存储系统102之间的源路径203是最优化路径并且具有ALUA活动/最优化状态,直到迁移过程结束时停用源存储系统102为止。停用源存储系统102是指使源存储系统102不被主机系统使用。例如,如果使用ALUA,则可以通过将源路径203设置为ALUA不可用状态或ALUA备用状态来停用源存储系统102。
在图2A中,启用了对存储卷202读取和写入缓存,以提高主机I/O性能。读取缓存和写入缓存由源存储系统102中的缓存132提供。在源存储系统102处,读取缓存和写入缓存在迁移过程的大部分中都被启用,直到缓存132的状态是被绕过为止(下面进一步讨论)。在启用读取缓存和写入缓存的情况下,源存储控制器140从主机系统108接收的请求可以使用缓存132来满足。
如图2B所示,迁移引擎112使得在目的地存储系统104中创建目的地存储卷204。所创建的目的地存储卷204最初为空(即,没有数据)。在迁移过程中,将用来自源存储卷202的数据填充目的地存储卷204。
迁移引擎112或源存储系统102可以请求目的地存储系统104向源存储系统102提供目的地存储卷204的元数据。目的地存储卷204的元数据可以包括目的地存储卷204的大小,并且可能包括以下各项中的任一项或其某种组合:目的地存储卷204的标识符、目的地存储卷204的版本信息、用于标识目的地存储卷204是其一部分的组的组标识符等等。
响应于从目的地存储系统204接收的元数据,迁移引擎112或源存储系统102创建直通卷206,该直通卷是实际上不存储数据的虚拟卷。更确切地说,直通卷206被用作将源存储卷202的数据镜像到目的地存储卷204的代理(例如,图1的代理130)。直通卷206的创建基于由目的地存储系统104提供给源存储系统102的目的地存储卷204的元数据。
直通卷206具有源存储控制器140可以定向读取访问和写入访问(基于目的地存储卷204的元数据)的类似特性。换句话说,源存储控制器140可以如同直通卷206是(具有目的地存储卷204的特性的)实际的存储卷一样对直通卷206执行读取访问和写入访问。定向到直通卷206的读取访问和写入访问被转发到目的地存储系统204。
在一些示例中,为了将源存储卷202的数据传递到目的地存储卷204,源存储控制器140充当发起方,并且目的地存储系统104是由发起方发出的请求的目标。例如,源存储系统102可以包括主机I/O端口208,并且目的地存储系统104可以包括目标I/O端口210。I/O端口208和210可以包括根据光纤通道(FC)协议操作的FC端口。例如,可以通过图1的通信结构106提供在I/O端口208与210之间的链路209。
FC协议跨网络提供相对高速的数据传送。在使用FC的示例中,源存储控制器140可以是FC发起方,并且目的地存储系统104可以是FC目标。
在其他示例中,可以采用其他协议来执行从源存储系统102到目的地存储系统104的数据传送。
在图2B所描绘的迁移过程的状态中,源存储控制器140继续从主机系统108接收主机I/O请求。同样地,源路径203继续处于活动状态(例如,ALUA活动/最优化状态),并且缓存132处于启用读取缓存和写入缓存的状态。
如图2C所示,当源存储控制器140继续接受主机I/O请求(包括将写入数据写入源存储系统102中的缓存132的写入请求)时,源存储控制器140发起数据镜像(212,从源存储卷202到直通卷206)。在一些示例中,数据镜像(212)可以作为后台进程来执行。注意,源存储卷202的被镜像的数据包括源存储卷202中的数据以及源存储系统102的缓存132中的写入数据。
执行从源存储卷202(和缓存132)到直通卷206的数据镜像(212)使得对应的数据在源I/O端口208与目标I/O端口210之间被传送(214)到目的地存储卷204。如果采用FC,则通过端口208和210从源存储系统102传送到目的地存储系统104的数据是从FC发起方到FC目标。
注意,可以作为后台进程的数据镜像(212)对源存储系统102从主机系统108接收的主机I/O请求的主机I/O性能没有任何显著的不利影响。换句话说,源存储控制器140可以持续处理主机I/O请求,同时在后台,数据镜像(212)继续将数据传送到目的地存储卷204。
在图2C所描绘的迁移过程的状态中,源路径203继续处于活动状态(例如,ALUA活动/最优化状态),并且缓存132处于启用读取缓存和写入缓存的状态。
如图2D所示,根据本公开的一些实施方式,一旦完成了从源存储卷202到目的地存储卷204(经由直通卷206)的数据镜像(212),迁移引擎112或源存储控制器140就激活缓存绕过状态(220)。在缓存绕过状态(220)中,源存储系统102中的缓存132被转换到直写模式,其中由源存储控制器140接收的任何写入都被写入到直通卷206,而不是写入缓存132中。同样地,执行读取无效以使缓存132的数据无效,使得源存储控制器140随后接收的任何读取请求都不能从源存储系统102中的缓存132得到满足,而是必须从目的地存储系统104中的目的地存储卷204中取得。实际上,当缓存绕过被激活时,源存储控制器140将主机I/O请求通过直通卷206转发(222)到目的地存储系统104。
当缓存绕过状态(220)被激活时,当正在建立从主机系统108到目的地存储系统104的新路径时,可能会发生轻微的主机I/O性能劣化。然而,注意,由于目的地存储系统104也包括提供读取缓存和写入缓存的缓存134,所以源存储控制器140接收的主机I/O请求可以从目的地存储系统104中的缓存134得到满足。因此,I/O性能劣化的量可能并不显著(例如,与缓存132支持读取缓存和写入缓存的状态相比,主机I/O性能可能下降小于5%、10%或20%等)。通过激活源存储系统102中的缓存绕过状态(220),一层缓存被移除(在源存储系统104处),同时另一层缓存(在目的地存储系统104处)保持可用。
在缓存绕过状态(220)中,源存储系统102有效地充当交换机,这在通过源存储系统102在主机系统108与目的地存储系统104之间转发主机I/O请求时可能会增加少量的时延。
在图2D所描绘的迁移过程的状态中,源路径203继续处于活动状态(例如,ALUA活动/最优化状态)。
如图2E所示,迁移引擎112使得在主机系统108与目的地存储系统104之间建立目的地路径224。迁移引擎112可以通过直接建立目的地路径224或者请求目的地存储控制器142建立目的地路径224来使得建立目的地路径224。可以将目的地路径224设置为活动状态(例如,在采用SCSI的示例中的ALUA活动/最优化状态)。
一旦目的地路径224被呈现给主机系统108,主机系统108就可以发现目的地路径224。在图2E所示的迁移过程的状态中,主机系统108可以跨源路径203和目的地路径224发送I/O请求。注意,主机系统108可以采用主机多路径传送策略,该主机多路径传送策略控制使用源路径203和目的地路径224中的哪一个。
因为在图2E所示的状态中启用了多路径传送,所以由于主机系统108的I/O请求将通过多条路径来满足,因此主机I/O性能可以提高。
接下来,如图2F所示,迁移引擎112移除源路径203以停用源存储系统102。源路径203是通过将源路径203设置为非活动状态(例如,ALUA不可用或备用状态)来移除的。
在图2E所示的状态中,I/O请求由主机系统108跨目的地路径224下发到目的地存储卷204。
使用根据本公开的一些实施方式的技术或机制,由于主机I/O请求不必经过附加的层(包括软件层或硬件层)——这减少了与I/O请求相关联的时延,因此改进了迁移过程期间的主机I/O处置。通过在迁移过程接近结束时将源路径和目的地路径都定义为处于活动状态,提供了允许移除源路径并且切换到目的地路径的相对简单的技术。除非在目的地存储系统104处实施迁移引擎112,否则不必在目的地存储系统104处执行对机器可读指令的改变。同样地,根据本公开的一些实施方式,不必改变主机系统108的机器可读指令来支持迁移过程。
图3是存储机器可读指令的非暂态机器可读或计算机可读存储介质300的框图,这些机器可读指令在执行时使得系统执行各种任务。“系统”可以包括迁移系统110、源存储系统102和目的地存储系统104中的任何一项或其某些组合。
为了将数据从源存储系统102迁移到目的地存储系统104,可执行机器可读指令以执行缓存辅助代理绕过迁移。
机器可读指令包括代理创建指令302,用于在源存储系统102处创建代理(例如,图2B至图2E的直通卷206),以将在源存储系统102处接收的I/O请求(包括读取请求和/或写入请求)定向到目的地存储系统104。I/O请求来自多个(一个或多于一个)主机系统。
机器可读指令包括缓存第一状态设置指令304,用于最初将源存储系统102中的缓存设置为第一状态,在该第一状态中,启用读取缓存和写入缓存(例如,该缓存存储写入请求的写入数据并且可以用于响应读取请求)。
机器可读指令包括缓存状态改变指令306,这些缓存状态改变指令用于将缓存的状态从第一状态改变到第二状态,在该第二状态中,缓存被设置为缓存绕过状态,其中,来自主机系统的I/O请求(写入请求和/或读取请求)绕过缓存并且被代理定向到目的地存储系统104。
在一些示例中,数据从源存储系统102到目的地存储系统104的迁移是由中央控制器管理的集中式缓存辅助代理绕过迁移,其中,读取缓存和写入缓存被启用以在迁移的持续时间期间服务来自主机系统的I/O请求,使得I/O请求在迁移期间经历的时延增加的量可忽略不计。
在一些示例中,缓存的第二状态是基于将缓存设置为直写模式并且使缓存的数据无效。使缓存的数据无效会强制通过代理从目的地存储系统104服务读取请求。
在一些示例中,可执行机器可读指令以使得在目的地存储系统104处创建目的地存储卷,其中,目的地存储卷将接收要迁移的数据。
在一些示例中,可执行机器可读指令以接收目的地存储卷的元数据,并且基于元数据创建直通卷。
在一些示例中,可执行机器可读指令以发起数据从源存储系统102中的源存储卷到直通卷的镜像,以将数据从源存储卷传送到目的地存储系统104中的目的地存储卷。
在一些示例中,缓存状态的改变发生在完成数据从源存储卷到目的地存储卷的镜像之后。
图4是包括一个硬件处理器(或多个硬件处理器)402的源存储系统400的框图。硬件处理器可以包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列、或另一硬件处理电路。
源存储系统400包括存储介质404,该存储介质存储机器可读指令,这些机器可读指令可在硬件处理器402上执行以在迁移过程期间执行各种任务,从而将数据从源存储系统400迁移到目的地存储系统。可在硬件处理器402上执行的机器可读指令可以指可在单个硬件处理器或多个硬件处理器上执行的机器可读指令。
存储介质404中的机器可读指令包括I/O请求接收指令406,用于在源存储系统400处从主机系统接收I/O请求。
机器可读指令包括写入数据存储指令408,用于将写入请求的写入数据存储在被启用以进行写入缓存的缓存410中。缓存410在源存储系统400中。
机器可读指令包括数据镜像指令412,用于执行从源存储卷414到目的地存储系统中的目的地存储卷的代理416的数据镜像,其中,该数据镜像包括将数据从源存储卷414和缓存410复制到代理416。
机器可读指令包括缓存状态转换指令418,用于在完成数据镜像之后将缓存410转换到缓存绕过状态,在该缓存绕过状态中,I/O请求绕过缓存410并且通过代理416被定向到目的地存储系统。
图5是过程500的流程图,该过程可以由比如迁移系统110、源存储系统102和目的地存储系统104的任何一项或其某种组合的系统来执行。
过程500包括为了将数据从源存储系统迁移到目的地存储系统而执行的各种任务。
过程500包括将从主机系统到源存储系统的路径设置(在502处)为活动状态,以允许通过该路径将I/O请求从主机系统传送到源存储系统。
过程500包括在源存储系统处为目的地存储系统中的目的地存储卷创建(在504处)代理。
过程500包括将源存储系统中的源存储卷中的数据镜像(在506处)到代理,以使得源存储卷的数据传送到目的地存储卷。
过程500包括最初将源存储系统中的缓存设置(在508处)为第一状态,在该第一状态中,启用读取缓存和写入缓存以服务来自主机系统的I/O请求。
过程500包括将缓存的状态从第一状态改变(在510处)到第二状态,在该第二状态中,绕过缓存并且使得由源存储系统接收的来自主机系统的I/O请求被代理定向到目的地存储系统。
存储介质(例如,图3中的300或图4中的404)可以包括以下各项的任一项或其某种组合:半导体存储器设备,如动态或静态随机存取存储器(DRAM或SRAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)和闪速存储器或其他类型的非易失性存储器设备;磁盘,如固定的软盘和可移动盘;另一种磁介质,包括磁带;光学介质,如光盘(CD)或数字视频盘(DVD);或另一类型的存储设备。注意,上文讨论的指令可以在一个计算机可读或机器可读存储介质上提供,或者可替代地,可以在分布在具有可能多个节点的大型系统中的多个计算机可读或机器可读存储介质上提供。这种一个或多个计算机可读或机器可读存储介质被认为是物品(或制品)的一部分。物品或制品可以指任何制造的单个部件或多个部件。一个或多个存储介质可以位于运行机器可读指令的机器中、或者位于远程站点处,可以通过网络从该远程站点下载机器可读指令以供执行。
在前述描述中,阐述了许多细节以使得理解本文中所公开的主题。然而,可以在没有这些细节中的一些细节的情况下实践实施方式。其他实施方式可以包括上文所讨论的细节的修改和变化。所附权利要求旨在覆盖这样的修改和变化。
Claims (20)
1.一种非暂态机器可读存储介质,包括指令,所述指令在执行时使得系统进行以下操作:
为了将数据从第一存储系统迁移到第二存储系统:
在所述第一存储系统处创建代理,以将在所述第一存储系统处接收的写入请求定向到所述第二存储系统;
最初将所述第一存储系统中的缓存设置为第一状态,在所述第一状态中,所述缓存存储第一写入请求的写入数据;以及
将所述缓存的状态从所述第一状态改变到第二状态,在所述第二状态中,第二写入请求的写入数据绕过所述缓存并且被所述代理定向到所述第二存储系统。
2.如权利要求1所述的非暂态机器可读存储介质,其中,所述将数据从所述第一存储系统迁移到所述第二存储系统是由中央控制器管理的集中式缓存辅助代理绕过迁移,其中,读取缓存和写入缓存被启用以在所述迁移的持续时间期间服务来自主机系统的输入/输出(I/O)请求。
3.如权利要求1所述的非暂态机器可读存储介质,其中,所述第二状态是所述缓存的直写模式。
4.如权利要求3所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统使所述缓存的数据无效,以强制通过所述代理从所述第二存储系统来服务读取请求。
5.如权利要求1所述的非暂态机器可读存储介质,其中,在所述第一状态中,所述缓存被启用以进行读取缓存和写入缓存。
6.如权利要求1所述的非暂态机器可读存储介质,其中,所述第一写入请求和所述第二写入请求来自一定数量的主机系统。
7.如权利要求1所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统进行以下操作:
使得在第二存储系统处创建目的地存储卷,所述目的地存储卷用于接收要迁移的数据;以及
基于在所述第一存储系统处创建直通卷来创建所述代理。
8.如权利要求7所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统进行以下操作:
接收所述目的地存储卷的元数据;以及
基于所述元数据创建所述直通卷。
9.如权利要求7所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统进行以下操作:
发起数据从所述第一存储系统中的源存储卷到所述直通卷的镜像,以将所述数据从所述源存储卷传送到所述目的地存储卷,
其中,所述改变所述缓存的状态发生在完成所述数据从所述源存储卷到所述目的地存储卷的所述镜像之后。
10.如权利要求9所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统进行以下操作:
将所述目的地存储卷呈现给主机系统,使得所述主机系统被提供有多条路径,所述主机系统的请求能够通过所述多条路径传输。
11.如权利要求10所述的非暂态机器可读存储介质,其中,所述多条路径包括从所述主机系统到所述第一存储系统的第一路径、以及从所述主机系统到所述第二存储系统的第二路径。
12.如权利要求11所述的非暂态机器可读存储介质,其中,所述第一路径和所述第二路径都处于活动状态,以允许所述主机系统从所述目的地存储卷访问数据。
13.如权利要求11所述的非暂态机器可读存储介质,其中,所述指令在执行时使得所述系统进行以下操作:
移除所述第一路径以停用所述第一存储系统。
14.如权利要求1所述的非暂态机器可读存储介质,其中,当将所述写入请求定向到所述第二存储系统时,所述第一存储系统充当所述第二存储系统的发起方。
15.如权利要求1所述的非暂态机器可读存储介质,其中,在所述第一状态中,所述缓存为来自主机系统的读取请求提供读取缓存,并且其中,在所述第二状态中,所述缓存中的数据被无效化,并且来自所述主机系统的读取请求被定向到所述第二存储系统。
16.一种源存储系统,包括:
处理器;以及
非暂态存储介质,所述非暂态存储介质存储指令,所述指令能够在所述处理器上执行,以在迁移过程期间将数据从所述源存储系统迁移到目的地存储系统:
在所述源存储系统处接收来自主机系统的输入/输出(I/O)请求;
将写入请求的写入数据存储在被启用以进行写入缓存的缓存中;
执行从源存储卷到所述目的地存储系统中的目的地存储卷的代理的数据镜像,其中,所述数据镜像包括将数据从所述缓存复制到所述代理;以及
在完成所述数据镜像之后将所述缓存转换到缓存绕过状态,在所述缓存绕过状态中,I/O请求绕过所述缓存并且通过所述代理被定向到所述目的地存储系统。
17.如权利要求16所述的源存储系统,其中,所述缓存绕过状态是基于将所述缓存设置为直写模式并且使所述缓存中的数据无效。
18.如权利要求16所述的源存储系统,其中,所述代理包括基于所述目的地存储卷的元数据的所述源存储系统中的直通卷。
19.一种包括硬件处理器的系统的方法,所述方法包括:
为了将数据从源存储系统迁移到目的地存储系统:
将从主机系统到所述源存储系统的第一路径设置为活动状态,以允许通过所述第一路径将输入/输出(I/O)请求从所述主机系统传送到所述源存储系统;
在所述源存储系统处为所述目的地存储系统中的目的地存储卷创建代理;
将所述源存储系统中的源存储卷中的数据镜像到所述代理,以使得所述源存储卷的数据传送到所述目的地存储卷;
最初将所述源存储系统中的缓存设置为第一状态,在所述第一状态中,启用读取缓存和写入缓存以服务来自所述主机系统的所述I/O请求;以及
将所述缓存的状态从所述第一状态改变到第二状态,在所述第二状态中,绕过所述缓存并且使得由所述源存储系统接收的来自所述主机系统的I/O请求被所述代理定向到所述目的地存储系统。
20.如权利要求19所述的方法,进一步包括:
将从所述主机系统到所述目的地存储系统的第二路径设置为所述活动状态,以允许通过所述第二路径将I/O请求从所述主机系统传送到所述目的地存储系统;以及
将所述第一路径设置为非活动状态以停用所述源存储系统。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/166,009 US11720274B2 (en) | 2021-02-03 | 2021-02-03 | Data migration using cache state change |
US17/166,009 | 2021-02-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114860154A true CN114860154A (zh) | 2022-08-05 |
CN114860154B CN114860154B (zh) | 2024-06-11 |
Family
ID=82402903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111208625.3A Active CN114860154B (zh) | 2021-02-03 | 2021-10-18 | 使用缓存状态改变的数据迁移 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11720274B2 (zh) |
CN (1) | CN114860154B (zh) |
DE (1) | DE102021126990A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145497A (zh) * | 2022-09-06 | 2022-10-04 | 深圳市杉岩数据技术有限公司 | 一种基于分布式存储的卷数据在线迁移方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240012718A1 (en) * | 2022-07-07 | 2024-01-11 | Dell Products L.P. | Recovery aware data migration in distributed systems |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835954A (en) * | 1996-09-12 | 1998-11-10 | International Business Machines Corporation | Target DASD controlled data migration move |
CN101149667A (zh) * | 2004-07-15 | 2008-03-26 | 株式会社日立制作所 | 磁盘阵列系统、存储系统及存储系统迁移方法 |
CN103052938A (zh) * | 2010-10-14 | 2013-04-17 | 株式会社日立制作所 | 数据迁移系统和数据迁移方法 |
Family Cites Families (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5680640A (en) | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
US6823349B1 (en) | 2001-09-21 | 2004-11-23 | Emc Corporation | Method and system for establishing, maintaining, and using a persistent fracture log |
US7302536B2 (en) | 2003-06-17 | 2007-11-27 | Hitachi, Ltd. | Method and apparatus for managing replication volumes |
US7024527B1 (en) | 2003-07-18 | 2006-04-04 | Veritas Operating Corporation | Data restore mechanism |
US7278049B2 (en) | 2003-09-29 | 2007-10-02 | International Business Machines Corporation | Method, system, and program for recovery from a failure in an asynchronous data copying system |
US7149859B2 (en) | 2004-03-01 | 2006-12-12 | Hitachi, Ltd. | Method and apparatus for data migration with the efficient use of old assets |
US8200921B2 (en) | 2004-03-12 | 2012-06-12 | Hewlett-Packard Development Company, L.P. | Data synchronization for two data mirrors with sidefiles |
US7143308B2 (en) | 2005-01-14 | 2006-11-28 | Charlie Tseng | Apparatus, system, and method for differential rebuilding of a reactivated offline RAID member disk |
US7305579B2 (en) | 2005-03-22 | 2007-12-04 | Xiotech Corporation | Method, apparatus and program storage device for providing intelligent rebuild order selection |
US7546485B2 (en) | 2006-08-15 | 2009-06-09 | Hewlett-Packard Development Company, L.P. | Method and system for efficient journal-based resynchronization |
JP4972047B2 (ja) | 2008-07-15 | 2012-07-11 | 富士通株式会社 | ストレージシステム,ストレージシステムのコピー制御方法,及びストレージシステムのコピー制御部 |
US8225138B2 (en) | 2009-03-31 | 2012-07-17 | Lenovo (Singapore) Pte. Ltd. | High-speed recovery for computing systems |
US8655848B1 (en) | 2009-04-30 | 2014-02-18 | Netapp, Inc. | Unordered idempotent logical replication operations |
JP2013011919A (ja) | 2009-09-17 | 2013-01-17 | Hitachi Ltd | ストレージ装置及びそのスナップショット制御方法 |
US8214612B1 (en) | 2009-09-28 | 2012-07-03 | Emc Corporation | Ensuring consistency of replicated volumes |
US8112665B1 (en) | 2010-07-23 | 2012-02-07 | Netapp, Inc. | Methods and systems for rapid rollback and rapid retry of a data migration |
US8694700B1 (en) | 2010-09-29 | 2014-04-08 | Emc Corporation | Using I/O track information for continuous push with splitter for storage device |
US8799594B2 (en) | 2011-04-27 | 2014-08-05 | International Business Machines Corporation | Online volume migration using multi-path input/output masquerading |
JP5699852B2 (ja) | 2011-08-12 | 2015-04-15 | 富士通株式会社 | 情報処理装置、ストレージ制御方法およびプログラム |
WO2013118194A1 (en) | 2012-02-10 | 2013-08-15 | Hitachi, Ltd. | Storage system with virtual volume having data arranged astride storage devices, and volume management method |
US9037818B1 (en) | 2012-03-29 | 2015-05-19 | Emc Corporation | Active replication switch |
US8904133B1 (en) | 2012-12-03 | 2014-12-02 | Hitachi, Ltd. | Storage apparatus and storage apparatus migration method |
US20170132095A1 (en) | 2014-03-28 | 2017-05-11 | Hewlett Packard Enterprise Development Lp | Data restoration |
US10241712B1 (en) | 2014-06-30 | 2019-03-26 | EMC IP Holding Company LLC | Method and apparatus for automated orchestration of long distance protection of virtualized storage |
US10402113B2 (en) * | 2014-07-31 | 2019-09-03 | Hewlett Packard Enterprise Development Lp | Live migration of data |
US10228962B2 (en) | 2015-12-09 | 2019-03-12 | Commvault Systems, Inc. | Live synchronization and management of virtual machines across computing and virtualization platforms and using live synchronization to support disaster recovery |
US10365852B2 (en) | 2016-07-29 | 2019-07-30 | Vmware, Inc. | Resumable replica resynchronization |
US10353640B2 (en) | 2016-12-06 | 2019-07-16 | Dell Products L.P. | Seamless data migration in a clustered environment |
US10915448B2 (en) * | 2017-08-22 | 2021-02-09 | Seagate Technology Llc | Storage device initiated copy back operation |
US10452503B2 (en) | 2017-09-29 | 2019-10-22 | Hewlett Packard Enterprise Development Lp | Bidirectional replication |
US10972335B2 (en) | 2018-01-24 | 2021-04-06 | Hewlett Packard Enterprise Development Lp | Designation of a standby node |
US10956079B2 (en) | 2018-04-13 | 2021-03-23 | Hewlett Packard Enterprise Development Lp | Data resynchronization |
US10749955B2 (en) | 2018-05-08 | 2020-08-18 | Dropbox, Inc. | Online cache migration in a distributed caching system using a hybrid migration process |
US10705927B2 (en) | 2018-07-19 | 2020-07-07 | Hewlett Packard Enterprise Development Lp | Freeze a volume of a replication set and unfreeze the volume based on at least one of a snapshot permit message, a snapshot abort message, and expiration of a timeout |
US10768851B2 (en) | 2018-10-30 | 2020-09-08 | EMC IP Holding Company LLC | Instant-ready active-active storage nodes |
US11321002B2 (en) | 2018-12-11 | 2022-05-03 | Hewlett Packard Enterprise Development Lp | Converting a virtual volume between volume types |
US10776224B2 (en) | 2019-02-01 | 2020-09-15 | EMC IP Holding Company LLC | Recovery after service disruption during an active/active replication session |
US11188374B2 (en) * | 2019-07-24 | 2021-11-30 | Vmware, Inc. | Data mobility for immobile storage services |
US11238063B2 (en) | 2019-07-25 | 2022-02-01 | EMC IP Holding Company LLC | Provenance-based replication in a storage system |
US11194682B2 (en) | 2019-10-15 | 2021-12-07 | EMC IP Holding Company LLC | Connectivity-aware witness for active-active storage |
US11500669B2 (en) | 2020-05-15 | 2022-11-15 | Commvault Systems, Inc. | Live recovery of virtual machines in a public cloud computing environment |
US11599554B2 (en) | 2020-05-29 | 2023-03-07 | Vmware, Inc. | Synchronizing changes to stale components of a distributed object using synchronization bitmaps |
-
2021
- 2021-02-03 US US17/166,009 patent/US11720274B2/en active Active
- 2021-10-18 CN CN202111208625.3A patent/CN114860154B/zh active Active
- 2021-10-19 DE DE102021126990.3A patent/DE102021126990A1/de active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835954A (en) * | 1996-09-12 | 1998-11-10 | International Business Machines Corporation | Target DASD controlled data migration move |
CN101149667A (zh) * | 2004-07-15 | 2008-03-26 | 株式会社日立制作所 | 磁盘阵列系统、存储系统及存储系统迁移方法 |
CN103052938A (zh) * | 2010-10-14 | 2013-04-17 | 株式会社日立制作所 | 数据迁移系统和数据迁移方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145497A (zh) * | 2022-09-06 | 2022-10-04 | 深圳市杉岩数据技术有限公司 | 一种基于分布式存储的卷数据在线迁移方法 |
CN115145497B (zh) * | 2022-09-06 | 2022-11-29 | 深圳市杉岩数据技术有限公司 | 一种基于分布式存储的卷数据在线迁移方法 |
Also Published As
Publication number | Publication date |
---|---|
US11720274B2 (en) | 2023-08-08 |
US20220244876A1 (en) | 2022-08-04 |
DE102021126990A1 (de) | 2022-08-04 |
CN114860154B (zh) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10922135B2 (en) | Dynamic multitasking for distributed storage systems by detecting events for triggering a context switch | |
US8296534B1 (en) | Techniques for using flash-based memory in recovery processing | |
EP2450784B1 (en) | Latency reduction associated with a response to a request in a storage system | |
US8639876B2 (en) | Extent allocation in thinly provisioned storage environment | |
US20140281123A1 (en) | System and method for handling i/o write requests | |
CN114860154B (zh) | 使用缓存状态改变的数据迁移 | |
TWI541822B (zh) | 在記憶體之間移動資料之技術 | |
US9785561B2 (en) | Integrating a flash cache into large storage systems | |
JP2014102823A (ja) | 外部キャッシュデバイスでのハイパーバイザのi/oステージング | |
US20130275668A1 (en) | Data processing method and device | |
JP2005322237A (ja) | データ・ストレージ・システム間でのポイント・イン・タイム・コピー | |
JP6271769B2 (ja) | 計算機システム、計算機システムにおけるデータの移行方法 | |
US7725654B2 (en) | Affecting a caching algorithm used by a cache of storage system | |
US20220067549A1 (en) | Method and Apparatus for Increasing the Accuracy of Predicting Future IO Operations on a Storage System | |
US10120578B2 (en) | Storage optimization for write-in-free-space workloads | |
US9703714B2 (en) | System and method for management of cache configuration | |
US11960419B2 (en) | Systems and methods for data prefetching for low latency data read from a remote server | |
US11971835B2 (en) | Techniques for creating connections in a network fabric | |
CN116670656A (zh) | 分层持久存储器分配 | |
US10101940B1 (en) | Data retrieval system and method | |
JP7523535B2 (ja) | 異種メモリ・タイプを使用したキャッシュの複製コピー | |
US11922073B2 (en) | Non-disruptive updating of virtual tape emulation applications | |
JP2002023960A (ja) | ディスク装置及び同装置を複数備えた計算機システム | |
US12019894B2 (en) | Systems and methods for managing coresident data for containers | |
US11054993B2 (en) | Mass storage system having peer-to-peer data movements between a cache and a backend store |
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 |