Efficient use of NVRAM during takeover in a node cluster
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/167
G06F-013/00
G06F-013/28
G06F-012/00
출원번호
UP-0011844
(2001-12-04)
등록번호
US-7730153
(2010-06-22)
발명자
/ 주소
Gole, Abhijeet
Bali, Naveen
출원인 / 주소
NetApp, Inc.
대리인 / 주소
Cesari and McKenna LLP
인용정보
피인용 횟수 :
20인용 특허 :
54
초록
A server storage system operating in a cluster mode, and a method for operating the server system that provides additional memory for use by a non-failed server to store log records while taking over the operations of a failed server.
대표청구항▼
What is claimed is: 1. An apparatus to provide additional memory to a first server while the first server takes over providing services normally provided by a second server, comprising: prior to a failure by the second server, the first server having a first memory, the first memory split into two
What is claimed is: 1. An apparatus to provide additional memory to a first server while the first server takes over providing services normally provided by a second server, comprising: prior to a failure by the second server, the first server having a first memory, the first memory split into two segments with a first segment storing transactions from the first server and a second segment storing transactions from the second server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, the second server having a second memory, the second memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server, wherein the second memory is internal memory of the second server; and after the failure by the second server, the first server assumes the identity of the second server to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. 2. The apparatus of claim 1, wherein the first memory and the second memory are NVRAM. 3. The apparatus of claim 1, further comprising: a file system, after the first server assumes the identity of the second server, configured to initiate a consistency point after both the first and the second segments of the first memory are full of transactions. 4. The apparatus of claim 1, further comprising: a set of storage devices configured to receive the transactions from the first and second memory segments when either the first memory segment or the second memory segment is full prior to failure of the second server. 5. The apparatus of claim 1, wherein a first server is further configured, after failure by the second server, to store the first server information including transactions directed to the second server processed by the first server in the first memory and second segments of the first memory until the first and second memory segments are full and to store the first server information in a fifth memory segment and a sixth memory segment of the first memory while the first server information stored in the first and second memory segments are transferred to a storage device. 6. A method for providing additional memory to a first server while the first storage server takes over providing services normally provided by a second server, comprising: partitioning a first internal memory into a first segment and a second segment; partitioning a second internal memory into a third segment and a fourth segment; prior to a failure by the second server, writing transactions by the first server to the first segment of the first memory stored on the first server; prior to the failure by the second server, writing transactions by the second server to the second segment of the first memory stored on the first server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, writing transactions by the second server to the third segment of a second memory stored on the second server; prior to the failure by the second server, writing transactions by the first server to the fourth segment of the second memory stored on the second server, wherein the second memory is internal memory of the second server; after the failure by the second server, assuming the identity of the second server by the first server, upon the second server going offline to allow the first server to receive requests directed to the first server and requests directed to the second server; and after the failure by the second server, writing transactions in both the first segment and the second segment of the first memory by the first server prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries, wherein the first server receives requests directed to the first server and requests directed to the second server. 7. The method of claim 6, wherein the first memory and the second memory are NVRAM. 8. The method of claim 7, further comprising: initiating a consistency point after both the first and the second segments of the first memory are full of transactions, after the first server assumes the identity of the second server. 9. The method of claim 6, further comprising: transferring the transactions from the first and second memory segments to a storage device when either the first memory segment or the second memory segment is full prior to failure of the second server. 10. The method of claim 6, further comprising: storing, after failure by the second server, a first server information including transactions directed to the second server processed by the first server in the first and second memory segments of the first memory until the first and second memory segments are full; and storing the first server information in a fifth memory segment and a sixth memory segment of the first memory while the first server information stored in the first and second memory segments are transferred to a storage device. 11. An apparatus for providing additional memory to a first server while the first storage system takes over providing services normally provided by a second server, comprising: prior to a failure by the second server, means for writing transactions by the first server to a first segment of a first memory stored on the first server; prior to the failure by the second server, means for writing transactions by the second server to a second segment of the first memory stored on the first server, wherein the first memory is internal memory of the first server; prior to the failure by the second server, means for writing transactions by the second server to a third segment of a second memory stored on the second server; prior to the failure by the second server, means for writing transactions by the first server to a fourth segment of the second memory stored on the second server, wherein the second memory is internal memory of the second server; after the failure by the second server, means for assuming the identity of the second server by the first server, upon the second server going offline to allow the first server to receive requests directed to the first server and requests directed to the second server; and after the failure by the second server, means for writing transactions in both the first segment and the second segment of the first memory by the first server prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries, wherein the first server receives requests directed to the first server and requests directed to the second server. 12. The apparatus of claim 11, wherein the first memory and the second memory are NVRAM. 13. The apparatus of claim 11, further comprising: means for initiating a consistency point after both the first and the second segments of the first memory are full of transactions, after the first server assumes the identity of the second server. 14. The apparatus of claim 11, further comprising: means for transferring the transactions from the first and second memory segments to a storage device when either the first memory segment or the second memory segment is full prior to failure of the second server. 15. The apparatus of claim 11, further comprising: means for storing, after failure by the second server, a first server information including transactions directed to the second server processed by the first server in the first and second memory segments of the first memory until the first and second memory segments of the first memory are full; and means for storing the first server information in a fifth memory segment and a sixth memory segment of the first memory while the first server information stored in the first and second memory segments are transferred to a storage device. 16. A system to provide additional internal memory to a first server while the first storage system takes over providing services normally provided by a second server, comprising: prior to a failure by the second server, the first server with a first internal memory, the first internal memory split into two segments with a first segment to store transactions from the first server and a second segment to store transactions from the second server; prior to the failure by the second server, the second server having a second internal memory, the second internal memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server; and after the failure by the second server, the first server assumes the identity of second server to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. 17. The system of claim 16, wherein the first memory and the second memory are NVRAM. 18. The system of claim 16, further comprising: a file system, after the first server assumes the identity of the second server, configured to initiate a consistency point after both the first and the second segments of the first memory are full of transactions. 19. The system of claim 16, further comprising: a set of storage devices configured to receive the transactions from the first and second memory segments when either the first memory segment or the second memory segment is full prior to failure of the second server. 20. The system of claim 16, wherein the first server is further configured, after failure by the second server, to store a first server information including transactions directed to the second server processed by the first server in the first segment and the second segment of the first memory until the first and second memory segments are full and to store the first server information in a fifth memory segment and a sixth memory segment of the first memory while the first server information stored in the first and second memory segments are transferred to a storage device. 21. A method to provide additional memory to a first storage system while the first storage system takes over providing services normally provided by a second storage system, comprising: prior to a failure by the second storage system, writing transactions by the first storage system to a first memory, the first memory split into two segments with a first segment to store transactions from the first storage system and a second segment to store transactions from the second storage system, wherein the first memory is internal memory of the first storage system; prior to the failure by the second server, the second server having a second memory, the second memory spilt into two segments with a third segment storing transactions from the second server and a fourth segment storing transactions from the first server, wherein the second memory is internal memory of the second server; and after the failure by the second storage system, assuming the identity of the second storage system by the first storage system to allow the first server to receive requests directed to the first server and requests directed to the second server, and writing, by the first storage system, transaction entries to the first and second segments of the first memory prior to a consistency point flushing the transactions to one or more storage devices to effectively double the size of the first memory allocated for temporary storage of transaction entries. 22. The method of claim 21, wherein the first memory and the second memory are NVRAM. 23. A system, comprising: a first memory divided into two segments, a first segment and a second segment, wherein the first memory is internal memory in a first server; a second memory divided into two segments, a third segment and a fourth segment, wherein the second memory is internal memory in a second server; prior to a failure of the second server, the first server writes transaction entries in the first segment that were from requests directed to the first server and writes transaction entries in the second segment that were from requests directed to the second server; prior to a failure of the second server, the second server writes transaction entries in the third segment that were from requests directed to the second server and writes transaction entries in the fourth segment that were from requests directed to the first server; and in response to the failure of the second server, assuming the identity of the second storage system by the first storage system to allow the first server to receive requests directed to the first server and requests directed to the second server and the first server writes transaction entries to the first segment and the second segment of the first memory to allow a larger cache space for the first server while the first server receives requests directed to the first server and requests directed to the second server to effectively double the size of the first memory allocated for temporary storage of transaction entries.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (54)
Armangau, Philippe; Dunham, Scott R., Computer data storage backup with tape overflow control of disk caching of backup data stream.
Schneider Fred B. (Ithaca NY) Lampson Butler (Cambridge MA) Balkovich Edward (Acton MA) Thiel David (Colorado Springs CO), Fault tolerant computer system with shadow virtual processor.
MacHardy, Jr., Earle Trounson; de Forest, Miles Aram, Fault tolerant, low latency system resource with high level logging of system resource transactions and cross-server mirrored high level logging of system resource transactions.
Duso, Wayne W.; Kuczynski, Leslie E.; Forecast, John; Gupta, Uday; Vahalia, Uresh K; Ting, Dennis P. J., Hardware and software failover services for a file server.
Byers Russell Francis,CAX ; Duchaine Joseph Marcel Gilles,CAX ; Schuett Michael Leonard,CAX ; Grootenboer Cornelius Jacob,GBX, Method and controller for controlling shutdown of a processing unit.
Dias Daniel Manuel ; Jhingran Anant Deep ; King Richard Pervin ; Polyzois Christos, Method and system for recovery in a partitioned shared nothing database system using virtual share disks.
Ohran Richard S. ; Rollins Richard N. ; Ohran Michael R. ; Marsden Wally, Method for improving recovery performance from hardware and software errors in a fault-tolerant computer system.
Hitz David ; Malcolm Michael ; Lau James ; Rakitzis Byron, Method for maintaining consistent states of a file system and for creating user-accessible read-only copies of a file s.
Wallach Walter A. ; Findlay Bruce ; Pellicer Thomas J. ; Chrabaszcz Michael, Method for providing a fault tolerant network using distributed server processes to remap clustered network resources to other servers during server failure.
McCown Patricia M. (Cresskill NJ) Conway Timothy J. (Highland Park NJ) Jessen Karl M. (Bayonne NJ), Methods and apparatus for monitoring system performance.
Ekrot Alexander C. ; Singer James H. ; Hemphill John M. ; Autor Jeffrey S. ; Galloway William C. ; Alexander Dennis J., Multi-server fault tolerance using in-band signalling.
Hitz David (Sunnyvale CA) Schwartz Allan (Saratoga CA) Lau James (Cupertino CA) Harris Guy (Mountain View CA), Multiple facility operating system architecture.
Hitz David ; Schwartz Allan ; Lau James ; Harris Guy, Multiple software-facility component operating system for co-operative processor control within a multiprocessor computer system.
Row Edward J. (Mountain View CA) Boucher Laurence B. (Saratoga CA) Pitts William M. (Los Altos CA) Blightman Stephen E. (San Jose CA), Parallel I/O network file server architecture.
Row Edward J. (Mountain View CA) Boucher Laurence B. (Saratoga CA) Pitts William M. (Los Altos CA) Blightman Stephen E. (San Jose CA), Parallel I/O network file server architecture.
Beardsley Brent Cameron (Tucson AZ) Hathorn Roger Gregory (Tucson AZ) Holley Bret Wayne (Tucson AZ) Iskiyan James Lincoln (Tucson AZ), Remote copy system for setting request interconnect bit in each adapter within storage controller and initiating request.
Lubbers, Clark E.; Woestehoff, Keith D.; Yandell, Jesse L.; Reiser, James M.; Korgaonkar, Anuja; Roberson, Randy L.; Bean, Robert G., System and method for atomizing storage.
Clowes Richard F. (New York NY) Tims Fred W. (Springfield Center NY), Workstation-implemented data storage re-routing for server fault-tolerance on computer networks.
Riedle, Linda A.; Jenkins, Fani; Subramanian, Bhoovaraghan; Nirmale, Sandeep T.; Seeralan, Deepan Natesan; Cho, Yong E., Providing data integrity in a non-reliable storage behavior.
Riedle, Linda A.; Jenkins, Fani; Subramanian, Bhoovaraghan; Nirmale, Sandeep T.; Seeralan, Deepan Natesan; Cho, Yong E., Providing data integrity in a non-reliable storage behavior.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.