CN113608675B - 一种raid数据io处理方法、装置、计算机设备及介质 - Google Patents
一种raid数据io处理方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN113608675B CN113608675B CN202110713500.XA CN202110713500A CN113608675B CN 113608675 B CN113608675 B CN 113608675B CN 202110713500 A CN202110713500 A CN 202110713500A CN 113608675 B CN113608675 B CN 113608675B
- Authority
- CN
- China
- Prior art keywords
- processed
- certain
- belongs
- partition
- sce
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 20
- 238000005192 partition Methods 0.000 claims abstract description 103
- 238000012545 processing Methods 0.000 claims abstract description 101
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000008569 process Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 10
- 238000000638 solvent extraction Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000013468 resource allocation Methods 0.000 abstract description 4
- 238000005457 optimization Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- 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
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- 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
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种RAID数据IO处理方法、装置、计算机设备及介质。所述方法包括:将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源。本发明的方案实现了优化资源分配,减少内存操作次数,提高RAID数据IO处理的性能。
Description
技术领域
本发明涉及存储技术领域,尤其涉及一种RAID数据IO处理方法、装置、计算机设备及介质。
背景技术
在存储领域,系统处理数据的效率是影响系统整机性能的关键因素,其中在整个数据处理流程中,对内存的访问是非常频繁的,但是在处理用户数据时,不可避免的会对同一块内存进行反复重复操作(反复重复操作是指多次连续或间隔的对RAID的物理盘上某个位置的数据进行读写操作),从而增加系统处理时间。
目前,传统RAID数据IO处理方式如下:当接收到IO处理任务时,则为该IO处理任务申请SCE(Strip Cache)资源,用来保存对应的条带信息,当该IO处理任务处理完成时则立即释放已申请的SCE资源,后续再处理新的IO任务时再重新按照上述过程为新的IO任务申请SCE资源在使用该资源后再次释放,此种方式需要反复的去申请SCE资源,频繁的对内存进行操作使得处理效率较低,IO处理任务的处理时间较长,因此亟需改进。
发明内容
有鉴于此,有必要针对以上技术问题,提供优化内存资源使用、降低内存重复操作次数的一种RAID数据IO处理方法、装置、计算机设备及介质。
根据本发明的第一方面,提供了一种RAID数据IO处理方法,所述方法包括:
将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源。
在一些实施例中,所述方法还包括:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO。
在一些实施例中,所述方法还包括:
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤。
在一些实施例中,所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO的步骤包括:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
在一些实施例中,所述将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务的步骤包括:
将目标条带按照第一预设字节分为六个分块;
以每个IO处理任务包含第二预设字节为单位接收IO处理任务,其中,第一预设字节大于等于所述第二预设字节。
在一些实施例中,所述第一预设字节为256KB。
在一些实施例中,所述第二预设字节为4KB。
根据本发明的第二方面,提供了一种RAID数据IO处理装置,所述装置包括:
分块模块,用于将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
资源申请模块,用于在所述目标条带接收到若干第一待处理IO时,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
任务监控模块,用于在所述若干第一待处理IO完成数据落盘时,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
资源释放禁止模块,用于在所述目标条带的至少一个分块未完成IO处理任务时,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
资源释放模块,用于在所述目标条带对应的多个分块均完成IO处理任务时,则释放全部已申请SCE资源。
根据本发明的第三方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时执行前述的RAID数据IO处理方法。
根据本发明的第四方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时执行前述的RAID数据IO处理方法。
上述一种RAID数据IO处理方法,通过将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务,当接收到第一待处理IO时为每个第一待处理IO所属的分块申请SCE资源,当该目标条带的至少一个分块存在未处理完的IO时,即使IO任务处理完也不释放SCE资源,由此避免了该条带上的某一分块再次进行IO处理任务时重复申请SCE资源,仅在该目标条带的所有多个分块都完成IO处理任务时才会释放掉所有已申请的SCE资源,实现了优化资源分配,减少内存操作次数,提高RAID数据IO处理的性能。
此外,本发明还提供了一种RAID数据IO处理装置、一种计算机设备和一种计算机可读存储介质,同样能实现上述技术效果,这里不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明一个实施例提供的一种RAID数据IO处理方法流程示意图;
图2为本发明又一个实施例提供的详细资源处理过程示意图;
图3为本发明又一个实施例提供的一种RAID数据IO处理装置的结构示意图;
图4本发明另一个实施例中计算机设备的内部结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
在一个实施例中,请参照图1所示,本发明提供了一种RAID数据IO处理方法,所述方法包括以下步骤:
S100,将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
S200,响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
S300,响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
S400,响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
S500,响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源。
上述一种RAID数据IO处理方法,通过将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务,当接收到第一待处理IO时为每个第一待处理IO所属的分块申请SCE资源,当该目标条带的至少一个分块存在未处理完的IO时,即使IO任务处理完也不释放SCE资源,由此避免了该条带上的某一分块再次进行IO处理任务时重复申请SCE资源,仅在该目标条带的所有多个分块都完成IO处理任务时才会释放掉所有已申请的SCE资源,实现了优化资源分配,减少内存操作次数,提高RAID数据IO处理的性能。
在又一个实施例中,所述方法还包括:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
需要说明的是,第一待处理IO和第二待处理IO并没有本质区别,二者仅仅是条带在不同时刻是接收的IO处理任务,第一待处理IO是指目标条带还未执行任何IO处理任务时接收的,而第二待处理IO是在目标条带正在执行IO处理任务时所接收的。
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO。
在又一个实施例中,所述方法还包括:
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤。
在又一个实施例中,前述的所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO的步骤包括以下步骤:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
优选地,前述步骤S100具体包括以下子步骤:
将目标条带按照第一预设字节分为六个分块;
以每个IO处理任务包含第二预设字节为单位接收IO处理任务,其中,第一预设字节大于等于所述第二预设字节。
优选地,所述第一预设字节为256KB。
优选地,所述第二预设字节为4KB。
在又一个是实施例中,本实施例以RAID5为例进行说明,具体的RAID5数据IO处理方法包括以下步骤:
步骤一:为每一个IO分配一个TCB(Transfer constructor block,转移构造函数块),使用TCB目的是为了管理当前IO的信息,主要包含数据内容、长度、数据在内存中保存的位置等;
步骤二,RAID5处理每个TCB时,将TCB拆分成RAID5条带对应的分块进行处理,每个分块在内存中申请SCE资源,用来保存对应的条带信息;
步骤三,在本条带未处理完成前,SCE资源不释放,只有在条带对应的全部分块数据都处理完成后才释放资源;
步骤四,当下一个IO下发下来时,可以通过缓存的SCE资源达到数据缓存的目的。
下面结合图2,假设条带A(Stripe A)为目标条带,其被分成六个分块分别记作分块1(strip1)到(strip6),假设每个IO数据均为4KB,以下为处理各个IO时资源申请的详细过程:
假设条带A接收到IO1任务,该任务属于分块1,此时为分块1申请相应的SCE资源,在IO1任务处理完成前接收到IO2任务,由于该任务同样属于分块1,此时IO2任务使用分块1申请相应的SCE资源而无需再申请,后续又处理IO3任务,IO3任务属于分块2,虽然此时该条带已经执行了IO处理任务,但前两次操作是并没有为该分块申请SCE资源,此时需要为IO3任务所属的分块2申请SCE资源,加收后续条带A无后续其它IO任务,对于分块1和分块2已申请的SCE资源只有在条带A全部处理完(即IO1、IO2、IO3任务都处理完成)时才会释放掉分别为分块1和分块2已申请的两个SCE资源。也就是说在IO1数据落盘成功后,不会将申请的资源释放,而是保存在内存中,当用户再次读取IO1位置数据时如果该条带还有其它任务没有处理完,此时已申请的SCE资源仍然有效,可直接将已申请的SCE资源数据返回给用户,极大的缩短了数据的传输路径,提高数据访问效率和整机性能。
本发明的方法至少具备以下有益技术效果:
(1)通过将条带分为多个数据块,然后以每个分块为单位申请SCE资源,将SCE资源释放的时机改成整个条带的分块都处理完时才释放,极大的减少了SCE资源的申请次数;
(2)藉由延长了已申请的SCE资源的保持时间,使得重复读取操作无需反复从对物理盘进行操作,可通未释放的SCE资源中加载,简化了数据传输的路径,提升重复读取处理的效率,提高数据访问效率和整机性能。
根据本发明的又一方面,请结合图3所示,本发明还提供了一种RAID数据IO处理装置60,所述装置包括:
分块模块61,用于将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
资源申请模块62,用于在所述目标条带接收到若干第一待处理IO时,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
任务监控模块63,用于在所述若干第一待处理IO完成数据落盘时,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
资源释放禁止模块64,用于在所述目标条带的至少一个分块未完成IO处理任务时,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
资源释放模块65,用于在所述目标条带对应的多个分块均完成IO处理任务时,则释放全部已申请SCE资源。
上述一种RAID数据IO处理装置,通过将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务,当接收到第一待处理IO时为每个第一待处理IO所属的分块申请SCE资源,当该目标条带的至少一个分块存在未处理完的IO时,即使IO任务处理完也不释放SCE资源,由此避免了该条带上的某一分块再次进行IO处理任务时重复申请SCE资源,仅在该目标条带的所有多个分块都完成IO处理任务时才会释放掉所有已申请的SCE资源,实现了优化资源分配,减少内存操作次数,提高RAID数据IO处理的性能。
需要说明的是,关于RAID数据IO处理装置的具体限定可以参见上文中对RAID数据IO处理方法的限定,在此不再赘述。上述RAID数据IO处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
根据本发明的另一方面,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图请参照图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现以上所述的RAID数据IO处理方法,具体来说,所述方法包括以下步骤:
将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源。
在一些实施例中,所述方法还包括:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO。
在一些实施例中,所述方法还包括:
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤。
在一些实施例中,所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO的步骤包括:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
在一些实施例中,所述将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务的步骤包括:
将目标条带按照第一预设字节分为六个分块;
以每个IO处理任务包含第二预设字节为单位接收IO处理任务,其中,第一预设字节大于等于所述第二预设字节。
在一些实施例中,所述第一预设字节为256KB。
在一些实施例中,所述第二预设字节为4KB。根据本发明的又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上所述的RAID数据IO处理方法,具体来说,包括执行以下步骤:
将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源;
响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放某一第一待处理IO所属的分块申请的SCE资源;
响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源。
在一些实施例中,所述方法还包括:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO。
在一些实施例中,所述方法还包括:
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤。
在一些实施例中,所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用某一第一待处理IO所属的分块已申请的SCE资源处理某一第二待处理IO的步骤包括:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
在一些实施例中,所述将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务的步骤包括:
将目标条带按照第一预设字节分为六个分块;
以每个IO处理任务包含第二预设字节为单位接收IO处理任务,其中,第一预设字节大于等于所述第二预设字节。
在一些实施例中,所述第一预设字节为256KB。
在一些实施例中,所述第二预设字节为4KB。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (7)
1.一种RAID数据IO处理方法,其特征在于,所述方法包括:
将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
响应于所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源,其中,SCE资源用来保存对应的条带信息;
响应于某一第一待处理IO完成数据落盘,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
响应于所述目标条带的至少一个分块未完成IO处理任务,则禁止释放所述某一第一待处理IO所属的分块申请的SCE资源;
响应于所述目标条带对应的多个分块均完成IO处理任务,则释放全部已申请SCE资源;
所述方法还包括:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用所述某一第一待处理IO所属的分块已申请的SCE资源处理所述某一第二待处理IO;
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤;
所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用所述某一第一待处理IO所属的分块已申请的SCE资源处理所述某一第二待处理IO的步骤包括:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
2.根据权利要求1所述的RAID数据IO处理方法,其特征在于,所述将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务的步骤包括:
将目标条带按照第一预设字节分为六个分块;
以每个IO处理任务包含第二预设字节为单位接收IO处理任务,其中,第一预设字节大于等于所述第二预设字节。
3.根据权利要求2所述的RAID数据IO处理方法,其特在于,所述第一预设字节为256KB。
4.根据权利要求3所述的RAID数据IO处理方法,其特在于,所述第二预设字节为4KB。
5.一种RAID数据IO处理装置,其特征在于,所述装置包括:
分块模块,用于将目标条带分成多个分块,并以固定数据量大小接收若干IO处理任务;
资源申请模块,用于在所述目标条带接收到若干第一待处理IO时,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源,其中,SCE资源用来保存对应的条带信息;
任务监控模块,用于在所述若干第一待处理IO完成数据落盘时,则判断所述目标条带对应的多个分块是否均完成IO处理任务;
资源释放禁止模块,用于在所述目标条带的至少一个分块未完成IO处理任务时,则禁止释放所述某一第一待处理IO所属的分块申请的SCE资源;
资源释放模块,用于在所述目标条带对应的多个分块均完成IO处理任务时,则释放全部已申请SCE资源;
所述装置还包括配置用于执行以下步骤的模块:
响应于所述目标条带处理若干第一待处理IO时申请的SCE资源未释放,且接收到若干第二待处理IO,则判断每一第二待处理IO所属的分块是否与某一第一待处理IO所属的分块相同;
响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用所述某一第一待处理IO所属的分块已申请的SCE资源处理所述某一第二待处理IO;
响应于某一第二待处理IO所属的分块与第一待处理IO所属的分块均不同,将某一第二待处理IO视为若干第一待处理IO;以及
返回并执行所述响应所述目标条带接收到若干第一待处理IO,则获取每一第一待处理IO所属的分块并为所属的分块申请SCE资源的步骤;
所述响应于某一第二待处理IO所属的分块与某一第一待处理IO所属的分块相同,则使用所述某一第一待处理IO所属的分块已申请的SCE资源处理所述某一第二待处理IO的步骤包括:
判断某一第一待处理IO和某一第二待处理IO是否为均属于相同位置数据读取操作;
响应于某一第一待处理IO和某一第二待处理IO属于相同位置数据读取操作,则从所述若干第一待处理IO所属的分块已申请的SCE资源中加载数据。
6. 一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器中运行的计算机程序,所述处理器执行所述程序时执行权利要求1-4任意一项所述的RAID数据IO处理方法。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行权利要求1-4任意一项所述的RAID数据IO处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110713500.XA CN113608675B (zh) | 2021-06-25 | 2021-06-25 | 一种raid数据io处理方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110713500.XA CN113608675B (zh) | 2021-06-25 | 2021-06-25 | 一种raid数据io处理方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113608675A CN113608675A (zh) | 2021-11-05 |
CN113608675B true CN113608675B (zh) | 2023-08-04 |
Family
ID=78336836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110713500.XA Active CN113608675B (zh) | 2021-06-25 | 2021-06-25 | 一种raid数据io处理方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113608675B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111007987A (zh) * | 2019-11-08 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种用于raid io的内存管理方法、系统、终端及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9690651B2 (en) * | 2015-05-21 | 2017-06-27 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Controlling a redundant array of independent disks (RAID) that includes a read only flash data storage device |
CN110413204B (zh) * | 2018-04-28 | 2023-02-10 | 伊姆西Ip控股有限责任公司 | I/o管理方法、设备和计算机可读介质 |
-
2021
- 2021-06-25 CN CN202110713500.XA patent/CN113608675B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111007987A (zh) * | 2019-11-08 | 2020-04-14 | 苏州浪潮智能科技有限公司 | 一种用于raid io的内存管理方法、系统、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113608675A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110351357B (zh) | 服务器限流方法、装置、计算机设备以及存储介质 | |
CN111104208B (zh) | 进程调度管理方法、装置、计算机设备及存储介质 | |
CN111723057B (zh) | 一种文件预读方法、装置、设备及存储介质 | |
CN110704177B (zh) | 计算任务处理方法、装置、计算机设备和存储介质 | |
CN110267060B (zh) | 视频文件存储注入方法、装置、计算机设备和存储介质 | |
CN115098426B (zh) | Pcie设备管理方法、接口管理模块、pcie系统、设备和介质 | |
US9715398B2 (en) | Program code loading method of application and computing system using the same | |
CN114556309A (zh) | 内存空间的分配方法、装置及存储介质 | |
CN112269661A (zh) | 基于Kafka集群的分区迁移方法和装置 | |
CN104899157A (zh) | 一种内存溢出检测方法和系统 | |
CN113608675B (zh) | 一种raid数据io处理方法、装置、计算机设备及介质 | |
CN113419672A (zh) | 一种存储容量管理方法、系统及存储介质 | |
CN116578410A (zh) | 资源管理方法、装置、计算机设备和存储介质 | |
CN116225314A (zh) | 数据写入方法、装置、计算机设备和存储介质 | |
CN116204311A (zh) | Pod集群扩缩容方法、装置、计算机设备和存储介质 | |
CN109284260B (zh) | 大数据文件读取方法、装置、计算机设备及存储介质 | |
CN114168225A (zh) | 固态硬盘映射表延迟更新方法、装置、计算机设备及存储介质 | |
CN112800123A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN109656948B (zh) | 位图数据处理方法、装置、计算机设备和存储介质 | |
CN111752919A (zh) | 一种数据写入方法、数据读取方法及装置 | |
CN110737405A (zh) | 基于固态硬盘的wordline数据存储实现方法和装置 | |
CN115576865A (zh) | 实现数据零拷贝的方法、装置和计算机设备和存储介质 | |
CN116842029B (zh) | 一种资产管理方法、装置、计算机设备和存储介质 | |
CN113282382B (zh) | 任务处理方法、装置、计算机设备和存储介质 | |
CN111158701B (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 |