JP6301318B2 - 分散ストレージシステムのためのキャッシュ処理方法、ノード及びコンピュータ可読媒体 - Google Patents
分散ストレージシステムのためのキャッシュ処理方法、ノード及びコンピュータ可読媒体 Download PDFInfo
- Publication number
- JP6301318B2 JP6301318B2 JP2015514321A JP2015514321A JP6301318B2 JP 6301318 B2 JP6301318 B2 JP 6301318B2 JP 2015514321 A JP2015514321 A JP 2015514321A JP 2015514321 A JP2015514321 A JP 2015514321A JP 6301318 B2 JP6301318 B2 JP 6301318B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- data stripe
- client node
- owner
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims description 35
- 238000000034 method Methods 0.000 claims description 101
- 230000004044 response Effects 0.000 claims description 91
- 230000008859 change Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 33
- 238000012217 deletion Methods 0.000 claims description 17
- 230000037430 deletion Effects 0.000 claims description 17
- 230000005540 biological transmission Effects 0.000 claims description 13
- 230000015556 catabolic process Effects 0.000 claims description 5
- 238000006731 degradation reaction Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000011664 signaling Effects 0.000 description 11
- 238000013508 migration Methods 0.000 description 9
- 230000005012 migration Effects 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012508 change request Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1466—Key-lock mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1028—Distributed, i.e. distributed RAID systems with parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/15—Use in a specific computing environment
- G06F2212/154—Networked environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
データストライプオーナサーバノードが、ロッククライアントノードからデータストライプに関するロック通知を受信し、前記ロック通知を判断するステップと、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であるとき、前記データストライプオーナサーバノードが、前記ロッククライアントノードを前記データストライプのオーナとして記録し、前記ロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返すステップと、
前記ロック通知が最初に受信していないリードロック通知であるとき、前記データストライプオーナサーバノードが、前記ロッククライアントノードが前記データストライプのオーナのキャッシュから前記データストライプを読むように、前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返すステップと、
を有する方法を提供する。
前記データストライプオーナサーバノードが、ロッククライアントノードからデータストライプに関するロック通知を受信した後、当該方法は更に、前記ロック通知がリードロック通知であるとき、前記データストライプオーナサーバノードが、前記データストライプの属性情報を記録されたデータストライプの属性情報から検索し、前記データストライプの属性情報が検出されなかった場合、前記リードロック通知が最初に受信されたリードロック通知であると判定するステップを有する、実現方法が更に提供される。
前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返した後、当該方法は更に、
前記データストライプオーナサーバノードが、前記ロッククライアントノードから前記データストライプのオーナを他のロッククライアントノードに変更するためのリクエストメッセージを受信するステップと、
前記データストライプオーナサーバノードが、前記データストライプのオーナを前記他のロッククライアントノードに変更するステップと、
を有する、
実現方法が更に提供される。
前記データストライプオーナサーバノードがロックサーバノード装置に統合されるとき、
前記リードロック通知はリードロックリクエストを有し、
前記ライトロック通知はライトロックリクエストを有し、
前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返すステップは更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含み、
前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返すステップは更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含む、
実現方法が更に提供される。
ロッククライアントノードが、データストライプに関するリードロック通知又はライトロック通知をデータストライプオーナサーバノードに送信するステップと、
前記ロッククライアントノードが、前記データストライプオーナサーバノードから前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信すると、前記ロッククライアントノードが、前記データストライプをキャッシュするステップと、
前記ロッククライアントノードが前記データストライプオーナサーバノードから前記データストライプのオーナの識別情報IDを受信すると、前記ロッククライアントノードが、前記データストライプオーナのIDと前記ロッククライアントノードのIDとを比較し、当該2つのIDが異なる場合、前記ロッククライアントノードが、前記データストライプオーナのIDに対応するロッククライアントノードのキャッシュから前記データストライプを読むステップと、
を有する方法を提供する。
実現方法が更に提供される。
前記ロッククライアントノードによって前記オーナサーバノードに送信されるロック通知が前記データストライプに関するライトロック通知である場合、前記ロッククライアントノードが、前記データストライプをキャッシュし、その後、前記ロックサーバノードが前記記録を前記ロッククライアントノードが前記データストライプに関するリードロックを保持していることに変更するように、デグレードロックリクエストをロックサーバノードに送信するステップと更に有する、
実現方法が更に提供される。
前記ロッククライアントノードが、アプリケーションサーバから前記データストライプに関するリードリクエスト又はライトリクエストを受信するステップと、
前記ロッククライアントノードが、前記データストライプに関するリードロック又はライトロックをローカルに検索するステップと、
前記データストライプに関するリードロック又はライトロックが検出された場合、前記データストライプに関するリードロック又はライトロックに従って前記データストライプのオーナを決定し、前記データストライプのオーナから前記データストライプを読むか、又は前記データストライプのオーナに前記データストライプを書き込むステップと、
前記データストライプに関するリードロック又はライトロックが検出されない場合、前記クロッククライアントノードが、データストライプに関するリードロック通知又はライトロック通知をデータストライプオーナサーバノードに送信するステップを実行するステップと、
を有する、
実現方法が更に提供される。
単位時間における前記ロッククライアントノードのキャッシュ削除率が前記ロッククライアントノードのトータルキャッシュ量の所定の比率以上であるとき、前記ロッククライアントノードが、前記データストライプオーナサーバノードが前記データストライプのオーナをターゲットロッククライアントノードに変更するように、前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するためのリクエストメッセージを前記データストライプオーナサーバノードに送信するステップと、
前記ロッククライアントノードが、前記データストライプオーナサーバノードから前記データストライプのオーナの変更の成功を示すレスポンスメッセージを受信し、ローカルキャッシュから前記データストライプを削除し、前記ターゲットロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプを前記ターゲットロッククライアントノードに送信するステップと、
を更に有する、
実現方法が更に提供される。
前記ロッククライアントノードが、前記データストライプオーナのIDに対応するロッククライアントノードに前記データストライプに関するリードリクエストを送信するステップを有し、これにより、前記データストライプオーナのIDに対応するロッククライアントノードが前記データストライプをローカルにキャッシュされているデータから検索し、前記データストライプが検出される場合、前記データストライプを前記ロッククライアントノードに返し、そうでない場合、前記分散ストレージシステムのロッククライアントノードから前記データストライプのデータストリップを読み、前記データストライプを構成し、前記データストライプを前記ロッククライアントノードに返す、
実現方法が更に提供される。
ロッククライアントノードからデータストライプに関するロック通知を受信するよう構成される受信部と、
前記ロック通知を判断するよう構成される判断部と、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であると前記判断部が判断すると、前記ロッククライアントノードを前記データストライプのオーナとして記録するよう構成される記録部と、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であると前記判断部が判断したとき、前記ロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返し、前記ロック通知が最初に受信していないリードロック通知であると前記判断部が判断したとき、前記ロッククライアントノードが前記データストライプのオーナのキャッシュから前記データストライプを読むように、前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返す送信部と、
を有するノードを提供する。
前記判断部は、具体的には、前記ロック通知がリードロック通知であるとき、前記データストライプの属性情報を記録されたデータストライプの属性情報から検索し、前記データストライプの属性情報が検出されなかった場合、前記リードロック通知が最初に受信されたリードロック通知であると判定するよう構成される、
実現方法が更に提供される。
前記受信部は更に、前記ロッククライアントノードから前記データストライプのオーナを他のロッククライアントノードに変更するためのリクエストメッセージを受信するよう構成され、
前記記録部は更に、前記データストライプのオーナを前記他のロッククライアントノードに変更するよう構成され、
前記送信部は更に、前記ロッククライアントノードがローカルキャッシュから前記データストライプを削除し、前記他のロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナの変更の成功を示すレスポンスメッセージを前記ロッククライアントノードに返すよう構成される、実現方法が更に提供される。
前記データストライプオーナサーバノードがロックサーバノード装置に統合されるとき、
前記リードロック通知はリードロックリクエストを有し、
前記ライトロック通知はライトロックリクエストを有し、
前記送信部は更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すよう構成される、
実現方法が更に提供される。
データストライプに関するリードロック通知又はライトロック通知をデータストライプオーナサーバノードに送信するよう構成される送信部と、
前記データストライプオーナサーバノードから前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信するか、又は前記データストライプオーナサーバノードから前記データストライプのオーナのIDを受信するよう構成される受信部と、
前記データストライプオーナのIDと前記ロッククライアントノードのIDとを比較し、当該2つのIDが異なる場合、リードライト部を起動するよう構成される比較部と、
前記受信部が前記データストライプオーナサーバノードから、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信すると、前記データストライプをキャッシュするよう構成されるキャッシュ処理部と、
前記データストライプオーナのIDに対応するロッククライアントノードのキャッシュから前記データストライプを読むよう構成されるリードライト部と、
を有するノードを提供する。
前記送信部は更に、前記ロックサーバノードが記録を前記ロッククライアントノードが前記データストライプに関するリードロックを保持していることに変更するように、デグレードロックリクエストをロックサーバノードに送信するよう構成される、
実現方法が更に提供される。
前記受信部は更に、アプリケーションサーバから前記データストライプに関するリードリクエスト又はライトリクエストを受信するよう構成され、
前記検索部は、前記データストライプに関するリードロック又はライトロックをローカルに検索し、前記データストライプに関するリードロック又はライトロックが検出された場合、前記データストライプに関するリードロック又はライトロックに従って前記データストライプのオーナを決定し、前記リードライト部を起動し、前記データストライプに関するリードロック又はライトロックが検出されない場合、前記送信部を起動するよう構成され、
前記リードライト部は更に、前記データストライプのオーナから前記データストライプを読むか、又は前記データストライプのオーナに前記データストライプを書き込むよう構成される、
実現方法が更に提供される。
前記キャッシュ処理部は更に、単位時間における削除率が前記ロッククライアントノードのトータルキャッシュ量の所定の比率以上であるとき、前記データストライプのオーナをターゲットロッククライアントノードに変更するためのリクエストメッセージを前記データストライプオーナサーバノードに送信するよう前記送信部を制御するよう構成され、前記受信部により受信され、前記データストライプのオーナの変更の成功を示すレスポンスメッセージに従って、ローカルキャッシュから前記データストライプを削除し、前記データストライプを前記ターゲットロッククライアントノードに送信するよう前記送信部を制御するよう構成され、
前記送信部は更に、前記キャッシュ処理部の制御に従って、前記データストライプオーナサーバノードが前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するように、前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するためのリクエストメッセージを前記データストライプオーナサーバノードに送信するよう構成され、更に前記ターゲットロッククライアントノードが前記データストライプをキャッシュするように、前記キャッシュ処理部の制御に従って前記データストライプを前記ターゲットロッククライアントノードに送信するよう構成され、
前記受信部は更に、前記データストライプオーナサーバノードから前記データストライプのオーナの変更の成功を示すレスポンスメッセージを受信するよう構成される、
実現方法が更に提供される。
前記リードライト部は、具体的には前記データストライプオーナのIDに対応するロッククライアントノードが前記データストライプをローカルにキャッシュされたデータから検索するように、前記データストライプオーナのIDに対応するロッククライアントノードに前記データストライプに関するリードリクエストを送信し、前記データストライプが検出された場合、前記データストライプを前記リードライト部に返し、そうでない場合、分散ストレージシステムのロッククライアントノードから前記データストライプのデータストリップを読み、前記データストライプを構成し、前記データストライプを前記リードライト部に返すよう構成される、
実現方法が更に提供される。
データストライプオーナサーバノードが、ロッククライアントノードからデータストライプに関するロック通知を受信し、ロック通知を判断し、
ロック通知が最初に受信したリードロック通知又はライトロック通知であるとき、データストライプオーナサーバノードは、ロッククライアントノードをデータストライプのオーナとして記録し、ロッククライアントノードがデータストライプをキャッシュするように、データストライプのオーナがロッククライアントノードであることを示すレスポンスメッセージをロッククライアントノードに返し、
ロック通知が最初に受信したリードロック通知であるとき、データストライプオーナサーバノードは、ロッククライアントノードがデータストライプのオーナのキャッシュからデータストライプを読むように、データストライプのオーナ情報を含むレスポンスメッセージをロッククライアントノードに返す。
データストライプに関するリードロック通知又はライトロック通知をデータストライプオーナサーバノードに送信し、
ロッククライアントノードがデータストライプオーナサーバノードからデータストライプのオーナがロッククライアントノードであることを示すレスポンスメッセージを受信すると、ロッククライアントノードがデータストライプをキャッシュし、
データストライプオーナサーバノードからデータストライプのオーナの識別IDを受信すると、データストライプオーナのIDとロッククライアントノードのIDとを比較し、当該2つのIDが異なるとき、データストライプオーナのIDに対応するロッククライアントノードからデータストライプを読む。
Claims (14)
- 分散ストレージシステムのキャッシュ処理方法であって、
ロックサーバノード装置が、ロッククライアントノードからデータストライプに関するロック通知を受信し、前記ロック通知を判断するステップと、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であるとき、前記ロックサーバノード装置が、前記ロッククライアントノードを前記データストライプのオーナとして記録し、前記ロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返すステップであって、前記リードロック通知はリードロックリクエストを有し、前記ライトロック通知はライトロックリクエストを有し、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返すステップは更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含む、返すステップと、
前記ロック通知が最初に受信していないリードロック通知であるとき、前記ロックサーバノード装置が、前記ロッククライアントノードが前記データストライプのオーナ情報に従ってオーナのキャッシュから前記データストライプを読むように、前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返すステップと、
を有し、
前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返すステップは更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含み、前記ロック成功レスポンスメッセージは、前記ロッククライアントノードが前記データストライプに対するリードロック又はライトロックを取得したことを示し、データストライプに対するリードロックを保持する前記ロッククライアントノードは前記データストライプをリード可能であり、データストライプに対するライトロックを保持するロッククライアントノードは前記データストライプをライト又は変更可能である方法。 - 前記ロックサーバノード装置が、ロッククライアントノードからデータストライプに関するロック通知を受信した後、当該方法は更に、前記ロック通知がリードロック通知であるとき、前記ロックサーバノード装置が、前記データストライプの属性情報を記録されたデータストライプの属性情報から検索し、前記データストライプの属性情報が検出されなかった場合、前記リードロック通知が最初に受信されたリードロック通知であると判定するステップを有する、請求項1記載の方法。
- 前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返した後、当該方法は更に、
前記ロックサーバノード装置が、前記ロッククライアントノードから前記データストライプのオーナを他のロッククライアントノードに変更するためのリクエストメッセージを受信するステップと、
前記ロックサーバノード装置が、前記データストライプのオーナを前記他のロッククライアントノードに変更するステップと、
前記ロックサーバノード装置が、前記ロッククライアントノードがローカルキャッシュから前記データストライプを削除し、前記他のロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナの変更の成功を示すレスポンスメッセージを前記ロッククライアントノードに返すステップと、
を有する、請求項1又は2記載の方法。 - 分散ストレージシステムのキャッシュ処理方法であって、
ロッククライアントノードが、データストライプに関するリードロック通知又はライトロック通知をロックサーバノード装置に送信するステップであって、前記リードロック通知はリードロックリクエストを有し、前記ライトロック通知はライトロックリクエストを有する、送信するステップと、
前記ロッククライアントノードが、前記ロックサーバノード装置から前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信すると、前記ロッククライアントノードが、前記データストライプをキャッシュするステップであって、前記データストライプのオーナが前記ロッククライアントノードであることを示す前記レスポンスメッセージは更にロック成功レスポンスメッセージを有する、キャッシュするステップと、
前記ロッククライアントノードが前記ロックサーバノード装置から前記データストライプのオーナの識別情報IDをレスポンスメッセージを介し受信すると、前記ロッククライアントノードが、前記データストライプオーナのIDと前記ロッククライアントノードのIDとを比較し、当該2つのIDが異なる場合、前記ロッククライアントノードが、前記データストライプオーナのIDに対応するロッククライアントノードのキャッシュから前記データストライプを読むステップと、
を有し、
前記データストライプのオーナの識別情報IDを有する前記レスポンスメッセージは更に、前記ロック成功レスポンスメッセージを含み、前記ロック成功レスポンスメッセージは、前記ロッククライアントノードが前記データストライプに対するリードロック又はライトロックを取得したことを示し、データストライプに対するリードロックを保持する前記ロッククライアントノードは前記データストライプをリード可能であり、データストライプに対するライトロックを保持するロッククライアントノードは前記データストライプをライト又は変更可能である方法。 - 前記ロッククライアントノードによって前記ロックサーバノード装置に送信されるロック通知が前記データストライプに関するライトロック通知である場合、前記ロッククライアントノードが、前記データストライプをキャッシュし、その後、前記ロックサーバノード装置が記録を前記ロッククライアントノードが前記データストライプに関するリードロックを保持していることに変更するように、デグレードロックリクエストをロックサーバノード装置に送信するステップと更に有する、請求項4記載の方法。
- 単位時間における前記ロッククライアントノードのキャッシュ削除率が前記ロッククライアントノードのトータルキャッシュ量の所定の比率以上であるとき、前記ロッククライアントノードが、前記ロックサーバノード装置が前記データストライプのオーナをターゲットロッククライアントノードに変更するように、前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するためのリクエストメッセージを前記ロックサーバノード装置に送信するステップと、
前記ロッククライアントノードが、前記ロックサーバノード装置から前記データストライプのオーナの変更の成功を示すレスポンスメッセージを受信し、ローカルキャッシュから前記データストライプを削除し、前記ターゲットロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプを前記ターゲットロッククライアントノードに送信するステップと、
を更に有する、請求項4乃至5何れか一項記載の方法。 - ロックサーバノード装置であって、
ロッククライアントノードからデータストライプに関するロック通知を受信するよう構成される受信部と、
前記ロック通知を判断するよう構成される判断部と、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であると前記判断部が判断すると、前記ロッククライアントノードを前記データストライプのオーナとして記録するよう構成される記録部と、
前記ロック通知が最初に受信したリードロック通知又はライトロック通知であると前記判断部が判断したとき、前記ロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返し、ここで、前記リードロック通知はリードロックリクエストを有し、前記ライトロック通知はライトロックリクエストを有し、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを前記ロッククライアントノードに返すことは更に、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含み、前記ロック通知が最初に受信していないリードロック通知であると前記判断部が判断したとき、前記ロッククライアントノードが前記データストライプのオーナ情報に従ってオーナのキャッシュから前記データストライプを読むように、前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返し、ここで、前記データストライプのオーナ情報を有するレスポンスメッセージを前記ロッククライアントノードに返すことは、ロック成功レスポンスメッセージを前記ロッククライアントノードに返すことを含む、送信部と、
を有し、
前記ロック成功レスポンスメッセージは、前記ロッククライアントノードが前記データストライプに対するリードロック又はライトロックを取得したことを示し、データストライプに対してリードロックを保持する前記ロッククライアントノードは前記データストライプをリード可能であり、データストライプに対してライトロックを保持するロッククライアントノードは前記データストライプをライト又は変更可能であるロックサーバノード装置。 - 前記判断部は、具体的には、前記ロック通知がリードロック通知であるとき、前記データストライプの属性情報を記録されたデータストライプの属性情報から検索し、前記データストライプの属性情報が検出されなかった場合、前記リードロック通知が最初に受信されたリードロック通知であると判定するよう構成される、請求項7記載のロックサーバノード装置。
- 前記受信部は更に、前記ロッククライアントノードから前記データストライプのオーナを他のロッククライアントノードに変更するためのリクエストメッセージを受信するよう構成され、
前記記録部は更に、前記データストライプのオーナを前記他のロッククライアントノードに変更するよう構成され、
前記送信部は更に、前記ロッククライアントノードがローカルキャッシュから前記データストライプを削除し、前記他のロッククライアントノードが前記データストライプをキャッシュするように、前記データストライプのオーナの変更の成功を示すレスポンスメッセージを前記ロッククライアントノードに返すよう構成される、請求項7又は8記載のロックサーバノード装置。 - ロッククライアントノードであって、
データストライプに関するリードロック通知又はライトロック通知をロックサーバノード装置に送信するよう構成される送信部であって、前記リードロック通知はリードロックリクエストを有し、前記ライトロック通知はライトロックリクエストを有する、送信部と、
前記ロックサーバノード装置から前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信するか、又は前記ロックサーバノード装置から前記データストライプのオーナのIDをレスポンスメッセージを介し受信するよう構成される受信部であって、前記レスポンスメッセージはロック成功レスポンスメッセージを有し、前記ロック成功レスポンスメッセージは、前記ロッククライアントノードが前記データストライプに対するリードロック又はライトロックを取得したことを示し、データストライプに対してリードロックを保持する前記ロッククライアントノードは前記データストライプをリード可能であり、データストライプに対してライトロックを保持するロッククライアントノードは前記データストライプをライト又は変更可能である、受信部と、
前記データストライプオーナのIDと前記ロッククライアントノードのIDとを比較し、当該2つのIDが異なる場合、リードライト部を起動するよう構成される比較部と、
前記受信部が前記ロックサーバノード装置から、前記データストライプのオーナが前記ロッククライアントノードであることを示すレスポンスメッセージを受信すると、前記データストライプをキャッシュするよう構成されるキャッシュ処理部と、
前記データストライプオーナのIDに対応するロッククライアントノードのキャッシュから前記データストライプを読むよう構成されるリードライト部と、
を有するノード。 - 前記送信部は更に、前記ロックサーバノード装置が記録を前記ロッククライアントノードが前記データストライプに関するリードロックを保持していることに変更するように、デグレードロックリクエストを前記ロックサーバノード装置に送信するよう構成される、請求項10記載のノード。
- 前記キャッシュ処理部は更に、単位時間におけるキャッシュ削除率が前記ロッククライアントノードのトータルキャッシュ量の所定の比率以上であるとき、前記データストライプのオーナをターゲットロッククライアントノードに変更するためのリクエストメッセージを前記ロックサーバノード装置に送信するよう前記送信部を制御するよう構成され、前記受信部により受信され、前記データストライプのオーナの変更の成功を示すレスポンスメッセージに従って、ローカルキャッシュから前記データストライプを削除し、前記データストライプを前記ターゲットロッククライアントノードに送信するよう前記送信部を制御するよう構成され、
前記送信部は更に、前記キャッシュ処理部の制御に従って、前記ロックサーバノード装置が前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するように、前記データストライプのオーナを前記ターゲットロッククライアントノードに変更するためのリクエストメッセージを前記ロックサーバノード装置に送信するよう構成され、更に前記ターゲットロッククライアントノードが前記データストライプをキャッシュするように、前記キャッシュ処理部の制御に従って前記データストライプを前記ターゲットロッククライアントノードに送信するよう構成され、
前記受信部は更に、前記ロックサーバノード装置から前記データストライプのオーナの変更の成功を示すレスポンスメッセージを受信するよう構成される、請求項10乃至11何れか一項記載のノード。 - コンピュータ実行命令を有するコンピュータ可読媒体であって、前記コンピュータ実行命令は、請求項1乃至3何れか一項記載の方法を実行するようロックサーバノード装置に指示するのに利用されるコンピュータ可読媒体。
- コンピュータ実行命令を有するコンピュータ可読媒体であって、前記コンピュータ実行命令は、請求項4乃至6何れか一項記載の方法を実行するようロッククライアントノードに指示するのに利用されるコンピュータ可読媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/087842 WO2014101108A1 (zh) | 2012-12-28 | 2012-12-28 | 分布式存储***的缓存方法、节点和计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015525392A JP2015525392A (ja) | 2015-09-03 |
JP6301318B2 true JP6301318B2 (ja) | 2018-03-28 |
Family
ID=49535837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015514321A Active JP6301318B2 (ja) | 2012-12-28 | 2012-12-28 | 分散ストレージシステムのためのキャッシュ処理方法、ノード及びコンピュータ可読媒体 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9424204B2 (ja) |
EP (1) | EP2830284B1 (ja) |
JP (1) | JP6301318B2 (ja) |
CN (1) | CN103392167B (ja) |
AU (1) | AU2012398211B2 (ja) |
CA (1) | CA2896123C (ja) |
WO (1) | WO2014101108A1 (ja) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559319B (zh) * | 2013-11-21 | 2017-07-07 | 华为技术有限公司 | 分布式集群文件***的缓存同步方法和设备 |
CN104113587B (zh) * | 2014-06-23 | 2017-08-01 | 华中科技大学 | 一种分布式文件***客户端元数据缓存优化方法 |
CN104536916B (zh) * | 2014-12-18 | 2018-04-10 | 华为技术有限公司 | 一种多核***的仲裁方法及多核*** |
CN107844268B (zh) * | 2015-06-04 | 2021-09-14 | 华为技术有限公司 | 一种数据分发方法、数据存储方法、相关装置以及*** |
US20170097887A1 (en) * | 2015-10-02 | 2017-04-06 | Netapp, Inc. | Storage Controller Cache Having Reserved Parity Area |
CN105183670B (zh) * | 2015-10-27 | 2018-11-27 | 北京百度网讯科技有限公司 | 用于分布式缓存***的数据处理方法和装置 |
EP3553647B1 (en) | 2015-12-31 | 2023-10-25 | Huawei Technologies Co., Ltd. | Data write method, apparatus, and system |
CN105573682B (zh) * | 2016-02-25 | 2018-10-30 | 浪潮(北京)电子信息产业有限公司 | 一种san存储***及其数据读写方法 |
CN107239474B (zh) * | 2016-03-29 | 2021-05-04 | 创新先进技术有限公司 | 一种数据记录方法及装置 |
CN106156334B (zh) * | 2016-07-06 | 2019-11-22 | 益佳科技(北京)有限责任公司 | 内存数据处理设备及内存数据处理方法 |
US10191854B1 (en) * | 2016-12-06 | 2019-01-29 | Levyx, Inc. | Embedded resilient distributed dataset systems and methods |
CN106850856A (zh) * | 2017-03-28 | 2017-06-13 | 南京卓盛云信息科技有限公司 | 一种分布式存储***及其同步缓存方法 |
CN107239235B (zh) * | 2017-06-02 | 2020-07-24 | 苏州浪潮智能科技有限公司 | 一种多控多活raid同步方法及*** |
CN107330061B (zh) * | 2017-06-29 | 2021-02-02 | 苏州浪潮智能科技有限公司 | 一种基于分布式存储的文件删除方法及装置 |
CN107608626B (zh) * | 2017-08-16 | 2020-05-19 | 华中科技大学 | 一种基于ssd raid阵列的多级缓存及缓存方法 |
CN107623722A (zh) * | 2017-08-21 | 2018-01-23 | 云宏信息科技股份有限公司 | 一种远端数据缓存方法、电子设备及存储介质 |
US10685010B2 (en) * | 2017-09-11 | 2020-06-16 | Amazon Technologies, Inc. | Shared volumes in distributed RAID over shared multi-queue storage devices |
US10474545B1 (en) * | 2017-10-31 | 2019-11-12 | EMC IP Holding Company LLC | Storage system with distributed input-output sequencing |
US10365980B1 (en) * | 2017-10-31 | 2019-07-30 | EMC IP Holding Company LLC | Storage system with selectable cached and cacheless modes of operation for distributed storage virtualization |
US11209997B2 (en) | 2017-11-22 | 2021-12-28 | Blackberry Limited | Method and system for low latency data management |
US10831670B2 (en) * | 2017-11-22 | 2020-11-10 | Blackberry Limited | Method and system for low latency data management |
CN110413217B (zh) * | 2018-04-28 | 2023-08-11 | 伊姆西Ip控股有限责任公司 | 管理存储***的方法、设备和计算机程序产品 |
CN110347516B (zh) * | 2019-06-27 | 2023-03-24 | 河北科技大学 | 一种面向细粒度读写锁的软件自动重构方法及装置 |
CN110442558B (zh) * | 2019-07-30 | 2023-12-29 | 深信服科技股份有限公司 | 数据处理方法、分片服务器、存储介质及装置 |
US20210232442A1 (en) * | 2020-01-29 | 2021-07-29 | International Business Machines Corporation | Moveable distributed synchronization objects |
CN111651464B (zh) * | 2020-04-15 | 2024-02-23 | 北京皮尔布莱尼软件有限公司 | 数据处理方法、***及计算设备 |
US20230146076A1 (en) * | 2021-11-08 | 2023-05-11 | Rubrik, Inc. | Backing file system with cloud object store |
WO2024026784A1 (zh) * | 2022-08-04 | 2024-02-08 | 华为技术有限公司 | 事务处理方法、装置、节点及计算机可读存储介质 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3596021B2 (ja) | 1994-03-04 | 2004-12-02 | 三菱電機株式会社 | データリンク情報制御方式 |
US7200623B2 (en) * | 1998-11-24 | 2007-04-03 | Oracle International Corp. | Methods to perform disk writes in a distributed shared disk system needing consistency across failures |
US6446237B1 (en) * | 1998-08-04 | 2002-09-03 | International Business Machines Corporation | Updating and reading data and parity blocks in a shared disk system |
US6148414A (en) * | 1998-09-24 | 2000-11-14 | Seek Systems, Inc. | Methods and systems for implementing shared disk array management functions |
US6490615B1 (en) * | 1998-11-20 | 2002-12-03 | International Business Machines Corporation | Scalable cache |
US6742135B1 (en) * | 2000-11-07 | 2004-05-25 | At&T Corp. | Fault-tolerant match-and-set locking mechanism for multiprocessor systems |
JP2002251313A (ja) * | 2001-02-23 | 2002-09-06 | Fujitsu Ltd | キャッシュサーバ及び分散キャッシュサーバシステム |
US7406519B2 (en) * | 2001-11-13 | 2008-07-29 | Microsoft Corporation | Method and system for locking resources in a distributed environment |
US6757790B2 (en) * | 2002-02-19 | 2004-06-29 | Emc Corporation | Distributed, scalable data storage facility with cache memory |
US7200715B2 (en) * | 2002-03-21 | 2007-04-03 | Network Appliance, Inc. | Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes |
US6990560B2 (en) * | 2003-01-16 | 2006-01-24 | International Business Machines Corporation | Task synchronization mechanism and method |
US8543781B2 (en) * | 2004-02-06 | 2013-09-24 | Vmware, Inc. | Hybrid locking using network and on-disk based schemes |
US7975018B2 (en) * | 2004-07-07 | 2011-07-05 | Emc Corporation | Systems and methods for providing distributed cache coherence |
WO2010046985A1 (ja) * | 2008-10-23 | 2010-04-29 | 富士通株式会社 | 認証システム、認証プログラム、認証サーバおよび副認証サーバ |
US8103838B2 (en) * | 2009-01-08 | 2012-01-24 | Oracle America, Inc. | System and method for transactional locking using reader-lists |
CN101706802B (zh) * | 2009-11-24 | 2013-06-05 | 成都市华为赛门铁克科技有限公司 | 一种数据写入、修改及恢复的方法、装置及服务器 |
US8156368B2 (en) * | 2010-02-22 | 2012-04-10 | International Business Machines Corporation | Rebuilding lost data in a distributed redundancy data storage system |
US8103904B2 (en) * | 2010-02-22 | 2012-01-24 | International Business Machines Corporation | Read-other protocol for maintaining parity coherency in a write-back distributed redundancy data storage system |
JP5661355B2 (ja) * | 2010-07-09 | 2015-01-28 | 株式会社野村総合研究所 | 分散キャッシュシステム |
CN102387204B (zh) * | 2011-10-21 | 2014-12-10 | 中国科学院计算技术研究所 | 维护集群缓存一致性的方法及*** |
US9383932B2 (en) * | 2013-12-27 | 2016-07-05 | Intel Corporation | Data coherency model and protocol at cluster level |
-
2012
- 2012-12-28 WO PCT/CN2012/087842 patent/WO2014101108A1/zh active Application Filing
- 2012-12-28 JP JP2015514321A patent/JP6301318B2/ja active Active
- 2012-12-28 AU AU2012398211A patent/AU2012398211B2/en active Active
- 2012-12-28 CN CN201280003290.4A patent/CN103392167B/zh active Active
- 2012-12-28 EP EP12891167.4A patent/EP2830284B1/en active Active
- 2012-12-28 CA CA2896123A patent/CA2896123C/en active Active
-
2014
- 2014-10-08 US US14/509,471 patent/US9424204B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20150026417A1 (en) | 2015-01-22 |
AU2012398211B2 (en) | 2016-12-08 |
EP2830284A1 (en) | 2015-01-28 |
JP2015525392A (ja) | 2015-09-03 |
US9424204B2 (en) | 2016-08-23 |
CA2896123C (en) | 2018-02-13 |
CN103392167B (zh) | 2016-08-03 |
CN103392167A (zh) | 2013-11-13 |
EP2830284B1 (en) | 2017-03-22 |
EP2830284A4 (en) | 2015-05-20 |
AU2012398211A1 (en) | 2015-07-30 |
CA2896123A1 (en) | 2014-07-03 |
WO2014101108A1 (zh) | 2014-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6301318B2 (ja) | 分散ストレージシステムのためのキャッシュ処理方法、ノード及びコンピュータ可読媒体 | |
CN102523279B (zh) | 一种分布式文件***及其热点文件存取方法 | |
CN103827843B (zh) | 一种写数据方法、装置和*** | |
EP3553647B1 (en) | Data write method, apparatus, and system | |
CN108363641B (zh) | 一种主备机数据传递方法、控制节点以及数据库*** | |
US9940042B2 (en) | Distributed storage system, and data-access method therefor | |
WO2018176265A1 (zh) | 分布式存储***的访问方法和相关装置和相关*** | |
CN109302448B (zh) | 一种数据处理方法及装置 | |
WO2018068626A1 (zh) | 一种磁盘锁的管理方法、装置和*** | |
US20150074065A1 (en) | Data Access in a Storage Infrastructure | |
US8230191B2 (en) | Recording medium storing allocation control program, allocation control apparatus, and allocation control method | |
CN105549905A (zh) | 一种多虚拟机访问分布式对象存储***的方法 | |
US20180046692A1 (en) | Secure deletion operations in a wide area network | |
US7725631B2 (en) | Information system and information storage method of information system | |
CN107329704B (zh) | 一种缓存镜像方法及控制器 | |
JP2012530294A (ja) | ガベージコレクション中の分散キャッシュの可用性 | |
WO2019062856A1 (zh) | 数据重构方法及装置、数据存储*** | |
US20130282952A1 (en) | Storage system, storage medium, and cache control method | |
CN109254958B (zh) | 分布式数据读写方法、设备及*** | |
CN109407975B (zh) | 写数据方法与计算节点以及分布式存储*** | |
WO2014015782A1 (zh) | 分布式文件***、文件访问方法以及客户端 | |
CN106790458B (zh) | 一种跨局域网的Memcache数据共享方法及*** | |
JP6172294B2 (ja) | トランザクション分散処理装置、方法、システム、および、記憶媒体 | |
US20150100573A1 (en) | Method for processing data | |
CN109947704A (zh) | 一种锁类型切换方法、装置及集群文件*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151208 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160408 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20160920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170120 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20170126 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20170331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171228 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6301318 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |