CN102479060A - Operating method for double controllers of storage system - Google Patents

Operating method for double controllers of storage system Download PDF

Info

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
Application number
CN2010105825356A
Other languages
Chinese (zh)
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.)
Inventec Corp
Original Assignee
Inventec Corp
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 Inventec Corp filed Critical Inventec Corp
Priority to CN2010105825356A priority Critical patent/CN102479060A/en
Publication of CN102479060A publication Critical patent/CN102479060A/en
Pending legal-status Critical Current

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

The How It Works of the dual controller of stocking system
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.
First controller 20, second controller 30 and storage device 42 can be configured among the same calculator system.For example storage device 42 can be the hard disk of this calculator system, and first controller 20 and second controller 30 are distinguished the double-core processor of calculator system for this reason.Yet the present invention is not limited to this.Implement example according to one, first controller 20, second controller 30 and storage device 42 also can be disposed at respectively among the different main frame (host refers to this calculator system).
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.
Stocking system 40 is cut apart after the storage device 42, receives the request that writes of giving first controller 20, and the request of wherein writing comprises that one writes data (step S120).In other words, 20 receptions of first controller are from the request that writes of client 10.Then stocking system 40 judges but whether first controller 20 has a writing unit table (writable unit map) 24 (step S130).In more detail, but first controller 20 and second controller 30 can initialization produce its writing unit table 24 and 34 separately when being activated, but can also receive to write in the first time respectively and just set up writing unit table 24 or 34 when asking.But writing unit table 24 and 34 can be the mode with bit map (bitmap), is recorded in the storage element 44 of distributing to first controller 20 and second controller 30, and which storage element 44 has been written into data.
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.
Stocking system 40 also can receive the request of reading to first controller 20.Because the action of reading can't change the data among the storage device 42, therefore can read request with response directly by reading a reading of data with reading at least one corresponding storage element 44 of request.
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.
CN2010105825356A 2010-11-30 2010-11-30 Operating method for double controllers of storage system Pending CN102479060A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (2)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
刘杰: "基于SAN的网络存储系统研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
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