JP2012517628A - 電力損失事象時にnvsデータを迅速に保護する方法、システム、及びコンピュータ・プログラム - Google Patents

電力損失事象時にnvsデータを迅速に保護する方法、システム、及びコンピュータ・プログラム Download PDF

Info

Publication number
JP2012517628A
JP2012517628A JP2011548632A JP2011548632A JP2012517628A JP 2012517628 A JP2012517628 A JP 2012517628A JP 2011548632 A JP2011548632 A JP 2011548632A JP 2011548632 A JP2011548632 A JP 2011548632A JP 2012517628 A JP2012517628 A JP 2012517628A
Authority
JP
Japan
Prior art keywords
data
nvs
nvs data
buffer module
transferring
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011548632A
Other languages
English (en)
Other versions
JP5574451B2 (ja
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2012517628A publication Critical patent/JP2012517628A/ja
Application granted granted Critical
Publication of JP5574451B2 publication Critical patent/JP5574451B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1441Resetting or repowering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/81Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Power Sources (AREA)

Abstract

【課題】
電力損失事象に続くメモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)のデータを保護するための方法、システム、およびコンピュータ・プログラムを提供する。
【解決手段】
第1のバッファ・モジュールを使用してNVSデータの第1の部分が暗号化される。しかる後、NVSデータの第1の部分が少なくとも1つの共用ストレージ・デバイスに転送され、同時にNVSデータの第2の部分が第2のバッファ・モジュールを使用して暗号化される。しかる後、NVSデータの第2の部分が少なくとも1つの共用ストレージ・デバイスに転送される。
【選択図】 図3

Description

