CN115858410A - 一种io处理方法、装置、设备及存储介质 - Google Patents
一种io处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115858410A CN115858410A CN202310121093.2A CN202310121093A CN115858410A CN 115858410 A CN115858410 A CN 115858410A CN 202310121093 A CN202310121093 A CN 202310121093A CN 115858410 A CN115858410 A CN 115858410A
- Authority
- CN
- China
- Prior art keywords
- data
- controller
- address space
- target
- raid
- 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
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种IO处理方法、装置、设备及存储介质,涉及计算机技术领域。该方法包括:通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。能够隔绝逻辑卷的均衡性传导,提高系统性能。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种IO处理方法、装置、设备及存储介质。
背景技术
RAID(Redundant Arrays of Independent Disks,独立磁盘冗余阵列)是用多个独立的磁盘组成磁盘系统,能够实现比单块磁盘更好的存储性能和更高的可靠性。多控制器系统是指使用多个控制器共同处理用户读写操作,实现多个控制器的性能叠加、安全性叠加。多个控制器访问相同的地址空间会带来资源访问冲突问题,现有技术中,通过在逻辑卷层进行空间的地址划分,保证地址空间的独立控制器访问,地址空间利用空间隔离,避免域间信息交叉,避免资源访问冲突。但是,通过逻辑卷提供的地址空间划分需要进行地址映射转换,即RAID需要遵循逻辑卷提供的地址划分规则,RAID在运行时需要实时的查询地址空间对应的域,RAID自行产生的读写驱动器的操作亦需要读取逻辑卷提供的地址空间划分,即RAID处理IO(Input/Output,输入/输出)请求时必须依赖于逻辑卷不能独立运行,并且,当逻辑卷的空间归属划分变更时RAID层需要跟随变更地址归属,会引起频繁的条带变更,降低了IO处理的灵活性和效率。
发明内容
有鉴于此,本发明的目的在于提供一种IO处理方法、装置、设备及介质,能够增加RAID层的灵活度,降低归属变更引起的性能下降,提高系统性能。其具体方案如下:
第一方面,本申请公开了一种IO处理方法,包括:
通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;
通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;
若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
可选的,所述在RAID层为每个控制器划分对应的地址空间,包括:
在RAID层以条带为单位按照地址划分规则进行地址空间划分,并为每组地址空间配置唯一对应的控制器。
可选的,所述IO处理方法,还包括:
通过逻辑卷根据所述RAID层地址空间,从控制器对应的地址空间中划分出目标单位长度的空间作为数据块,以得到多个控制器对应的多个数据块;所述数据块用于接收用户写入逻辑卷的IO数据。
可选的,所述通过RAID为所述IO数据分配对应的第二控制器,包括:
所述RAID根据当前每个地址空间的负载情况,从所有所述地址空间中筛选出目标存储地址空间;
通过查询所述RAID层地址空间,将所述目标存储地址空间对应的控制器作为所述第二控制器。
可选的,所述通过RAID为所述IO数据分配对应的第二控制器之后,还包括:
若所述IO数据为写数据请求,判断所述第二控制器与所述第一控制器是否为同一个控制器;
若是,则重新选取一个除所述第一控制器以外的控制器作为所述第二控制器。
可选的,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,包括:
按照预设控制器循环数据,选取所述第一控制器的下一个控制器作为所述第二控制器。
可选的,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,包括:
从除所述第一控制器以外的所有控制器中随机选取一个控制器作为所述第二控制器。
可选的,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
生成数据写入完成结果,并将所述数据写入完成结果发送给所述逻辑卷。
可选的,所述将所述IO数据从所述第一控制器同步到所述第二控制器,包括:
将所述第一控制器对应的缓存区域中存储的所述IO数据,备份到所述第二控制器对应的缓存区域。
可选的,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
基于所述第一控制器和所述第二控制器的控制器信息,生成所述IO数据对应的同步节点对信息,并保存所述同步节点对信息。
可选的,所述保存所述同步节点对信息之后,还包括:
当缓存更新时,根据所述同步节点对信息通知对应的控制器丢弃旧的缓存数据,并建立新的同步节点对信息。
可选的,所述基于所述IO数据对所述目标地址空间进行写数据操作,包括:
判断是否存在控制器正在读取所述目标地址空间内的数据;
若不存在控制器正在读取所述目标地址空间内的数据,则基于所述IO数据向所述目标地址空间进行数据刷写。
可选的,所述判断是否存在控制器正在读取所述目标地址空间内的数据之后,还包括:
若存在控制器正在读取所述目标地址空间内的数据,则检测所述目标地址空间的被访问状态;
当不存在控制器正在读取所述目标地址空间内的数据时,再基于所述IO数据向所述目标地址空间进行数据刷写。
可选的,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器;
若是,则通过所述第一控制器判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
若所述第一控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给逻辑卷。
可选的,所述判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还包括:
若所述第一控制器对应的缓存区域中不存在所述目标数据,则通过所述第一控制器从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
可选的,所述判断所述第二控制器与所述第一控制器是否为同一个控制器之后,还包括:
若否,则通过所述第二控制器判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
若所述第二控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给第一控制器,以便所述第一控制器将所述目标数据转发给所述逻辑卷。
可选的,所述判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还包括:
若所述第二控制器对应的缓存区域中不存在所述目标数据,则向所述第一控制器发送数据读取失败信息,以便所述第一控制器收到所述数据读取失败信息后,从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
第二方面,本申请公开了一种IO处理装置,包括:
数据下发模块,用于通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;
数据同步模块,用于通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;
数据写入模块,用于若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的IO处理方法。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中计算机程序被处理器执行时实现前述的IO处理方法。
本申请中,通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。可见,通过RAID层自行进行地址空间的划分,利用数据缓存提供逻辑卷层与RAID层的地址归属划分的隔离,从而将逻辑卷层与RAID层的地址空间的地址归属划分分离,逻辑卷将数据下发到数据缓存后,RAID重新定出控制器并根据自身地址空间将数据缓存中的数据刷写到RAID层;即RAID的地址归属划分不再依赖于逻辑卷的地址归属划分,即逻辑卷的空间归属划分变更时RAID层无需跟随变更地址归属,增加RAID层的灵活度,能够降低归属变更引起的性能下降,隔绝逻辑卷的均衡性传导,提高系统性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种IO处理方法流程图;
图2为本申请提供的一种具体的IO处理方法流程图;
图3为本申请提供的一种具体的IO处理方法流程图;
图4为本申请提供的一种IO处理装置结构示意图;
图5为本申请提供的一种电子设备结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,通过在逻辑卷层进行空间的地址划分。但是,通过逻辑卷提供的地址空间划分需要进行地址映射转换,即RAID处理IO请求时必须依赖于逻辑卷不能独立运行,并且,当逻辑卷的空间归属划分变更时RAID层需要跟随变更地址归属,会引起频繁的条带变更,条带即阵列将多个分块组合为条带,一个条带跨越多个磁盘,分块即阵列将磁盘空间划分为分块,降低了IO处理的灵活性和效率。为克服上述技术问题,本申请提出一种IO处理方法,能够降低归属变更引起的性能下降,隔绝逻辑卷的均衡性传导,提高系统性能。
本申请实施例公开了一种IO处理方法,参见图1所示,该方法可以包括以下步骤:
步骤S11:通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存。
本实施例中,通过逻辑卷获取用户发送的IO数据,并利用逻辑卷通过第一控制器将上述IO数据下发到数据缓存。即第一控制器为直接对接用户的,且第一控制器用于将IO数据下发到数据缓存,而并不负责数据刷写。
本实施例中,所述在RAID层为每个控制器划分对应的地址空间,可以包括:在RAID层以条带为单位按照地址划分规则进行地址空间划分,并为每组地址空间配置唯一对应的控制器。即RAID层自行决定地址空间划分,划分后RAID层产生的读写操作,包括但不限于初始化、重构等操作无需根据逻辑卷的地址归属划分进行调度,地址划分策略可以为:将对齐的一组的条带划分到控制器A,而第二组划分到控制器B,循环进行直到所有的地址空间划分完毕。数学形式为:对于控制器数目n,驱动器数目为c的阵列,编号为s的条带划分到控制器(s/c) % n(即取(s/c) /n的余数)。根据上述的地址划分规则,仅单个控制器访问单个地址空间,即一个地址空间仅支持对应的那个控制器进行数据刷写,不会存在多个控制器对同一个地址空间进行数据刷写,空间隔离使得无需控制器间锁。
本实施例中,所述IO处理方法,还可以包括:通过逻辑卷根据所述RAID层地址空间,从控制器对应的地址空间中划分出目标单位长度的空间作为数据块,以得到多个控制器对应的多个数据块;所述数据块用于接收用户写入逻辑卷的IO数据。即逻辑卷将RAID提供的逻辑地址空间以指定长度单位划分成block,根据用户需要划分一组block提供给用户使用,逻辑卷的block均衡的选取自多个控制器,保证控制器性能均衡,用户写入逻辑卷数据时逻辑卷将数据提交给数据缓存,用户读取数据时逻辑卷调用数据缓存获取数据。相比于现有技术中全栈地址归属相同的方法,本实施例将逻辑卷层与RAID层的地址归属划分分离,即逻辑卷层与RAID层具有不同的地址归属划分。
步骤S12:通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器。
本实施例中,IO数据进入数据缓存后,由RAID为IO数据分配对应的第二控制器,该第二控制器用于实际执行IO数据从数据缓存到磁盘的刷写操作,通过数据缓存将IO数据从第一控制器同步到第二控制器,即将IO数据备份到第二控制器。本实施例中,所述将所述IO数据从所述第一控制器同步到所述第二控制器,可以包括:将所述第一控制器对应的缓存区域中存储的所述IO数据,备份到所述第二控制器对应的缓存区域。即数据缓存提供不同控制器间数据同步功能,数据缓存的数据应至少备份在其它一个控制器上以保证控制器离线时数据不会丢失,该系统的数据缓存根据RAID模块的提供的地址空间划分策略进行数据备份。可见,利用数据缓存这个原本就存在的操作实现控制器之间的数据同步,不需要控制器单独进行数据转发,显著降低数据读取时延,提高系统性能。
本实施例中,所述通过RAID为所述IO数据分配对应的第二控制器,可以包括:所述RAID根据当前每个地址空间的负载情况,从所有所述地址空间中筛选出目标存储地址空间;通过查询所述RAID层地址空间,将所述目标存储地址空间对应的控制器作为所述第二控制器。即RAID层自行决定执行实际数据刷写的控制器,以及数据写入的地址空间,实现RAID负载均衡。
步骤S13:若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
本实施例中,当IO数据为写数据请求时,通过第二控制器根据预先划分的RAID层地址空间确定出唯一对应的地址空间作为目标地址空间,并基于IO数据对目标地址空间进行写数据操作,其中,预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。即RAID层自行决定执行实际数据刷写的控制器,以及数据写入的地址空间。此时从逻辑层看是由第一控制器执行IO处理,实际时由第二控制器执行数据刷写,因此从逻辑层看允许多控制器写RAID相同区域,且RAID无控制器锁或读写锁,
本实施例中,所述通过RAID为所述IO数据分配对应的第二控制器之后,还可以包括:若所述IO数据为写数据请求,判断所述第二控制器与所述第一控制器是否为同一个控制器;若是,则重新选取一个除所述第一控制器以外的控制器作为所述第二控制器。即为了实现数据至少存在于两个控制器上,即为了实现数据备份,需要让第二控制器与第一控制器不为同一个控制器,而本实施例第一控制器由逻辑卷层确定,第二控制器由RAID层确定,两者不存在关联,因此在确定第二控制器后需要进行上述判断。
本实施例中,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,可以包括:按照预设控制器循环数据,选取所述第一控制器的下一个控制器作为所述第二控制器。本实施例中,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,可以包括:从除所述第一控制器以外的所有控制器中随机选取一个控制器作为所述第二控制器。即可以随机选取一个控制器,也可以按照预设的循环镜像的规则选取下一个控制器。
例如,数据缓存收到数据写请求的处理后,若逻辑卷从控制器A下发写操作到数据缓存,RAID模块地址空间划分写操作的区域也为控制器A,则数据缓存将数据从控制器A同步到控制器A+1,数据备份完成后返回逻辑卷写入成功。再例如,数据缓存收到数据写请求的处理后,逻辑卷从控制器A下发写操作到数据缓存,而RAID模块地址空间划分写操作的区域到B,则数据缓存将数据从控制器A备份到控制器B,数据备份完成后返回逻辑卷写入成功。
本实施例中,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还可以包括:生成数据写入完成结果,并将所述数据写入完成结果发送给所述逻辑卷。即本实施例中将数据备份到第二控制器即可认为备份完成,不需要等到数据实际刷写到磁盘。
本实施例中,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还可以包括:基于所述第一控制器和所述第二控制器的控制器信息,生成所述IO数据对应的同步节点对信息,并保存所述同步节点对信息。本实施例中,所述保存所述同步节点对信息之后,还可以包括:当缓存更新时,根据所述同步节点对信息通知对应的控制器丢弃旧的缓存数据,并建立新的同步节点对信息。以逻辑卷从控制器A下发写操作到数据缓存,而RAID模块地址空间划分写操作的区域到B为例,对于RAID模块划分到控制器B的区域,写操作数据一定会被同步到或者直接下发到控制器B,数据缓存需要记录当前的缓存的数据的同步节点,即控制器A和B,当缓存中的数据被更新时,通知当前的同步节点丢弃旧的缓存数据,建立新的同步关系。
本实施例中,所述基于所述IO数据对所述目标地址空间进行写数据操作,可以包括:判断是否存在控制器正在读取所述目标地址空间内的数据;若不存在控制器正在读取所述目标地址空间内的数据,则基于所述IO数据向所述目标地址空间进行数据刷写。本实施例中,所述判断是否存在控制器正在读取所述目标地址空间内的数据之后,还可以包括:若存在控制器正在读取所述目标地址空间内的数据,则检测所述目标地址空间的被访问状态;当不存在控制器正在读取所述目标地址空间内的数据时,再基于所述IO数据向所述目标地址空间进行数据刷写。
可以理解的是,数据缓存持续的刷写数据到RAID,各个控制器的数据缓存检测到缓存中的数据在RAID地址空间归属中属于当前控制器且没有控制器正在读取数据,会进行区域的数据刷写;否则不会进行数据刷写或者稍后进行数据刷写,由此,数据缓存通过暂存数据提供逻辑卷层与RAID层的地址归属划分的隔离作用,控制多控制器读写互斥。
由上可见,本实施例中通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。可见,通过RAID层自行进行地址空间的划分,利用数据缓存提供逻辑卷层与RAID层的地址归属划分的隔离,从而将逻辑卷层与RAID层的地址空间的地址归属划分分离,逻辑卷将数据下发到数据缓存后,RAID重新定出控制器并根据自身地址空间将数据缓存中的数据刷写到RAID层;即RAID的地址归属划分不再依赖于逻辑卷的地址归属划分,即逻辑卷的空间归属划分变更时RAID层无需跟随变更地址归属,增加RAID层的灵活度,能够降低归属变更引起的性能下降,隔绝逻辑卷的均衡性传导,提高系统性能。
本申请实施例公开了一种具体的IO处理方法,参见图2所示,该方法可以包括以下步骤:
步骤S21:通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存。
步骤S22:通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器。
步骤S23:若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器。
步骤S24:若是,则通过所述第一控制器判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据。
步骤S25:若所述第一控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给逻辑卷。
本实施例中,所述判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还可以包括:若所述第一控制器对应的缓存区域中不存在所述目标数据,则通过所述第一控制器从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
即本实施例中,首先从缓存区域中读取目标数据,若缓存中不存在,则从RAID中读取,且数据读取与数据写入不同的是,数据写入时控制器需要根据预先划分的RAID层地址空间,将数据存储到该控制器对应的某个地址空间内,但是读数据时可以RAID全盘读取。例如,数据缓存收到读数据请求的处理,读请求来自控制器A,RAID将地址空间划分到控制器A,则直接读取控制器A的数据缓存,若数据缓存中存在则直接返回,否则再从RAID层读取目标数据并存放在读缓存中。
可见,本实施例提供的数据读写,涉及逻辑卷,数据缓存,磁盘阵列三个主要层面;数据缓存在备份数据时将数据按照RAID的地址空间归属进行,而数据下刷到RAID根据RAID层的地址划分进行,保证独立的RAID的地址空间只从多控制器系统中的一个控制器写入数据;读取数据时由于不进行数据的备份行为,数据可能从多个控制器读取。
其中,关于上述步骤S21和步骤S22的具体过程可以参考前述实施例公开的相应内容,在此不再进行赘述。
由上可见,本实施例中,若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器;若是,则通过所述第一控制器判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;若所述第一控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给逻辑卷。允许多控制器读RAID相同区域。
本申请实施例公开了一种具体的IO处理方法,参见图3所示,该方法可以包括以下步骤:
步骤S31:通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存。
步骤S32:通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器。
步骤S33:若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器。
步骤S34:若否,则通过所述第二控制器判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据。
步骤S35:若所述第二控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给第一控制器,以便所述第一控制器将所述目标数据转发给所述逻辑卷。
本实施例中,所述判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还可以包括:若所述第二控制器对应的缓存区域中不存在所述目标数据,则向所述第一控制器发送数据读取失败信息,以便所述第一控制器收到所述数据读取失败信息后,从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
例如,数据缓存收到数据读请求的处理,读请求来自控制器A,RAID模块地址空间划分到控制器B,则读取控制器B的数据缓存,如果目标数据在控制器B存在缓存则数据从控制器B拷贝到控制器A返回逻辑卷到用户数据,此时的数据拷贝也是通过数据缓存实现的;且数据读取时可以通过数据缓存的更新逻辑控制RAID数据读写逻辑的顺序性。若目标数据在控制器B存在缓存,则控制器B记录控制器A正在读取数据,返回控制A数据不存在缓存中的消息,再由控制器A访问RAID层读取数据返回逻辑卷到用户数据,最后,控制器A通知控制器B数据读取完成。
其中,关于上述步骤S31、步骤S32、步骤S33的具体过程可以参考前述实施例公开的相应内容,在此不再进行赘述。
由上可见,本实施例中若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器;若否,则通过所述第二控制器判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;若所述第二控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给第一控制器,以便所述第一控制器将所述目标数据转发给所述逻辑卷。可见,允许多控制器读RAID相同区域。
相应的,本申请实施例还公开了一种IO处理装置,参见图4所示,该装置包括:
数据下发模块11,用于通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;
数据同步模块12,用于通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;
数据写入模块13,用于若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
由上可见,本实施例中通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。可见,通过RAID层自行进行地址空间的划分,利用数据缓存提供逻辑卷层与RAID层的地址归属划分的隔离,从而将逻辑卷层与RAID层的地址空间的地址归属划分分离,逻辑卷将数据下发到数据缓存后,RAID重新定出控制器并根据自身地址空间将数据缓存中的数据刷写到RAID层;即RAID的地址归属划分不再依赖于逻辑卷的地址归属划分,即逻辑卷的空间归属划分变更时RAID层无需跟随变更地址归属,增加RAID层的灵活度,能够降低归属变更引起的性能下降,隔绝逻辑卷的均衡性传导,提高系统性能。
在一些具体实施例中,所述IO处理装置具体可以包括:
地址空间划分单元,用于在RAID层以条带为单位按照地址划分规则进行地址空间划分,并为每组地址空间配置唯一对应的控制器。
在一些具体实施例中,所述IO处理装置具体可以包括:
逻辑卷层空间划分单元,用于通过逻辑卷根据所述RAID层地址空间,从控制器对应的地址空间中划分出目标单位长度的空间作为数据块,以得到多个控制器对应的多个数据块;所述数据块用于接收用户写入逻辑卷的IO数据。
在一些具体实施例中,所述数据同步模块12具体可以包括:
目标存储地址空间确定单元,用于所述RAID根据当前每个地址空间的负载情况,从所有所述地址空间中筛选出目标存储地址空间;
第二控制器确定单元,用于通过查询所述RAID层地址空间,将所述目标存储地址空间对应的控制器作为所述第二控制器。
在一些具体实施例中,所述IO处理装置具体可以包括:
控制器判断单元,用于若所述IO数据为写数据请求,判断所述第二控制器与所述第一控制器是否为同一个控制器;
控制器重新选取单元,用于若是,则重新选取一个除所述第一控制器以外的控制器作为所述第二控制器。
在一些具体实施例中,所述控制器重新选取单元具体可以包括:
循环选取单元,用于按照预设控制器循环数据,选取所述第一控制器的下一个控制器作为所述第二控制器。
在一些具体实施例中,所述控制器重新选取单元具体可以包括:
随机选取单元,用于从除所述第一控制器以外的所有控制器中随机选取一个控制器作为所述第二控制器。
在一些具体实施例中,所述IO处理装置具体可以包括:
结果反馈单元,用于生成数据写入完成结果,并将所述数据写入完成结果发送给所述逻辑卷。
在一些具体实施例中,所述数据同步模块12具体可以包括:
缓存同步单元,用于将所述第一控制器对应的缓存区域中存储的所述IO数据,备份到所述第二控制器对应的缓存区域。
在一些具体实施例中,所述IO处理装置具体可以包括:
同步节点对信息存储单元,用于基于所述第一控制器和所述第二控制器的控制器信息,生成所述IO数据对应的同步节点对信息,并保存所述同步节点对信息。
在一些具体实施例中,所述IO处理装置具体可以包括:
同步节点对信息更新单元,用于当缓存更新时,根据所述同步节点对信息通知对应的控制器丢弃旧的缓存数据,并建立新的同步节点对信息。
在一些具体实施例中,所述数据写入模块13具体可以包括:
读取判断单元,用于判断是否存在控制器正在读取所述目标地址空间内的数据;
刷写单元,用于若不存在控制器正在读取所述目标地址空间内的数据,则基于所述IO数据向所述目标地址空间进行数据刷写。
在一些具体实施例中,所述数据写入模块13具体可以包括:
状态检测单元,用于若存在控制器正在读取所述目标地址空间内的数据,则检测所述目标地址空间的被访问状态;
刷写单元,用于当不存在控制器正在读取所述目标地址空间内的数据时,再基于所述IO数据向所述目标地址空间进行数据刷写。
在一些具体实施例中,所述IO处理装置具体可以包括:
控制器判断单元,用于若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器;
数据命中查询单元,用于若是,则通过所述第一控制器判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
第一数据读取单元,用于若所述第一控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给逻辑卷。
在一些具体实施例中,所述IO处理装置具体可以包括:
第二数据读取单元,用于若所述第一控制器对应的缓存区域中不存在所述目标数据,则通过所述第一控制器从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
在一些具体实施例中,所述IO处理装置具体可以包括:
数据命中查询单元,用于若否,则通过所述第二控制器判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
第三数据读取单元,用于若所述第二控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给第一控制器,以便所述第一控制器将所述目标数据转发给所述逻辑卷。
在一些具体实施例中,所述IO处理装置具体可以包括:
第四数据读取单元,用于若所述第二控制器对应的缓存区域中不存在所述目标数据,则向所述第一控制器发送数据读取失败信息,以便所述第一控制器收到所述数据读取失败信息后,从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
进一步的,本申请实施例还公开了一种电子设备,参见图5所示,图中的内容不能被认为是对本申请的使用范围的任何限制。
图5为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的IO处理方法中的相关步骤。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及包括IO数据在内的数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的IO处理方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现前述任一实施例公开的IO处理方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种IO处理方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (20)
1.一种IO处理方法,其特征在于,包括:
通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;
通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;
若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
2.根据权利要求1所述的IO处理方法,其特征在于,所述在RAID层为每个控制器划分对应的地址空间,包括:
在RAID层以条带为单位按照地址划分规则进行地址空间划分,并为每组地址空间配置唯一对应的控制器。
3.根据权利要求1所述的IO处理方法,其特征在于,还包括:
通过逻辑卷根据所述RAID层地址空间,从控制器对应的地址空间中划分出目标单位长度的空间作为数据块,以得到多个控制器对应的多个数据块;所述数据块用于接收用户写入逻辑卷的IO数据。
4.根据权利要求1所述的IO处理方法,其特征在于,所述通过RAID为所述IO数据分配对应的第二控制器,包括:
所述RAID根据当前每个地址空间的负载情况,从所有所述地址空间中筛选出目标存储地址空间;
通过查询所述RAID层地址空间,将所述目标存储地址空间对应的控制器作为所述第二控制器。
5.根据权利要求1所述的IO处理方法,其特征在于,所述通过RAID为所述IO数据分配对应的第二控制器之后,还包括:
若所述IO数据为写数据请求,判断所述第二控制器与所述第一控制器是否为同一个控制器;
若是,则重新选取一个除所述第一控制器以外的控制器作为所述第二控制器。
6.根据权利要求5所述的IO处理方法,其特征在于,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,包括:
按照预设控制器循环数据,选取所述第一控制器的下一个控制器作为所述第二控制器。
7.根据权利要求5所述的IO处理方法,其特征在于,所述重新选取一个除所述第一控制器以外的控制器作为所述第二控制器,包括:
从除所述第一控制器以外的所有控制器中随机选取一个控制器作为所述第二控制器。
8.根据权利要求5所述的IO处理方法,其特征在于,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
生成数据写入完成结果,并将所述数据写入完成结果发送给所述逻辑卷。
9.根据权利要求1所述的IO处理方法,其特征在于,所述将所述IO数据从所述第一控制器同步到所述第二控制器,包括:
将所述第一控制器对应的缓存区域中存储的所述IO数据,备份到所述第二控制器对应的缓存区域。
10.根据权利要求1所述的IO处理方法,其特征在于,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
基于所述第一控制器和所述第二控制器的控制器信息,生成所述IO数据对应的同步节点对信息,并保存所述同步节点对信息。
11.根据权利要求10所述的IO处理方法,其特征在于,所述保存所述同步节点对信息之后,还包括:
当缓存更新时,根据所述同步节点对信息通知对应的控制器丢弃旧的缓存数据,并建立新的同步节点对信息。
12.根据权利要求1所述的IO处理方法,其特征在于,所述基于所述IO数据对所述目标地址空间进行写数据操作,包括:
判断是否存在控制器正在读取所述目标地址空间内的数据;
若不存在控制器正在读取所述目标地址空间内的数据,则基于所述IO数据向所述目标地址空间进行数据刷写。
13.根据权利要求12所述的IO处理方法,其特征在于,所述判断是否存在控制器正在读取所述目标地址空间内的数据之后,还包括:
若存在控制器正在读取所述目标地址空间内的数据,则检测所述目标地址空间的被访问状态;
当不存在控制器正在读取所述目标地址空间内的数据时,再基于所述IO数据向所述目标地址空间进行数据刷写。
14.根据权利要求1至13任一项所述的IO处理方法,其特征在于,所述通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器之后,还包括:
若所述IO数据为读数据请求,则判断所述第二控制器与所述第一控制器是否为同一个控制器;
若是,则通过所述第一控制器判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
若所述第一控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给逻辑卷。
15.根据权利要求14所述的IO处理方法,其特征在于,所述判断所述第一控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还包括:
若所述第一控制器对应的缓存区域中不存在所述目标数据,则通过所述第一控制器从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
16.根据权利要求14所述的IO处理方法,其特征在于,所述判断所述第二控制器与所述第一控制器是否为同一个控制器之后,还包括:
若否,则通过所述第二控制器判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据;
若所述第二控制器对应的缓存区域中存在所述目标数据,则直接读取所述目标数据并将所述目标数据反馈给第一控制器,以便所述第一控制器将所述目标数据转发给所述逻辑卷。
17.根据权利要求16所述的IO处理方法,其特征在于,所述判断所述第二控制器对应的缓存区域中是否存在所述IO数据对应的目标数据之后,还包括:
若所述第二控制器对应的缓存区域中不存在所述目标数据,则向所述第一控制器发送数据读取失败信息,以便所述第一控制器收到所述数据读取失败信息后,从所述RAID中读取所述IO数据对应的目标数据,并将所述目标数据反馈给逻辑卷。
18.一种IO处理装置,其特征在于,包括:
数据下发模块,用于通过逻辑卷获取用户发送的IO数据,并利用所述逻辑卷通过第一控制器将所述IO数据下发到数据缓存;
数据同步模块,用于通过RAID为所述IO数据分配对应的第二控制器,并通过所述数据缓存将所述IO数据从所述第一控制器同步到所述第二控制器;
数据写入模块,用于若所述IO数据为写数据请求,通过所述第二控制器根据预先划分的RAID层地址空间确定出对应的目标地址空间,并基于所述IO数据对所述目标地址空间进行写数据操作;所述预先划分的RAID层地址空间为在RAID层为每个控制器划分对应的地址空间后生成的RAID层地址空间。
19.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至17任一项所述的IO处理方法。
20.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中计算机程序被处理器执行时实现如权利要求1至17任一项所述的IO处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310121093.2A CN115858410B (zh) | 2023-02-16 | 2023-02-16 | 一种io处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310121093.2A CN115858410B (zh) | 2023-02-16 | 2023-02-16 | 一种io处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115858410A true CN115858410A (zh) | 2023-03-28 |
CN115858410B CN115858410B (zh) | 2023-05-23 |
Family
ID=85658179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310121093.2A Active CN115858410B (zh) | 2023-02-16 | 2023-02-16 | 一种io处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115858410B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881246A (zh) * | 2015-03-30 | 2015-09-02 | 北京飞杰信息技术有限公司 | 应用于集群存储系统的输出入传递方法及系统 |
US20180059945A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Media Controller with Response Buffer for Improved Data Bus Transmissions and Method for Use Therewith |
US20180059976A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Storage System with Integrated Components and Method for Use Therewith |
US20180121366A1 (en) * | 2016-11-01 | 2018-05-03 | Alibaba Group Holding Limited | Read/write request processing method and apparatus |
CN108572792A (zh) * | 2017-06-13 | 2018-09-25 | 北京金山云网络技术有限公司 | 数据存储方法、装置、电子设备及计算机可读存储介质 |
CN110196687A (zh) * | 2019-05-20 | 2019-09-03 | 杭州宏杉科技股份有限公司 | 数据读写方法、装置、电子设备 |
CN113326005A (zh) * | 2021-06-11 | 2021-08-31 | 苏州浪潮智能科技有限公司 | 一种raid存储系统的读写方法和装置 |
CN115061638A (zh) * | 2022-07-29 | 2022-09-16 | 苏州浪潮智能科技有限公司 | Raid阵列下的硬盘缓存状态管理方法、服务器及存储介质 |
-
2023
- 2023-02-16 CN CN202310121093.2A patent/CN115858410B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881246A (zh) * | 2015-03-30 | 2015-09-02 | 北京飞杰信息技术有限公司 | 应用于集群存储系统的输出入传递方法及系统 |
US20180059945A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Media Controller with Response Buffer for Improved Data Bus Transmissions and Method for Use Therewith |
US20180059976A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Storage System with Integrated Components and Method for Use Therewith |
US20180121366A1 (en) * | 2016-11-01 | 2018-05-03 | Alibaba Group Holding Limited | Read/write request processing method and apparatus |
CN108572792A (zh) * | 2017-06-13 | 2018-09-25 | 北京金山云网络技术有限公司 | 数据存储方法、装置、电子设备及计算机可读存储介质 |
CN110196687A (zh) * | 2019-05-20 | 2019-09-03 | 杭州宏杉科技股份有限公司 | 数据读写方法、装置、电子设备 |
CN113326005A (zh) * | 2021-06-11 | 2021-08-31 | 苏州浪潮智能科技有限公司 | 一种raid存储系统的读写方法和装置 |
CN115061638A (zh) * | 2022-07-29 | 2022-09-16 | 苏州浪潮智能科技有限公司 | Raid阵列下的硬盘缓存状态管理方法、服务器及存储介质 |
Non-Patent Citations (3)
Title |
---|
WEI WU 等: ""DROP: A New RAID Architecture for Enhancing Shared RAID Performance"", 《IEEE》 * |
徐晗;姚智慧;: "双控制器RAID系统中缓存镜像技术研究与实现", 计算机工程与设计 * |
许娜;彭飞;谭彦亮;苗志富;曹梦丹;: "一种基于虚拟页地址映射的NAND Flash管理算法", 空间控制技术与应用 * |
Also Published As
Publication number | Publication date |
---|---|
CN115858410B (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109729129B (zh) | 存储集群系统的配置修改方法、存储集群及计算机系统 | |
US9946460B2 (en) | Storage subsystem and storage system architecture performing storage virtualization and method thereof | |
JP4317876B2 (ja) | データストレージシステムにおける冗長データ割り当て | |
US10838829B2 (en) | Method and apparatus for loading data from a mirror server and a non-transitory computer readable storage medium | |
US20070204119A1 (en) | Storage control device, and data migration method using storage control device | |
US5845295A (en) | System for providing instantaneous access to a snapshot Op data stored on a storage medium for offline analysis | |
US7694087B2 (en) | Duplicate data storing system, duplicate data storing method, and duplicate data storing program for storage device | |
US7529887B1 (en) | Methods, systems, and computer program products for postponing bitmap transfers and eliminating configuration information transfers during trespass operations in a disk array environment | |
US20040103104A1 (en) | Snapshot creating method and apparatus | |
CN105739924A (zh) | 基于缓存集群的缓存方法和系统 | |
CN103186554A (zh) | 分布式数据镜像方法及存储数据节点 | |
CN109407975B (zh) | 写数据方法与计算节点以及分布式存储系统 | |
CN111291062B (zh) | 数据同步写入方法、装置、计算机设备及存储介质 | |
CN116400855A (zh) | 一种数据处理方法和数据存储系统 | |
CN110955488A (zh) | 一种持久性内存的虚拟化方法及系统 | |
CN111367856B (zh) | 数据复制方法、装置、电子设备及机器可读存储介质 | |
WO2012035576A1 (en) | Storage system storing electronic modules applied to electronic objects common to several computers, and storage control method for the same | |
US20220129346A1 (en) | Data processing method and apparatus in storage system, and storage system | |
CN109298977A (zh) | 一种虚拟机业务快速恢复方法、系统、装置及存储介质 | |
CN115168367B (zh) | 一种大数据的数据配置方法和系统 | |
CN115858410A (zh) | 一种io处理方法、装置、设备及存储介质 | |
CN112748865A (zh) | 用于存储管理的方法、电子设备和计算机程序产品 | |
CN111400273A (zh) | 数据库扩容方法、装置、电子设备及机器可读存储介质 | |
CN114780043A (zh) | 基于多层缓存的数据处理方法及装置、电子设备 | |
CN112131191B (zh) | 一种namenode文件系统的管理方法、装置及设备 |
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 |