CN106547473A - A kind of writing method and device of disk array - Google Patents

A kind of writing method and device of disk array Download PDF

Info

Publication number
CN106547473A
CN106547473A CN201510602903.1A CN201510602903A CN106547473A CN 106547473 A CN106547473 A CN 106547473A CN 201510602903 A CN201510602903 A CN 201510602903A CN 106547473 A CN106547473 A CN 106547473A
Authority
CN
China
Prior art keywords
physical disks
data
pressure
read
written
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
Application number
CN201510602903.1A
Other languages
Chinese (zh)
Other versions
CN106547473B (en
Inventor
谭春华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN201510602903.1A priority Critical patent/CN106547473B/en
Publication of CN106547473A publication Critical patent/CN106547473A/en
Application granted granted Critical
Publication of CN106547473B publication Critical patent/CN106547473B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

The invention discloses the writing method and device of a kind of disk array, belong to technical field of memory.Methods described includes:Write request is received, request includes the data that need to write disk array;Disk array includes multiple physical disks, and each physical disks is divided into multiple stripe cells, and each stripe cell includes at least one logical block;According to write request, band to be written is determined;Stripe cell of each band comprising equal number, less than the physical disks sum that disk array includes, the stripe cell that different bands are included is different, and in a band, different stripe cells are located at different physical disks for the stripe cell quantity that each band is included;Detect whether the physical disks belonging to each stripe cell of data to be written in band to be written exceed preset pressure in the pressure of current time;When the physical disks belonging to each stripe cell of data to be written in the pressure of current time not less than preset pressure when, take write data in bar to be written.

Description

A kind of writing method and device of disk array
Technical field
The present invention relates to technical field of memory, the writing method and device of more particularly to a kind of disk array.
Background technology
Virtualization disk array (Redundant Arrays of Independent Disks, abbreviation RAID) (magnetic The full name of disk array is, the array with redundant ability that independent disk is constituted), i.e., present RAID 2.0 Technology, it would be preferable to support virtualization disk reconstruct.Specifically, in multiple physical disks that RAID is included wherein When one piece of physical disks breaks down, can be by the data reconstruction on faulty disk to other physical disks.Such as, RAID includes 1,2,3,4,5,6 and No. 7 physical disks, it is assumed that No. 3 physical disks failures, RAID are first led to Cross verification calculating and recover the data stored in No. 3 physical disks, data are shared into storage to remaining physics then On disk (such as 1,2,4,5,6 and No. 7 physical disks).
When reconstructing in view of disk failure triggering, RAID will also synchronously realize the read-write business from main frame.Such as The data of faulty disk are shared storage in other physical disks by fruit, then the read-write speed in other physical disks will drop Low, this will affect other physical disks to realize the read-write business of main frame.In order to mitigate read-write industry of the reconstruct to main frame The impact of business, prior art propose a kind of reconstructing method, and the method includes, select remaining appearance in physical disks The most physical disks of amount are reconstructed as destination disk.Such as, be able to will recover in 3 dialer failure Most No. 4 physical disks of 3 dialer data Cun Chudao residual capacities on.
During the present invention is realized, inventor has found that prior art at least has problems with:
When the read-write business of main frame is realized, the physical disks of selection have randomness to RAID, any one or it is many The all selectable possibility of the physical disks of individual normal work, then, select when the read-write business of main frame is realized Physical disks with reconstruct selection physical disks be same physical disks when, such as all have selected No. 4 physical disks, This will cause No. 4 physical disks penalties, affect the access speed of the speed and main frame of reconstruct.
The content of the invention
In order to solve problem of the prior art, embodiments provide a kind of disk array writes controlling party Method and device.The technical scheme is as follows:
First aspect, there is provided a kind of writing method of disk array, methods described include:
Write request is received, the request includes the data that need to write disk array;The disk array includes many Individual physical disks, each described physical disks are divided into multiple stripe cells, and each described stripe cell is included at least One logical block, all of stripe cell are divided into multiple bands, and each described band is comprising identical The stripe cell of quantity, the stripe cell quantity that each described band is included include less than the disk array Physical disks sum, the stripe cell that the different bands are included are different, different band lists in a band Unit is located at different physical disks;
According to the write request, band to be written is determined;
Detect the physical disks belonging to each stripe cell of data to be written in the band to be written when current Between pressure whether exceed preset pressure;
When the data to be written each stripe cell belonging to physical disks do not surpass in the pressure of current time When crossing the preset pressure, write data are taken in the bar to be written, and increase the data to be written The pressure of the physical disks belonging to each stripe cell;
After the bar to be written takes and writes data, each stripe cell institute of the data to be written is reduced The pressure of the physical disks of category.
Used as the first embodiment of first aspect, methods described also includes:
When the data to be written each stripe cell belonging to physical disks at least one physical disks current When the pressure of time exceedes the preset pressure, band to be written is redefined, the bar to be written for redefining Band is different from original band to be written for determining.
Used as the second embodiment of first aspect, the pressure includes that read-write operation is counted and data volume is concurrent Number;
Detect the physical disks belonging to each stripe cell of data to be written in the band to be written when current Between pressure whether exceed preset pressure, including:
Detect read-write operation of the physical disks belonging to each stripe cell of the data to be written in current time Count and whether exceed default read-write operation and count, and detect each stripe cell institutes of the data to be written Whether the physical disks of category are concurrently counted more than preset data amount in the concurrent counting number of data volume of current time;
Increase the pressure of the physical disks belonging to each stripe cell of the data to be written, including:
The read-write operation for increasing the physical disks belonging to each stripe cell of the data to be written is counted and data Amount number of concurrent;Wherein, the incrementss that the read-write operation of each physical disks is counted are 1, the data of each physical disks The incrementss of amount number of concurrent are the logic number of blocks that data are actually written in corresponding stripe cell.
Used as the 3rd embodiment of first aspect, methods described also includes:
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
Second aspect, there is provided a kind of writing method of disk array, methods described include:
Write request is received, the write request includes the data that need to write disk array;The disk array includes Multiple physical disks, each described physical disks are divided into multiple stripe cells, each described stripe cell include to A few logical block;
Determine the minimum physical disks of pressure in the plurality of physical disks of current time;
The data that need to write disk array are write in the minimum physical disks of the pressure, and increases described The pressure of the minimum physical disks of pressure;
After data are write, the pressure of the minimum physical disks of the pressure is reduced.
Used as the first embodiment of second aspect, the pressure includes that read-write operation is counted and data volume is concurrent Number;
Increase the pressure of the minimum physical disks of the pressure, including:
The read-write operation for increasing the minimum physical disks of the pressure is counted and the concurrent counting number of data volume, wherein, The incrementss that the read-write operation is counted are 1, and the incrementss of the data volume number of concurrent are to be actually written into data Logic number of blocks.
Used as the second embodiment of second aspect, methods described also includes:
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
The third aspect, there is provided a kind of apparatus for controlling of disk array, described device include:
First receiver module, for receiving write request, the request includes the data that need to write disk array; The disk array includes multiple physical disks, and each described physical disks is divided into multiple stripe cells, each institute Stating stripe cell includes at least one logical block, and all of stripe cell is divided into multiple bands, often Stripe cell of the individual band comprising equal number, the stripe cell quantity that each described band is included are less than The physical disks sum that the disk array includes, the stripe cell that the different bands are included are different, an institute In stating band, different stripe cells are located at different physical disks;
First determining module, for according to the write request, determining band to be written;
Detection module, for detecting in the band to be written belonging to each stripe cell of data to be written Whether physical disks exceed preset pressure in the pressure of current time;
First writing module, is working as the physical disks belonging to each stripe cell when the data to be written When the pressure of front time is not less than the preset pressure, write data are taken in the bar to be written, and increased Plus the pressure of the physical disks belonging to each stripe cell of the data to be written;
First recovery module, for, after the bar to be written takes and writes data, reducing the number to be written According to each stripe cell belonging to physical disks pressure.
Used as the first embodiment of the third aspect, first determining module is additionally operable to,
When the data to be written each stripe cell belonging to physical disks at least one physical disks current When the pressure of time exceedes the preset pressure, band to be written is redefined, the bar to be written for redefining Band is different from original band to be written for determining.
Used as the second embodiment of the third aspect, the pressure includes that read-write operation is counted and data volume is concurrent Number;
Detection module is used for, and detects the physical disks belonging to each stripe cell of the data to be written current The read-write operation of time counts and whether exceedes default read-write operation and count, and detect the data to be written Whether the physical disks belonging to each stripe cell exceed preset data in the concurrent counting number of data volume of current time Amount is concurrently counted;
First writing module is used for, the physical disks belonging to each stripe cell of the increase data to be written Read-write operation is counted and data volume number of concurrent;Wherein, the incrementss that the read-write operation of each physical disks is counted are 1, The incrementss of the data volume number of concurrent of each physical disks are the logic that data are actually written in corresponding stripe cell Number of blocks.
As the 3rd embodiment of the third aspect, described device also include the first read module, described first Read module is used for,
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
Fourth aspect, there is provided a kind of apparatus for controlling of disk array, described device include:
Second receiver module, for receiving write request, the write request includes the data that need to write disk array; The disk array includes multiple physical disks, and each described physical disks is divided into multiple stripe cells, each institute Stating stripe cell includes at least one logical block;
Second determining module, for determining the minimum physical disks of pressure in the plurality of physical disks of current time;
Second writing module, described need to write disk array for writing in the minimum physical disks of the pressure Data, and increase the pressure of the minimum physical disks of the pressure;
Second recovery module, for, after data are write, reducing the pressure of the minimum physical disks of the pressure.
Used as the first embodiment of fourth aspect, the pressure includes that read-write operation is counted and data volume is concurrent Number;
Second writing module is used for, and the read-write operation for increasing the minimum physical disks of the pressure counts sum According to the concurrent counting number of amount, wherein, the incrementss that the read-write operation is counted are 1, the data volume number of concurrent Incrementss are the logic number of blocks for being actually written into data.
As the second embodiment of fourth aspect, described device also include the second read module, described second Read module is used for,
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
The beneficial effect that technical scheme provided in an embodiment of the present invention is brought is:
By receiving write request, the request includes the data that need to write disk array;According to write request, it is determined that Band to be written;Stripe cell of each band comprising equal number, the stripe cell number that each band is included The physical disks sum included less than disk array is measured, the stripe cell that different bands are included is different, a band Middle different stripe cells are located at different physical disks;Detect each band of data to be written in band to be written Whether the physical disks belonging to unit exceed preset pressure in the pressure of current time;When data to be written each Physical disks belonging to stripe cell when the pressure of current time is not less than preset pressure, in band to be written Upper write data, and increase the pressure of physical disks belonging to each stripe cells of data to be written;To be written Enter after bar takes and write data, reduce the pressure of the physical disks belonging to each stripe cell of data to be written; So, the either reconstruct of the write operation of main frame or the triggering of physical disks failure, all considers physical disks and bears Pressure, only write data when the pressure of physical disks is not less than preset pressure, it is to avoid physical disks penalty, The speed and main frame that when physical disks are reconstructed, can balance reconstruct accesses the speed of disk array.
Description of the drawings
For the technical scheme being illustrated more clearly that in the embodiment of the present invention, below will be to institute in embodiment description The accompanying drawing that needs are used is briefly described, it should be apparent that, drawings in the following description are only the present invention Some embodiments, for those of ordinary skill in the art, on the premise of not paying creative work, Can be with according to these other accompanying drawings of accompanying drawings acquisition.
Fig. 1 is the structural representation of disk array provided in an embodiment of the present invention;
Fig. 2 is a kind of flow chart of the writing method of disk array that one embodiment of the invention is provided;
Fig. 3 is the flow chart of the writing method of another disk array that one embodiment of the invention is provided;
Fig. 4 is the flow chart of the writing method of another disk array that one embodiment of the invention is provided;
Fig. 5 is the flow chart of the writing method of another disk array that one embodiment of the invention is provided;
Fig. 6 is a kind of structural representation of the apparatus for controlling of disk array that one embodiment of the invention is provided;
Fig. 7 is the structural representation of the apparatus for controlling of another disk array that one embodiment of the invention is provided;
Fig. 8 is the structural representation of the apparatus for controlling of another disk array that one embodiment of the invention is provided;
Fig. 9 is that the hardware configuration of the apparatus for controlling of another disk array that one embodiment of the invention is provided shows It is intended to;
Figure 10 is that a kind of hardware configuration of the apparatus for controlling of disk array that one embodiment of the invention is provided is illustrated Figure.
Specific embodiment
To make the object, technical solutions and advantages of the present invention clearer, below in conjunction with accompanying drawing to the present invention Embodiment is described in further detail.
For ease of understanding technical scheme provided in an embodiment of the present invention, first to disk array (Redundant Arrays of Independent Disks, abbreviation RAID) it is introduced.
RAID includes multiple physical disks, and each physical disks is cut into multiple stripe cells, each stripe cell Including at least one logical block.Logical block is minimum memory unit in physical disks.Whole stripe cells are divided For multiple bands.Stripe cell of each band comprising equal number, the stripe cell that different bands are included is not Together, the stripe cell that band is included is located at different physical disks respectively.Also, what each band was included The physical disks total quantity that stripe cell quantity includes less than RAID.
As Fig. 1 is illustrated, it is assumed that RAID includes 8 physical disks (including 0 to No. 7 physical disks), each Band includes 4 stripe cells, and each stripe cell includes two logical blocks.1st band includes band list First 1-1,1-2,1-3 and 1-4, stripe cell 1-1,1-2,1-3 and 1-4 are located at 0,2,3 and 4 respectively In number physical disks.2nd band includes stripe cell 2-1,2-2,2-3 and 2-4.Stripe cell 2-1,2-2, 2-3 and 2-4 are located in 1,2,5 and No. 6 physical disks respectively.
RAID also includes controller, and controller is used to manage the reading and writing operation in multiple physical disks.Physical disks On read operation come from the main frame being connected with controller.Write operation in physical disks come from main frame and The reconstruct triggered during physical disks failure.
Fig. 2 shows a kind of writing method of disk array that one embodiment of the invention is provided, and the method is fitted For the controller of disk array.Referring to Fig. 2, the method comprises the steps.
Step S101, reception write request.
Wherein, the request bag is containing the data that need to write disk array.Disk array includes multiple physical disks, often Individual physical disks are divided into multiple stripe cells, and each stripe cell includes at least one logical block.All of bar Tape cell is divided into multiple bands, wherein, stripe cell of each band comprising equal number, each The physical disks sum that the stripe cell quantity that band is included includes less than disk array.The band that different bands are included Unit is different, and in a band, different stripe cells are located at different physical disks.
Specifically, the write request can be sent by main frame, it is also possible to which the physical disks in disk array occur event Hinder and after triggering reconstruct, sent by disk array.
Step S102, according to write request, determine band to be written.
Specifically, this step S102 includes, according to write request, in determining band to be written and band to be written At least one stripe cell of data to be written.
Physical disks in step S103, detection band to be written belonging to each stripe cell of data to be written exist Whether the pressure of current time exceedes preset pressure.
When data to be written each stripe cell belonging to physical disks current time pressure not less than pre- If during pressure, execution step S104.When data to be written each stripe cell belonging to physical disks at least When the pressure of current time exceedes preset pressure, execution step S102 redefines and treats one physical disks Write band.It should be noted that the band to be written for redefining is with original band to be written for determining not Together.
Specifically, the pressure of physical disks can be numerical value.The initial pressure of each physical disks in multiple physical disks Can be preset pressure, the initial pressure of each physical disks such as can all be 0, it is also possible to unequal with equal.
Step S104, write data are taken in bar to be written, and increase each stripe cell of data to be written The pressure of affiliated physical disks.
Specifically, the incrementss of the pressure of the physical disks belonging to each stripe cell of data to be written can be 1。
Step S105, each stripe cell for after bar to be written takes and writes data, reducing data to be written The pressure of affiliated physical disks.
Specifically, the decrement of pressure is identical with the incrementss of pressure in step S104.
It should be noted that the quantity of band to be written can be 1, it is also possible to more than 1.When band to be written Quantity when being more than 1, then can be directed to using each band to be written successively as currently band to be written Current band execution step S103-S105 to be written.Specifically, data to be written during detection is currently to be written Whether the physical disks belonging to each stripe cell exceed preset pressure in the pressure of current time.Current to be written Enter the physical disks belonging to each stripe cell of data when the pressure of current time is not less than preset pressure, Write data are taken in current bar to be written, and increase the physics belonging to each stripe cells of data to be written The pressure of disk.After current bar to be written takes and writes data, each band of current data to be written is reduced The pressure of the physical disks belonging to unit.In the physical disks belonging to each stripe cell in current data to be written At least one physical disks redefine a band to be written when the pressure of current time exceedes preset pressure To replace current band to be written.
The embodiment of the present invention includes the data that need to write disk array by receiving write request, the request;According to Write request, determines band to be written;Stripe cell of each band comprising equal number, each band are included The physical disks sum that includes less than disk array of stripe cell quantity, the stripe cell that different bands are included is not Together, in a band, different stripe cells are located at different physical disks;Detect number to be written in band to be written According to each stripe cell belonging to physical disks whether exceed preset pressure in the pressure of current time;When to be written Enter the physical disks belonging to each stripe cell of data when the pressure of current time is not less than preset pressure, Write data are taken in bar to be written, and increase the physical disks belonging to each stripe cells of data to be written Pressure;After bar to be written takes and writes data, the thing belonging to each stripe cell of data to be written is reduced The pressure of reason disk;So, the either reconstruct of the write operation of main frame or the triggering of physical disks failure, all considers The pressure that physical disks are born, only writes data when the pressure of physical disks is not less than preset pressure, it is to avoid thing Reason disk penalty, the speed and main frame that when physical disks are reconstructed, can balance reconstruct access disk array Speed.
Fig. 3 shows the writing method of another disk array that one embodiment of the invention is provided, the method Suitable for the controller of disk array.In the present embodiment, will be described in detail that the press packet of physical disks contains is interior Hold.Referring to Fig. 3, the method comprises the steps.
Step S201, reception read request.
Wherein, the read request needs the mark of the logical block for reading in including disk array.Disk array includes many Individual physical disks, each physical disks are divided into multiple stripe cells, and each stripe cell includes at least one logic Block.All of stripe cell is divided into multiple bands, wherein, band of each band comprising equal number Unit, the stripe cell quantity that each band is included is less than the physical disks sum that disk array includes.Different bars The stripe cell that band is included is different, and in a band, different stripe cells are located at different physical disks.
Specifically, the read request is sent by main frame.
Step S202, data are read from the logical block that need to read, and each is patrolled in increasing the logical block that need to be read Collect the pressure of the physical disks belonging to block.
Wherein, pressure can include that read-write operation is counted and data volume number of concurrent.
Specifically, the pressure of the physical disks in the logical block that increase need to be read belonging to each logical block, including, The read-write operation of the physical disks in the logical block that increase need to be read belonging to each logical block is counted and data volume is concurrent Number, the incrementss that the read-write operation of each physical disks is counted are 1, the increasing of the data volume number of concurrent of each physical disks Addend is the logic number of blocks actually read in each physical disks.
Step S203, after data are run through from the logical block that need to be read, reduce in the logical block that need to read each The pressure of the physical disks belonging to logical block.
Specifically, the decrement of the pressure of physical disks is the incrementss of the pressure of physical disks in step S202.
Step S204, reception write request.
Wherein, the request bag is containing the data that need to write disk array.
Specifically, the write request can be sent by main frame, it is also possible to which the physical disks in disk array occur event Hinder and after triggering reconstruct, sent by disk array.
Step S205, according to write request, determine band to be written.
Specifically, this step S205 may include steps of A to step C.
Step A, according to the size of the data that need to write disk array, it is determined that required logic number of blocks.
Specifically, the size of data that each logical block can be stored is identical, and such as, each logical block can To store the data of 512B.If the size that need to write the data of disk array is 2KB, then 4 are needed Logical block.
Step B, according to required logic number of blocks, select logical address it is minimum, and writeable logical block make For the logical block of data to be written.
Specifically, the logical address (Logical Block Address, abbreviation LBA) of logical block is numerical value shape Formula, can the first logically size order of the logical address of block, by writeable logic block sequencing, then Select the writeable logical block with required logical block quantity Matching.
Step C, the mark and the mark of band of logical address, stripe cell according to the logical block for pre-building The mapping relations of three, determine the stripe cell and band belonging to the logical block of selection.
Wherein, the band belonging to the logical block of selection be band to be written, the band belonging to the logical block of selection Unit is the stripe cell of data to be written in band to be written.
Assume the data to be written of selection logical block logical address be 1223 to 1226, also, each Tape cell includes 2 logical blocks.Wherein, logical block 1223 belongs to stripe cell 1-3000, logical block 1224 Belong to stripe cell 3-4200 with 1225, logical block 1226 belongs to stripe cell 6-2010.Stripe cell 1-3000,3-4200 and 6-2010 belong to same band 80a.So, what band 80a as determined treats Write band, stripe cell 1-3000,3-4200 and the stripe cell that 6-2010 is data to be written.
Physical disks in step S206, detection band to be written belonging to each stripe cell of data to be written exist Whether the pressure of current time exceedes preset pressure.
When data to be written each stripe cell belonging to physical disks current time pressure not less than pre- If during pressure, execution step S207.When data to be written each stripe cell belonging to physical disks at least When the pressure of current time exceedes preset pressure, execution step S205 redefines and treats one physical disks Write band.It should be noted that the band to be written for redefining is with original band to be written for determining not Together.
For example, in band 80a to be written the stripe cell of data to be written include stripe cell 1-3000, 3-4200 and 6-2010, the physical disks belonging to stripe cell 1-3000 be No. 1 physical disks, stripe cell 3-4200 Affiliated physical disks are No. 3 physical disks, and the physical disks belonging to stripe cell 6-2010 are No. 6 physical disks.When No. 1, No. 3 and No. 6 physical disks when the pressure of current time is not less than preset pressure, execution step S207; When in No. 1, No. 3 and No. 6 physical disks, at least one physical disks exceed preset pressure in the pressure of current time, Execution step S205, that is, redefine band to be written.It should be noted that what is redefined is to be written Band is different from original band to be written for determining.
Specifically, step S206 can include, detect the physics belonging to each stripe cell of data to be written Disk counts in the read-write operation of current time and whether exceed default write operation and count, and detect data to be written Each stripe cell belonging to physical disks whether exceed present count in the concurrent counting number of data volume of current time Concurrently count according to amount.
Specifically, read-write operation is counted and the concurrent counting number of data volume can be numeric form.
Specifically, each thing in disk array can be calculated according to the disk bearing capacity parameter of disk array Maximum read-write operation quantity and maximum amount of data number of concurrent that reason disk can be carried.Then by maximum read-write operation Quantity and maximum amount of data number of concurrent are counted respectively as default read-write operation and data volume number of concurrent.Wherein, Associative disk bearing capacity parameter can be provided by disk array supplier.
Step S207, write data are taken in bar to be written, and increase each stripe cell of data to be written The pressure of affiliated physical disks.
Specifically, increase the pressure of the physical disks belonging to each stripe cell of data to be written, including increasing Plus the read-write operation of the physical disks belonging to each stripe cell of data to be written is counted and data volume number of concurrent, The incrementss that the read-write operation of each physical disks is counted are 1, the increase number of the data volume number of concurrent of each physical disks For the logic number of blocks of data is actually written in corresponding stripe cell.
For example, the read-write operation of No. 1 physical disks belonging to stripe cell 1-3000 is counted increases by 1, data volume Number of concurrent increases by 1;The read-write operation of No. 3 physical disks belonging to stripe cell 3-4200 is counted increases by 1, data Amount number of concurrent increases by 2, and the read-write operation of belonging to stripe cell 6-2010 No. 6 physical disks is counted increases by 1, number Increase by 1 according to amount number of concurrent.
Step S208, each stripe cell for after bar to be written takes and writes data, reducing data to be written The pressure of affiliated physical disks.
Specifically, the decrement of pressure is the incrementss of pressure in step S207.For example, in stripe cell After data are write on 1-3000,3-4200 and 6-2010, by No. 1 physical disks belonging to stripe cell 1-3000 Read-write operation count reduce 1, data volume number of concurrent reduce 1;No. 3 physics belonging to stripe cell 3-4200 The read-write operation of disk is counted and reduces 1, and data volume number of concurrent reduces 2, belonging to stripe cell 6-2010 No. 6 thing The read-write operation of reason disk is counted and reduces 1, and data volume number of concurrent reduces 1.
The embodiment of the present invention includes the data that need to write disk array by receiving write request, the request;According to Write request, determines band to be written;Stripe cell of each band comprising equal number, each band are included The physical disks sum that includes less than disk array of stripe cell quantity, the stripe cell that different bands are included is not Together, in a band, different stripe cells are located at different physical disks;Detect number to be written in band to be written According to each stripe cell belonging to physical disks whether exceed preset pressure in the pressure of current time;When to be written Enter the physical disks belonging to each stripe cell of data when the pressure of current time is not less than preset pressure, Write data are taken in bar to be written, and increase the physical disks belonging to each stripe cells of data to be written Pressure;After bar to be written takes and writes data, the thing belonging to each stripe cell of data to be written is reduced The pressure of reason disk;So, the either reconstruct of the write operation of main frame or the triggering of physical disks failure, all considers The pressure that physical disks are born, only writes data when the pressure of physical disks is not less than preset pressure, it is to avoid thing Reason disk penalty, the speed and main frame that when physical disks are reconstructed, can balance reconstruct access disk array Speed.
Fig. 4 shows the writing method of another disk array that one embodiment of the invention is provided, the method Suitable for the controller of disk array.Referring to Fig. 4, the method comprises the steps.
Step S301, reception write request.
Wherein, write request includes the data that need to write disk array, and disk array includes multiple physical disks.
Specifically, the write request can be sent by main frame, it is also possible to which the physical disks in disk array occur event Hinder and after triggering reconstruct, sent by disk array.
Step S302, the physical disks for determining pressure minimum in the multiple physical disks of current time.
Specifically, the pressure of physical disks can be numeric form.In multiple physical disks, each physical disks is initial Pressure can be preset pressure.The initial pressure of each physical disks can be with difference.
Step S303, in the minimum physical disks of pressure write need to write the data of disk array, and increase pressure The pressure of the minimum physical disks of power.
Specifically, the incrementss of the pressure of the minimum physical disks of pressure can be 1.
Step S304, the pressure for after data are write, reducing the minimum physical disks of pressure.
Specifically, the decrement of the pressure of physical disks can be identical with the incrementss of pressure in step S303.
The embodiment of the present invention includes the data that need to write disk array, disk by receiving write request, write request Array includes multiple physical disks;Determine the minimum physical disks of pressure in the multiple physical disks of current time;In pressure Write in minimum physical disks need to write the data of disk array, and increase the pressure of the minimum physical disks of pressure; After data are write, the pressure of the minimum physical disks of pressure is reduced;So, either the write operation of main frame is also It is the reconstruct of physical disks failure triggering, all considers the pressure that physical disks are born, only in the physics that pressure is minimum Disk write data, it is to avoid physical disks penalty, can when physical disks reconstructs, balance reconstruct speed with Main frame accesses the speed of disk array.
Fig. 5 shows the writing method of another disk array that one embodiment of the invention is provided, the method Suitable for the controller of disk array.Referring to Fig. 5, the method comprises the steps.
Step S401, reception read request.
Wherein, the read request needs the mark of the logical block for reading in including disk array.Disk array includes many Individual physical disks, each physical disks are divided into multiple stripe cells, and each stripe cell includes at least one logic Block.
This step S401 is identical with step S201 in the embodiment shown in Fig. 4, will not be described here.
Step S402, data are read from the logical block that need to read, and each is patrolled in increasing the logical block that need to be read Collect the pressure of the physical disks belonging to block.
Wherein, pressure can include that read-write operation is counted and data volume number of concurrent.Read-write operation is counted and data Amount number of concurrent can be numeric form.
This step S402 is identical with step S202 in the embodiment shown in Fig. 4, will not be described here.
Step S403, after data are run through from the logical block that need to be read, reduce in the logical block that need to read each The pressure of the physical disks belonging to logical block.
Specifically, decrement is the incrementss in step S402.
Step S404, reception write request.
Wherein, write request includes the data that need to write disk array.
Specifically, the write request can be sent by main frame, it is also possible to which the physical disks in disk array occur event Hinder and after triggering reconstruct, sent by the reconstructed module of disk array.
Step S405, the physical disks for determining pressure minimum in the multiple physical disks of current time.
Wherein, at the beginning of in multiple physical disks, the initial pressure of each physical disks is preset pressure, each physical disks Beginning pressure can be with difference.
Alternatively, pressure includes that read-write operation is counted and data volume number of concurrent.
When realizing, can according to the disk bearing capacity parameter of disk array, calculate disk array in each Maximum read-write operation quantity and maximum amount of data number of concurrent that physical disks can be carried.Then maximum read-write is grasped Make quantity and maximum amount of data number of concurrent to count respectively as default read-write operation and data volume number of concurrent.Wherein, Associative disk bearing capacity parameter can be provided by disk array supplier.
Step S406, in the minimum physical disks of pressure write need to write the data of disk array, and increase pressure The pressure of the minimum physical disks of power.
Specifically, increase the pressure of the minimum physical disks of pressure, including the minimum physical disks of increase pressure Read-write operation is counted and data volume number of concurrent, and the incrementss that read-write operation is counted are 1, the increasing of data volume number of concurrent Addend is the logic number of blocks for being actually written into data.
This step S406 includes, it is determined that the multiple physical disks of current time in the minimum physical disks of pressure number When amount is more than 1, a physical disks are arbitrarily selected from the minimum physical disks of pressure, and in the physical disks for selecting Upper write need to write the data of disk array, and increase the pressure of the physical disks of selection.
Step S407, the pressure for after data are write, reducing the minimum physical disks of pressure.
Specifically, the decrement of the pressure of physical disks is the incrementss of the pressure of physical disks in step S207.
The embodiment of the present invention includes the data that need to write disk array, disk by receiving write request, write request Array includes multiple physical disks;Determine the minimum physical disks of pressure in the multiple physical disks of current time;In pressure Write in minimum physical disks need to write the data of disk array, and increase the pressure of the minimum physical disks of pressure; After data are write, the pressure of the minimum physical disks of pressure is reduced;So, either the write operation of main frame is also It is the reconstruct of physical disks failure triggering, all considers the pressure that physical disks are born, only in the physics that pressure is minimum Disk write data, it is to avoid physical disks penalty, can when physical disks reconstructs, balance reconstruct speed with Main frame accesses the speed of disk array.
Fig. 6 shows a kind of apparatus for controlling of disk array that one embodiment of the invention is provided, and the device can To be arranged in the controller of disk array, it is adaptable to the method that the embodiment shown in Fig. 2 or Fig. 3 is provided. Referring to Fig. 6, the device include the first receiver module 501, the first determining module 502, detection module 503, First writing module 504 and the first recovery module 505.
First receiver module 501 is used for, and receives write request, and the request includes the data that need to write disk array; Disk array includes multiple physical disks, and each physical disks is divided into multiple stripe cells, each stripe cell bag Include at least one logical block.
First determining module 502 is used for, and according to write request, determines band to be written;Each band includes phase With the stripe cell of quantity, the stripe cell quantity that each band is included is less than the physical disks that disk array includes Sum, the stripe cell that different bands are included are different, and in a band, different stripe cells are located at different things Reason disk.
Detection module 503 is used for, and detects belonging to each stripe cell of data to be written in band to be written Whether physical disks exceed preset pressure in the pressure of current time.
First writing module 504 is used for, when data to be written each stripe cell belonging to physical disks work as When the pressure of front time is not less than preset pressure, write data are taken in bar to be written, and increase to be written The pressure of the physical disks belonging to each stripe cell of data.
First recovery module 505 is used for, and after bar to be written takes and writes data, reduces data to be written The pressure of the physical disks belonging to each stripe cell.
The embodiment of the present invention includes the data that need to write disk array by receiving write request, the request;According to Write request, determines band to be written;Stripe cell of each band comprising equal number, each band are included The physical disks sum that includes less than disk array of stripe cell quantity, the stripe cell that different bands are included is not Together, in a band, different stripe cells are located at different physical disks;Detect number to be written in band to be written According to each stripe cell belonging to physical disks whether exceed preset pressure in the pressure of current time;When to be written Enter the physical disks belonging to each stripe cell of data when the pressure of current time is not less than preset pressure, Write data are taken in bar to be written, and increase the physical disks belonging to each stripe cells of data to be written Pressure;After bar to be written takes and writes data, the thing belonging to each stripe cell of data to be written is reduced The pressure of reason disk;So, the either reconstruct of the write operation of main frame or the triggering of physical disks failure, all considers The pressure that physical disks are born, only writes data when the pressure of physical disks is not less than preset pressure, it is to avoid thing Reason disk penalty, the speed and main frame that when physical disks are reconstructed, can balance reconstruct access disk array Speed.
Fig. 7 shows the apparatus for controlling of another disk array that one embodiment of the invention is provided, the device Can be arranged in the controller of disk array, it is adaptable to the method that the embodiment shown in Fig. 2 or Fig. 3 is provided. Referring to Fig. 7, the device include the first receiver module 601, the first determining module 602, detection module 603, First writing module 604 and the first recovery module 605.First receiver module 601 and the first recovery module 605 Identical with the first receiver module 501 in the device shown in Fig. 6 and the first recovery module 505, here is no longer gone to live in the household of one's in-laws on getting married State.The device that the present embodiment is provided is as follows with the difference of the device shown in Fig. 6.
Wherein, the first determining module 602 is additionally operable to, when data to be written each stripe cell belonging to thing In reason disk, at least one physical disks redefine bar to be written when the pressure of current time exceedes preset pressure Band, the band to be written for redefining are different from original band to be written for determining.
Wherein, pressure includes that read-write operation is counted and data volume number of concurrent.
Detection module 603 is specifically for detecting that the physical disks belonging to each stripe cell of data to be written exist The read-write operation of current time counts and whether exceedes default read-write operation and count, and detect data to be written Whether the physical disks belonging to each stripe cell exceed preset data in the concurrent counting number of data volume of current time Amount is concurrently counted.
First writing module 604 is specifically for increasing the physics belonging to each stripe cell of data to be written The read-write operation of disk is counted and data volume number of concurrent;Wherein, the increase that the read-write operation of each physical disks is counted Measure as 1, the incrementss of the data volume number of concurrent of each physical disks are to be actually written into data in corresponding stripe cell Logic number of blocks.
Wherein, the device also includes the first read module 606.
First read module 606 is used for, and receives read request, and the read request includes the mark of the logical block that need to be read Know;Data are read from the logical block that need to read, and increase in the logical block that need to be read belonging to each logical block The pressure of physical disks;After data being run through from the logical block that need to be read, reduce in the logical block that need to read each The pressure of the physical disks belonging to logical block.
The embodiment of the present invention includes the data that need to write disk array by receiving write request, the request;According to Write request, determines band to be written;Stripe cell of each band comprising equal number, each band are included The physical disks sum that includes less than disk array of stripe cell quantity, the stripe cell that different bands are included is not Together, in a band, different stripe cells are located at different physical disks;Detect number to be written in band to be written According to each stripe cell belonging to physical disks whether exceed preset pressure in the pressure of current time;When to be written Enter the physical disks belonging to each stripe cell of data when the pressure of current time is not less than preset pressure, Write data are taken in bar to be written, and increase the physical disks belonging to each stripe cells of data to be written Pressure;After bar to be written takes and writes data, the thing belonging to each stripe cell of data to be written is reduced The pressure of reason disk;So, the either reconstruct of the write operation of main frame or the triggering of physical disks failure, all considers The pressure that physical disks are born, only writes data when the pressure of physical disks is not less than preset pressure, it is to avoid thing Reason disk penalty, the speed and main frame that when physical disks are reconstructed, can balance reconstruct access disk array Speed.
Fig. 8 shows the apparatus for controlling of another disk array that one embodiment of the invention is provided, the device Can be arranged in the controller of disk array, it is adaptable to the method that the embodiment shown in Fig. 4 or Fig. 5 is provided. Referring to Fig. 8, the device includes the second receiver module 701, the second determining module 702, the second writing module 703 With the second recovery module 704.
Second receiver module 701 is used for, and receives write request, and write request includes the data that need to write disk array; Disk array includes multiple physical disks, and each physical disks is divided into multiple stripe cells, each stripe cell bag Include at least one logical block.
Second determining module 702 is used for, and determines the minimum physical disks of pressure in the multiple physical disks of current time.
Second writing module 703 is used for, and the write in the minimum physical disks of pressure need to write the number of disk array According to, and increase the pressure of the minimum physical disks of pressure.
Second recovery module 704 is used for, and after data are write, reduces the pressure of the minimum physical disks of pressure.
The embodiment of the present invention includes the data that need to write disk array, disk by receiving write request, write request Array includes multiple physical disks;Determine the minimum physical disks of pressure in the multiple physical disks of current time;In pressure Write in minimum physical disks need to write the data of disk array, and increase the pressure of the minimum physical disks of pressure; After data are write, the pressure of the minimum physical disks of pressure is reduced;So, either the write operation of main frame is also It is the reconstruct of physical disks failure triggering, all considers the pressure that physical disks are born, only in the physics that pressure is minimum Disk write data, it is to avoid physical disks penalty, can when physical disks reconstructs, balance reconstruct speed with Main frame accesses the speed of disk array.
Fig. 9 shows the apparatus for controlling of another disk array that one embodiment of the invention is provided, the device Can be arranged in the controller of disk array, it is adaptable to the method that the embodiment shown in Fig. 4 or Fig. 5 is provided. Referring to Fig. 9, the device includes the second receiver module 801, the second determining module 802, the second writing module 803 With the second recovery module 804.Second receiver module 801, the second determining module 802 and the second recovery module 804 With the second receiver module 701, the second determining module 702 and the second recovery module 704 in the device shown in Fig. 8 It is identical, will not be described here.The device that the present embodiment is provided is as follows with the difference of the device shown in Fig. 8.
Wherein, pressure includes that read-write operation is counted and data volume number of concurrent.
Second writing module 803 is used for, and the read-write operation for increasing the minimum physical disks of pressure is counted and data volume Concurrent counting number, wherein, the incrementss that read-write operation is counted are 1, and the incrementss of data volume number of concurrent are actual The logic number of blocks of write data.
Wherein, the device also includes the second read module 805.
Second read module 805 is used for, and receives read request, and the read request includes the mark of the logical block that need to be read Know;Data are read from the logical block that need to read, and increase in the logical block that need to be read belonging to each logical block The pressure of physical disks;After data being run through from the logical block that need to be read, reduce in the logical block that need to read each The pressure of the physical disks belonging to logical block.
The embodiment of the present invention includes the data that need to write disk array, disk by receiving write request, write request Array includes multiple physical disks;Determine the minimum physical disks of pressure in the multiple physical disks of current time;In pressure Write in minimum physical disks need to write the data of disk array, and increase the pressure of the minimum physical disks of pressure; After data are write, the pressure of the minimum physical disks of pressure is reduced;So, either the write operation of main frame is also It is the reconstruct of physical disks failure triggering, all considers the pressure that physical disks are born, only in the physics that pressure is minimum Disk write data, it is to avoid physical disks penalty, can when physical disks reconstructs, balance reconstruct speed with Main frame accesses the speed of disk array.
In a particular embodiment, the apparatus for controlling of the disk array shown in earlier figures 6- Fig. 9 can be A kind of computer or server, as shown in Figure 10.Which generally comprises at least one processor 12 (for example CPU), at least one network interface 15 or other communication interfaces, memory 16, and at least one communication Bus 13.It will be understood by those skilled in the art that the structure of the server illustrated in Fig. 8 is not constituted to clothes The restriction of business device, which can be included than illustrating more or less of part, or combine some parts, or Different part arrangements.
Each component parts of the device 10 is specifically introduced with reference to Fig. 8:
Communication bus 13 is used to realize the connection communication between processor 12, memory 16 and communication interface.
At least one network interface 15 (can be wired) realizes the device 10 and at least one other computer Communication connection between (such as main frame), it is possible to use internet, wide area network, LAN, Metropolitan Area Network (MAN) etc..
Memory 16 can be used to store software program and application module, and processor 12 is stored in by operation The software program and application module of memory 16, so as to the various function application and number of performs device 10 According to process.Memory 16 can mainly include storing program area and storage data field, wherein, storing program area can Application program needed for storage program area, at least one function (such as increasing physical disks pressure) etc.;Deposit Storage data field can store and use created data (such as physical disks pressure) etc. according to device 10.Additionally, Memory 16 can include high-speed RAM (Random Access Memory, random access memory), also Can include nonvolatile memory (non-volatile memory), for example, at least one disk memory, Flush memory device or other volatile solid-state parts.
Processor 12 is the control centre of device 10, using each of various interfaces and connection whole device Individual part, by running or performing the software program and/or application module being stored in memory 16, and adjusts With the data being stored in memory 16, the various functions and processing data of performs device 10, so as to dress Putting carries out integral monitoring.
Specifically, by running or performing the software program and/or application module being stored in memory 16, with And the data being stored in memory 16 are called, processor 12 is it is achieved that receive write request, the request Including the data that need to write disk array;Disk array includes multiple physical disks, and each physical disks is divided into many Individual stripe cell, each stripe cell include at least one logical block;According to write request, bar to be written is determined Band;Stripe cell of each band comprising equal number, the stripe cell quantity that each band is included are less than magnetic The physical disks sum that disk array includes, the stripe cell that different bands are included are different, different bars in a band Tape cell is located at different physical disks;Detect belonging to each stripe cell of data to be written in band to be written Physical disks whether exceed preset pressure in the pressure of current time;When each stripe cell of data to be written Affiliated physical disks take write number in bar to be written when the pressure of current time is not less than preset pressure According to, and increase the pressure of physical disks belonging to each stripe cells of data to be written;Take in bar to be written After writing data, the pressure of the physical disks belonging to each stripe cell of data to be written is reduced.Or, place Reason device 12 is it is achieved that receive write request, write request includes the data that need to write disk array;Disk array Including multiple physical disks, each physical disks is divided into multiple stripe cells, and each stripe cell includes at least one Individual logical block;Determine the minimum physical disks of pressure in the multiple physical disks of current time;In the physics that pressure is minimum Write on disk need to write the data of disk array, and increase the pressure of the minimum physical disks of pressure;When writing number According to rear, the pressure of the minimum physical disks of pressure is reduced.
It should be noted that:The apparatus for controlling of the disk array that above-described embodiment is provided is in control disk array Write operation when, be only illustrated with the division of above-mentioned each functional module, in practical application, can be with root Above-mentioned functions distribution is completed by different functional modules according to needs, will the internal structure of equipment be divided into Different functional module, to complete all or part of function described above.In addition, above-described embodiment is carried For the apparatus for controlling of disk array and the writing method embodiment of disk array belong to same design, its The process of implementing refers to embodiment of the method, repeats no more here.
One of ordinary skill in the art will appreciate that realizing that all or part of step of above-described embodiment can pass through Hardware is completing, it is also possible to instruct the hardware of correlation to complete by program, described program can be stored in In a kind of computer-readable recording medium, storage medium mentioned above can be read-only storage, disk or CD etc..
Presently preferred embodiments of the present invention is the foregoing is only, it is not to limit the present invention, all the present invention's Within spirit and principle, any modification, equivalent substitution and improvements made etc. should be included in the present invention's Within protection domain.

Claims (14)

1. a kind of writing method of disk array, it is characterised in that methods described includes:
Write request is received, the request includes the data that need to write disk array;The disk array includes many Individual physical disks, each described physical disks are divided into multiple stripe cells, and each described stripe cell is included at least One logical block, all of stripe cell are divided into multiple bands, and each described band is comprising identical The stripe cell of quantity, the stripe cell quantity that each described band is included include less than the disk array Physical disks sum, the stripe cell that the different bands are included are different, different band lists in a band Unit is located at different physical disks;
According to the write request, band to be written is determined;
Detect the physical disks belonging to each stripe cell of data to be written in the band to be written when current Between pressure whether exceed preset pressure;
When the data to be written each stripe cell belonging to physical disks do not surpass in the pressure of current time When crossing the preset pressure, write data are taken in the bar to be written, and increase the data to be written The pressure of the physical disks belonging to each stripe cell;
After the bar to be written takes and writes data, each stripe cell institute of the data to be written is reduced The pressure of the physical disks of category.
2. method according to claim 1, it is characterised in that methods described also includes:
When the data to be written each stripe cell belonging to physical disks at least one physical disks current When the pressure of time exceedes the preset pressure, band to be written is redefined, the bar to be written for redefining Band is different from original band to be written for determining.
3. method according to claim 1, it is characterised in that the pressure includes that read-write operation is counted With data volume number of concurrent;
Detect the physical disks belonging to each stripe cell of data to be written in the band to be written when current Between pressure whether exceed preset pressure, including:
Detect read-write operation of the physical disks belonging to each stripe cell of the data to be written in current time Count and whether exceed default read-write operation and count, and detect each stripe cell institutes of the data to be written Whether the physical disks of category are concurrently counted more than preset data amount in the concurrent counting number of data volume of current time;
Increase the pressure of the physical disks belonging to each stripe cell of the data to be written, including:
The read-write operation for increasing the physical disks belonging to each stripe cell of the data to be written is counted and data Amount number of concurrent;Wherein, the incrementss that the read-write operation of each physical disks is counted are 1, the data of each physical disks The incrementss of amount number of concurrent are the logic number of blocks that data are actually written in corresponding stripe cell.
4. according to the method in any one of claims 1 to 3, it is characterised in that methods described is also wrapped Include:
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
5. a kind of writing method of disk array, it is characterised in that methods described includes:
Write request is received, the write request includes the data that need to write disk array;The disk array includes Multiple physical disks, each described physical disks are divided into multiple stripe cells, each described stripe cell include to A few logical block;
Determine the minimum physical disks of pressure in the plurality of physical disks of current time;
The data that need to write disk array are write in the minimum physical disks of the pressure, and increases described The pressure of the minimum physical disks of pressure;
After data are write, the pressure of the minimum physical disks of the pressure is reduced.
6. method according to claim 5, it is characterised in that the pressure includes that read-write operation is counted With data volume number of concurrent;
Increase the pressure of the minimum physical disks of the pressure, including:
The read-write operation for increasing the minimum physical disks of the pressure is counted and the concurrent counting number of data volume, wherein, The incrementss that the read-write operation is counted are 1, and the incrementss of the data volume number of concurrent are to be actually written into data Logic number of blocks.
7. the method according to claim 5 or 6, it is characterised in that methods described also includes:
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
8. a kind of apparatus for controlling of disk array, it is characterised in that described device includes:
First receiver module, for receiving write request, the request includes the data that need to write disk array; The disk array includes multiple physical disks, and each described physical disks is divided into multiple stripe cells, each institute Stating stripe cell includes at least one logical block, and all of stripe cell is divided into multiple bands, often Stripe cell of the individual band comprising equal number, the stripe cell quantity that each described band is included are less than The physical disks sum that the disk array includes, the stripe cell that the different bands are included are different, an institute In stating band, different stripe cells are located at different physical disks;
First determining module, for according to the write request, determining band to be written;
Detection module, for detecting in the band to be written belonging to each stripe cell of data to be written Whether physical disks exceed preset pressure in the pressure of current time;
First writing module, is working as the physical disks belonging to each stripe cell when the data to be written When the pressure of front time is not less than the preset pressure, write data are taken in the bar to be written, and increased Plus the pressure of the physical disks belonging to each stripe cell of the data to be written;
First recovery module, for, after the bar to be written takes and writes data, reducing the number to be written According to each stripe cell belonging to physical disks pressure.
9. device according to claim 8, it is characterised in that first determining module is additionally operable to,
When the data to be written each stripe cell belonging to physical disks at least one physical disks current When the pressure of time exceedes the preset pressure, band to be written is redefined, the bar to be written for redefining Band is different from original band to be written for determining.
10. device according to claim 8, it is characterised in that the pressure includes read-write operation meter Number and data volume number of concurrent;
Detection module is used for, and detects the physical disks belonging to each stripe cell of the data to be written current The read-write operation of time counts and whether exceedes default read-write operation and count, and detect the data to be written Whether the physical disks belonging to each stripe cell exceed preset data in the concurrent counting number of data volume of current time Amount is concurrently counted;
First writing module is used for, the physical disks belonging to each stripe cell of the increase data to be written Read-write operation is counted and data volume number of concurrent;Wherein, the incrementss that the read-write operation of each physical disks is counted are 1, The incrementss of the data volume number of concurrent of each physical disks are the logic that data are actually written in corresponding stripe cell Number of blocks.
11. devices according to any one of claim 8 to 10, it is characterised in that described device is also Including the first read module, first read module is used for,
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
12. a kind of apparatus for controlling of disk array, it is characterised in that described device includes:
Second receiver module, for receiving write request, the write request includes the data that need to write disk array; The disk array includes multiple physical disks, and each described physical disks is divided into multiple stripe cells, each institute Stating stripe cell includes at least one logical block;
Second determining module, for determining the minimum physical disks of pressure in the plurality of physical disks of current time;
Second writing module, described need to write disk array for writing in the minimum physical disks of the pressure Data, and increase the pressure of the minimum physical disks of the pressure;
Second recovery module, for, after data are write, reducing the pressure of the minimum physical disks of the pressure.
13. devices according to claim 12, it is characterised in that the pressure includes read-write operation meter Number and data volume number of concurrent;
Second writing module is used for, and the read-write operation for increasing the minimum physical disks of the pressure counts sum According to the concurrent counting number of amount, wherein, the incrementss that the read-write operation is counted are 1, the data volume number of concurrent Incrementss are the logic number of blocks for being actually written into data.
14. devices according to claim 12 or 13, it is characterised in that described device also includes the Two read modules, second read module are used for,
Read request is received, the read request includes the mark of the logical block that need to be read;
Data are read from the logical block that need to be read, and increases each logic in the logical block that need to be read The pressure of the physical disks belonging to block;
After data are run through from the logical block that need to be read, in reducing the logical block that need to be read, each is patrolled Collect the pressure of the physical disks belonging to block.
CN201510602903.1A 2015-09-21 2015-09-21 A kind of writing method and device of disk array Active CN106547473B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510602903.1A CN106547473B (en) 2015-09-21 2015-09-21 A kind of writing method and device of disk array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510602903.1A CN106547473B (en) 2015-09-21 2015-09-21 A kind of writing method and device of disk array

Publications (2)

Publication Number Publication Date
CN106547473A true CN106547473A (en) 2017-03-29
CN106547473B CN106547473B (en) 2019-08-13

Family

ID=58364421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510602903.1A Active CN106547473B (en) 2015-09-21 2015-09-21 A kind of writing method and device of disk array

Country Status (1)

Country Link
CN (1) CN106547473B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673795A (en) * 2019-09-19 2020-01-10 深圳市网心科技有限公司 Data writing method and device, computer device and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719050A (en) * 2009-11-25 2010-06-02 成都市华为赛门铁克科技有限公司 Data storage method and equipment
US20130117603A1 (en) * 2011-11-04 2013-05-09 Lsi Corporation Method for completing write operations to a raid drive pool with an abnormally slow drive in a timely fashion
CN103488435A (en) * 2013-09-24 2014-01-01 华为技术有限公司 RAID (redundant arrays of independent disks) subsystem and data read-write method thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719050A (en) * 2009-11-25 2010-06-02 成都市华为赛门铁克科技有限公司 Data storage method and equipment
US20130117603A1 (en) * 2011-11-04 2013-05-09 Lsi Corporation Method for completing write operations to a raid drive pool with an abnormally slow drive in a timely fashion
CN103488435A (en) * 2013-09-24 2014-01-01 华为技术有限公司 RAID (redundant arrays of independent disks) subsystem and data read-write method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110673795A (en) * 2019-09-19 2020-01-10 深圳市网心科技有限公司 Data writing method and device, computer device and storage medium

Also Published As

Publication number Publication date
CN106547473B (en) 2019-08-13

Similar Documents

Publication Publication Date Title
CN103959258B (en) Background reorders --- the preventative wear control mechanism with limited expense
KR102152238B1 (en) Memory segment remapping to address fragmentation
TWI446353B (en) Error correction in a stacked memory
US9489148B2 (en) Selecting between non-volatile memory units having different minimum addressable data unit sizes
CN109358809B (en) RAID data storage system and method
CN104583930B (en) Method, controller and the data migration device of Data Migration
JP6060277B2 (en) Disk array flash method and disk array flash apparatus
CN104375954B (en) The method and computer system for based on workload implementing that the dynamic of cache is enabled and disabled
JP2013539133A5 (en)
WO2018089097A1 (en) Method and system for write amplification analysis
CN108710583A (en) Management method, device, computer equipment and the medium in SSD write buffers area
CN106909318A (en) Solid state hard disc application method and device
CN103914363B (en) A kind of internal memory monitoring method and relevant apparatus
CN112463036B (en) Method, system, terminal and storage medium for calculating block stripes by disk
CN105701029B (en) A kind of isomery storage optimization method and device
CN109923514A (en) Storage operation to data
CN115437578B (en) Data migration method, device, equipment and medium of disk array
CN110413454A (en) Data re-establishing method, device and storage medium based on storage array
CN103176858A (en) Storage device with multiple solid-state discs
CN103150261A (en) Method and device for simultaneously accessing multiple solid-state disks
CN107807788A (en) The data organization method and device of more planar flash memories
CN116719484A (en) Method, device, equipment and medium for processing write data of disk array
CN115639961A (en) Data writing method, storage system and server
CN108920094A (en) Wipe unit R AID method, apparatus, computer equipment and storage medium
CN111338579A (en) Read-write cache optimization method, system, terminal and storage medium based on storage pool

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
TR01 Transfer of patent right

Effective date of registration: 20220908

Address after: No.1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan, 611730

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.

TR01 Transfer of patent right