本発明は、一般的には、コンピュータに関し、詳しく云えば、メモリ・デバイスとのコミュニケーションにおいて不揮発性ストレージ(NVS)のデータをプロセッサにより保護するための方法、システム、およびコンピュータ・プログラムに関する。
ディスクのようなストレージ・デバイスは今日の社会では極一般的なものである。コントローラのようなデバイスは、読み取りおよび書き込みリクエストに応答してストレージ・デバイスに対するアクセスを制御する。ストレージ・コントローラは、予備およびバックアップの目的でデータを種々のストレージ・デバイスにミラーリングし、データを種々のストレージ・デバイスに散在させる。ストレージ・コントローラは、いくつかの新磁気ディスク制御機構(RAID)セキュリティ・レベルの1つに従ってデータを格納し得る。一般に、RAIDレベルが高くなるほどデータ・ストレージの冗長度は大きくなる。共用ストレージ・デバイスは、記憶容量を増加させて、回復およびバックアップ・サービスを提供するために使用され得る。
IBMEnterprise Storage Server(ESS)のようなストレージ・サーバも極一般的ものになっている(IBMおよびEnterpriseStorage Serverは、米国のインターナショナル・ビジネス・マシーンズ・コーポレーションの商標である)。1つのIBM ESSストレージ・サーバは、プロセッサおよび関連のハードウェアから成る2個のクラスタを含む。一般に、各クラスタには複数のプロセッサが存在する。各ストレージ・コントローラは、RAIDアレイにおけるグループ化された複数のストレージ・デバイスを制御する。或る環境では、ファイバ・チャネル・ホスト・バス・アダプタ(HBA)を備えたクライアントがファイバ・チャネルを介してスイッチに結合される。そのスイッチもファイバ・チャネルHBAによってストレージ・サーバに結合される。1つのクライアント当たり複数のストレージ・サーバが存在し得る。各クライアントは、RAIDアレイにおいてグループ化されたストレージ・デバイス上の物理ロケーションにマップされたストレージ「ボリューム」を割り当てられ、または割り付けられる。従って、クライアントは、それらの割り振られたボリューム内のデータに関して、ストレージ・サーバにデータ・アクセス・リクエスト(読み取りおよび書き込み)を行い、ストレージ・サーバは、そのリクエストを満たすためにキャッシュ・ストレージにおけるマップされたロケーションをアクセスするか、或いは、データがキャッシュ・ストレージに存在しない場合にはディスクからそのデータをアクセスする。
或るIBM ESSは、2つのクラスタを有し且つ1つのクラスタ当たり4つのプロセッサを有するストレージ・コントローラを含む。各クラスタは、クラスタ内のすべてのプロセッサによって共用されるそれ自身のキャッシュ(半導体)メモリを有する。各クラスタは、更に、クラスタ内のすべてのプロセッサによって共有されるバッテリ・バックアップの不揮発性ストレージ(NVS)を有する。更に、各クラスタは、それ自身のキャッシュ・ストレージを有する。キャッシュ・メモリは、メモリからの読み取りデータ・アクセス・リクエストをサービスするべく、および修正されたデータのバッファリングを行うべく、外部ストレージからインページされたデータへの迅速なアクセスのために使用される。すべての書き込みリクエストは、所与のボリュームを管理するクラスタにおけるキャッシュに書き込まれ、他のクラスタ上の不揮発性メモリにおいてミラーリングされる。
ESSのようなストレージ・システムは、キャッシュおよびNVSの両方への書き込みデータの転送の完了に続いて且つ書き込みデータがディスクに書き込まれる前に、接続されたデータ・ホストにコミット・メッセージを送る。そのコミット・メッセージが受け取られた後、ホストは、最早この書き込みデータのコピーを保存する必要がない。或るシステムでは、電力損失の場合、NVSはデータを保持するように機能せず、むしろ、バッテリ・バックアップ・コンポーネントの助けによりハード・ディスク上にデータをデステージすることによって不揮発性を得ている。
電力損失時にNVSがデータを保持しないでディスクへのデータのデステージングを促すという態様では、バックアップ・バッテリ・システムの容量を最小化することを可能にするためにNVSデータをできるだけ速く書き込むことが望ましい。そのようなデータの暗号化は、データの盗難に対して更なるセキュリティを施す。電力損失事象の場合、NVSデータをディスク(共用ストレージ・デバイスのような)に書き込むことに関する解決方法は存在するが、迅速な方法でデータ転送を完了させながらそのようなデータに暗号化機能を提供するための解決方法は存在しない。
本発明の目的は、電力損失事象に続くメモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)のデータを保護するための方法を提供することにある。
NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化される。第1のデータ・バッファ内にデータを暗号化した後、第1のデータ・バッファが共用ストレージ・デバイスに転送され、それと同時に、NVSデータの第2の部分が第2のバッファ・モジュール内に暗号化される。望ましくは、このプロセスは、その後、すべてのNVSデータが一方のバッファ・モジュールまたは他方のバッファ・モジュール内に暗号化されてディスクに転送されるまで、第1および第2のバッファ・モジュールの間で交互に繰り返す。NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化された後、一方のバッファに対する暗号化オペレーションが他方のバッファによる共用ディスクへの転送に重畳する。換言すれば、一方のバッファからの暗号化オペレーションのすべてまたは一部分が、他方のバッファによる共用ディスクへの転送のすべてまたは一部分と同時に(即ち、同じ時間に)実行される。
本発明の更なる態様は、電力損失事象に続くメモリ・デバイスとコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)のデータを保護するためのシステムを提供する。第1のバッファ・モジュールおよび第2のバッファ・モジュールが提供される。NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化される。第1のデータ・バッファ内にデータを暗号化することに続いて、第1のデータ・バッファが共用ストレージ・デバイスに転送され、それと同時に、NVSデータの第2の部分が第2のバッファ・モジュール内に暗号化される。望ましくは、このプロセスは、その後、すべてのNVSデータが一方または他方のバッファ・モジュール内に暗号化されてディスクに転送されるまで、第1および第2のバッファ・モジュールの間で交互に繰り返す。NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化された後、一方のバッファに対する暗号化オペレーションが他方のバッファによる共用ディスクへの転送に重畳する。
本発明の更なる態様は、メモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)のデータを保護するためのコンピュータ・プログラムを提供する。そのコンピュータ・プログラムは、コンピュータ可読プログラム・コード部分を格納したコンピュータ可読ストレージ媒体に含まれる。コンピュータ可読プログラム・コード部分は下記事項を遂行するためのいくつかの実行可能な部分を含む。NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化される。第1のデータ・バッファ内にデータを暗号化することに続いて、第1のデータ・バッファが共用ストレージ・デバイスに転送され、それと同時に、NVSデータの第2の部分が第2のバッファ・モジュール内に暗号化される。望ましくは、このプロセスは、その後、すべてのNVSデータが一方または他方のバッファ・モジュール内に暗号化されてディスクに転送されるまで、第1および第2のバッファ・モジュールの間で交互に繰り返す。NVSデータの第1の部分が第1のバッファ・モジュール内に暗号化された後、一方のバッファに対する暗号化するオペレーションが他方のバッファによる共用ディスクへの転送と重畳する。
以下の説明および「特許請求の範囲」の記載の要旨を具現化し得るストレージ・サーバおよびストレージ管理サーバを含む分散コンピュータ・システムのブロック図である。 図1におけるストレージ・サーバの1つのブロック図である。 電力損失事象に従ってNVSデータを保護する例示的な方法のフローチャートである。
図示の実施例は、電力損失事象に従って更なるセキュリティを提供するためにデータを暗号化することおよび共用ストレージにデータを書き込むことを含む、NVSデータを保護するための機構を提供する。以下の説明および「特許請求の範囲」の記載を通して、「電力損失事象(powerloss event)」という用語は、当業者には明らかなように、電力の変動を含む多くの状況を指し得る。従って、本明細書で使用されるような電力損失事象は、NVSデータが共用ストレージ・デバイスに書き込まれることが望ましい任意の状況を指し得る。更に、本明細書で使用されるようなNVSデータは、ディスクに限定されない任意の顧客データを指し得る。
明らかなように、図示の実施例は、NVSデータの一部分をストレージ・デバイスに並行して同時に書き込むことおよび暗号化することによって、電力損失事象に応じてNVSデータを保護する。即ち、NVSデータの1つの部分が暗号化されている間、前に暗号化された更なる部分がストレージ・デバイスに書き込まれる。その結果、NVSデータをストレージ・デバイスに書き込むために通常必要とする時間とほぼ同じ時間で、NVSデータが更なる安全のために暗号化される。
1つの実施例では、NVSにおけるデータを暗号化して共用ストレージ・デバイスに書き込むために2つのバッファ・モジュールが並列に構成される。その2つのバッファ(本明細書ではバッファAおよびバッファBと呼ばれる)は、データを暗号化して書き込むために交互に使用される。バッファAがデータを暗号化している間、バッファBはストレージ・デバイスへの暗号化されたデータの書き込みにビジーである。バッファBがストレージ・デバイスへの書き込みを終ると、バッファAは、それが保持している暗号化されたデータの書き込みを開始し、バッファBはNVSデータの次のブロックを暗号化し始める。
どの時点においても、一方のバッファがデータを暗号化しており、他方のバッファがディスクに書き込みをしている。従って、バッファAおよびバッファBは、データを暗号化することおよびストレージ・デバイスに書き込むことを並行して行う。並行して働くことによって、NVSデータはストレージ・デバイスに書き込まれるのみならず、同じ量の時間で暗号化される。並行して作業を行うためにバッファを使用することは、1つ又は複数のストレージ・コントローラへの電力の損失のような電力損失事象の間、暗号化されたデータをストレージ・デバイスに書き込むことを可能にする。
図示の実施例は、顧客ディスクに固定化されない顧客データを処理するすべての実施態様に適用可能である。ファイア・ホース・ダンプ(FHD)または同様の方法によって保存される如何なるデータも本発明の実施例のうちの1つまたは複数個を使用して処理され得る。
図1は、本発明の実施例の機構を具現化し得るミラーリングされたデータ・ストレージ・システム・アーキテクチャの部分の一例を提供する。しかし、図1が単に例示的なものであり、本実施例の例示的な側面を具現化し得る特定のアーキテクチャに関して如何なる限定も明示又は示唆することを意図するものではないことは明らかであろう。図1に示されたアーキテクチャに対する多くの修正が、以下の説明および「特許請求の範囲」の主題の技術的範囲および主旨から逸脱することなく行なわれ得る。
図1は、本発明を含む全体的に10として指定された例示的な分散コンピュータ・システムを示す。システム10は、クラスタ(各クラスタにおけるCPU編成に関しては下記の図2を参照されたい)当たりCPU40A、40B、40C、キャッシュ44A、44B、44C、不揮発性ストレージ(NVS)46A、46B、46C、オペレーティング・システム(O/S)48A、48B、48C、I/Oユニット50A、50B、50C、およびTCP/IPアダプタ・カード52A、52B、52Cを有する複数の同様のストレージ・サーバ/コントローラ14A、14B、14Cを含む。ストレージ・サーバ14A、14B、14Cの各々は、クライアント40、41、42によって、それぞれ、複数のストレージ・デバイス(ディスクのような)30A1−AN、30B1−BN、30C1−CNへのストレージ割り振りおよびアクセスを管理する。
クライアント40、41、および42は、ファイバ・チャネルのような通信パス53A、53B、53Cを介してスイッチ55に接続するためのファイバ・チャネル・アダプタ・カードのようなアダプタ・カード(HBA)50、51、および52を有する。スイッチ55は、ホスト・バス54A、54B、54Cを介してストレージ・サーバ14A、14B、14Cに接続され得るし、クライアント40、41、または42のうちのいずれかからのリクエストを、そのクライアントに関して構成されたストレージ・サーバ14A、14B、14Cのいずれかに送り得る。アドミニストレータが、クライアント40、41、および42の各々に多数のストレージ「ボリューム」を割り付けておく。「ストレージ・アレイ」が、1つ又は複数のストレージ・デバイスを含み得るし、RAID5、RAUD10のような種々のRAIDレベル、または単純ディスク束(Just Bunch of Disks:一般的にJBODと呼ばれる)で構成され得る。
図2に示された例示的な実施例では、ストレージ・コントローラ14A(および同様にストレージ・コントローラ14Bおよび14C)がCPU68Aおよび78A、キャッシュ66Aおよび76A、NVS69Aおよび79A、並びに任意の数のデバイス・アダプタのペア(クラスタ当たり62A−(N)A〜72A−(N)A)から成る2つの同じのクラスタ61Aおよび71Aを含む。各クラスタ61Aおよび71Aに対して、それぞれ共有キャッシュ(半導体)メモリ66Aおよび76Aが存在する。各クラスタは、バッテリ・バックアップされたストレージ(NVSとも呼ばれる)69Aおよび79Aを含む。図2において、「D」はデータ・ディスクを表わし、「P」は、データ・ディスクにおけるデータのためのパリティ・ビットを格納するためのパリティ・ディスクを表わし、「S」は、データ・ディスクまたはパリティ・ディスクの障害の場合の予備ディスクを表わす。各クラスタは、ストレージ・アレイ上の対応する物理的ロケーションに各ストレージ・ボリュームを相関させる、各クライアントに対するストレージ割り振りのマッピングを維持する。
図2に示されるような1つまたは複数のディスクが、ファイア・ホース・ダンプ(FHD)ディスク65Aおよび75Aであるように適応し、ファイア・ホース・ダンプ・オペレーションによってデータを格納するために利用され得る。一般に、FHDデータは、AIXオペレーティング・システムのブート・ディスクのようなブート・ディスク上に保存される(AIXは、米国のIBM社の商標である)。これらのブート・ディスクは、本来、非暗号化/未暗号化のものである。非暗号化ストレージ・デバイス上にキャッシュ・データを書き込むことは本質的に望ましくないので、本発明の実施例は、出来る限り短時間でキャッシュ・データを(更に説明されるような暗号化を使って)保護する方法として働く。従って、(前述のブート・ディスクのような装置上の)停止時のFHDデータは安全である。
NVS69Aおよび79Aは、それぞれ通信リンク60Aおよび70Aを介してディスク65Aおよび75Aに相互接続される。或る実施例では、通信リンク60Aおよび70Aは、RS−232またはRS−422のような直列相互接続、イーサネット相互接続、SCSI相互接続、ファイバ・チャネル相互接続、ESCON相互接続、FICON相互接続、ローカル・エリア・ネットワーク(LAN)、専用広域ネットワーク(WAN)、公衆広域ネットワーク、ストレージ・エリア・ネットワーク(SAN)、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)、インターネット、およびそれらの組み合わせから選択され得る。
或る実施例では、ディスク65Aおよび75Aは、1つ又は複数の光学的ストレージ・メディア、1つ又は複数の磁気ストレージ・メディア、1つ又は複数の電子ストレージ・メディア、およびそれらの組み合わせを含む。或る実施例では、ディスク65Aおよび75Aは、クラスタ61Aおよび71Aの外部にある。或る実施例では、ディスク65Aおよび75Aは、クラスタ61Aおよび71Aの内部にある。
クライアントがストレージへのアクセスをリクエストするとき、即ち、クライアントに割り振られたボリュームの1つからデータを読み取るかまたはそのボリュームの1つにデータを書き込むようにリクエストするとき、そのボリュームを管理するストレージ・クラスタはそのリクエストを処理する、即ち、ペアになったクラスタ上のキャッシュ・メモリおよびNVSにクライアント更新を一時的に格納する。更新リクエストに関しては、I/O完了通知がNVS記憶装置上のクライアントに送られる。保留の書き込みに対する内部閾値に達すると、クラスタは、クライアント・リクエストを物理的ロケーションにマップし、しかる後、そのマップされたリクエストをキャッシュ・ストレージから適切なストレージ・アレイに送るであろう。読み取りリクエストに関しては、データがキャッシュ・メモリから満たされるかまたは(キャッシュ・ミスのために)ディスク・アクセスを要求する。読み取りリクエストに対するキャッシュ・ミスは、ストレージ・アレイ上の物理ロケーションにクライアント・リクエストをマップすることおよびクライアントI/Oリクエストを満たすそのアレイ上の物理ロケーションからキャッシュ・メモリにデータを転送することをクラスタに要求する。
図1を再び参照すると、システム10は、本発明に従って、フェイルオーバの発生を検知し、前述の保存されたメモリ・キャッシュをインプリメントし、保持されたトラックを処理するために、ストレージ管理サーバ91内にストレージ管理プログラム(SMP)モジュール90を更に含む。図示の実施例では、コンピュータ91は、SANネットワークを介してストレージ・サーバ14A、14B、14Cに結合される。或いは、モジュール90の個別のインスタンスが、各ストレージ・サーバ/コントローラ14A、14B、14Cにおいて実行され、TCP/IPネットワークを介して他のストレージ・サーバにおけるプログラム90の他のインスタンスとコミュニケーションを行うことも可能である。当業者には、ストレージ・サブシステム全体とのコミュニケーションによるSMPモジュールの種々の実施態様が考えられるということは明らかであろう。
図2を再び参照すると、各クラスタに対して4つのバッファ・モジュール67A、67Bおよび77A、77Bを含むサーバ14Aが示される。バッファ・モジュール67A、67Bおよび77A、77Bは、以下で更に説明されるように、本発明に従って機能を遂行するように適応し得る。バッファ・モジュール67A、67Bおよび77A、77Bは、クラスタ61Aおよび71Aに組み込まれて図示されているが、バッファ・モジュール67A、67Bおよび77A、77Bは物理的に他の位置に設置され得るし、図示のストレージ・コントローラ、キャッシュ・メモリ、NVS等とのコミュニケーション状態のままであるということは当業者には明らかであろう。バッファ・モジュール67A、67Bおよび77A、77Bは、例えば、電力損失事象に従ってNVSデータの一部分を暗号化してそれをディスクに格納するように適応し得る。この機能および更なる機能が以下で更に説明される。
次に図3は、電力損失事象に従って共用ストレージへのNVSデータを保護するための例示的な方法100を示す。当業者には明らかなように、方法100における種々のステップは、特定の応用例に適するように種々の過程を通して具現化され得る。更に、上記の方法は、ハードウェア、ソフトウェア、ファームウェア、またはそれの組み合わせのような様々な手段よって、ストレージ環境において作動可能に或いはストレージ環境に関連して具現化され得る。例えば、その方法は、コンピュータ可読プログラム・コード部分を格納したコンピュータ可読ストレージ・メディアを含むコンピュータ・プログラム製品として、部分的にまたは全体的に具現化され得る。コンピュータ可読ストレージ・メディアは、ディスク・ドライブ、フラッシュ・メモリ、ディジタル多用途ディスク(DVD)、コンパクト・ディスク(CD)、および他のタイプのストレージ・メディアを含み得る。
当業者には明らかであるように、データの一部分が読み取られ、暗号化され、そして共用ストレージ・デバイスに書き込まれるので、方法100によるフローは一般に幾つもの反復を通して進行する。図示の実施例で説明されたプロセスは、NVSデータがファイア・ホース・ダンプ(FHD)オペレーションを介してFHDディスクに移るFHDオペレーションのすべての部分又は一部分を含み得る。
次に、図3に説明を移すと、方法100が開始し(ステップ102)、電力損失事象を検知する(ステップ104)。例えば、電力損失事象は、1つ又は複数のストレージ・コントローラへの電力の一時的または恒久的損失であってもよい。制御は、ステップ106に移り、そこでは、NVSアドレス・ポインタがNVSメモリの開始点を指し、両方のバッファ・モジュール(ここでは「1」および「2」と呼ばれる)の内容が空であり且つ非アクティブである。
NVSデータがまだ処理されていないので(ステップ108)、方法100は、第1のバッファがアクティブであるかどうかを照会する(ステップ112)。それが否定される場合、バッファ1がアクティブにされる(ステップ114)。NVSアドレス・ポインタによって指定されたアドレスから始まるNVSデータの一部が読み取られる。この場合、そのアドレスは、ステップ106に記述されたようなメモリの開始点と一致するアドレスである。データのその部分は1つ又は複数のデータ・ブロックによって構成され得る。当業者には明らかなように、その部分は特定の実施態様(例えば、バッファのサイズ)に依存して変わり得る。
バッファ1に読み込まれたNVSデータが暗号化される(ステップ116)。次のステップとして、方法100は、バッファ2がディスクにデータを転送する過程にあるかどうかを照会する(ステップ118)。それが肯定される場合、そのプロセスが完了するまで、方法100はステップ118に戻り(待機し)、やがてバッファ2はインアクティブになる(ステップ120)。この時点で、バッファ1の暗号化された内容がディスクに転送され、バッファ1がクリアされ(ステップ122)、NVSポインタが、まだ読み取られてないデータにおける次の部分の始めにインクリメントされる(ステップ124)。しかる後、方法100はステップ108に戻る。
処理されるべきNVSデータがまだ残っている場合(再度のステップ108)、方法100は、バッファ1がアクティブであるかどうか再び照会する(再度のステップ112)。それが肯定される場合、バッファ2はアクティブにされ(ステップ126)、NVSデータがバッファ2に読み込まれ、ステップ116におけるように暗号化される(ステップ128)。しかる後、方法100は、バッファ1が現在ディスクにデータを転送する過程にあるかどうかを照会する(ステップ130)。それが肯定される場合、その過程が完了するまで、方法100はステップ130に戻り(待機し)、やがてバッファ1はインアクティブになる(ステップ132)。この時点で、バッファ2の暗号化された内容がディスクに転送されて、バッファ2がクリアされ(ステップ134)、NVSポインタが、まだ読み取られてないデータにおける次の部分の始めにインクリメントされる(ステップ136)。
しかる後、方法100はステップ108に戻る。再び、方法100は、NVSデータがすべて処理されたかどうかを照会する。NVSデータがすべて処理された場合、方法100は終了する(ステップ110)。
本明細書に記述された機能ユニットのうちのいくつかは、それらの実施態様の主体性を特に強調するためにモジュールとしてラベル付けされた。例えば、モジュールは、カスタム超大規模集積回路(VLSI)回路もしくはゲート・アレイ、論理チップ、トランジスタのような既製の半導体、または他の個別のコンポーネントを含むハードウェア回路として具現化され得る。モジュールは、フィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ・ロジック、プログラマブル論理デバイスなどのようなプログラム可能なハードウェア・デバイスによって具現化され得る。
モジュールは、様々なタイプのプロセッサによる実行のためにソフトウェアにおいても具現化され得る。実行可能なコードの識別されたモジュールは、例えば、オブジェクト、手続き、または機能として構成され得る、例えば、コンピュータ命令の1つ又は複数の物理的または論理的ブロックを含み得る。それにもかかわらず、識別されたモジュールの実行ファイルは物理的に位置指定される必要がなく、論理的に結合されたとき、モジュールを含み且つモジュールに対する前述の目的を達成する種々のロケーションに格納された異種の命令を含み得る。
実際には、実行可能なコードのモジュールは、単一の命令または複数の命令であってもよく、いくつもの異なるコード・セグメントにわたって、様々なプログラム間で、およびいくつものメモリ・デバイスにまたがって分布されてもよい。同様に、操作上のデータは、モジュール内で識別および説明され得るし、任意の適切な形式で具体化され、任意の適切なタイプのデータ構造内に編成され得る。操作上のデータは、単一のデータ・セットとして収集され得るし、或いは、異なるストレージ・デバイスにわたってまたは異なるロケーションにわたって分布され得るし、少なくとも部分的にシステムまたはネットワーク上の電子信号として存在し得る。
本発明の1つ又は複数の実施例を詳細に説明したが、「特許請求の範囲」に記載されているような本発明の技術的範囲から逸脱することなく、それらの実施例に対する修正およびアダプテーションが行われ得るということは当業者には明らかであろう。

Claims (25)

  1. 電力損失事象に続くメモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)データを保護する方法であって、
    第1のバッファ・モジュールを使用して前記NVSデータの第1の部分を暗号化するステップと、
    しかる後、第2のバッファ・モジュールを使用して前記NVSデータの第2の部分を同時に暗号化しながら前記NVSデータの第1の部分を少なくとも1つの共用ストレージ・デバイスに転送し、しかる後、前記NVSデータの第2の部分を前記少なくとも1つの共用ストレージ・デバイスに転送するステップと、
    を含む方法。
  2. 前記NVSデータの第1の部分を転送するステップおよび前記NVSデータの第2の部分を暗号化するステップが重畳する、請求項1に記載の方法。
  3. 前記第1のバッファ・モジュールを使用して前記NVSデータの第3の部分を暗号化するステップを更に含み、前記NVSデータの第2の部分を転送するステップおよび前記NVSデータの第3の部分を暗号化するステップが重畳する、請求項1または請求項2に記載の方法。
  4. 前記NVSデータの第1の部分を転送するステップおよび前記NVSデータの第2の部分を転送するステップが重畳しない、請求項3に記載の方法。
  5. 前記NVSデータのすべての部分が処理されてしまうまで、前記NVSデータの更なる部分の更なる暗号化および前記NVSデータの更なる部分の更なる転送を行うステップを更に含む、請求項1乃至請求項4のいずれかに記載の方法。
  6. 前記第1のバッファ・モジュールを使用して前記NVSデータの第1の部分を暗号化するステップおよび前記NVSデータの第1の部分を少なくとも1つの共用ストレージ・デバイスに転送するステップはファイア・ホース・ダンプ(FHD)オペレーションの一部分を含む、請求項1乃至請求項5のいずれかに記載の方法。
  7. 前記NVSデータの第1の部分を少なくとも1つの共用ストレージ・デバイスに転送するステップの後に前記第1のバッファ・モジュールをクリアするステップを更に含む、請求項1乃至請求項6のいずれかに記載の方法。
  8. 前記第1のバッファ・モジュールをクリアするステップの後にNVSアドレス・ポインタをインクリメントするステップを更に含む、請求項7に記載の方法。
  9. 前記第1のバッファ・モジュールを使用して前記NVSデータの第1の部分を暗号化するステップの前に前記電力損失事象を検知するステップを更に含む、請求項1乃至請求項8のいずれかに記載の方法。
  10. 電力損失事象に続くメモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)データを保護するためのシステムであって、
    前記プロセッサによって並行して且つ前記メモリ・デバイスとのコミュニケーションにおいて動作し得る第1および第2のバッファ・モジュールを含み、
    前記第1のバッファ・モジュールは、前記NVSデータの第1の部分を暗号化し、しかる後前記NVSデータの前記第1の部分を少なくとも1つの共用ストレージ・デバイスに転送するように適応し、
    前記第2のバッファ・モジュールは、前記NVSデータの前記第1の部分を前記少なくとも1つの共用ストレージ・デバイスに転送すると同時に前記NVSデータの第2の部分を暗号化するように適応し、しかる後、前記NVSデータの第2の部分を前記少なくとも1つの共用ストレージ・デバイスに転送するように更に適応する、
    システム。
  11. 前記NVSデータの前記第1の部分の転送および前記NVSデータの前記第2の部分の暗号化が重畳する、請求項10に記載のシステム。
  12. 前記第1のバッファ・モジュールは、前記NVSデータの第3の部分を暗号化するように更に適応し、前記NVSデータの前記第2の部分の転送および前記NVSデータの前記第3の部分の暗号化は重畳する、請求項10または請求項11に記載のシステム。
  13. 前記NVSデータの前記第1の部分の転送および前記NVSデータの前記第2の部分の転送は重畳しない、請求項12に記載のシステム。
  14. 前記第1および第2のバッファ・モジュールは、NVSデータのすべての部分が処理されしまうまで、NVSデータの更なる部分の更なる暗号化を行い、NVSデータの更なる部分の更なる転送を行うように更に適応する、請求項10乃至請求項13のいずれかに記載のシステム。
  15. 前記第1のバッファ・モジュールを使用して前記NVSデータの前記第1の部分を暗号化する動作および前記NVSデータの前記第1の部分を前記少なくとも1つの共用ストレージ・デバイスに転送する動作はファイア・ホース・ダンプ(FHD)オペレーションの一部分を含む、請求項10乃至請求項14のいずれかに記載のシステム。
  16. 前記第1のバッファ・モジュールは、前記NVSデータの前記第1の部分を前記少なくとも1つの共用ストレージ・デバイスに転送した後、前記第1のバッファ・モジュールをクリアするように更に適応する、請求項10乃至請求項15のいずれかに記載のシステム。
  17. 前記第1のバッファ・モジュールは、前記第1のバッファ・モジュールをクリアした後、NVSアドレス・ポインタをインクリメントするように更に適応する、請求項16に記載のシステム。
  18. 電力損失事象に続くメモリ・デバイスとのコミュニケーションにおいてプロセッサにより不揮発性ストレージ(NVS)データを保護するコンピュータ・プログラムであって、
    第1のバッファ・モジュールを使用して前記NVSデータの第1の部分を暗号化するための第1の実行可能部分と、
    しかる後、第2のバッファ・モジュールを使用して前記NVSデータの第2の部分を同時に暗号化しながら前記NVSデータの第1の部分を少なくとも1つの共用ストレージ・デバイスに転送し、しかる後、前記NVSデータの第2の部分を前記少なくとも1つの共用ストレージ・デバイスに転送するための第2の実行可能部分と、
    を含み、
    前記NVSデータの前記第1の部分を転送する動作および前記NVSデータの第2の部分を暗号化する動作が重畳する、コンピュータ・プログラム。
  19. 前記第1のバッファ・モジュールを使用して前記NVSデータの第3の部分を暗号化するための第3の実行可能部分を更に含み、
    前記NVSデータの第2の部分を転送する動作および前記NVSデータの第3の部分を暗号化する動作が重畳する、請求項18に記載のコンピュータ・プログラム。
  20. 前記NVSデータの第1の部分を転送する動作および前記NVSデータの第2の部分を転送する動作が重畳しない、請求項18又は請求項19に記載のコンピュータ・プログラム。
  21. 前記NVSデータのすべての部分が処理されてしまうまで、前記NVSデータの更なる部分の更なる暗号化および前記NVSデータの更なる部分の更なる転送を行うための第4の実行可能部分を更に含む、請求項19または請求項20に記載のコンピュータ・プログラム。
  22. 前記第1の実行可能部分および前記第2の実行可能部分はファイア・ホース・ダンプ(FHD)オペレーションの一部分を含む、請求項18乃至請求項21のいずれかに記載のコンピュータ・プログラム。
  23. 前記NVSデータの第1の部分を前記少なくとも1つの共用ストレージ・デバイスに転送した後に前記第1のバッファ・モジュールをクリアするための実行可能部分を更に含む、請求項18乃至請求項22のいずれかに記載のコンピュータ・プログラム。
  24. 前記第1のバッファ・モジュールをクリアする動作の後にNVSアドレス・ポインタをインクリメントするための実行可能部分を更に含む、請求項23に記載のコンピュータ・プログラム。
  25. 前記第1のバッファ・モジュールを使用して前記NVSデータの第1の部分を暗号化する前に前記電力損失事象を検知するための実行可能部分を更に含む、請求項18乃至請求項24のいずれかに記載のコンピュータ・プログラム。
