CN104571960B - I/O request dispensing device and method, main frame, storage array and computer system - Google Patents
I/O request dispensing device and method, main frame, storage array and computer system Download PDFInfo
- Publication number
- CN104571960B CN104571960B CN201410849910.7A CN201410849910A CN104571960B CN 104571960 B CN104571960 B CN 104571960B CN 201410849910 A CN201410849910 A CN 201410849910A CN 104571960 B CN104571960 B CN 104571960B
- Authority
- CN
- China
- Prior art keywords
- lun
- request
- sub
- controller
- storage array
- 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
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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
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
The present invention relates to field of computer technology, more particularly to a kind of I/O request dispensing device and method, main frame, storage array and computer system, to solve the problem of frequently forwarding I/O request in existing I/O request distribution approach between controller, storage array performance is low.I/O request dispensing device provided in an embodiment of the present invention is after the first I/O request is received, determine the sub- LUN on the first I/O request specified LUN to be accessed, for the sub- LUN of each determination, determine in storage array, the controller of the sub- LUN ownership, and the second I/O request of the sub- LUN is accessed according to the first I/O request of reception, generation;The second I/O request for accessing the sub- LUN is sent to the controller of sub- LUN ownership.By the device, the I/O request for accessing each sub- LUN is distributed to the controller of ownership respectively, so as to avoid frequent forwarding I/O request between controller, improves the performance and I/O request treatment effeciency of storage array.
Description
Technical field
The present invention relates to field of computer technology, more particularly to a kind of input and output (Input Output, IO) request point
Transmitting apparatus and method, main frame, storage array and computer system.
Background technology
Storage array provides LUN (Logical Unit Number, LUN) for main frame and is used as block storage object.
With developing rapidly for large-scale application, the requirement more and more higher to storage array, there is multi-controller memory array.More controls
Device storage array processed includes multiple controllers, and multiple controllers can be directed to different LUN I/O request with concurrently receive main frame.
How rationally to distribute I/O request, accomplish to take into account multiple controllers equilibriums and data consistency, need weight when being storage array design
The problem of point considers.
A kind of scheme of existing controller distribution host I/O request includes:In advance by the control of each LUN specified homes
Device, it is forwarded to for some LUN I/O request to be handled on the preassigned home control devices of the LUN.
By taking the storage array 10 shown in Fig. 1 as an example, the storage array 10 includes 4 controllers, respectively node (Node) 0
~Node3;And 7 LUN0~LUN7.LUN0 and LUN3 home control device is Node0, LUN1 and LUN2 home control
Device is that Node1, LUN5 and LUN7 home control device are that Node2, LUN4 and LUN6 home control device is Node3.
Wherein, logical block addresses (Logical Block Address, LBA) are 7 data block in LUN2, and
The data block that LBA is 10 in LUN4 is stored on hard disk shared domain A.LBA is 1 data block in LUN0, and the LBA in LUN1
It is stored in for 3 data block on hard disk shared domain B.
Wherein, hard disk shared domain is the set of multiple hard disks, and the I/O request for accessing the data on these hard disks is divided
The controller of hair can directly access these hard disks, the forwarding without other controllers.
It is that controller receives the I/O request for some LUN, but the LUN does not belong to using a problem of the program
In this controller, then need for the I/O request to be transmitted to the controller of LUN ownership, that is, need the I/O request between controller to turn
Hair.Such as:Node2 needs the I/O request for accessing LUN1 being transmitted to Node1 in Fig. 1, and Node0 needs please by the IO for accessing LUN2
Ask and be transmitted to Node1.
The scheme of existing another controller distribution host I/O request includes:LUN is divided into smaller block, according to pre-
The algorithm first set is distributed to each controller by each piece and handled.
By taking the storage array 20 shown in Fig. 2 as an example, the storage array 20 includes 4 controllers, respectively node (Node) 0
~Node3.In order to simply illustrate, LUN0 is only included in storage array 20, LUN0 is divided into multiple smaller data blocks:Wherein,
LBA%4=0 data block belongs to Node0 in LUN0, and LBA%4=1 data block belongs to Node1 in LUN0, in LUN0
LBA%4=2 data block belongs to Node2, and LBA%4=3 data block belongs to Node3 in LUN0.Belong to certain node
Data block be stored in hard disk shared domain belonging to the node simultaneously.
In the program, although the data block that a LUN is divided into smaller particle size is distributed to multiple controller processing, but still deposit
I/O request forwarding between substantial amounts of controller.Such as:It is 10 data block that Node3, which needs to access LBA in LUN0, in Fig. 2
I/O request is transmitted to Node2, and Node1 needs the I/O request by the LBA accessed in LUN0 the data blocks for being 3 to be transmitted to Node3,
Node2 needs the IP for accessing the data block that LBA in LUN0 is 13 being transmitted to Node1.
Above two scheme all deposits the situation for forwarding I/O request between the controllers, continually forwards I/O request seriously to drop
The performance and I/O request treatment effeciency of low storage array.
The content of the invention
The embodiment of the present invention provides a kind of I/O request dispensing device and method, main frame, storage array and computer system, uses
It is serious to reduce storage array performance and IO to solve frequently to forward I/O request between controller in existing I/O request distribution approach
The problem of asking treatment effeciency.
In a first aspect, the embodiment of the present invention provides a kind of input and output I/O request dispensing device, including:
Transceiver module, for receiving the of the specified data block accessed on specified LUN LUN in storage array
One input and output I/O request;
Processing module, the sub- LUN on the specified LUN to be accessed for determining first I/O request, wherein, it is described
LUN address space is specified to be divided into more sub- LUN in advance;To be accessed for first I/O request of each determination
Sub- LUN on the specified LUN, perform following operation:
Determine in the storage array, the controller of the sub- LUN ownership, the controller is used to that the IO of the sub- LUN will to be accessed
Request is distributed to the hard disk for storing data in the sub- LUN;
According to first I/O request of reception, generation accesses the second I/O request of the sub- LUN;
The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
With reference in a first aspect, in the first possible implementation, the processing module is additionally operable to:
It is on the specified LUN according to default algorithm before the transceiver module receives first I/O request
The controller of each sub- LUN distribution ownership.
With reference in a first aspect, in second of possible implementation, the processing module is additionally operable to:In the transmitting-receiving mould
Before block receives first I/O request, at each controller in the storage array, the controller and ownership are obtained
In the corresponding relation of each sub- LUN on the specified LUN of the controller;
The processing module is specifically used for:According to the corresponding relation for obtaining the sub- LUN and sub- LUN controllers belonged to,
Determine the controller of the sub- LUN ownership.
With reference to the first possible implementation or second of possible implementation of first aspect, first aspect,
In the third possible implementation, what the data storage in each sub- LUN in the storage array belonged in the sub- LUN
In the hard disk that controller directly accesses.
With reference in a first aspect, or first aspect the first possible implementation into the third possible implementation
It is any, in the 4th kind of possible implementation, described device is in the main frame for sending first I/O request;Or institute
Device is stated to be located in the storage array.
Second aspect, the embodiment of the present invention provide a kind of main frame, including:Input and output I/O request sending module and first party
Face, or the dress of the first possible implementation any offer into the third possible implementation of first aspect
Put;
Wherein, receiving module transmission the first IO that the I/O request sending module is used for described device please
Ask.
The third aspect, the embodiment of the present invention provide a kind of storage array, including:
In a first aspect, or first aspect the first possible implementation into the third possible implementation appoint
A kind of device of offer.
Fourth aspect, the embodiment of the present invention provide a kind of computer system, including:Main frame and storage array,
The main frame includes input and output I/O request sending module, and in a first aspect, or the first of first aspect can
The device of implementation any offer into the third possible implementation of energy;Wherein, the I/O request sends mould
Block is used to send first I/O request to described device;The storage array is used to receive the main frame is sent described second
I/O request;Or
The storage array include in a first aspect, or first aspect the first possible implementation to the third can
The device of any offer in the implementation of energy;The main frame is used to send first I/O request to the storage array.
5th aspect, the embodiment of the present invention provide a kind of input and output I/O request distribution method, including:
Receive the first I/O request of the specified data block on the specified LUN LUN in access storage array;
The sub- LUN on the first I/O request specified LUN to be accessed is determined, wherein, the address of the specified LUN
Space is divided into more sub- LUN in advance;
For the sub- LUN on first I/O request of each determination specified LUN to be accessed, following behaviour is performed
Make:
Determine in the storage array, the controller of the sub- LUN ownership, the controller is used to that the IO of the sub- LUN will to be accessed
Request is distributed to the hard disk for storing data in the sub- LUN;
According to first I/O request of reception, generation accesses the second I/O request of the sub- LUN;
The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
With reference to the 5th aspect, in the first possible implementation, before first I/O request is received, also wrap
Include:
It is the controller that each sub- LUN distribution on the specified LUN belongs to according to default algorithm.
With reference to the 5th aspect, in second of possible implementation, before first I/O request is received, in addition to:
At each controller in the storage array, obtain the controller and belong to the finger of the controller
Determine the corresponding relation of each sub- LUN on LUN;
Determine in the storage array, the controller of the sub- LUN ownership, including:
According to the corresponding relation for obtaining the sub- LUN and sub- LUN controllers belonged to, the control of the sub- LUN ownership is determined
Device.
With reference to the 5th aspect, the 5th aspect the first possible implementation or second of possible implementation,
In the third possible implementation,
The data storage in each sub- LUN in the storage array directly accesses in the sub- LUN controllers belonged to
Hard disk in.
To sum up, in the embodiment of the present invention, by introducing I/O request dispensing device, I/O request is directly distributed to the control of ownership
Device processed, so as to avoid the forwarding of the I/O request between controller, reduce the processing load of controller.
Brief description of the drawings
Fig. 1, Fig. 2 are the schematic diagram for distributing I/O request in storage array;
Fig. 3 A are the structural representation of the first computer system provided in an embodiment of the present invention;
Fig. 3 B are the structural representation of second of computer system provided in an embodiment of the present invention;
Fig. 4 is the structural representation of I/O request dispensing device provided in an embodiment of the present invention;
Fig. 5 is that LUN address spaces are divided into some sub- LUN in the embodiment of the present invention, and by sub- LUN mapping to controlling
The schematic diagram of device;
Fig. 6 is the schematic diagram for distributing I/O request in the embodiment of the present invention one;
Fig. 7 is the schematic diagram for distributing I/O request in the embodiment of the present invention two;
Fig. 8 is the flow chart of I/O request distribution method provided in an embodiment of the present invention.
Embodiment
The embodiment of the present invention provides a kind of I/O request dispensing device and method, main frame, storage array and computer system, uses
It is serious to reduce storage array performance and IO to solve frequently to forward I/O request between controller in existing I/O request distribution approach
The problem of asking treatment effeciency.
I/O request dispensing device provided in an embodiment of the present invention, the finger on the specified LUN in receiving access storage array
After the first I/O request for determining data block, the sub- LUN on the first I/O request specified LUN to be accessed is determined, it is true for each
Fixed sub- LUN, is determined in storage array, the controller of the sub- LUN ownership, and is accessed according to the first I/O request of reception, generation
The second I/O request of the sub- LUN;The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
By the device, the I/O request of the sub- LUN is accessed according to the I/O request generation for accessing specified LUN, each son will be accessed
LUN I/O request is distributed to the controller of ownership respectively, so as to avoid frequent forwarding I/O request between controller, improves and deposits
Store up the performance and I/O request treatment effeciency of array.
Below, the embodiment of the present invention is described in detail with reference to accompanying drawing.
First, computer system provided in an embodiment of the present invention is introduced, then introduces main frame provided in an embodiment of the present invention
And storage array, finally introduce I/O request dispensing device provided in an embodiment of the present invention and method.
Fig. 3 A are the structural representation of the first computer system 31 provided in an embodiment of the present invention;Fig. 3 B are real for the present invention
The structural representation of second of computer system 32 of example offer is provided.
The difference of computer system 31 and computer system 32 is, in the first computer system 31, the present invention is implemented
The I/O request dispensing device 1000 for being used to carry out I/O request distribution that example provides is located in main frame 100, second of computer system
In 32, I/O request dispensing device 1000 is located in storage array 200.
In addition, in computer system 31, main frame 100 also includes I/O request sending module 1001, the I/O request sending module
1001 are used to send the first of the specified data block specified in access storage array 200 on LUN to I/O request dispensing device 1000
I/O request;It is to send first I/O request from main frame 100 to I/O request dispensing device 1000 in computer system 32.
In two kinds of computer systems, I/O request dispensing device 1000 is used to form the first I/O request of reception after processing
Second I/O request, then the controller being distributed in storage array 200, specific processing method is referring to below to I/O request distribution dress
Put 1000 detailed description.
Below, the composition structure and operation principle of I/O request dispensing device 1000 are described in detail.
As shown in figure 4, I/O request dispensing device 1000 includes:
Transceiver module 1000a, for receiving first of the specified data block on the specified LUN in access storage array 200
I/O request;
Processing module 1000b, for determining the sub- LUN on the first I/O request specified LUN to be accessed;It is true for each
Sub- LUN on the first fixed I/O request specified LUN to be accessed, perform following operation:
Determine in storage array 200, the controller of the sub- LUN ownership, the controller is used for please by the IO for accessing the sub- LUN
Seek the hard disk being distributed to for storing data in the sub- LUN;
According to the first I/O request of reception, generation accesses the second I/O request of the sub- LUN;
The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
In the embodiment of the present invention, storage array 200 includes one or more LUN, and each LUN address space is pre-
First it is divided into more sub- LUN, the data in different sub- LUN can be stored in same or different masses hard disk in storage array 200
On.
Also include one or more controllers in storage array 200, controller is used to the I/O request received being sent to this
On the I/O request hard disk to be accessed.
In the embodiment of the present invention, each sub- LUN has the controller of ownership, and the controller is used to that the sub- LUN will to be accessed
I/O request be distributed to hard disk for storing data in the sub- LUN.
Unlike the storage array shown in Fig. 1 and Fig. 2, in Fig. 1 and storage array shown in Fig. 2, a controller
The I/O request for belonging to the distribution of other controllers may be received, now just needs the I/O request received being transmitted to other controls
Device.In the embodiment of the present invention, by I/O request dispensing device 1000, the I/O request for accessing certain sub- LUN is distributed to the sub- LUN
I/O request is directly distributed to hard disk by the controller of ownership, such controller can, the forwarding without other controllers.
First I/O request is to access the specified data block of the specified LUN on storage array 200, and in storage array 200,
Each LUN is divided into more sub- LUN again, therefore I/O request dispensing device 1000 is needed at the first I/O request to receiving
Reason, it is converted into accessing each sub- LUN the second I/O request.
Such as:The LBA that first I/O request accesses the LUN1 on storage array 200 is LBA1, and length is specifying for Length
Data block.LUN1 is divided into four sub- LUN, is respectively:Sub- LUN1, sub- LUN2, sub- LUN3 and sub- LUN4, above-mentioned first IO please
Ask the specified data block to be accessed be distributed with the sub- LUN of aforementioned four, by following four sub- data chunks into:
Sub-block 1:The data block that the length that sub- LUN1 address is LBA1 is length1;
Sub-block 2:The data block that the length that sub- LUN2 address is LBA2 is length2;
Sub-block 3:The data block that the length that sub- LUN3 address is LBA3 is length3;
Sub-block 4:The data block that the length that sub- LUN4 address is LBA4 is length4.
For the sub- LUN of aforementioned four, following operation is performed respectively:
Determine in storage array 200, the controller of the sub- LUN ownership;
According to the first I/O request, generation accesses the second I/O request of the sub- LUN;
The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
Such as:For above-mentioned sub-block 4, the length that the sub- LUN4 of the second I/O request access address is LBA4 is
Length4 data block.
In above-mentioned example, a LUN is divided into four sub- LUN, when product is realized, above-mentioned division side can be not limited to
Formula, a usual LUN can be divided into many sub- LUN, and each controller corresponds to more sub- LUN.
Wherein, I/O request dispensing device 1000 can use the various ways for including following manner, determine the control of sub- LUN ownership
Device processed:
Mode one
I/O request dispensing device 1000 can be returned in advance according to default algorithm for each sub- LUN distribution on the specified LUN
The controller of category, such as:Control is distributed to according to the controller of sub- LUN numbering distribution ownership, such as the sub- LUN that numbering is odd number
Device 1 processed, numbering are that the sub- LUN of even number distributes to controller 2.
Then I/O request dispensing device 1000 is after the first I/O request is received, can be according to when determining the controller of sub- LUN ownership
The default algorithm of identical, determine the controller of sub- LUN ownership.
One schematic diagram of mode one refers to Fig. 5.In Fig. 5, each blockage represents a sub- LUN, in square
The controller of the sub- LUN ownership of digitized representation.Node0~Node3 is each controller.
Mode two
I/O request dispensing device 1000 in advance at each controller in storage array 200, obtain the controller with
Belong to each sub- LUN of controller corresponding relation;
Then I/O request dispensing device 1000, can be according to the sub- LUN obtained in advance and the son after the first I/O request is received
The corresponding relation of the controller of LUN ownership, determine the controller of the sub- LUN ownership.
Further, the situation of the forwarding lower wall in Fig. 1 can be avoided in the following way:
What the data storage in each sub- LUN in storage array 200 directly accessed in the sub- LUN controllers belonged to
, i.e., being capable of direct access hard disk without the forwarding of other controllers in hard disk.
In Fig. 1, because the data storage on LUN4 is on hard disk shared domain A, and LUN4 can not directly access hard disk share
Domain A, thus controller Node3 need will access LUN4 on address be LBA10 I/O request by forwarding lower wall to issue hard disk
Shared domain A.
, can be by the way that the data storage in sub- LUN be directly accessed in the sub- LUN controllers belonged in the embodiment of the present invention
Hard disk or hard disk shared domain in, avoid forward lower wall.
Illustrated below by embodiment one and embodiment two.
【Embodiment one】
In embodiment one, I/O request dispensing device 1000 is located in storage array 200, shared for whole storage array 200
Front end I/O request interface arrangement.
After the I/O request that main frame 100 issues is issued to the I/O request dispensing device 1000 of the front end of storage array 200, by upper
The controller that the default algorithm in mode one is distributed to each ownership is stated, after the controller processing of ownership, is sent directly to hard
Disk, the forwarding I/O request between controller was not both needed, it is not required that lower wall is forwarded between controller.
Specifically, with reference to figure 6, there are tetra- controllers of Node0~Node3, I/O request dispensing device in storage array 200
1000 receive the I/O request for accessing LUN0 LBA as LBA0, it is determined that corresponding sub- LUN is the sub- LUN of LBA%4=0 in LUN0,
And determining that the controller that the sub- LUN belongs to is Node0, then the I/O request is issued Node0 by I/O request dispensing device 1000, and
LBA%4=0 data block is stored on hard disk shared domain A in LUN0, is owned, Node0 then can directly send out the I/O request received
Give hard disk shared domain A.
Similarly, I/O request dispensing device 1000 also can be LBA3 to the LBA for accessing LUN0 I/O request, LUN0 is accessed
LBA is LBA13 I/O request, and access LUN0 LBA is LBA10 I/O request progress forward process.
【Embodiment two】
In embodiment two, I/O request dispensing device 1000 is located in main frame 100.
I/O request is directly issued to home control device, in home control by main frame 100 by I/O request dispensing device 1000
After device processing, direct lower wall.Front and back end is without forwarding.
Specifically, with reference to figure 7, there are tetra- controllers of Node0~Node3, I/O request dispensing device in storage array 200
1000 determine the I/O request that the LBA for accessing LUN0 is LBA0, and the sub- LUN to be accessed is the sub- LUN of LBA%4=0 in LUN0, and
The controller for determining sub- LUN ownership is Node0, then the I/O request is issued Node0 by I/O request dispensing device 1000, and LUN0
Middle LBA%4=0 data block is stored on hard disk shared domain A, is owned, Node0 then can directly issue the I/O request received firmly
Disk shared domain A.
Similarly, I/O request dispensing device 1000 also can be LBA3 to the LBA for accessing LUN0 I/O request, LUN0 is accessed
LBA is LBA13 I/O request, and access LUN0 LBA is LBA10 I/O request progress forward process.
Based on same inventive concept, the embodiment of the present invention additionally provides a kind of I/O request distribution method.This method solves to ask
The principle of topic is identical with I/O request dispensing device 1000 provided in an embodiment of the present invention, and it implements the implementation that can refer to the device,
Part is repeated to repeat no more.
With reference to figure 8, this method comprises the following steps:
S801:Receive the first I/O request of the specified data block on the specified LUN in access storage array;
S802:The sub- LUN on the first I/O request specified LUN to be accessed is determined, wherein, specified LUN address space quilt
More sub- LUN are divided into advance;
S803:For the sub- LUN on the first I/O request of each determination specified LUN to be accessed, following operation is performed:
Determine in storage array, the controller of the sub- LUN ownership, the controller is used to that the I/O request of the sub- LUN will to be accessed
It is distributed to the hard disk for storing data in the sub- LUN;
According to the first I/O request of reception, generation accesses the second I/O request of the sub- LUN;
The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
Alternatively, before step S801 receives the first I/O request, in addition to:
According to default algorithm, to specify the controller of each sub- LUN distribution ownership on LUN.
Alternatively, before step S801 receives the first I/O request, in addition to:
At each controller in storage array, obtain the controller and belong on the specified LUN of the controller
Each sub- LUN corresponding relation;
Step S802 determined in storage array, the controller of sub- LUN ownership, including:
According to the corresponding relation for obtaining the sub- LUN and sub- LUN controllers belonged to, the control of the sub- LUN ownership is determined
Device.
Alternatively, the data storage in each sub- LUN in storage array is directly visited in the sub- LUN controllers belonged to
In the hard disk asked.
To sum up, in the embodiment of the present invention, by introducing I/O request dispensing device 1000, I/O request is directly distributed to belong to
Controller, so as to avoid the forwarding of the I/O request between controller, reduce the processing load of controller.
It should be understood by those skilled in the art that, embodiments of the invention can be provided as method, system or computer program
Product.Therefore, the present invention can use the reality in terms of complete hardware embodiment, complete software embodiment or combination software and hardware
Apply the form of example.Moreover, the present invention can use the computer for wherein including computer usable program code in one or more
The computer program production that usable storage medium is implemented on (including but is not limited to magnetic disk storage, CD-ROM, optical memory etc.)
The form of product.
The present invention is the flow with reference to method according to embodiments of the present invention, equipment (system) and computer program product
Figure and/or block diagram describe.It should be understood that can be by every first-class in computer program instructions implementation process figure and/or block diagram
Journey and/or the flow in square frame and flow chart and/or block diagram and/or the combination of square frame.These computer programs can be provided
The processors of all-purpose computer, special-purpose computer, Embedded Processor or other programmable data processing devices is instructed to produce
A raw machine so that produced by the instruction of computer or the computing device of other programmable data processing devices for real
The device for the function of being specified in present one flow of flow chart or one square frame of multiple flows and/or block diagram or multiple square frames.
These computer program instructions, which may be alternatively stored in, can guide computer or other programmable data processing devices with spy
Determine in the computer-readable memory that mode works so that the instruction being stored in the computer-readable memory, which produces, to be included referring to
Make the manufacture of device, the command device realize in one flow of flow chart or multiple flows and/or one square frame of block diagram or
The function of being specified in multiple square frames.
These computer program instructions can be also loaded into computer or other programmable data processing devices so that counted
Series of operation steps is performed on calculation machine or other programmable devices to produce computer implemented processing, so as in computer or
The instruction performed on other programmable devices is provided for realizing in one flow of flow chart or multiple flows and/or block diagram one
The step of function of being specified in individual square frame or multiple square frames.
Although preferred embodiments of the present invention have been described, but those skilled in the art once know basic creation
Property concept, then can make other change and modification to these embodiments.So appended claims be intended to be construed to include it is excellent
Select embodiment and fall into having altered and changing for the scope of the invention.
Obviously, those skilled in the art can carry out the essence of various changes and modification without departing from the present invention to the present invention
God and scope.So, if these modifications and variations of the present invention belong to the scope of the claims in the present invention and its equivalent technologies
Within, then the present invention is also intended to comprising including these changes and modification.
Claims (12)
- A kind of 1. input and output I/O request dispensing device, it is characterised in that including:Transceiver module, for receiving the first I/O request of the specified data block on the specified LUN in access storage array;Processing module, the sub- LUN on the specified LUN to be accessed for determining first I/O request, wherein, it is described to specify LUN address space is divided into more sub- LUN in advance;For each determination first I/O request to be accessed described in The sub- LUN on LUN is specified, performs following operation:Determine in the storage array, the controller of the sub- LUN ownership, the controller is used to that the I/O request of the sub- LUN will to be accessed It is distributed to the hard disk for storing data in the sub- LUN;According to first I/O request of reception, generation accesses the second I/O request of the sub- LUN;The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
- 2. device as claimed in claim 1, it is characterised in that the processing module is additionally operable to:It is each son on the specified LUN according to default algorithm before the transceiver module receives first I/O request The controller of LUN distribution ownership.
- 3. device as claimed in claim 1, it is characterised in thatThe processing module is additionally operable to:Before the transceiver module receives first I/O request, from the storage array Each controller at, obtain the controller it is corresponding with each sub- LUN on the specified LUN for belonging to the controller close System;The processing module is specifically used for:According to the corresponding relation for obtaining the sub- LUN and sub- LUN controllers belonged to, it is determined that The controller of the sub- LUN ownership.
- 4. device as claimed in claim 1, it is characterised in thatThe data storage in each sub- LUN in the storage array directly accesses hard in the sub- LUN controllers belonged to In disk.
- 5. the device as described in any one of Claims 1 to 4, it is characterised in thatDescribed device is in the main frame for sending first I/O request;OrDescribed device is located in the storage array.
- A kind of 6. main frame, it is characterised in that including:I/O request sending module and such as dress according to any one of claims 1 to 4 Put;Wherein, the I/O request sending module is used to send first I/O request to the transceiver module of described device.
- A kind of 7. storage array, it is characterised in that including:Device according to any one of claims 1 to 4.
- 8. a kind of computer system, including:Main frame and storage array, it is characterised in thatThe main frame includes I/O request sending module, and the device as described in any one of Claims 1 to 4;Wherein, the IO Request sending module is used to send first I/O request to described device;The storage array is used to receive the main frame transmission Second I/O request;OrThe storage array includes the device as described in any one of Claims 1 to 4;The main frame is used for the storage array Send first I/O request.
- A kind of 9. input and output I/O request distribution method, it is characterised in that including:Receive the first I/O request of the specified data block on the specified LUN in access storage array;The sub- LUN on the first I/O request specified LUN to be accessed is determined, wherein, the address space of the specified LUN More sub- LUN are divided into advance;For the sub- LUN on first I/O request of each determination specified LUN to be accessed, following operation is performed:Determine in the storage array, the controller of the sub- LUN ownership, the controller is used to that the I/O request of the sub- LUN will to be accessed It is distributed to the hard disk for storing data in the sub- LUN;According to first I/O request of reception, generation accesses the second I/O request of the sub- LUN;The second I/O request for accessing the sub- LUN is sent to the controller of the sub- LUN ownership of determination.
- 10. method as claimed in claim 9, it is characterised in that before first I/O request is received, in addition to:It is the controller that each sub- LUN distribution on the specified LUN belongs to according to default algorithm.
- 11. method as claimed in claim 9, it is characterised in that before first I/O request is received, in addition to:At each controller in the storage array, obtain the controller and belong to the described of the controller and specify The corresponding relation of each sub- LUN on LUN;Determine in the storage array, the controller of the sub- LUN ownership, including:According to the corresponding relation for obtaining the sub- LUN and sub- LUN controllers belonged to, the controller that the sub- LUN belongs to is determined.
- 12. the method as described in any one of claim 9~11, it is characterised in thatThe data storage in each sub- LUN in the storage array directly accesses hard in the sub- LUN controllers belonged to In disk.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410849910.7A CN104571960B (en) | 2014-12-30 | 2014-12-30 | I/O request dispensing device and method, main frame, storage array and computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410849910.7A CN104571960B (en) | 2014-12-30 | 2014-12-30 | I/O request dispensing device and method, main frame, storage array and computer system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104571960A CN104571960A (en) | 2015-04-29 |
CN104571960B true CN104571960B (en) | 2018-01-16 |
Family
ID=53088145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410849910.7A Active CN104571960B (en) | 2014-12-30 | 2014-12-30 | I/O request dispensing device and method, main frame, storage array and computer system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104571960B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635310B (en) * | 2016-01-20 | 2019-02-26 | 杭州宏杉科技股份有限公司 | A kind of access method and device of storage resource |
CN108228076B (en) | 2016-12-14 | 2020-10-16 | 华为技术有限公司 | Method and host for accessing disk |
CN109799956B (en) * | 2017-01-05 | 2023-11-17 | 华为技术有限公司 | Memory controller and IO request processing method |
CN114546294B (en) * | 2022-04-22 | 2022-07-22 | 苏州浪潮智能科技有限公司 | Solid state disk reading method, system and related components |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103631640A (en) * | 2013-11-08 | 2014-03-12 | 华为技术有限公司 | Data accessing request responding method and device |
CN103645969A (en) * | 2013-12-13 | 2014-03-19 | 华为技术有限公司 | Data replication method and data storage system |
US8719520B1 (en) * | 2010-12-14 | 2014-05-06 | Datadirect Networks, Inc. | System and method for data migration between high-performance computing architectures and data storage devices with increased data reliability and integrity |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8131969B2 (en) * | 2004-10-20 | 2012-03-06 | Seagate Technology Llc | Updating system configuration information |
-
2014
- 2014-12-30 CN CN201410849910.7A patent/CN104571960B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8719520B1 (en) * | 2010-12-14 | 2014-05-06 | Datadirect Networks, Inc. | System and method for data migration between high-performance computing architectures and data storage devices with increased data reliability and integrity |
CN103631640A (en) * | 2013-11-08 | 2014-03-12 | 华为技术有限公司 | Data accessing request responding method and device |
CN103645969A (en) * | 2013-12-13 | 2014-03-19 | 华为技术有限公司 | Data replication method and data storage system |
Also Published As
Publication number | Publication date |
---|---|
CN104571960A (en) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104571960B (en) | I/O request dispensing device and method, main frame, storage array and computer system | |
EP2930910B1 (en) | Method and system for sharing storage resources | |
JP5159421B2 (en) | Storage system and storage system management method using management device | |
CN103207840B (en) | For imperfect record to be degraded to the system and method for the second buffer memory from the first buffer memory | |
US10235047B2 (en) | Memory management method, apparatus, and system | |
US10248460B2 (en) | Storage management computer | |
US9313266B2 (en) | Dynamic assignment of transfers of blocks of data | |
CN104102458B (en) | Load-balancing method, multi-core CPU and the solid state hard disc of multi-core CPU | |
CN106527985A (en) | Storage interaction device and storage system based on ceph | |
JP7135074B2 (en) | Thin provisioning with cloud-based ranks | |
CN106534308A (en) | Method and device for solving data block access hotspot problem in distributed storage system | |
CN108733308A (en) | Method and apparatus for managing Pan Chi | |
CN104050115A (en) | Storage controller and using method of storage controller | |
CN104111805B (en) | A kind of I/O request processing methods and storage system | |
HeydariGorji et al. | Hypertune: Dynamic hyperparameter tuning for efficient distribution of dnn training over heterogeneous systems | |
CN108228076A (en) | Access the method and host of disk | |
JP2022528284A (en) | Optimization of storage and acquisition of compressed data | |
JP6480955B2 (en) | Computer system, management system, and resource management method | |
JP5533252B2 (en) | Disk array device and disk array device control method | |
CN105446913B (en) | A kind of data access method and device | |
Jo et al. | Dynamic load balancing of dispatch scheduling for solid state disks | |
CN104750614B (en) | Method and apparatus for managing memory | |
WO2013149529A1 (en) | Data access method, device and system | |
JP6307962B2 (en) | Information processing system, information processing method, and information processing program | |
CN105867848B (en) | A kind of information processing method and hard disk mould group |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |