CN102479060A - Operating method for double controllers of storage system - Google Patents
Operating method for double controllers of storage system Download PDFInfo
- Publication number
- CN102479060A CN102479060A CN2010105825356A CN201010582535A CN102479060A CN 102479060 A CN102479060 A CN 102479060A CN 2010105825356 A CN2010105825356 A CN 2010105825356A CN 201010582535 A CN201010582535 A CN 201010582535A CN 102479060 A CN102479060 A CN 102479060A
- Authority
- CN
- China
- Prior art keywords
- controller
- storage element
- writing unit
- unit table
- stocking system
- 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.)
- Pending
Links
Images
Abstract
The invention discloses an operating method for double controllers of a storage system. The operating method is suitable for the storage system with a first controller and a second controller. The operating method for the double controllers of the storage system comprises the following steps of: dividing a storage device of the storage system into a plurality of storage units; receiving a writing request sent to the first controller, wherein the writing request comprises writing data; when the first controller is provided with a writable unit list, judging if an unused storage unit of the first controller exists according to the writable unit list; if yes, taking the unused storage unit of the first controller as a writing unit and writing the writing data into the writing unit; and updating the writable unit list according to the writing unit.
Description
Technical field
The present invention is about the How It Works of the load of particularly a kind of dual controller that can the balance stocking system of a kind of How It Works of dual controller of stocking system.
Background technology
In order to serve a plurality of clients (client), (Storage Area Network SAN) waits stocking system often to adopt dual controller for example to store LAN.And the traditional storage system integrates all storage device to be created as a disk array (redundant array of inexpensive drives RAID), and starts RAID with fixed controller in the dual controller.That is to say,, all need through fixed controller could accessing storing device thus no matter be that which controller receives read-write requests.Because all read-write requests all need be through this fixed controller so under the very big situation of the external pressure of whole stocking system, this fixed controller also must be born most access pressure.That is to say that the load of dual controller is also uneven.
In order to improve this phenomenon, follow-up stocking system is distributed to dual controller respectively with storage device, and utilizes storage device separately to set up two groups of RAID.For example be responsible for RAIDO, be responsible for RAID1 by controller 1 by controller 0.No matter and be to come from which client, so long as the read-write requests of RAIDO all is responsible for by controller 0; Otherwise desire then all need be passed through controller 1 to the RAID1 access.But still there is huge forwarding demand in this method, and must expend time and frequency range required when request transmitted.
Receive when controller 1 for instance and need this be write and require to be transmitted to controller 0 when writing of RAIDO required; And after writing completion, controller 0 needs could repay the result who writes through controller 1.Far and away, the load in the mechanism of this forwarding stocking system when running of strengthening especially.And if client is when only having a large amount of access requirement to one of them RAID, still can cause only has the too anti-road of single controller, and the problem of dual controller laod unbalance.
Summary of the invention
In order to address the above problem, thereby a kind of How It Works of dual controller of stocking system is provided, it is applicable to the stocking system with one first controller and one second controller.The dual controller How It Works of stocking system comprises: at least one storage device of stocking system is divided into a plurality of storage elements; Receive and write request for one of first controller, the request of wherein writing comprises that one writes data; When but first controller has a writing unit table (writable unit map), but judge whether to exist the storage element that does not use and belong to first controller according to the writing unit table; Do not use and when belonging to the storage element of first controller when existing, the storage element that does not use and belong to first controller as a writing unit, and will be write data and write writing unit; And according to writing unit, but upgrade the writing unit table.
Implement example according to one, storage device be disk array (redundant array of inexpensive drives, RAID), logical volume management (logical volume management, LVM) or hard disk (disk).
The How It Works of the dual controller of stocking system comprises in addition: but when first controller does not have the writing unit table; Carry out following steps: make a storage element dynamic assignment module of first controller and the storage element dynamic assignment module negotiates of second controller, but and produce the writing unit table of first controller according to this; And but foundation writing unit table judges whether to exist the storage element that does not use and belong to first controller.The storage element dynamic assignment module of the storage element dynamic assignment module of first controller and second controller wherein, but but produce the writing unit table of first controller according to the writing unit table of all storage elements and second controller.
The dual controller How It Works of stocking system also comprises: do not use and when belonging to the storage element of first controller when not existing; Carry out following steps: send the storage element dynamic assignment module that first controller is given in a storage element application request; Make the storage element dynamic assignment module of the controller of winning and the storage element dynamic assignment module negotiates of second controller, and distribute at least one untapped storage element to give first controller according to this; Foundation is distributed the storage element that does not use and belong to first controller that obtains, but upgrades the writing unit table; The storage element that does not use and belong to first controller that distribution is obtained is as writing unit, and will write data and write writing unit; And according to writing unit, but upgrade the writing unit table.
The storage element dynamic assignment module of the storage element dynamic assignment module of first controller and second controller wherein, but distribute at least one untapped storage element to give first controller according to the writing unit table of all the untapped storage elements and second controller.
And in order to read the data in the storage device, the dual controller How It Works of stocking system comprises in addition: receive and read request for one of first controller; And, read request with response by reading a reading of data with reading at least one corresponding storage element of request.
In addition, the dual controller How It Works of stocking system also comprises: receive a turn-off request of giving first controller; But the storage element dynamic assignment module that makes first controller sends the writing unit table of first controller to the storage element dynamic assignment module of second controller; But but the storage element dynamic assignment module that makes second controller is incorporated into the writing unit table of first controller in the writing unit table of second controller; And close first controller.
In sum, first controller and second controller be its storage element of being responsible for of access respectively, thus well balance for the visit pressure of each storage device.And, can dynamically adjust access right neatly, and avoid that the excessive situation of single controller is only arranged traditionally for storage element by dual controller dynamic assignment storage element separately.
Description of drawings
Fig. 1 is the synoptic diagram of the stocking system of an enforcement example;
Fig. 2 is the synoptic diagram of the dual controller of an enforcement example;
Fig. 3 one implements the process flow diagram of dual controller How It Works of the stocking system of example.
Wherein, Reference numeral:
10 clients
12 servers
20 first controllers
22 storage element dynamic assignment modules
But 24 writing unit tables
30 second controllers
32 storage element dynamic assignment modules
But 34 writing unit tables
40 stocking systems
42, the 42a storage device
44,44a, 44b, 44c, 44d storage element
Embodiment
Below in embodiment, be described in detail detailed features of the present invention and advantage; Its content is enough to make any those skilled in the art to understand technology contents of the present invention and implements according to this; And according to the disclosed content of this instructions, claim and accompanying drawing, any those skilled in the art can understand purpose and the advantage that the present invention is correlated with easily.
A kind of How It Works of dual controller of stocking system is applicable to the stocking system with dual controller and at least one storage device, and wherein dual controller is one first controller and one second controller.Stocking system can be in fact as one store LAN (Storage Area Network, SAN), though following be example with SAN, not as limit.
Please with reference to Fig. 1 and Fig. 2, it is respectively one and implements the stocking system of example and the synoptic diagram of dual controller.
At least one client (client) 10 can be passed through internet Wide Area Networks such as (Internet, the Internets), and (Wide Area Network WAN) is connected at least one server 12 of stocking system (is example with SAN at this) 40.Stocking system 40 has first controller 20, second controller 30 and storage device 42.Wherein first controller 20 and second controller 30 have a storage element dynamic assignment module 22 and 32 respectively.Client 10 is through the Internet and stocking system 40 enough accessing storing devices 42, and the storage device 42 that is connected to server 12 can be regarded as direct connection by client 10.For instance, as far as client 10, storage device 42 similarly is the hard disk that server 12 itself is had.And in fact, server 12 is through first controller 20 and second controller 30 and an internal network accessing storing device 42.
Wherein stocking system 40 can be a kind of framework with internal network Connection Service device 12 and storage device 42, makes that server 12 can be at high speed with data block (block) level access storage device 42.Server 12 can for example be the file server of e-mail server, database, high usage.And storage device 42 can be single storage facilities, the set that also a plurality of storage facilitiess is coupled together.For example storage device 42 can be disk array (redundant array of inexpensive drives, RAID), logical volume management (logical volume management, LVM) or hard disk (di sk).Between a plurality of storage devices 42 then available fiber channel modes such as (fiber channel) link together.
In the stocking system 40, server 12 is connected to storage device 42 through internal network; Wherein internal network needs to support the storage communications protocol that stocking system (SAN) 40 is adopted.Fibre channel protocol (Fibre Channel Protocol for example; FCP) or internet small computer system interface (Internet Small Computer System Interface; ISCSI is called IP-SAN again) be the communications protocol that common stocking system 40 is suitable for.
What first controller 20 and second controller 30 can receive that client 10 sends one writes an instruction or a reading command, and accessing storing device 42 according to this.First controller 20 and second controller 30 can be configured to serve different client side 10; And write instruction or reading command according to what different clients 10 was sent, first controller 20 and second controller 30 be accessing storing device 42 simultaneously.
Please cooperate above-mentioned framework, simultaneously with reference to Fig. 3; Fig. 3 one implements the process flow diagram of dual controller How It Works of the stocking system of example.
The dual controller How It Works of stocking system at first is divided into a plurality of storage elements 44 (step S110) with the storage device 42 of stocking system 40.
When but first controller 20 has writing unit table 24, but judge whether to exist the storage element 44 (step S140) that does not use and belong to first controller 20 according to writing unit table 24.
And when but first controller 20 does not still have writing unit table 24; The storage element dynamic assignment module 22 that can shilling first controller 20 and storage element dynamic assignment module 32 negotiations of second controller 30; But and produce the writing unit table 24 (step S210) of first controller 20, execution in step S140 more according to this.
The storage element dynamic assignment module 32 of the storage element dynamic assignment module 22 of first controller 20 and second controller 30 wherein, but but can produce the writing unit table 24 of first controller 20 according to the writing unit table 34 of all storage elements 44 and second controller 30.That is to say; The storage element dynamic assignment module 22 of first controller 20 can consult and obtain not to be assigned to as yet at least one storage element 44 of second controller 30, but and the storage element that obtains 44 is recorded as the content of the writing unit table 24 of new generation.
And between a plurality of storage devices 42 of balance and the storage element 44 by the situation of access, the storage element 44 that belongs to first controller 20 is staggered with the storage element 44 that belongs to second controller 30.
For example the storage device 42a among Fig. 2 is split into storage element 44a, 44b, 44c and 44d in step S110, and these storage elements 44 can be distributed to first controller 20 and second controller 30 with staggered mode.Therefore in the enforcement example of Fig. 2, storage element 44a and 44c are assigned to first controller 20, and storage element 44b and 44d are assigned to second controller 30.But if same controller also can be distributed to continuous storage element 44 in an independent space that data need surpass a storage element 44 that writes that writes requirement; For example can storage element 44a and 44b be distributed to first controller 20.
Thus, but just can be in step S 140 judge whether to exist the storage element 44 that does not use and belong to first controller 20 according to writing unit table 24.
Do not use and when belonging to the storage element 44 of first controller 20 when existing, the storage element 44 that does not use and belong to first controller 20 as a writing unit, and will be write data and write writing unit (step S150).But for example when learning that according to writing unit table 24 storage element 44a and 44c belong to first controller 20, but storage element 44a has been written into the data mistake, then with storage element 44c as writing unit.Again according to writing unit, but upgrade the writing unit table 24 (step S160) of first controller 20.But the bit map of for example renewable writing unit table 24 used so that storage element 44c is recorded as.
Relatively, do not use and when belonging to the storage element 44 of first controller 20, can carry out following steps S310 earlier to step S330, again execution in step S160 when not existing.
Can send the storage element dynamic assignment module 22 that first controller 20 is given in a storage element application request earlier; The storage element dynamic assignment module 22 of the controller 20 of winning and the storage element dynamic assignment module 32 of second controller 30 are consulted, and distribute at least one untapped storage element 44 to give first controller 20 (step S310) according to this.The storage element 44 that does not use and belong to first controller 20 that then also obtains according to distribution, but writing unit table 24 (step S320) upgraded.
The storage element dynamic assignment module 32 of the storage element dynamic assignment module 22 of first controller 20 and second controller 30 wherein, but distribute at least one untapped storage element 44 to give first controller 20 according to the writing unit table 34 of all the untapped storage elements 44 and second controller 30.And the method for consulting to distribute can be similar with step S210.
Obtain after the untapped storage element 44, the storage element 44 that does not use and belong to first controller 20 that this distribution is obtained is as writing unit, and will write data and write writing unit (step S330); Again according to writing unit, but upgrade writing unit table 24 (step S160).
In brief, after first controller 20 of the dual controller How It Works of stocking system receives and writes request, but can find out the writing unit that does not use and belong to first controller 20, will write data again and write writing unit according to its writing unit table 24.
In addition, the dual controller How It Works of stocking system also can be handled the pent situation of one of dual controller.Stocking system 40 receives to be given after the turn-off request of first controller 20, but can make the storage element dynamic assignment module 22 of first controller 20 the writing unit table 24 of first controller 20 sent to the storage element dynamic assignment module 32 of second controller 30; But but the storage element dynamic assignment module 32 that makes second controller 30 again is incorporated into the writing unit table 24 of first controller 20 in the writing unit table 34 of second controller 30; And close first controller 20.Therefore after first controller 20 cuts out, but second controller 30 can be taken over all storage elements 44 smoothly according to writing unit table 24 and 34.
In sum, first controller and second controller can be distinguished its storage element of being responsible for of access, thus can not cause a controller need be responsible for the problem of all accesses, and well balance for the visit pressure of each storage device.In addition, by dual controller dynamic assignment storage element separately, can dynamically adjust access right neatly for storage element.For example when first controller is too busy, but can rewrite r/w cell table separately, and the part storage element that first controller is responsible for is dynamically shared to second controller through the dynamic assignment bill of store of dual controller.Thus, can avoid that just the excessive situation of single controller is only arranged traditionally.
Claims (8)
1. the How It Works of the dual controller of a stocking system is applicable to the stocking system with one first controller and one second controller, it is characterized in that the dual controller How It Works of this stocking system comprises:
At least one storage device of this stocking system is divided into a plurality of storage elements;
Reception writes request for one of this first controller, and wherein this writes and asks to comprise that one writes data;
When but this first controller has a writing unit table, but according to judging whether to exist this storage element that does not use and belong to this first controller by the writing unit table;
Do not use and when belonging to this storage element of this first controller when existing, with this do not use and the storage element that belongs to this first controller as a writing unit, and this write data write this writing unit; And
According to this writing unit, should the writing unit table but upgrade.
2. the dual controller How It Works of stocking system as claimed in claim 1 is characterized in that, also comprises:
When but this first controller does not have this writing unit table, carry out following steps:
Make a storage element dynamic assignment module of this first controller and this storage element dynamic assignment module negotiates of this second controller, but and produce this first controller according to this should writing unit table; And
But according to the storage element that should writing unit table judges whether to exist this not use and belong to this first controller.
3. the dual controller How It Works of stocking system as claimed in claim 2; It is characterized in that; This storage element dynamic assignment module of this storage element dynamic assignment module of this first controller and this second controller, but but according to those all storage elements and this second controller should writing unit table produce this first controller should writing unit table.
4. the dual controller How It Works of stocking system as claimed in claim 1 is characterized in that, also comprises:
When not existing this not use and to belong to the storage element of this first controller, carry out following steps:
A storage element dynamic assignment module of this first controller is given in the storage element application request of sending; Make this storage element dynamic assignment module of this first controller and this storage element dynamic assignment module negotiates of this second controller, and distribute at least one this untapped storage element to give this first controller according to this;
According to distributing this that obtain not use and belong to the storage element of this first controller, should writing unit table but upgrade;
This that distribution is obtained do not use and the storage element that belongs to this first controller as this writing unit, and this write data write this writing unit; And
According to this writing unit, should the writing unit table but upgrade.
5. the dual controller How It Works of stocking system as claimed in claim 4; It is characterized in that; This storage element dynamic assignment module of this storage element dynamic assignment module of this first controller and this second controller, but distribute at least one this untapped storage element give this first controller according to the writing unit table that is somebody's turn to do of all untapped those storage elements and this second controller.
6. the dual controller How It Works of stocking system as claimed in claim 1 is characterized in that, also comprises:
Reception reads request for one of this first controller; And
Read a reading of data by reading corresponding at least one this storage element of request, read request to respond this with this.
7. the dual controller How It Works of stocking system as claimed in claim 1 is characterized in that, also comprises:
A turn-off request of this first controller is given in reception;
But this storage element dynamic assignment module that the writing unit table sends this second controller to of being somebody's turn to do with this first controller;
But but with this first controller should writing unit table be incorporated into this second controller should writing unit table; And
Close this first controller.
8. the dual controller How It Works of stocking system as claimed in claim 1 is characterized in that, this storage device is disk array, logical volume management or hard disk.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105825356A CN102479060A (en) | 2010-11-30 | 2010-11-30 | Operating method for double controllers of storage system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105825356A CN102479060A (en) | 2010-11-30 | 2010-11-30 | Operating method for double controllers of storage system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102479060A true CN102479060A (en) | 2012-05-30 |
Family
ID=46091718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105825356A Pending CN102479060A (en) | 2010-11-30 | 2010-11-30 | Operating method for double controllers of storage system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102479060A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018086075A1 (en) * | 2016-11-11 | 2018-05-17 | 华为技术有限公司 | Storage system and system garbage collection method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050193128A1 (en) * | 2004-02-26 | 2005-09-01 | Dawson Colin S. | Apparatus, system, and method for data access management |
CN101639811A (en) * | 2009-08-21 | 2010-02-03 | 成都市华为赛门铁克科技有限公司 | Data writing method, controller and multi-controller system |
-
2010
- 2010-11-30 CN CN2010105825356A patent/CN102479060A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050193128A1 (en) * | 2004-02-26 | 2005-09-01 | Dawson Colin S. | Apparatus, system, and method for data access management |
CN101639811A (en) * | 2009-08-21 | 2010-02-03 | 成都市华为赛门铁克科技有限公司 | Data writing method, controller and multi-controller system |
Non-Patent Citations (1)
Title |
---|
刘杰: "基于SAN的网络存储系统研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018086075A1 (en) * | 2016-11-11 | 2018-05-17 | 华为技术有限公司 | Storage system and system garbage collection method |
US10621085B2 (en) | 2016-11-11 | 2020-04-14 | Huawei Technologies Co., Ltd. | Storage system and system garbage collection method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8281033B1 (en) | Techniques for path selection | |
US8838892B2 (en) | Data storage method and storage device | |
US8555279B2 (en) | Resource allocation for controller boards management functionalities in a storage management system with a plurality of controller boards, each controller board includes plurality of virtual machines with fixed local shared memory, fixed remote shared memory, and dynamic memory regions | |
CN102063274B (en) | Storage array, storage system and data access method | |
US9794342B2 (en) | Storage system and control method for storage system | |
EP2557494B1 (en) | Storage apparatus and data copy method between thin-provisioning virtual volumes | |
US7716419B2 (en) | Storage system and load balancing method thereof | |
JP2012523624A (en) | Method and apparatus for storing data in a flash memory data storage device | |
CN103617136B (en) | SCSI drive side and I/O request control method | |
EP2422272B1 (en) | Active-active support of virtual storage management in a storage area network ("san") | |
US10721304B2 (en) | Storage system using cloud storage as a rank | |
US20060259650A1 (en) | Method of transmitting data between storage virtualization controllers and storage virtualization controller designed to implement the method | |
US7441009B2 (en) | Computer system and storage virtualizer | |
US9069471B2 (en) | Passing hint of page allocation of thin provisioning with multiple virtual volumes fit to parallel data access | |
US9348513B2 (en) | SAS virtual tape drive | |
US20130346657A1 (en) | File system on i/o daughter card | |
CN102479060A (en) | Operating method for double controllers of storage system | |
US20100100676A1 (en) | Systems And Methods Of Presenting Virtual Tape Products To A Client | |
US11687443B2 (en) | Tiered persistent memory allocation | |
US9015410B2 (en) | Storage control apparatus unit and storage system comprising multiple storage control apparatus units | |
CN102123171A (en) | Storage virtualization method for mass storage management | |
US8312185B2 (en) | Storage apparatus and method of updating control information in storage apparatus | |
KR101440605B1 (en) | User device having file system gateway unit and method for accessing to stored data | |
US10318426B1 (en) | Cloud capable storage platform with computation operating environment for storage and generic applications | |
US9164681B1 (en) | Method and apparatus for dynamic path-selection for improving I/O performance in virtual provisioned storage arrays with data striping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120530 |