JP2011548632A 2009-02-09 2010-01-20 電力損失事象時にnvsデータを迅速に保護する方法、システム、及びコンピュータ・プログラム Active JP5574451B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/368,032 2009-02-09
US12/368,032 US10133883B2 (en) 2009-02-09 2009-02-09 Rapid safeguarding of NVS data during power loss event
PCT/EP2010/050631 WO2010089196A1 (en) 2009-02-09 2010-01-20 Rapid safeguarding of nvs data during power loss event

Publications (2)

Publication Number Publication Date
JP2012517628A true JP2012517628A (ja) 2012-08-02
JP5574451B2 JP5574451B2 (ja) 2014-08-20

Family

ID=42027870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011548632A Active JP5574451B2 (ja) 2009-02-09 2010-01-20 電力損失事象時にnvsデータを迅速に保護する方法、システム、及びコンピュータ・プログラム

Country Status (4)

Country Link
US (1) US10133883B2 (ja)
JP (1) JP5574451B2 (ja)
CN (1) CN102301371A (ja)
WO (1) WO2010089196A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510148A (ja) * 2013-12-31 2016-04-04 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. 分散ファイルストレージシステムにおけるデータ処理の方法およびデバイス
CN106557143A (zh) * 2015-09-28 2017-04-05 伊姆西公司 用于数据存储设备的装置和方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782464B2 (en) * 2011-03-31 2014-07-15 International Business Machines Corporation Method and system for using a standby server to improve redundancy in a dual-node data storage system
US9973335B2 (en) * 2012-03-28 2018-05-15 Intel Corporation Shared buffers for processing elements on a network device
US9141505B1 (en) * 2012-09-27 2015-09-22 Emc Corporation Adaptive failure survivability in a storage system using save time and data transfer after power loss
CN104050115B (zh) * 2014-06-30 2017-02-08 曙光信息产业(北京)有限公司 一种存储控制器及其使用方法
US9659192B1 (en) * 2015-09-10 2017-05-23 Rockwell Collins, Inc. Secure deterministic fabric switch system and method
US10616266B1 (en) 2016-03-25 2020-04-07 Fireeye, Inc. Distributed malware detection system and submission workflow thereof
US10671721B1 (en) * 2016-03-25 2020-06-02 Fireeye, Inc. Timeout management services
US10785255B1 (en) 2016-03-25 2020-09-22 Fireeye, Inc. Cluster configuration within a scalable malware detection system
US10601863B1 (en) 2016-03-25 2020-03-24 Fireeye, Inc. System and method for managing sensor enrollment
US20180217943A1 (en) * 2017-01-30 2018-08-02 Lenovo (Singapore) Pte. Ltd. Automatic Encryption of Failing Drives
US11314659B2 (en) 2017-09-05 2022-04-26 International Business Machines Corporation Using real segments and alternate segments in non-volatile storage
US10521115B2 (en) 2017-09-05 2019-12-31 International Business Machines Corporation Handling cache and non-volatile storage (NVS) out of sync writes
US10761744B2 (en) 2017-09-05 2020-09-01 International Business Machines Corporation Synchronously performing commit records operations
JP6852009B2 (ja) * 2018-03-20 2021-03-31 株式会社東芝 情報処理装置及び情報処理方法
US10656848B2 (en) 2018-06-17 2020-05-19 International Business Machines Corporation Data loss avoidance in multi-server storage systems

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002207713A (ja) * 2001-01-11 2002-07-26 Matsushita Electric Ind Co Ltd Cpu間データ通信方法および装置
JP2002358008A (ja) * 2001-06-04 2002-12-13 Mitsubishi Electric Corp データ暗号化回路
WO2002103984A2 (en) * 2001-06-15 2002-12-27 Informatica Corporation Methods and systems for transferring data over a network
US20050193242A1 (en) * 2004-02-13 2005-09-01 International Business Machines Corporation Apparatus and method to rebuild an NVS image using cache data
JP2008524754A (ja) * 2004-12-21 2008-07-10 サンディスク コーポレーション イン−ストリームデータの暗号化/復号およびエラー訂正の機能を有するメモリシステム
US20080189484A1 (en) * 2007-02-07 2008-08-07 Junichi Iida Storage control unit and data management method

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4731843A (en) * 1985-12-30 1988-03-15 Paradyne Corporation Method and device of increasing the execution speed of cipher feedback mode of the DES by an arbitrary multiplier
US5179662A (en) * 1989-08-31 1993-01-12 International Business Machines Corporation Optimized i/o buffers having the ability to increase or decrease in size to meet system requirements
WO1993026109A1 (en) * 1992-06-17 1993-12-23 The Trustees Of The University Of Pennsylvania Apparatus for providing cryptographic support in a network
US5826029A (en) * 1995-10-31 1998-10-20 International Business Machines Corporation Secured gateway interface
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6295577B1 (en) * 1998-02-24 2001-09-25 Seagate Technology Llc Disc storage system having a non-volatile cache to store write data in the event of a power failure
US6983366B1 (en) * 2000-02-14 2006-01-03 Safenet, Inc. Packet Processor
US20020078342A1 (en) * 2000-09-25 2002-06-20 Broadcom Corporation E-commerce security processor alignment logic
JP4470312B2 (ja) * 2000-10-10 2010-06-02 ソニー株式会社 サーバ装置、再生装置、データ配信方法、データ再生方法、記憶媒体
EP1364509B1 (en) * 2000-12-25 2007-04-18 Matsushita Electric Industrial Co., Ltd. Apparatus and method for security processing of communication packets
US7360076B2 (en) * 2001-06-13 2008-04-15 Itt Manufacturing Enterprises, Inc. Security association data cache and structure
US7536593B2 (en) * 2004-03-05 2009-05-19 International Business Machines Corporation Apparatus, system, and method for emergency backup
US7536506B2 (en) * 2004-06-21 2009-05-19 Dot Hill Systems Corporation RAID controller using capacitor energy source to flush volatile cache data to non-volatile memory during main power outage
US20060041938A1 (en) * 2004-08-20 2006-02-23 Axalto Inc. Method of supporting SSL/TLS protocols in a resource-constrained device
US8281132B2 (en) * 2004-11-29 2012-10-02 Broadcom Corporation Method and apparatus for security over multiple interfaces
US20060212644A1 (en) * 2005-03-21 2006-09-21 Acton John D Non-volatile backup for data cache
US7254686B2 (en) * 2005-03-31 2007-08-07 International Business Machines Corporation Switching between mirrored and non-mirrored volumes
US7620773B2 (en) * 2005-04-15 2009-11-17 Microsoft Corporation In-line non volatile memory disk read cache and write buffer
US8135958B2 (en) * 2005-11-22 2012-03-13 International Business Machines Corporation Method, system, and apparatus for dynamically validating a data encryption operation
US7900022B2 (en) 2005-12-30 2011-03-01 Intel Corporation Programmable processing unit with an input buffer and output buffer configured to exclusively exchange data with either a shared memory logic or a multiplier based upon a mode instruction
US7411757B2 (en) * 2006-07-27 2008-08-12 Hitachi Global Storage Technologies Netherlands B.V. Disk drive with nonvolatile memory having multiple modes of operation
JP4279317B2 (ja) * 2007-01-31 2009-06-17 株式会社日立製作所 データ処理方法及びデータ処理装置
CN100533345C (zh) 2007-08-22 2009-08-26 深圳美凯电子股份有限公司 计算机智能电源***及计算机断电智能处理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002207713A (ja) * 2001-01-11 2002-07-26 Matsushita Electric Ind Co Ltd Cpu間データ通信方法および装置
JP2002358008A (ja) * 2001-06-04 2002-12-13 Mitsubishi Electric Corp データ暗号化回路
WO2002103984A2 (en) * 2001-06-15 2002-12-27 Informatica Corporation Methods and systems for transferring data over a network
US20050193242A1 (en) * 2004-02-13 2005-09-01 International Business Machines Corporation Apparatus and method to rebuild an NVS image using cache data
JP2008524754A (ja) * 2004-12-21 2008-07-10 サンディスク コーポレーション イン−ストリームデータの暗号化/復号およびエラー訂正の機能を有するメモリシステム
US20080189484A1 (en) * 2007-02-07 2008-08-07 Junichi Iida Storage control unit and data management method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510148A (ja) * 2013-12-31 2016-04-04 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. 分散ファイルストレージシステムにおけるデータ処理の方法およびデバイス
US10127233B2 (en) 2013-12-31 2018-11-13 Huawei Technologies Co., Ltd. Data processing method and device in distributed file storage system
CN106557143A (zh) * 2015-09-28 2017-04-05 伊姆西公司 用于数据存储设备的装置和方法
CN106557143B (zh) * 2015-09-28 2020-02-28 伊姆西Ip控股有限责任公司 用于数据存储设备的装置和方法

Also Published As

Publication number Publication date
JP5574451B2 (ja) 2014-08-20
WO2010089196A1 (en) 2010-08-12
US10133883B2 (en) 2018-11-20
US20100202236A1 (en) 2010-08-12
CN102301371A (zh) 2011-12-28

Similar Documents

Publication Publication Date Title
JP5574451B2 (ja) 電力損失事象時にnvsデータを迅速に保護する方法、システム、及びコンピュータ・プログラム
US9665282B2 (en) Facilitation of simultaneous storage initialization and data destage
US6912669B2 (en) Method and apparatus for maintaining cache coherency in a storage system
US8024525B2 (en) Storage control unit with memory cache protection via recorded log
US6003114A (en) Caching system and method providing aggressive prefetch
US8046548B1 (en) Maintaining data consistency in mirrored cluster storage systems using bitmap write-intent logging
KR101055918B1 (ko) 패일오버에 따른 캐시 데이터의 보존
US6513097B1 (en) Method and system for maintaining information about modified data in cache in a storage system for use during a system failure
US11860672B2 (en) Method for supporting erasure code data protection with embedded PCIE switch inside FPGA+SSD
US7185222B2 (en) Apparatus, system, and method for maintaining data in a storage array
US7930588B2 (en) Deferred volume metadata invalidation
US6279138B1 (en) System for changing the parity structure of a raid array
US7228381B2 (en) Storage system using fast storage device for storing redundant data
US20090276654A1 (en) Systems and methods for implementing fault tolerant data processing services
US6983396B2 (en) Apparatus for reducing the overhead of cache coherency processing on each primary controller and increasing the overall throughput of the system
US10564865B2 (en) Lockless parity management in a distributed data storage system
US6128762A (en) Updating and reading data and parity blocks in a shared disk system with request forwarding
TW201411348A (zh) 智慧型主動-主動高可取得性直連式儲存系統
US6446220B1 (en) Updating data and parity data with and without read caches
KR20100131949A (ko) 직접―부착형 저장(das)시스템에서 캐시 데이터의 무결성을 보호하기 위한 방법 및 장치
KR20200041815A (ko) FPGA+SSD 내부의 임베디드 PCIe 스위치로 이레이저 코드 데이터 보호 기능을 지원하는 시스템
US20100180131A1 (en) Power management mechanism for data storage environment
US11163459B2 (en) Rekeying information on storage devices using a proactive copy service
US7484038B1 (en) Method and apparatus to manage storage devices
US20150162102A1 (en) Method and System for Reliable Big Capacity Storage System Protected by Triple Protection

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131224

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131224

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20131224

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20131226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140509

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140509

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140509

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140611

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20140612

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20140612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140626

R150 Certificate of patent or registration of utility model

Ref document number: 5574451

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150