JP2006514374A - 障害からデータ・リポジトリを回復するための方法、データ処理システム、回復コンポーネント、記録媒体およびコンピュータ・プログラム - Google Patents
障害からデータ・リポジトリを回復するための方法、データ処理システム、回復コンポーネント、記録媒体およびコンピュータ・プログラム Download PDFInfo
- Publication number
- JP2006514374A JP2006514374A JP2004570494A JP2004570494A JP2006514374A JP 2006514374 A JP2006514374 A JP 2006514374A JP 2004570494 A JP2004570494 A JP 2004570494A JP 2004570494 A JP2004570494 A JP 2004570494A JP 2006514374 A JP2006514374 A JP 2006514374A
- Authority
- JP
- Japan
- Prior art keywords
- data
- repository
- work
- copy
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- 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/14—Error detection or correction of the data by redundancy in operation
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Other Investigation Or Analysis Of Materials By Electrical Means (AREA)
- Retry When Errors Occur (AREA)
Abstract
【課題】 データ・リポジトリに影響するストレージ障害から回復するための方法、データ処理システム、回復コンポーネント、およびコンピュータ・プログラムを提供することにある。
【解決手段】 その回復処理の少なくとも一部は、データ・リポジトリが新しいデータを受信でき、新しいデータの取出しを許可できる間に実行される。新しいデータ項目は回復処理中にリポジトリ内で受信され、そこから取り出すことができるが、障害前に実行され、その後、回復処理によってリポジトリに復元される、データ・リポジトリに対する更新は、回復作業単位内で復元され、回復作業単位の正常終了まで、回復プロセス以外のプロセスにとってアクセス不能なものになる。この回復処理は、回復されたリポジトリが障害の時点のリポジトリの状態と整合性のあるものであるが、回復処理の完了前に新しいデータ項目の追加および取出しに使用可能であることを保証する。
【解決手段】 その回復処理の少なくとも一部は、データ・リポジトリが新しいデータを受信でき、新しいデータの取出しを許可できる間に実行される。新しいデータ項目は回復処理中にリポジトリ内で受信され、そこから取り出すことができるが、障害前に実行され、その後、回復処理によってリポジトリに復元される、データ・リポジトリに対する更新は、回復作業単位内で復元され、回復作業単位の正常終了まで、回復プロセス以外のプロセスにとってアクセス不能なものになる。この回復処理は、回復されたリポジトリが障害の時点のリポジトリの状態と整合性のあるものであるが、回復処理の完了前に新しいデータ項目の追加および取出しに使用可能であることを保証する。
Description
本発明は、データ処理システム内の障害からの回復に関し、特に、コンピュータ・プログラムおよびデータ処理システム内で実現された回復コンポーネントおよび方法に関する。
非常に信頼性の高いデータ処理システムでも、結果的に1次ストレージ内のデータの紛失または破壊をもたらす、ディスク障害および誤動作またはソフトウェア誤動作などのストレージ障害の影響を受けやすい可能性がある。結果的にデータの永続的紛失をもたらすこのような障害を回避するために、保管データのバックアップ・コピーの作成と、最新バックアップ以降の保管データに対する更新を記述するログ・レコードの作成を含む、回復機能を提供することが知られている。
IBM社のMQSeries(商標)およびWebSphere(商標)MQファミリのメッセージング・プログラム(messaging product)を含む、いくつかの通信マネージャ・ソフトウェア(software product)は、センダ(sender)とレシーバ(receiver)との間のメッセージの転送中にメッセージ・キューまたはデータベース・テーブルなどのデータ・リポジトリにメッセージを保管するための機能を提供する。他のデータ処理システムおよびコンピュータ・プログラムの場合のように、重大メッセージの紛失を回避し、アプリケーション・プログラム・タスクが正常に完了できることを保証するために、潜在的なシステムまたはプログラム障害から回復するための解決策が必要である。
キュー・マネージャ・プログラムがキュー間のメッセージの転送を処理するメッセージ・キューイング・システムでは、そのメッセージを保持するために使用される1次ストレージが障害を起こしたときに、キュー・マネージャ・プログラム内の回復機能がキューおよびそのメッセージ内容を回復することが知られている。この回復機能は、キューの最終状態がストレージ障害の時点と同じになるように、キューにメッセージを復元する。これらの回復機能は、キューのバックアップ・コピーからメッセージ・キューとその内容のスナップショットを再作成し、次に、キュー・マネージャのログ・レコードを参照してそのキューに対する変更を再適用する。このような既知の解決策では、キュー・マネージャは、任意のメッセージがキューから取り出される前に、しかも任意の新しいメッセージがキューに追加される前に、回復処理を完了しなければならない。これにより、回復後のキューの状態が障害の時点のキューの状態と同じになることと、障害の結果としてメッセージの順序付けが失われないことが保証される。
しかし、このような解決策について残っている問題は、回復処理が進行中である間、メッセージング機能とメッセージ・リポジトリが使用不能になることである。多くのアプリケーションでは、最適メッセージ可用性を必要とするが、メッセージング・システムが保証された1回のみのメッセージ送達を提供するという競合する諸要件がある。あるアプリケーションが回復処理中にキューにアクセスすることが許可されている場合、そのアプリケーションによって単一メッセージが2回処理される可能性があるという危険性がある。単一資金転送命令に応答して自分の口座から資金が引き落とされた銀行の顧客は、非常に不満になるであろう。
2002年4月23日にCarlsonに対して公布された米国特許第6377959号(特許文献1)には、2つの重複データベースのいずれか一方の障害および回復中に着信トランザクションを処理し続けるトランザクション処理システムが記載されている。2つの重複データベースの一方には「アクティブ」状況が割り当てられ、もう一方は「冗長」状況で維持される。すべての着信照会はアクティブ・データベースのみに送信され、すべての着信更新はアクティブ・データベースと冗長データベースの両方に送信される。一方のデータベースが障害を起こすと、もう一方はアクティブ状況が割り当てられ(すでにアクティブになっていない場合)、障害を起こしたデータベースの修復および再始動中に着信照会および更新を処理し続ける。障害を起こしたデータベースの修復および再始動は、アクティブ・データベースの単一パススルーの際にインターリーブされたコピーおよび更新操作の使用を伴う。着信更新およびコピー操作のインターリービングはキューしきい値処理方法により実行されるが、この方法は着信トランザクション更新の数に応答してコピー操作を制御する。トランザクション処理システムは、障害活動および回復活動のいずれでも相変わらず動作可能である。完全レプリカが維持されているので、ログ・レコードはデータベースの一方が障害を起こしたときにのみ作成され、そのデータベースが修復中である間、障害を起こしたデータベースへのアクセスは不要である。連続可用性は大いに望ましいものであるが、この解決策は、2つのデータベース・システムのそれぞれの動作状況(アクティブまたは冗長)の交換可能性を備えた2つの完全なデータベース・レプリカを維持するという相当な処理および記憶のオーバヘッドを有する。さらに、複製は一般にソフトウェア破壊に対する保護を行わず、したがって、情況によっては複製に加えて回復操作が必要になる。
米国特許出願公報第2002/0049776号(Aronoff他のために2002年4月25日に公開、特許文献2)も、高可用性のために複製されたデータベースに関する。この文書には、ターゲット・データベースの回復後に複製を再開し、回復中にすでにターゲット・データベースに適用された失効トランザクションをパージすることにより、障害後にソース・データベースとターゲット・データベースを再同期するための方法が記載されている。
代替手法は、2002年3月5日にWong他に対して公布された米国特許第6353834号(特許文献3)に記載されており、同特許では、メッセージ・キューイング・システムは、単一ディスク上の単一ファイル内にまとめてクラスタ化された、メッセージとそのメッセージに関する状態情報を保管する。このシステムは、3つの異なるディスク(データ・ディスク、索引構造ディスク、およびログ・ディスク)への更新の書込みを回避することにより、効率の良いデータの書込みを達成することが意図されている。制御情報、メッセージ・ブロック、およびログ・レコードを入力するために、キュー項目マップ・テーブルが使用される。米国特許第6353834号(特許文献3)は既存のRAID技術およびデータの重複書込みの使用に言及しており、それがない場合、記載されたシステムは、結果的に単一ディスク上に保持されたデータの紛失をもたらすストレージ障害に対する保護をまったく行わない。
米国特許第6377959号
米国特許出願公報第2002/0049776号
米国特許第6353834号
国際特許出願公報第WO95/10805号
米国特許第5465328号
米国特許出願第09/605589号
米国特許出願第09/912279号
米国特許出願第10/228615号
米国特許出願第10/228636号
米国特許出願第10/256093号
米国特許出願第09/677339号
米国特許出願第09/677341号
1994年にMcGraw−Hillから発行されたB.Blakeley、H.Harris、およびR.Lewisによる「Messaging and Queuing Using the MQI」
「An Introduction to Messaging and Queuing」(IBM社の文書番号GC33−0805−00)
「MQSeries − Message Queue Interface Technical Reference」(IBM社の文書番号SC33−0850−01)
本発明の諸態様は、データ・リポジトリに影響する障害から回復するための方法、データ処理システム、回復コンポーネント、およびコンピュータ・プログラムを提供し、その回復処理の少なくとも一部は、データ・リポジトリが新しいデータを受信でき、このような新しいデータの取出しを許可できる間に実行される。この障害は、結果的に1次ストレージ・メディア上のデータ・リポジトリ内のデータの紛失または破壊をもたらす、ハードウェア障害あるいは誤動作またはソフトウェア誤動作である可能性がある。
新しいデータ項目(すなわち、障害後に受信したもの)は回復処理中にリポジトリ内に受信し、そこから取り出すことができるが、障害前に実行され、その後、回復処理によってリポジトリに復元される、データ・リポジトリに対する更新は、回復処理の完了までアクセス不能なものになる。この回復処理は、回復されたリポジトリが障害の時点のリポジトリの状態と整合性のあるものであることも保証しながら、データ・リポジトリの高速可用性を達成することができる。
第1の態様では、本発明は、データ・リポジトリの1次コピーに影響する障害からデータ・リポジトリを回復するための方法であって、データ・リポジトリの1次コピーとそれに保持されたデータ項目を再作成するために十分なデータの2次コピーを維持するステップと、データ・リポジトリの1次コピーに影響する障害に応答して、2次データ・コピーからデータ・リポジトリの1次コピーを再作成するステップと、復元プロセスを使用して回復作業単位内で2次コピーから1次コピーにデータ項目を復元するステップであって、回復作業単位のコミットまで、回復作業単位内でデータ・リポジトリの1次コピーに復元されたデータ項目が復元プロセス以外のプロセスにとってアクセス不能である、復元するステップと、回復作業単位のコミット前に、前記復元ステップから独立してデータ・リポジトリへのデータ項目の追加を可能にし、復元プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、データ・リポジトリの1次コピーを構成するステップと、復元ステップの正常終了に応答して、復元データの前記アクセス不能性を解除することを含む、回復作業単位をコミットするステップとを含む方法を提供する。
本発明の好ましい一実施形態によれば、メッセージング・システムの通常転送処理中のメッセージ・リポジトリに対する更新は、リポジトリにメッセージを追加するメッセージ送信操作と、メッセージを削除するメッセージ取出し操作とを含む。これに関連する「メッセージ・リポジトリ」は、メッセージ・キュー、データベース・テーブル、またはメッセージあるいはメッセージ・キューを保持する任意のその他のデータ構造にすることができる。メッセージ・リポジトリに影響する障害後に、メッセージ・リポジトリが空状態で再作成され、次に、好ましくはリポジトリのバックアップ・コピーおよびログ・レコードを参照することにより、送信および取出し操作がリポジトリに再適用される。メッセージ・リポジトリは予備回復ステップとして再作成され、メッセージング機能は回復の完了前にメッセージ・リポジトリとの間で新しいメッセージを転送することができる。バックアップ・ストレージおよびログ・レコードからの再適用操作を伴うメッセージ・リポジトリに対する更新は、回復作業単位のコミットされていない操作として処理され、回復作業単位の完了時にのみコミットされる(すなわち、整合性検査が実行され、更新が最終的なものになり、他のプログラムにとってアクセス可能なものになる)。回復作業単位は、メッセージ・リポジトリの内容を障害の時点のリポジトリの状態と整合性のある状態に復元するために(メッセージ・リポジトリの再作成後に)必要な1組の操作を含む。メッセージ・リポジトリは、それが再作成され次第、新しいメッセージの受信に使用可能になり、回復作業単位内でキューに復元される任意のメッセージは、回復作業単位の完了までターゲット・アプリケーション・プログラムによってリポジトリから取り出すことができない。
本発明は、データ項目がデータ・リポジトリに追加されたのと同じ順序でデータ項目を処理することが不可欠ではないアプリケーションに有用である。第1のアプリケーション例では、各データ項目またはメッセージは、特定のタスクの実行に関する要求である。タスクを実行する順序が重大ではない場合、前の要求がすべて回復されるのを待たずに、新しい要求をリポジトリ上に受信し、処理することができる。
本発明の一実施形態は、センダとレシーバとの間でメッセージを転送するためのデータ通信システムであって、メッセージがメッセージ送信操作後にメッセージ・リポジトリ内に保持され、その後、レシーバに送達するためにリポジトリから取り出される、データ通信システムを提供する。リポジトリのバックアップ・コピーは、作成され、定期的にまたは事前定義イベントに応答して更新され、ログ・レコードは、最新バックアップ操作以降に発生したイベントを含め、メッセージのトランザクション状態に対する更新を含むメッセージ送信およびメッセージ取出しイベントを記録するために作成される。このシステムは、メッセージ・リポジトリの1次コピーに影響するストレージ障害に応答して、データ・リポジトリの1次コピーを再作成する操作ステップと、リポジトリのバックアップ・コピーおよびログ・レコードを参照することにより1次コピーにデータ項目を復元する操作ステップとを実行するようにデータ通信システムを制御するように適合された回復コンポーネントを含む。バックアップ・コピーおよびログ・レコードは、障害前に通常転送処理中に作成されている。このシステムは、回復処理の完了を待たずに、新しいメッセージをリポジトリに追加し、そこから取り出すことを可能にするように構成される。バックアップ・コピーまたはログ・レコードを参照することによりリポジトリに復元されたメッセージおよびリポジトリに適用された更新は、障害前に実行された送信および取出し操作に対応するすべてのメッセージ・リポジトリ更新がメッセージ・リポジトリに再適用されるまで、リトリーバ(retriever)にとってアクセス不能なものになる。これに関連する「新しいメッセージ」は、障害後に初めてリポジトリに追加されるメッセージである。障害前にキューに追加され、その後、障害後にキューに復元されたメッセージは、以下では「古いメッセージ」と呼ばれる。
多くの既知の通信解決策に関するもう1つの問題は、回復処理が実行されている間にデータがリポジトリに蓄積し、おそらく結果的にリポジトリ(またはリポジトリ内の構造)が「満杯」条件に到達する傾向である。その結果として、これを防止するために重大な追加処理が行われない限り、何らかのデータ通信がセンダに返されるかまたは中間ネットワーク・ロケーションに蓄積することになる可能性がある。上述の解決策による可用性の改善はこの問題に対処するために役に立つが、さらに追加の改善を達成することができる。
本発明の他の諸実施形態は、データ・リポジトリに影響するストレージ障害からの回復の方法を実行するための方法、データ処理システム、コンピュータ・プログラムおよび回復コンポーネントであって、通常転送処理においてリポジトリに適用されたデータ更新がトランザクション作業単位内で適用されるシステムで使用するための方法、データ処理システム、コンピュータ・プログラムおよび回復コンポーネントを提供する。データ・リポジトリの1次コピーに影響するストレージ障害後に、データ・リポジトリの1次コピーにデータ項目を復元するために必要な操作は、2次ストレージに関して識別されるが、各識別済み操作に関する対応する元の作業単位の障害の時点での状態について決定が行われるまで据え置かれる。次に復元操作は、元の作業単位の決定された状態に応じて適宜、実行または廃棄される。
さらに、メッセージ・リポジトリに対する1対の更新がメッセージの追加および同じメッセージの取出しに対応し、その1対の更新が障害前に完了している場合、リポジトリを不整合状態で放置するというリスクなしに、その1対の操作を回復処理内でまとめて実行することができる。本発明の好ましい一実施形態では、このような「追加/取出し」操作対は、ログ・レコードが適用されるときに識別される。これらの操作対は復元処理から省略される(すなわち、キューに対するそれらの影響は相互に打ち消し合うので、1対として実行されたものと見なされる)か、または回復作業単位の範囲外で実行されコミットされる。これらのオプションのそれぞれは、不必要な処理を回避し、潜在的なメッセージの蓄積を低減する。
本発明の好ましい諸実施形態は、キューのバックアップ・コピーおよびログ・レコードから共用キューへの古いメッセージ(キュー障害前からのメッセージ)の回復を含む、共用キュー・メッセージング・システム内の1次ストレージ障害からの回復を可能にする。共用キューは、古いメッセージ・リポジトリ更新がログ・レコードから復元されている間に新しいメッセージ(障害後にキューに送信されたメッセージ)を処理する1つまたは複数のアプリケーション・プログラムによって使用中である可能性がある。このメッセージ回復は、復元処理全体を単一作業単位として処理することにより、保証された1回のみのメッセージ送達も提供しながら、実行することができる。
キューへのメッセージの復元中にメッセージをキューに追加し、キューから取り出すことを可能にすることにより、本発明は、ストレージ障害後にメッセージング機能の可用性の改善を達成することができる。
本発明の他の一態様は、データ・リポジトリの1次コピーを保管するためのデータ・ストレージと、データ・リポジトリを表すデータの2次コピーを保管するための2次データ・ストレージであって、その2次データがデータ・リポジトリの1次コピーとそれに保持されたデータを回復するために十分である2次データ・ストレージと、データ・リポジトリの1次コピーに影響するストレージ障害から回復するようにデータ通信システムの動作を制御するための回復コンポーネントであって、回復コンポーネントが、2次データ・コピーからデータ・リポジトリの1次コピーを再作成するステップと、復元プロセスを使用して1次コピーにデータ項目を復元するステップであって、復元ステップが回復作業単位内で実行され、回復作業単位のコミットまで、回復作業単位内でデータ・リポジトリの1次コピーに復元されたデータ項目が復元プロセス以外のプロセスにとってアクセス不能なものになるステップと、回復作業単位のコミット前に、前記復元ステップから独立してデータ項目の追加を可能にし、回復コンポーネント以外のコンポーネントが前記独立して追加されたデータ項目にアクセスすることを可能にするように、データ・リポジトリの1次コピーを構成するステップと、復元ステップの正常終了に応答して、復元データの前記アクセス不能性を解除することを含む回復作業単位をコミットするステップとを実行するようにデータ通信システムを制御するように動作可能である回復コンポーネントとを含む、データ通信システムを提供する。
上述の方法および回復コンポーネントは、そこでプログラム・コードが実行されるデータ処理装置の実行を制御するためのコンピュータ・プログラム内で実現することができる。このプログラム・コードは、記録媒体上に記録されたプログラム・コードとして市販可能なものにするか、またはインターネットなどのネットワークを介してダウンロード可能なものにすることができる。
一例として、添付図面に関して、本発明の諸実施形態について以下に詳細に説明する。
センダ・プログラムがメッセージを送信するステップと、リトリーバ・プログラムがメッセージを取り出すステップとの間でメッセージがメッセージ・リポジトリにキューイングされる非同期メッセージ通信システムに関して、本発明の第1の実施形態について以下に説明する。キューを再作成し、キュー上にメッセージを回復するために回復機能が使用可能でないかぎり、1次ストレージの障害は、メッセージ・データの紛失または破壊を引き起こす可能性がある。その他のデータ・リポジトリに適用可能であるが、本発明はメッセージ・キューに特に適用可能である。というのは、メッセージ・キューは概して、メッセージが追加され、その内容が更新され、その後、最終的に削除されるのではなく、追加され、その後、削除される別個の独立項目(メッセージ)を収容するからである。
当業者にとって明らかになるように、本発明の特定の諸実施形態は、障害の結果、データベース・テーブル内のデータの紛失または破壊をもたらし、したがって、データベース・テーブルの再作成およびそのテーブルへのデータ項目の復元を必要とする可能性がある、データベース環境で等しく適用可能である。また、本発明の諸実施形態は、ハードウェアまたはソフトウェア障害が、たとえば、バックアップ・ストレージおよびログ・レコードからのデータ・リポジトリの回復を必要とし、回復処理が実行されている間にデータ・リポジトリの可用性の喪失を最小限にする必要がある、その他のデータ処理環境でも適用可能である。
1次ストレージ・メディア上のデータの紛失または破壊は、ハードウェア障害あるいは誤動作、ソフトウェア誤動作、または人間のエラー(キューおよびそのすべてのメッセージの偶発的な削除など)によって発生する可能性がある。参照しやすくするため、データ・リポジトリに影響するこれらの種々のタイプの障害のすべては以後、「ストレージ障害」と呼ぶことにする。紛失または破壊が単一キューまたはデータベース・テーブルまたはファイルのみに影響する場合もあれば、障害が単一結合機能リスト構造内に保持された複数のキューなどの2つ以上のキュー(またはテーブルなど)に影響する場合もある(以下のCFリスト構造の説明を参照されたい)。典型的なケースでは、CFリスト構造に影響する障害は、単一キューではなく、CFリスト構造上のすべてのキューに影響することになる。
メッセージング環境
IBM社のMQSeries(商標)およびWebSphere(商標)MQファミリのメッセージング・プログラムは、分散異機種環境内の種々のシステム上で実行可能な複数アプリケーション・プログラム間の相互協調処理をサポートするためにメッセージ・キューイングを使用する既知のプログラムの例である。
IBM社のMQSeries(商標)およびWebSphere(商標)MQファミリのメッセージング・プログラムは、分散異機種環境内の種々のシステム上で実行可能な複数アプリケーション・プログラム間の相互協調処理をサポートするためにメッセージ・キューイングを使用する既知のプログラムの例である。
メッセージ・キューイングおよび市販のメッセージ・キューイング・プログラムについては、1994年にMcGraw−Hillから発行されたB.Blakeley、H.Harris、およびR.Lewisによる「Messaging and Queuing Using the MQI」(非特許文献1)ならびに「An Introduction to Messaging and Queuing」(IBM社の文書番号GC33−0805−00、非特許文献2)および「MQSeries − Message Queue Interface Technical Reference」(IBM社の文書番号SC33−0850−01、非特許文献3)というIBM社から入手可能な資料に記載されている。それを介して複数コンピュータがメッセージ・キューイングを使用して通信するネットワークは、インターネット、イントラネット、または任意のコンピュータ・ネットワークにすることができる。MQSeriesおよびWebSphereはIBM社の商標である。
トランザクション処理システムにおいて周知の通り、「作業単位」は、データ保全性が失われないことを保証するために、まとめて正常に実行しなければならない1組の処理操作であるか、またはその1組の操作全体を完了できない場合にすべてがバックアウトされる1組の処理操作である。1つの作業単位内のすべての操作は、その作業単位全体の解決によってすべての更新をコミットする(すべてをファイナライズし、アクセス可能なものにする)ことができるまで、更新を当てにする可能性のある他のプロセスからアクセス不能状態に保持される。
IBM社のMQSeriesおよびWebshere MQメッセージング・プログラムは、システムまたは通信障害の場合にも保証された1回のみのメッセージ送達を行うメッセージング・プロトコルにより作業論理単位内でメッセージを同期化して、トランザクション・メッセージング・サポートを提供する。この保証された送達は、メッセージがレシーバ・システムによって安全に保管されたものとして確認されるまで最終的にセンダ・システム上のストレージからメッセージを削除しないことにより、そして精巧な回復機能の使用により、達成される。正常な保管を確認次第、メッセージの転送のコミットメント前に、センダ・システムのストレージからのメッセージの削除と、レシーバ・システムのストレージへの挿入の両方には、コミットされていない(「未完了(in-flight)」または「未確定(in-doubt)」操作としてのフラグが立てられ、障害の場合にアトミックにバックアウトすることができる。このメッセージ伝送プロトコルと、関連のトランザクション概念および回復機能については、国際特許出願公報第WO95/10805号(特許文献4)および米国特許第5465328号(特許文献5)に記載されている。
IBM社のMQSeriesおよびWebshere MQプログラムのプログラム間通信機能は各アプリケーション・プログラムが任意の他のターゲット・アプリケーション・プログラムの入力キューにメッセージを送信することを可能にし、各ターゲット・アプリケーションは処理のためにその入力キューからこれらのメッセージを非同期に取ることができる。これは、アプリケーション・プログラム間の専用論理エンドツーエンド・コネクションを必要とせずに、分散異機種コンピュータ・ネットワーク間に分散可能なアプリケーション・プログラム間でメッセージの送達を達成する。
OS/390キュー・マネージャ・ソフトウェア用のIBM社のMQSeriesの最新バージョンは、共用キュー用の1次ストレージとしてOS/390結合機能(CF)リスト構造を使用して、共用キューのためのサポートを提供する。共用キュー上のメッセージは、CFリスト構造内のリスト項目として保管される。並列シスプレックス内のどこかで同じキュー共用グループ内の複数キュー・マネージャ上で実行される複数アプリケーションはこれらの共用キュー・メッセージにアクセスすることができ、メッセージは割り振られた基本キー(primary key)の順序でアクセスされる。結合機能の観点から見ると、基本キーの割振りはキュー・マネージャによって任意に決定され、各メッセージに関連付けられる。全体的な順序が取出しのために正しい順序になるように、キュー・マネージャは各メッセージごとにキーを設定する(以下に記載する通り、例外を除いてFIFO順序付けを適用する)。
メッセージは次に使用可能なアプリケーションによって取り出されるので、特定のキューへのこのような共用アクセスは、冗長性(そのグループ内の1つまたは複数のキュー・マネージャに影響する障害に対する耐性)による高可用性および自動ワークロード・バランシングというメリットを有する。これは、高いメッセージ・スループットに適した高スケーラブル・アーキテクチャをもたらす。
この実施形態は上述のシステム・アーキテクチャに適用可能であり、この環境で実行される多くのアプリケーションは高可用性を必要とするので実際に有益であるが、代替ストレージ構造が使用される場合、本発明の諸実施形態も適用可能である。以後、メッセージ・リポジトリという用語は、CFリスト構造、データベース・テーブル、またはその他の既知の構造のいずれで実現されるかにかかわらず、メッセージを保持することができるメッセージ・キューおよびその他のデータ構造を指すために使用する。
上記の通り、OS/390オペレーティング・システム環境内のメッセージ・キューイング・システムは、CFリスト構造を介して複数キュー・マネージャのキュー共用グループにとって使用可能なものにすることができる共用キューに関するサポートを提供する。このようなシステム内での使用に適したいくつかの回復機能を含む、このようなシステムに適用可能なシステム・コンポーネント、データ構造、および方法については、以下に示す同時係属で本出願人に譲渡された特許出願の明細書に記載されており、その特許出願のそれぞれは参照により本明細書に組み込まれる。
●米国特許出願第09/605589号(英国特許出願第0009989.5号に対応、代理人参考文献GB920000031、特許文献6)
●米国特許出願第09/912279号(代理人参考文献GB920000032、特許文献7)
●米国特許出願第10/228615号(英国特許出願第0207969.7号に対応、代理人参考文献GB920010101、特許文献8)
●米国特許出願第10/228636号(英国特許出願第0207967.1号に対応、代理人参考文献GB920020001、特許文献9)
●米国特許出願第10/256093号(英国特許出願第0208143.8号に対応、代理人参考文献GB920020015、特許文献10)
●米国特許出願第09/605589号(英国特許出願第0009989.5号に対応、代理人参考文献GB920000031、特許文献6)
●米国特許出願第09/912279号(代理人参考文献GB920000032、特許文献7)
●米国特許出願第10/228615号(英国特許出願第0207969.7号に対応、代理人参考文献GB920010101、特許文献8)
●米国特許出願第10/228636号(英国特許出願第0207967.1号に対応、代理人参考文献GB920020001、特許文献9)
●米国特許出願第10/256093号(英国特許出願第0208143.8号に対応、代理人参考文献GB920020015、特許文献10)
以下に記載する本発明の実施形態は、上記でリストされ、本明細書に組み込まれる参考文献に記載された回復機能と互換性のあるものである。
リスト構造内でメッセージ・キューを実現し、リスト構造を処理するための方法および装置、ならびに独特のキーを使用して操作状態間を差異化するための解決策については、2000年10月2日に出願され、「Method and Apparatus for Processing a List Structure」という発明の名称の米国特許出願第09/677339号(代理人参考文献POU920000043、特許文献11)および2000年10月2日に出願され、「Method and Apparatus for Implementing a Shared Message Queue Using a List Structure」という発明の名称の米国特許出願第09/677341号(代理人参考文献POU920000042、特許文献12)という同時係属で本出願人に譲渡された特許出願の明細書に記載されており、その特許出願のそれぞれは参照により本明細書に組み込まれる。
図1は、複数コンピュータ80の分散ネットワーク内のキュー・マネージャ・プログラム30の制御下でメッセージがキュー20間で転送されるメッセージング・ネットワーク10を概略的に示している。センダ・アプリケーション・プログラム40はそのローカル・キューにメッセージを書き込み、ターゲット・アプリケーション・プログラム50はその入力キューからメッセージを取り出し、永続メッセージの紛失なしにネットワークを越えてターゲット・アプリケーション・プログラムの入力キューにメッセージを転送するという作業のすべては、キュー・マネージャ30によって処理される。各キュー・マネージャは、そのローカル・キューのバックアップ・コピー60を維持し、メッセージが追加あるいは削除されるかまたはその状態が変更されたときに必ず更新を反映するようにログ・レコード70を作成する。
図2は、結合機能(CF)リスト構造110内に保持されたキュー100に共用アクセス可能な複数キュー・マネージャ30のグループを示している。CFリスト構造は両方向に、すなわち、キュー共用グループへおよびキュー共用グループから、メッセージをキューイングするために使用する。共用キューの1次コピーに加えて、2次バックアップ・コピー60がディスク120上に保持される。そのキューのバックアップ・コピーは、キュー定義情報と、バックアップの時点でそのキュー上に保持されているすべてのメッセージに関する情報とを有し、そのディスクに定期的に保管される。ログ・レコード70は、CFリスト構造内のキューに対する更新ごとにディスク120に書き込まれる。最後のバックアップ以降のすべての更新を反映するバックアップ・コピーとログ・レコードとの組合せは、メディア障害に応答してキューの1次コピーの再作成を可能にする。
ログ・レコードは、実行された操作(挿入、削除、または更新状態)の表示と関連メッセージ用の固有キーとを収容し、そのキーはメッセージがCFに追加される時点で生成される。挿入操作の場合(および、ある実現例では更新操作の場合)、ログ・レコードは、メッセージの完全な内容も収容する。削除操作用のログ・レコードは、データベース・レコードの内容を収容しない。ある実現例では、更新操作の場合、変更を追跡するために必要な情報のみがログ記録される。
可用性の改善を伴う回復
あるコンピュータ・システムおよびアプリケーションは、データ・リポジトリに対する「順不同(out-of-sequence)」更新を許容することができる。すなわち、システムは、リポジトリ内の更新の順序が更新が追加された順序を正確に反映していない場合でも、正しく機能する。これは、アプリケーション・プログラム間のメッセージ送達を処理するときに、キューとの間でメッセージを転送するためにメッセージ・キュー・マネージャを使用する、あるシステムおよびアプリケーションに当てはまる。
あるコンピュータ・システムおよびアプリケーションは、データ・リポジトリに対する「順不同(out-of-sequence)」更新を許容することができる。すなわち、システムは、リポジトリ内の更新の順序が更新が追加された順序を正確に反映していない場合でも、正しく機能する。これは、アプリケーション・プログラム間のメッセージ送達を処理するときに、キューとの間でメッセージを転送するためにメッセージ・キュー・マネージャを使用する、あるシステムおよびアプリケーションに当てはまる。
本発明の発明者は、障害後にキュー上のデータの回復の完了前に新しいメッセージをキューに追加し、キューから取り出すことを可能にすることにより、このようなシステムおよびアプリケーションが可用性の改善の恩恵を受ける可能性があることを認識していた。しかし、これを達成する前に、いくつかの問題を克服しなければならない。
アプリケーションがログ・レコードの再生によりキューに復元されている古いメッセージに並行して新たに作成されたキューにアクセスすることが可能になっている場合、同じメッセージがそのアプリケーションによって2回処理される可能性があるという危険性がある。たとえば、メッセージがキューに追加され、その追加操作がコミットされ、次にそのメッセージがキューから取り出される場合がある。ほとんどのケースでは、取出し操作がコミットされると、メッセージはキューから削除される。キュー・ストレージ障害が発生した場合、そのキューはバックアップ・ストレージから再作成することができ、続いてログ・レコードからのキューに対する更新を再適用することができる。ログ再生中に、メッセージはキューに復元され、追加操作のコミットが再生されるとリトリーバ・アプリケーションにとって使用可能なものになり、メッセージ取出し操作が再生されると消失する。しかし、アプリケーション・プログラムが回復中にキューにアクセスできる場合、アプリケーション・プログラムは、それが使用可能なものになり次第(すなわち、メッセージ取出しログ・レコードの再生前に)、メッセージを取り出すことができ、すでに以前に処理されたメッセージを処理することができる。
上記の一連のイベントおよびその他の例の結果、保証された1回のみのメッセージ送達から受諾不能な逸脱が発生する可能性がある。
この問題に対する解決策については以下に記載するが、これは、保証された1回のみのメッセージ送達から逸脱せずに、新しいメッセージを処理しているアプリケーションによって共用キューが使用中である間に共用キューにメッセージを回復することにより、1次ストレージ障害から回復することができる。これに関連する「新しいメッセージ」は、障害後に初めてキューに追加されるメッセージである。「古いメッセージ」は、障害前にキューに追加され、障害後にキューに復元されるメッセージである。
回復作業単位内の回復処理
この実施形態では、復元プロセスは回復作業単位として実行される。すなわち、キューにメッセージを復元するステップと、ログを再生することによりバックアップ・ストレージからキュー上のメッセージの状態を更新するステップからなるシーケンスは、新たに定義された作業単位の範囲内で実行されコミットされる。
この実施形態では、復元プロセスは回復作業単位として実行される。すなわち、キューにメッセージを復元するステップと、ログを再生することによりバックアップ・ストレージからキュー上のメッセージの状態を更新するステップからなるシーケンスは、新たに定義された作業単位の範囲内で実行されコミットされる。
たとえば、同期点外(out-of-syncpoint)メッセージ「Put」操作(キューにメッセージを追加すること)または「Get」操作(キューからメッセージを取り出すこと)を再生するアクションまたは同期点内(in-syncpoint)PutまたはGetのコミットを再生するアクションは、その回復作業単位内で同期点内PutおよびGetとして実行される。その回復作業単位は、キューにメッセージを復元し、これらのメッセージの状態を変更する操作を再生するプロセス全体をカバーする。
作業単位は、1組の操作によって影響されるデータがその1組の操作の実行終了時に整合状態で放置される場合にまとめて実行しなければならない(またはまったく実行してはならない)1組の操作である。同期点は、データが整合状態になっている処理内の識別可能な点であり、同期点は、この整合性の点を記録するための各作業単位の終了時に記録される。記録された同期点の参照により、データ整合性の点に戻るために、どのくらいの長さの時間の間、処理をロールバックするかに関する決定を行うことができる。単一トランザクションは、単一作業単位として処理されるいくつかのPut_Message操作およびGet_Message操作を含むことができる。そのトランザクションがコミットされると、キュー上にPutされたメッセージが取出し可能メッセージとしてキュー上に現れ、それに関してGet操作が実行されたメッセージが最終的に削除されるように、作業単位内のすべてのPutおよびGet操作がファイナライズされる。しかし、あるトランザクション・システムでは、トランザクションの最終解決を待たずに直ちに効力を生じるように特定のPut_Message操作およびGet_Message操作を行うことができ、これらは「同期点外」PutおよびGet操作と呼ばれる。
上記の通り、障害は単一キューに影響する場合もあれば、複数キュー(たとえば、特定のCFリスト構造内のすべてのキュー)に影響する場合もある。複数キューを回復しなければならない場合、回復プロセスの単一呼出しによって影響を受けたすべてのキューの回復を開始することが望ましい。処理効率の改善は、1組の影響を受けたキューを再作成し、次に1組の影響を受けたキュー全体に関するメッセージおよびメッセージ更新の復元を包含する単一回復作業単位を実行することによって達成することができる。
回復プロセスは、1つまたは複数のどのようなログが回復中の1つまたは複数のキューに対する変更に関する情報を収容していても、その1つまたは複数のログにアクセスでき、それを使用する。共用キュー環境では、各キュー・マネージャはそれ自体の物理的に分離したログを維持していることになりそうであり、各ログは1組のファイルを有することができる。回復プロセスは、すべてのログを並行して読み取り、単一統合ログを論理的に構築することができる。単一統合ログ(一般に、単一物理ファイルとして存在しないもの)は、回復中の1つまたは複数のキューに対する変更ならびに障害によって影響を受けていない他のキューに対する変更のすべてを収容する。復元プロセスは、現行回復処理に不要なキューに対する変更を無視する。
特定の一連の回復処理操作については、図3に関連して以下に詳細に説明する。参照しやすくするため、以下の回復処理の説明では、単一キューを回復する例について記載する。
この方法の第1のステップ200は、ストレージ障害の識別である。多くのケースでは、データ・リポジトリを使用するソフトウェアは、ハードウェア(たとえば、アクセス不能である可能性があるもの)またはオペレーティング・システムあるいはJava(登録商標)仮想マシン(アクセスが試行されるとエラー表示を返す可能性のあるもの)などのその他のランタイム環境によって、データが紛失または破壊されていることを認識させられることになる。好ましい実施形態では、データ・リポジトリを使用するソフトウェアは、ソフトウェアが問題を認識すると、200で回復処理を自動的に開始する。特に、障害を起こした1つまたは複数のキューを使用するキュー・マネージャ・プログラムは、キュー・マネージャの1つのコンポーネントである回復プロセスを始動することにより、特定の1組のエラー条件に応答する。
代替諸実施形態では、障害に応答して適切なエラー通知を提示するように、すなわち、回復処理を手動で開始するために人間の介入を促すように、ソフトウェアを作成することができる。さらに、偶発的なまたは悪意のあるデータの削除のためにストレージ障害が発生した場合に回復を開始するためには一般にオペレータ・アクションが必要になる。
障害の識別に応答して開始されると、回復プロセスは、2次ストレージにアクセスし、210で障害を起こしたキュー(複数も可)に対応するキュー定義のバックアップ・コピーを取り出し、取り出した定義を使用して210で1次ストレージ内にそのキューの空のコピーを再作成する。
好ましい実施形態では、キュー(またはその他のデータ・リポジトリ)の定義は、キューの内容とは別にバックアップ2次ストレージ内に保持される。それは内容が復元される前の個別のステップとして空状態のキューの再作成を容易にするので、キューの内容のスナップショットのバックアップから独立ステップとしてキュー定義をバックアップすることは有益である。そのキューは、そのキュー定義から1次ストレージ内に再作成され次第、新しいメッセージを受信するために使用可能なものにすることができる。
従来の回復解決策では、リポジトリが再作成されたときから回復処理が完了するまで、新たに再作成されたデータ・リポジトリにロックがかけられ、ロックはメッセージの複製を防止するために必要であると考えられている。この実施形態ではこのようなロックは一切不要であり、したがって、データ・リポジトリ(すなわち、キューまたはデータベース・テーブルであるが、回復作業単位内の任意の更新ではない)は、そのデータ・リポジトリが再作成され次第、アプリケーションによる使用のために使用可能である。
キュー(空状態)を再作成すると、230でメッセージおよびメッセージ更新をキューに復元するために回復作業単位が始動される。その空状態のキューの再作成に必要なキュー定義に加えて、2次ストレージは、バックアップが取られた時点のキュー上のメッセージのスナップショットに対応するキューの内容のバックアップ・コピーを収容する。それらがコミットされていない回復作業単位の一部であることを示すために各メッセージにマークを付けるステップとともにコピー操作を使用して、240でバックアップ・コピー内のメッセージが関連キューの1次コピーに復元される。このマーク付けは、さもなければキューから復元メッセージを取り出すことができるアプリケーションにとってアクセス不能なものにする。
好ましい実施形態では、各メッセージに作業単位IDと独特の基本キーとを割り振ることにより、メッセージのマーク付けが実現され、そのキーの1バイトの値はメッセージの状態を示す。次にキュー・マネージャは、基本キーのバイト値を解釈して、アプリケーション・プログラムによってメッセージを取り出すことができるかどうかを決定することができる。コミットされていない回復作業単位内の任意のメッセージ更新は、この段階でアプリケーションによってアクセスすることができない(回復作業単位のコミットでバイト値が変更されるまでアクセスできない)。これについては、「独特のキー」というタイトルの項で以下にさらに詳細に説明する。回復作業単位内で実行されたすべての操作の容易な削除を可能にするので、回復処理が打ち切られる場合(回復処理の途中でキュー・マネージャが障害を起こした場合など)に作業単位IDは有用である。IBM社のMQSeriesキュー・マネージャ・プログラムは、このような情況でキュー回復処理を引き継ぐことを可能にする対等回復機能を備えていることが分かっている。
復元処理が進行するにつれて、回復キュー・マネージャは、それに関する操作が回復作業単位内で実行されるすべてのメッセージのリストも生成する。このリストは後でコミット処理中に使用される。
次に、障害の結果として失われたキューに対するすべての更新に関する情報を提供するために、バックアップ・コピーの時点からストレージ障害の時点まで間に作成されたログ・レコードが250で再生される。各ログ・レコードは、メッセージ追加操作(Put_Message操作など)、メッセージ削除操作(破壊的なGet_Message操作など)、または状況更新(コミットまたはバックアウトなど)に対応する。各ログ・レコードが再生されるにつれて、キューは対応する操作によって更新され、メッセージは、回復作業単位の作業単位IDによって、ならびに上述の通り、バイト値の「回復中」範囲内のバイト値を含む基本キーを割り当てることにより、マークが付けられる。これは、障害の時点に対応するログ・レコード内の点まで続行される。
復元処理がストレージ障害の時点に対応するログ・レコード内の点に到達すると、復元プロセスから独立してメッセージが追加され取り出されることを条件として、メッセージ・リポジトリは、それが障害の時点になっていた状態にすでに復元されている。
この時点で、260で回復作業単位をコミットすることにより、復元処理は完了する。キュー・データの整合状態を記録するために同期点が取られ、すべてのメッセージはアプリケーションにとって使用可能なものになる。特に、作業単位をコミットすることは、回復作業単位のための復元操作の実行中に追加、削除、または更新されたメッセージのリストを参照することにより、すべての関連更新を識別することと、次に、リスト内の各メッセージごとに、独特の基本キー内の状態表示バイト値をそのメッセージの新しい状態を表す値に更新することを含む。キー値は所望のメッセージ取出し順序を示すとともにメッセージ状態を示すので、高位バイト値を変更すると、コミットされたメッセージがキュー内の新しい位置に移動する。
「古い」メッセージおよびメッセージ更新をキューに復元するステップが失敗した場合、回復処理の復元ステップが再試行される間に、個別に実行されたキューの再作成により、「新しい」メッセージ用のキューの継続使用を可能にしなければならない。したがって、第1の再作成ステップを実行し、その後、ログ・レコードを参照することにより更新を再適用するという一連の操作は、早期段階でそのキューを新しいメッセージに使用可能なものにするだけでなく、復元処理に影響する任意の問題からキューの再作成および新しいメッセージの処理をシールドする。これらの特徴の組合せの結果、メッセージング機能の可用性が相当改善されるとともに、「キュー満杯」条件に応答して要求される例外処理を回避することができる。
この点以降、回復が成功したと想定すると、キュー上のすべてのメッセージについて通常のメッセージ処理操作を続行することができる。復元されたキューを使用するキュー・マネージャが次にメッセージの状態表示バイト値をチェックする場合、メッセージの新しい状態によって、それを取り出すことができるかどうかを決定することになる。
回復作業単位内の同期点内Get操作は、ログからの操作を正しい順序で再生するために、その操作がどのメッセージを取り出すかを新しいGet操作が指定するという点で、従来のアプリケーションのGet操作とは異なる。従来のGet操作は概して第1の使用可能メッセージを取り出すが、回復処理中のGet操作では、元のGet操作によって取り出されたものとは異なるメッセージを取り出すことができるので、回復処理中にこのような手法を取ると、障害の時点のキューと回復されたキューとの間に不整合が発生する可能性がある。したがって、アプリケーションよってはメッセージがキュー上に置かれたのと同じ順序でそのメッセージを処理する必要がないが、それにもかかわらず、ログ・レコードから再生されたメッセージ更新は、障害前に実行された操作の順序との整合性を保証するように適用される。
Get_Message操作によって取り出すべき特定のメッセージを指定するための適当な技法は、当技術分野ではすでに知られており、したがって、本明細書では詳細に説明しない。1つの実現例としては、各メッセージが共用キューに追加されるときにそのメッセージに割り振られる固有キー(シスプレックス内のすべてのメッセージについて固有のもの)をGet_Message操作が使用する。
復元操作の据え置き
本発明のこの実施形態では、回復によって、ログを処理するときに同期点内GetおよびPut操作が直ちに再生されるわけではない。その代わりに、図4および図5に示す通り、ログの再生によって252で対応する作業単位の状態に関する決定を行うことが可能になるまで、251でGetおよびPut操作がキャッシュされる。ログが再生され、回復中の1つまたは複数のメッセージ・キューに関する操作が識別される。識別されたログ・レコードはキャッシュにコピーされる。復元処理が障害の時点に対応するログ・レコード内の点に到達すると、キャッシュされたログ・レコードが252で分析され、対応する(元の)各作業単位の障害の時点での状態を決定する。
本発明のこの実施形態では、回復によって、ログを処理するときに同期点内GetおよびPut操作が直ちに再生されるわけではない。その代わりに、図4および図5に示す通り、ログの再生によって252で対応する作業単位の状態に関する決定を行うことが可能になるまで、251でGetおよびPut操作がキャッシュされる。ログが再生され、回復中の1つまたは複数のメッセージ・キューに関する操作が識別される。識別されたログ・レコードはキャッシュにコピーされる。復元処理が障害の時点に対応するログ・レコード内の点に到達すると、キャッシュされたログ・レコードが252で分析され、対応する(元の)各作業単位の障害の時点での状態を決定する。
252でこの決定が実行されると、以下のアクションの1つが行われる。
1.作業単位がコミットされた場合、回復処理の一部として256でPutまたはGetが実行される(上述の通り)。
2.作業単位が回復作業単位の終了時に相変わらず未確定である場合、回復処理はPutまたはGetを実行するが、さらに、調整する同期点マネージャによる作業単位の究極的解決に要求されるように、257で操作に未確定としてならびに元の作業単位の一部としてマークを付ける。
3.すべての残りのケース(バックアウト、打切り、または推定/打切り(presume-abort))の場合、キャッシュされたGetおよびPut操作が255で廃棄される。
1.作業単位がコミットされた場合、回復処理の一部として256でPutまたはGetが実行される(上述の通り)。
2.作業単位が回復作業単位の終了時に相変わらず未確定である場合、回復処理はPutまたはGetを実行するが、さらに、調整する同期点マネージャによる作業単位の究極的解決に要求されるように、257で操作に未確定としてならびに元の作業単位の一部としてマークを付ける。
3.すべての残りのケース(バックアウト、打切り、または推定/打切り(presume-abort))の場合、キャッシュされたGetおよびPut操作が255で廃棄される。
次に回復作業単位は、前述の通り、コミットされる。
上述の回復処理方法は、保証された1回のみのメッセージ送達を犠牲にせずに、新たに再作成されたキューの使用と並行して復元プロセスが実行できるようにする。
対更新の最適化処理
本発明の発明者は、回復作業単位内のコミットされたGet操作の同期点内再生が必然的に同じ回復作業単位内のキューにPutされたメッセージを取得することであると認識していた。この再生は、Get_Message操作の再生と、それに続く元の作業単位のコミットの再生を含むことができる。特定のメッセージは、復元プロセスの終了時に回復作業単位のコミットを待たずに、コミットされたGet_Message操作に応答して削除することができる。この実施形態では、253で回復作業単位内のPutおよびGet対が識別され、キューを更新し、次にその更新を削除する必要なしに、254で対応するキャッシュされたログ・レコードがキャッシュから削除される。この実施形態のこの特徴は、不必要な処理を回避するため、ならびに復元中のキュー・マネージャがキュー上のメッセージの蓄積を低減できるようにするために、上述の「解決までキャッシュ(cache-until-resolution)」という特徴を企図している。これは潜在的に、キューまたはリポジトリの不必要な「満杯」条件を回避するものである。
本発明の発明者は、回復作業単位内のコミットされたGet操作の同期点内再生が必然的に同じ回復作業単位内のキューにPutされたメッセージを取得することであると認識していた。この再生は、Get_Message操作の再生と、それに続く元の作業単位のコミットの再生を含むことができる。特定のメッセージは、復元プロセスの終了時に回復作業単位のコミットを待たずに、コミットされたGet_Message操作に応答して削除することができる。この実施形態では、253で回復作業単位内のPutおよびGet対が識別され、キューを更新し、次にその更新を削除する必要なしに、254で対応するキャッシュされたログ・レコードがキャッシュから削除される。この実施形態のこの特徴は、不必要な処理を回避するため、ならびに復元中のキュー・マネージャがキュー上のメッセージの蓄積を低減できるようにするために、上述の「解決までキャッシュ(cache-until-resolution)」という特徴を企図している。これは潜在的に、キューまたはリポジトリの不必要な「満杯」条件を回避するものである。
独特のキー
独特の基本キーを使用して、種々の状態にある結合機能(CF)内のメッセージ間を差異化することは、既存のキュー・マネージャの共用キュー・サポート・メカニズム内で知られていることである。概して、その状態は、コミット、未完了、および未確定である。状態間を差異化するためのこのような独特のキーの使用については、たとえば、本出願人に譲渡された同時係属の米国特許出願第09/677339号(特許文献11)および第09/677341号(特許文献12)の明細書に記載されており、その特許出願は参照により本明細書に組み込まれる。
独特の基本キーを使用して、種々の状態にある結合機能(CF)内のメッセージ間を差異化することは、既存のキュー・マネージャの共用キュー・サポート・メカニズム内で知られていることである。概して、その状態は、コミット、未完了、および未確定である。状態間を差異化するためのこのような独特のキーの使用については、たとえば、本出願人に譲渡された同時係属の米国特許出願第09/677339号(特許文献11)および第09/677341号(特許文献12)の明細書に記載されており、その特許出願は参照により本明細書に組み込まれる。
この実施形態では、回復作業単位内で未完了であるメッセージに独特の基本キー値を使用する。「未完了」は、コミットまたはバックアウトに関する要求が行われる前(または2フェーズ・コミットのケースの「コミット準備」命令の前)のトランザクションの状態である。トランザクションが未完了である間に障害が発生した場合、メッセージ状態はバックアウトするよう解決される。これは、「推定打切り」手法として周知のものである。「未確定」は、外部トランザクション・コーディネータを伴う2フェーズ・コミットのトランザクションに適用される状態である。コーディネータは、利権を有する各リソース・マネージャに対してトランザクションに関する「準備」要求を発行する。準備ステップの完了後、トランザクションはもはや「未完了」ではなくなるが、「未確定」であると言われる。トランザクション・コーディネータからのその後の呼出しに応答して、未確定からコミットまたは打切りへの解決が実行される。ログ・レコードは、未完了トランザクションによって実行されたGetおよびPut操作に関して作成されている場合もあれば、作成されていない場合もある。
基本キーの特殊性は、基本キー内の1バイトに明確な範囲の値を使用することによって達成される。たとえば、Putリスト(すなわち、キューにPutされたメッセージを表すリスト)上のメッセージの基本キーの1バイト目は、そのメッセージがコミットされた場合にX「00」〜X「09」という範囲内の値を含み、メッセージがコミットされていない場合にX「F4」〜X「F6」という範囲内の値を含む。値の状態表示範囲内のバイト値の特定の割振りは、FIFO順序付けを達成するための範囲内の一連の値に従う。独特のキーを割り振るためのその他の方式も等しく可能である。
アプリケーション・プログラムがGet_Message呼出しを発行すると、キュー内のメッセージの基本キー値が調査され、キー範囲のリストと比較され、メッセージの状態を決定する。基本キー値によって反映されるメッセージの状態はアプリケーションがメッセージを取り出すことができるかどうかを決定するが、キー値はまた、キュー内のメッセージの順序付けも決定し、したがって、その取出しが可能ではないメッセージはキューの最後部に対応するキー値を有する。これは、取出し可能メッセージがキュー内で使用可能であるときには単純な数値順によって取出し不能メッセージを回避することを意味する。
このように独特のキーを使用すると、キュー・マネージャは特定の状態のメッセージに選択的にアクセスすることができ、キュー内のコミットされたメッセージの数に基づくトリガなど、その他の機能の単純な実現が可能になる。キーの高位バイトに特殊値を入れることにより、キューに追加(Put)されたがまだコミットされていないメッセージはリストの最後部に位置決めされ、これにより、キュー・マネージャがアプリケーションのためにGet_Message操作を実行しているときにそれらを無視しやすいものにする。
Put_Message操作の呼出し後のメッセージのいくつかの種々の状態間を差異化するために、明確な高位バイト値を使用することができる。たとえば、第1の範囲のバイト値は、それに関して2フェーズ・コミットの第1の「準備」フェーズとともにPutが実行されたがPutがまだコミットされていないメッセージを示すことができ、第2の範囲の値は、それに関してPut後にコミットの準備フェーズがまだ実行されていないメッセージを示す。
この実施形態では、各操作およびメッセージ用の対応する明確なキーにより、2つの新しい操作状態が定義され、各キーの1バイトはその状態を識別する値の範囲内の極めて特徴的な値を収容する。この新しい状態は、復元プロセスの一部としてメッセージ・リポジトリ(このケースではCF共用キュー)内に置かれたメッセージにのみ適用可能である。一方の状態は元の作業単位(再生中のUOW)および回復作業単位内の非コミット状態に対応し、第2の状態は元の作業単位内ではコミット状態に対応するが、回復作業単位内ではまだ非コミット状態である。
これらの新しいメッセージ状態および独特のキー値は以下の恩恵をもたらす。
●同期点内Put操作は、独特のキーとともにCF上にメッセージを保管することによって再生することができる。この独特のキーは、キューに関するアクションを実行する他のプロセスによってメッセージが処理されるのを防止し、特に、メッセージがキュー項目数計算に含まれるのを防止する。これは、復元プロセスがこれらのPut操作をメモリにキャッシュする必要がないことを意味し、これにより、復元プロセスのコードの複雑さおよびストレージ占有率が大幅に低減される。
●同期点外Put操作と、同期点内Put操作のコミットは、通常の同期点外活動とは異なるキー値を設定することによって再生することができる。これは、回復作業単位のメモリ内またはCF管理構造モデルを必要とせずに、基本キー値を更新する(第1の値の範囲内の値を異なる状態に対応する第2の範囲からの値で置き換える)ことにより、回復作業単位のコミットを実行できることを意味する。このような構造は、典型的な代替実現例では必要である。
●同期点内Put操作は、独特のキーとともにCF上にメッセージを保管することによって再生することができる。この独特のキーは、キューに関するアクションを実行する他のプロセスによってメッセージが処理されるのを防止し、特に、メッセージがキュー項目数計算に含まれるのを防止する。これは、復元プロセスがこれらのPut操作をメモリにキャッシュする必要がないことを意味し、これにより、復元プロセスのコードの複雑さおよびストレージ占有率が大幅に低減される。
●同期点外Put操作と、同期点内Put操作のコミットは、通常の同期点外活動とは異なるキー値を設定することによって再生することができる。これは、回復作業単位のメモリ内またはCF管理構造モデルを必要とせずに、基本キー値を更新する(第1の値の範囲内の値を異なる状態に対応する第2の範囲からの値で置き換える)ことにより、回復作業単位のコミットを実行できることを意味する。このような構造は、典型的な代替実現例では必要である。
この開示内容を考慮すると、記載した特定の諸実施形態の様々な変更は本発明の利点を達成することができ、特許請求の範囲に示した本発明の範囲内にあることは、当業者にとって明らかになるであろう。
たとえば、好ましい諸実施形態の上記の説明では、データ・リポジトリを再作成することと、データをリポジトリに復元することに言及している。本発明の範囲内のいくつかの解決策は障害の時点でリポジトリ内にあったすべてのデータの復元を伴うことは、当業者にとって明らかになるであろう。その他の解決策は、永続メッセージのみの回復および非永続メッセージの除外など、特定のクラスのデータの回復のみを必要とする。後者では、情報専用データ・ブロードキャストなどの非永続メッセージについてログ・レコードが作成されない可能性がある。たとえば、定期的に更新された天気予報または株価を収容するメッセージは次の更新がまもなく使用可能になる場合に回復する必要がない可能性があり、航空便の予約または株式の売却の取消しを指示するメッセージは保証された1回のみの送達を可能にするために回復可能でなければならない。
第2に、上記の説明では、単一回復作業単位の範囲内でデータ項目を複数のキューに復元することにより処理効率を達成できることに留意したが、代替実現例ではそれ自体の個別作業単位内で各キューを回復することになる。これは、回復処理中の特定のタイプの障害の影響を減少させることになる。
第3に、上記の説明では、回復作業単位のコミットメントまでアプリケーション・プログラムによる取出しのためにそれらを使用不能なものにするためにメッセージにマークを付けるための特定の方法に言及している。回復期間全体の間、リポジトリをロックすることを回避しながら、復元されたメッセージが使用不可であることを制御するためのその他のメカニズムも可能である。このような例の1つは、作業単位IDを設定することと、独特の基本キーとは別に各復元メッセージごとに未確定フラグを設定することである。
本発明の好ましい実施形態の上記の説明では、キューの定義およびキューの内容について独立して保管されたバックアップ・コピーを使用する。代替諸実施形態では、バックアップの時点でデータ・リポジトリを定義する情報とリポジトリの内容の両方を単一2次コピーに維持する。それにもかかわらず、回復処理は、2次(バックアップ)ストレージから保管データを取り出し、リポジトリの高速再作成を可能にするためにある順番でそのデータを処理し、それを新しいデータ項目のために使用可能なものにし、続いて、リポジトリの内容を復元する個別のステップを実行することができる。
本発明の他の諸実施形態は、データベース・ソリューションに適用可能である。データベース・テーブルでは、古い行(障害前にデータが格納されていたもの)を回復する前に新しい行をテーブルに挿入し処理することができる。回復中に、アプリケーションは、回復が完了するなどの時点まで、新しい行のみを収容するものとしてテーブルを見ることになる。
好ましい一実施形態の上記の説明では、(i)高速可用性のために空状態のデータ・リポジトリを再構築し、次に回復作業単位として復元操作を処理することと、(ii)効率の良い復元処理のために、対応する元の作業単位の決定された状態に依存して復元操作を実行することと、(iii)効率の良い処理のために、またデータ・リポジトリ内の蓄積を回避するために、対更新を最適化処理することと、(iv)データ項目の特定の回復中状態とデータ項目に対する更新を示すために独特の基本キーを使用することを包含する回復方法および装置を開示している。当業者にとって明らかになるように、(i)〜(iv)の特徴は補完的なものであるが、これらの特徴(i)〜(iv)のすべてがまとめて実現されることは、これらの特徴(i)〜(iv)のいずれか1つの操作にとって不可欠なものではない。
Claims (17)
- データ・リポジトリの1次コピーに影響する障害から前記データ・リポジトリを回復するための方法であって、
前記データ・リポジトリの前記1次コピーおよびそれに保持されたデータ項目を回復するために十分なデータの2次コピーを維持するステップと、
前記データ・リポジトリの前記1次コピーに影響する障害に応答して、前記2次コピーから前記データ・リポジトリの1次コピーを再作成するステップと、
復元プロセスを使用して回復作業単位内で前記2次コピーから前記1次コピーにデータ項目を復元するステップとを含み、
前記回復作業単位のコミットまで、前記回復作業単位内で前記データ・リポジトリの前記1次コピーに復元されたデータ項目は前記復元プロセス以外のプロセスにとってアクセス不能であり、前記方法は更に、
前記回復作業単位のコミット前に、前記復元ステップから独立して前記データ・リポジトリへのデータ項目の追加を可能にし、前記復元プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、前記データ・リポジトリの前記1次コピーを構成するステップと、
前記復元ステップの正常終了に応答して、前記復元データの前記アクセス不能性を解除することを含む、前記回復作業単位をコミットするステップと、
を含む方法。 - 前記2次データ・コピーを維持する前記ステップが、前記データ・リポジトリのバックアップ・コピーを保管することと、前記バックアップ・コピーが保管されてから実行された前記1次コピーに対する更新を記述するログ・レコードを保管することを有し、前記データ・リポジトリの前記1次コピーを再作成する前記ステップが、前記バックアップ・コピーからデータ・リポジトリ定義をコピーし、前記定義を適用して前記1次コピーを再作成するステップを有し、前記1次コピーにデータ項目を復元する前記ステップが、前記バップアップ・コピーからデータ項目をコピーすることと、前記ログ・レコードを適用して前記1次コピーに対する更新を識別し再適用することを有する、請求項1に記載の方法。
- 前記2次データ・コピーを維持する前記ステップが、前記1次コピーに対する更新を記述するログ・レコードを保管することを含み、前記リポジトリの前記1次コピーを復元する前記ステップが、
前記データ・リポジトリの前記1次コピー内のデータ項目に対して実行された操作の前記ログ・レコードを適用するステップと、
元の作業単位内で同期点制御下で実行された操作に関するログ・レコードをキャッシュするステップと、
キャッシュされた前記ログ・レコードから、前記障害の時点の前記元の作業単位の状態を決定するステップと、
前記元の作業単位の決定された前記状態に基づいて、前記同期点制御操作のうちのどの操作を前記回復作業単位内で実行すべきかを決定するステップと、
を含む、請求項1に記載の方法。 - 前記障害前に前記元の作業単位がコミットされた場合に、コミットされた前記作業単位の関連操作を実行し、
前記障害が発生したときに前記元の作業単位が未確定であった場合に、前記未確定作業単位の前記関連操作を実行しかつ、前記操作に未確定のマークを付け、
前記元の作業単位がコミットされず未確定でもない場合に、キャッシュされた前記操作を廃棄する
という手続きに従って前記回復作業単位内で操作を実行することを含む、請求項3に記載の方法。 - 前記データ・リポジトリの前記1次コピーへのデータ項目の追加と前記データ・リポジトリの前記1次コピーからの前記同じデータ項目の削除とを有する追加および削除操作が前記障害前に実行されコミットされたという条件で、前記追加および削除操作の任意の対を前記回復作業単位から廃棄することを含む、請求項3に記載の方法。
- 前記データ・リポジトリがメッセージ・リポジトリであり、前記データ・リポジトリの前記1次コピーにデータを復元する前記ステップが、前記メッセージ・リポジトリに対してメッセージ追加、更新、および削除操作を実行することを有する、請求項1ないし5のいずれか1項に記載の方法。
- 前記2次データ・コピーを維持する前記ステップが、前記1次コピーに対する更新を記述するためのログ・レコードを保管することを含み、前記リポジトリの前記1次コピーにデータを復元する前記ステップが、元の作業単位内で同期点制御下で実行されたメッセージ追加、更新、および削除操作に関するログ・レコードをキャッシュするステップと、前記ログ・レコードから、前記障害の時点の前記元の作業単位の前記状態を決定するステップと、前記元の作業単位の決定された前記状態に基づいて、
前記元の作業単位がコミットされる場合に、前記関連メッセージ追加、更新、および削除操作を実行し、
前記元の作業単位が未確定である場合に、前記関連メッセージ追加、更新、および削除操作を実行しかつ、前記操作に未確定のマークを付け、
前記元の作業単位がコミットされず未確定でもない場合に、キャッシュされた前記操作を廃棄する
ように、前記回復作業単位内で実行すべき前記操作を決定するステップとを含む、メッセージング通信システム内で実行するための、請求項6に記載の方法。 - 前記データ・リポジトリに復元された各データ項目ごとにフラグを設定することにより、前記回復作業単位内で前記リポジトリの前記1次コピーに復元されたデータがアクセス不能なものになり、前記データ項目がアクセス不能であることを前記フラグが示す、請求項1ないし7のいずれか1項に記載の方法。
- 前記フラグが前記データ項目のトランザクション状態を示し、前記リポジトリからのデータ項目にアクセスするためのプロセスが、1つまたは複数の事前定義トランザクション状態をアクセス不能として識別するように適合される、請求項8に記載の方法。
- 前記フラグが、前記データ項目が前記データ・リポジトリに復元されるときに前記データ項目に割り振られた独特の基本キーのバイト値を有し、前記バイト値が、前記データ項目の前記トランザクション状態を示す値の範囲から選択される、請求項8または請求項9に記載の方法。
- フラグを設定する前記ステップが、
そのデータ項目に関しては、前記障害前に当該データ項目について実行された最新操作がコミットされた追加操作であり、前記回復作業単位内で前記データ・リポジトリに復元される任意のデータ項目に関する第1のフラグを設定することと、
そのデータ項目に関しては、前記障害前に当該データ項目について実行された最新操作が未確定追加または削除操作であり、前記回復作業単位内で前記データ・リポジトリに復元される任意のデータ項目に関する第2のフラグを設定すること
を有する、請求項8ないし10のいずれか1項に記載の方法。 - 前記第1のフラグが第1のトランザクション状態を表す第1の範囲のバイト値から選択されたデータ項目キーのバイト値を有し、前記第2のフラグが第2のトランザクション状態を表す第2の範囲のバイト値から選択されたデータ項目キーのバイト値を有する、請求項11に記載の方法。
- データ・リポジトリの1次コピーを保管するためのデータ・ストレージと、
前記データ・リポジトリを表すデータの2次コピーであって、2次データが前記データ・リポジトリの前記1次コピーとそれに保持されたデータを回復するために十分である前記2次コピーを保管する2次データ・ストレージと、
前記データ・リポジトリの前記1次コピーに影響する障害から回復するようにデータ通信システムの動作を制御するための回復コンポーネントであって、前記回復コンポーネントが、
前記2次コピーから前記データ・リポジトリの1次コピーを再作成するステップと、
復元プロセスを使用して回復作業単位内で前記2次コピーから前記1次コピーにデータ項目を復元するステップであって、前記回復作業単位のコミットまで、前記回復作業単位内で前記データ・リポジトリの前記1次コピーに復元されたデータ項目は前記復元プロセス以外のプロセスにとってアクセス不能である、前記復元するステップと、
前記回復作業単位のコミット前に、前記復元ステップから独立して前記データ・リポジトリへのデータ項目の追加を可能にし、前記回復プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、前記データ・リポジトリの前記1次コピーを構成するステップと、
前記復元ステップの正常終了に応答して、前記復元データの前記アクセス不能性を解除することを含む、前記回復作業単位をコミットするステップと、
を実行するように前記データシステムを制御するように動作可能である回復コンポーネントと、
を含むデータ通信システム。 - センダとレシーバとの間でメッセージを転送するためのデータ通信システムであって、メッセージがメッセージ送信操作後にメッセージ・リポジトリ内に保持され、その後、前記レシーバに送達するために前記リポジトリから取り出され、前記リポジトリのバックアップ・コピーが作成され、前記バックアップ・コピーの作成以降のメッセージ送信およびメッセージ取出しイベントを記録するためにログ・レコードが作成され、前記システムが、
前記メッセージ・リポジトリに影響する障害に応答して、前記障害前に作成された、前記リポジトリの前記バックアップ・コピーを参照することにより前記リポジトリにメッセージを復元するステップと、
前記回復処理の完了前に、前記回復処理の完了を待たずに、新しいメッセージを前記リポジトリに追加し、そこから取り出すことを可能にするように前記リポジトリを構成するステップと、
前記障害前に作成されたログ・レコードを参照することにより、前記障害前に実行されたメッセージ送信およびメッセージ取出し操作に対応する前記メッセージ・リポジトリに対する更新を再適用するステップと、
を実行するように前記データ通信システムを制御するように適合された回復コンポーネントを含み、
前記リポジトリにメッセージを復元する前記ステップと前記バックアップ・コピーおよびログ・レコードを参照することにより前記リポジトリに対する更新を再適用する前記ステップが回復作業単位内で実行され、前記障害前に実行された送信および取出し操作に対応するすべてのメッセージ・リポジトリ更新が前記メッセージ・リポジトリに再適用されるまで前記復元されたメッセージと再適用された更新がアクセス不能になる、データ通信システム。 - データ・リポジトリの1次コピーに影響する障害から前記データ・リポジトリを回復するための方法を実行するためにプログラム・コードが実行されるデータ処理装置の動作を制御するための前記プログラム・コードを記録する記録媒体であって、当該記録媒体は、2次データ・ストレージおよび、前記データ・リポジトリの前記1次コピーとそれに保持されたデータ項目を回復するために十分であるデータの2次コピーを前記2次データ・ストレージに維持するためのコンポーネントとを有するデータ処理装置で使用され、前記方法が、
前記データ・リポジトリの前記1次コピーに影響する障害に応答して、前記2次コピーから前記データ・リポジトリの1次コピーを再作成するステップと、
復元プロセスを使用して回復作業単位内で前記2次コピーから前記1次コピーにデータ項目を復元するステップとを含み、前記回復作業単位のコミットまで、前記回復作業単位内で前記データ・リポジトリの前記1次コピーに復元されたデータ項目は前記復元プロセス以外のプロセスにとってアクセス不能であり、前記方法は更に、
前記回復作業単位のコミット前に、前記復元ステップから独立して前記データ・リポジトリへのデータ項目の追加を可能にし、前記復元プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、前記データ・リポジトリの前記1次コピーを構成するステップと、
前記復元ステップの正常終了に応答して、前記復元データの前記アクセス不能性を解除することを含む、前記回復作業単位をコミットするステップと、
を含む、記録媒体。 - データ・リポジトリの1次コピーに影響する障害から前記データ・リポジトリを回復するための方法を実行するためにプログラムが実行されるデータ処理装置の動作を制御するためのコンピュータ・プログラムであって、前記データ処理装置が2次データ・ストレージ・エリアを有し、前記コンピュータ・プログラムが、データの2次コピーを前記2次データ・ストレージ・エリアに維持するためのコンポーネントであって、その2次コピーが前記データ・リポジトリの前記1次コピーとそれに保持されたデータ項目を回復するために十分であるコンポーネントを含み、前記方法が、
前記データ・リポジトリの前記1次コピーに影響する障害に応答して、前記2次コピーから前記データ・リポジトリの1次コピーを再作成するステップと、
復元プロセスを使用して回復作業単位内で前記2次コピーから前記1次コピーにデータ項目を復元するステップであって、前記回復作業単位のコミットまで、前記回復作業単位内で前記データ・リポジトリの前記1次コピーに復元されたデータ項目が前記復元プロセス以外のプロセスにとってアクセス不能なものになるステップと、
前記回復作業単位のコミット前に、前記復元ステップから独立して前記データ・リポジトリへのデータ項目の追加を可能にし、前記復元プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、前記データ・リポジトリの前記1次コピーを構成するステップと、
前記復元ステップの正常終了に応答して、前記復元データの前記アクセス不能性を解除することを含む、前記回復作業単位をコミットするステップと、
を含む、コンピュータ・プログラム。 - データ・リポジトリの1次コピーに影響する障害から前記データ・リポジトリを回復するための回復コンポーネントであって、1次および2次データ・ストレージを有し、データの2次コピーを前記2次データ・ストレージに維持するためのコンポーネントであって、その2次コピーが前記データ・リポジトリの前記1次コピーとそれに保持されたデータ項目を回復するために十分であるコンポーネントを有するデータ処理システムで使用するための回復コンポーネントであって、
前記データ・リポジトリの前記1次コピーに影響する障害に応答して、前記2次コピーから前記データ・リポジトリの1次コピーを再作成するステップと、
復元プロセスを使用して回復作業単位内で前記2次コピーから前記1次コピーにデータ項目を復元するステップであって、前記回復作業単位のコミットまで、前記回復作業単位内で前記データ・リポジトリの前記1次コピーに復元されたデータ項目が前記復元プロセス以外のプロセスにとってアクセス不能なものになるステップと、
前記回復作業単位のコミット前に、前記復元ステップから独立して前記データ・リポジトリへのデータ項目の追加を可能にし、前記復元プロセス以外のプロセスが前記独立して追加されたデータ項目にアクセスすることを可能にするように、前記データ・リポジトリの前記1次コピーを構成するステップと、
前記復元ステップの正常終了に応答して、前記復元データの前記アクセス不能性を解除することを含む、前記回復作業単位をコミットするステップと、
を含む方法を実行するように適合された回復コンポーネント。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0308264.1A GB0308264D0 (en) | 2003-04-10 | 2003-04-10 | Recovery from failures within data processing systems |
PCT/GB2003/004589 WO2004090724A1 (en) | 2003-04-10 | 2003-10-22 | Recovery from failures within data processing systems |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006514374A true JP2006514374A (ja) | 2006-04-27 |
Family
ID=9956532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004570494A Pending JP2006514374A (ja) | 2003-04-10 | 2003-10-22 | 障害からデータ・リポジトリを回復するための方法、データ処理システム、回復コンポーネント、記録媒体およびコンピュータ・プログラム |
Country Status (10)
Country | Link |
---|---|
US (1) | US7543181B2 (ja) |
EP (1) | EP1661000B1 (ja) |
JP (1) | JP2006514374A (ja) |
KR (1) | KR100983300B1 (ja) |
CN (1) | CN100339834C (ja) |
AT (1) | ATE357693T1 (ja) |
AU (1) | AU2003278330A1 (ja) |
DE (1) | DE60312746T2 (ja) |
GB (1) | GB0308264D0 (ja) |
WO (1) | WO2004090724A1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011210106A (ja) * | 2010-03-30 | 2011-10-20 | Nippon Telegr & Teleph Corp <Ntt> | メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム |
JP2011210107A (ja) * | 2010-03-30 | 2011-10-20 | Nippon Telegr & Teleph Corp <Ntt> | メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム |
KR20140137411A (ko) * | 2012-03-02 | 2014-12-02 | 알까뗄 루슨트 | 분산형 전자 전송 시스템 |
JP2014532932A (ja) * | 2011-11-02 | 2014-12-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 非同期複製システムにおける災害復旧中のメッセージ調整のための方法、システム、およびコンピュータ・プログラム |
US20220172190A1 (en) * | 2018-12-19 | 2022-06-02 | Worldpay, Llc | Systems and methods for cloud-based asynchronous communication |
Families Citing this family (702)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7376078B1 (en) * | 2004-03-24 | 2008-05-20 | Juniper Networks, Inc. | Selective replay of a state information within a computing device |
US7353257B2 (en) * | 2004-11-19 | 2008-04-01 | Microsoft Corporation | System and method for disaster recovery and management of an email system |
US8301750B2 (en) * | 2005-06-10 | 2012-10-30 | International Business Machines Corporation | Apparatus, system, and method for facilitating communication between an enterprise information system and a client |
US7784098B1 (en) * | 2005-07-14 | 2010-08-24 | Trend Micro, Inc. | Snapshot and restore technique for computer system recovery |
US7818757B1 (en) * | 2005-07-18 | 2010-10-19 | Sybase, Inc. | Method for guaranteeing processing of messages in a continuous processing system |
US8161548B1 (en) | 2005-08-15 | 2012-04-17 | Trend Micro, Inc. | Malware detection using pattern classification |
US7698309B2 (en) * | 2005-08-16 | 2010-04-13 | Oracle International Corporation | Advanced fine-grained administration of recovering transactions |
US7890508B2 (en) | 2005-08-19 | 2011-02-15 | Microsoft Corporation | Database fragment cloning and management |
US20070061379A1 (en) * | 2005-09-09 | 2007-03-15 | Frankie Wong | Method and apparatus for sequencing transactions globally in a distributed database cluster |
US8856091B2 (en) | 2005-09-09 | 2014-10-07 | Open Invention Network, Llc | Method and apparatus for sequencing transactions globally in distributed database cluster |
US9632722B2 (en) | 2010-05-19 | 2017-04-25 | International Business Machines Corporation | Balancing storage unit utilization within a dispersed storage network |
US9996413B2 (en) * | 2007-10-09 | 2018-06-12 | International Business Machines Corporation | Ensuring data integrity on a dispersed storage grid |
US11080138B1 (en) | 2010-04-26 | 2021-08-03 | Pure Storage, Inc. | Storing integrity information in a vast storage system |
US10270858B2 (en) | 2005-09-30 | 2019-04-23 | International Business Machines Corporation | Inducing memory device idle time through rolling read prioritizations |
US10257276B2 (en) | 2005-09-30 | 2019-04-09 | International Business Machines Corporation | Predictive rebalancing according to future usage expectations |
US10866754B2 (en) | 2010-04-26 | 2020-12-15 | Pure Storage, Inc. | Content archiving in a distributed storage network |
US10154034B2 (en) | 2010-04-26 | 2018-12-11 | International Business Machines Corporation | Cooperative data access request authorization in a dispersed storage network |
US10432726B2 (en) | 2005-09-30 | 2019-10-01 | Pure Storage, Inc. | Last-resort operations to save at-risk-data |
US8938591B2 (en) * | 2005-09-30 | 2015-01-20 | Cleversafe, Inc. | Dispersed storage processing unit and methods with data aggregation for use in a dispersed storage system |
US8595435B2 (en) * | 2009-07-30 | 2013-11-26 | Cleversafe, Inc. | Dispersed storage write process |
US9027080B2 (en) | 2008-03-31 | 2015-05-05 | Cleversafe, Inc. | Proxy access to a dispersed storage network |
US11221917B1 (en) * | 2005-09-30 | 2022-01-11 | Pure Storage, Inc. | Integrity processing in a dispersed storage network |
US10389814B2 (en) | 2005-09-30 | 2019-08-20 | Pure Storage, Inc. | Prioritizing memory devices to replace based on namespace health |
US8357048B2 (en) * | 2009-09-29 | 2013-01-22 | Cleversafe, Inc. | Interactive gaming utilizing a dispersed storage network |
US8880799B2 (en) * | 2005-09-30 | 2014-11-04 | Cleversafe, Inc. | Rebuilding data on a dispersed storage network |
US10356177B2 (en) | 2005-09-30 | 2019-07-16 | International Business Machines Corporation | Prioritizing ranges to rebuild based on namespace health |
US11841770B2 (en) | 2005-09-30 | 2023-12-12 | Pure Storage, Inc. | Storage unit connection security in a storage network and methods for use therewith |
US10938418B2 (en) | 2005-09-30 | 2021-03-02 | Pure Storage, Inc. | Online disk replacement/removal |
US10044807B2 (en) | 2005-09-30 | 2018-08-07 | International Business Machines Corporation | Optimistic checked writes |
US11474903B1 (en) | 2005-09-30 | 2022-10-18 | Pure Storage, Inc. | Rebuilding of encoded data slices using locally decodable code segments |
US10051057B2 (en) | 2005-09-30 | 2018-08-14 | International Business Machines Corporation | Prioritizing read locations based on an error history |
US11327674B2 (en) | 2012-06-05 | 2022-05-10 | Pure Storage, Inc. | Storage vault tiering and data migration in a distributed storage network |
US10282440B2 (en) | 2015-03-31 | 2019-05-07 | International Business Machines Corporation | Prioritizing rebuilding of encoded data slices |
US8352782B2 (en) * | 2005-09-30 | 2013-01-08 | Cleversafe, Inc. | Range based rebuilder for use with a dispersed data storage network |
US10250686B2 (en) | 2005-09-30 | 2019-04-02 | International Business Machines Corporation | Finding alternate storage locations to support failing disk migration |
US10747616B2 (en) | 2015-03-31 | 2020-08-18 | Pure Storage, Inc. | Adapting rebuilding of encoded data slices in a dispersed storage network |
US10169229B2 (en) | 2012-06-05 | 2019-01-01 | International Business Machines Corporation | Protocols for expanding existing sites in a dispersed storage network |
US11620185B2 (en) * | 2005-09-30 | 2023-04-04 | Pure Storage, Inc. | Integrity processing in a dispersed storage network |
US8209363B2 (en) | 2007-10-09 | 2012-06-26 | Cleversafe, Inc. | File system adapted for use with a dispersed data storage network |
US8171101B2 (en) * | 2005-09-30 | 2012-05-01 | Cleversafe, Inc. | Smart access to a dispersed data storage network |
US8555109B2 (en) * | 2009-07-30 | 2013-10-08 | Cleversafe, Inc. | Method and apparatus for distributed storage integrity processing |
US7953937B2 (en) | 2005-09-30 | 2011-05-31 | Cleversafe, Inc. | Systems, methods, and apparatus for subdividing data for storage in a dispersed data storage grid |
US8694668B2 (en) * | 2005-09-30 | 2014-04-08 | Cleversafe, Inc. | Streaming media software interface to a dispersed data storage network |
US7904475B2 (en) * | 2007-10-09 | 2011-03-08 | Cleversafe, Inc. | Virtualized data storage vaults on a dispersed data storage network |
US11416339B1 (en) | 2005-09-30 | 2022-08-16 | Pure Storage, Inc. | Validating requests based on stored vault information |
US9774684B2 (en) | 2005-09-30 | 2017-09-26 | International Business Machines Corporation | Storing data in a dispersed storage network |
US10860424B1 (en) | 2005-09-30 | 2020-12-08 | Pure Storage, Inc. | Background verification processing in a storage network |
US11272009B1 (en) | 2005-09-30 | 2022-03-08 | Pure Storage, Inc. | Managed data slice maintenance in a distributed storage system |
US11340988B2 (en) | 2005-09-30 | 2022-05-24 | Pure Storage, Inc. | Generating integrity information in a vast storage system |
US10855769B2 (en) | 2005-09-30 | 2020-12-01 | Pure Storage, Inc. | Prioritizing memory devices to replace based on namespace health |
US11909418B1 (en) | 2005-09-30 | 2024-02-20 | Pure Storage, Inc. | Access authentication in a dispersed storage network |
US7574570B2 (en) * | 2005-09-30 | 2009-08-11 | Cleversafe Inc | Billing system for information dispersal system |
US8012542B2 (en) * | 2005-12-30 | 2011-09-06 | E.I. Du Pont De Nemours And Company | Fluoropolymer coating compositions containing adhesive polymers and substrate coating process |
US7603581B2 (en) * | 2006-03-17 | 2009-10-13 | International Business Machines Corporation | Remote copying of updates to primary and secondary storage locations subject to a copy relationship |
GB0623237D0 (en) * | 2006-11-22 | 2007-01-03 | Ibm | Issuing syncpoints during execution of a batch application |
US7913113B2 (en) | 2007-03-23 | 2011-03-22 | Microsoft Corporation | Self-managed processing device |
US7895474B2 (en) * | 2007-05-03 | 2011-02-22 | International Business Machines Corporation | Recovery and restart of a batch application |
JP5045229B2 (ja) * | 2007-05-14 | 2012-10-10 | 富士ゼロックス株式会社 | ストレージシステム及びストレージ装置 |
US8122089B2 (en) * | 2007-06-29 | 2012-02-21 | Microsoft Corporation | High availability transport |
US8892558B2 (en) | 2007-09-26 | 2014-11-18 | International Business Machines Corporation | Inserting data into an in-memory distributed nodal database |
US10027478B2 (en) | 2007-10-09 | 2018-07-17 | International Business Machines Corporation | Differential key backup |
US8533256B2 (en) * | 2007-10-09 | 2013-09-10 | Cleversafe, Inc. | Object interface to a dispersed data storage network |
US8185614B2 (en) * | 2007-10-09 | 2012-05-22 | Cleversafe, Inc. | Systems, methods, and apparatus for identifying accessible dispersed digital storage vaults utilizing a centralized registry |
US8819179B2 (en) * | 2007-10-09 | 2014-08-26 | Cleversafe, Inc. | Data revision synchronization in a dispersed storage network |
US9697171B2 (en) | 2007-10-09 | 2017-07-04 | Internaitonal Business Machines Corporation | Multi-writer revision synchronization in a dispersed storage network |
US8549351B2 (en) * | 2007-10-09 | 2013-10-01 | Cleversafe, Inc. | Pessimistic data reading in a dispersed storage network |
US9888076B2 (en) | 2007-10-09 | 2018-02-06 | International Business Machines Corporation | Encoded data slice caching in a distributed storage network |
US9959076B2 (en) | 2007-10-09 | 2018-05-01 | International Business Machines Corporation | Optimized disk load distribution |
US8965956B2 (en) | 2007-10-09 | 2015-02-24 | Cleversafe, Inc. | Integrated client for use with a dispersed data storage network |
US8478865B2 (en) * | 2007-10-09 | 2013-07-02 | Cleversafe, Inc. | Systems, methods, and apparatus for matching a connection request with a network interface adapted for use with a dispersed data storage network |
US8572429B2 (en) * | 2007-10-09 | 2013-10-29 | Cleversafe, Inc. | Optimistic data writing in a dispersed storage network |
US8505030B2 (en) * | 2007-11-16 | 2013-08-06 | Microsoft Corporation | Coordinating resources using a volatile network intermediary |
US8719841B2 (en) * | 2007-11-16 | 2014-05-06 | Microsoft Corporation | Dispatch mechanism for coordinating application and communication medium state |
US9021503B2 (en) * | 2007-11-16 | 2015-04-28 | Microsoft Technology Licensing, Llc | Coordinating application state and communication medium state |
US8027996B2 (en) * | 2007-11-29 | 2011-09-27 | International Business Machines Corporation | Commitment control for less than an entire record in an in-memory database in a parallel computer system |
CN101226527B (zh) * | 2007-12-28 | 2011-06-08 | 中国移动通信集团四川有限公司 | 双核库数据同步方法 |
US7831861B1 (en) | 2008-02-07 | 2010-11-09 | Symantec Corporation | Techniques for efficient restoration of granular application data |
US10142115B2 (en) * | 2008-03-31 | 2018-11-27 | International Business Machines Corporation | Distributed storage network data revision control |
US9501355B2 (en) | 2008-03-31 | 2016-11-22 | International Business Machines Corporation | Storing data and directory information in a distributed storage network |
US8630987B2 (en) * | 2008-07-16 | 2014-01-14 | Cleversafe, Inc. | System and method for accessing a data object stored in a distributed storage network |
US8819011B2 (en) | 2008-07-16 | 2014-08-26 | Cleversafe, Inc. | Command line interpreter for accessing a data object stored in a distributed storage network |
US8286030B1 (en) * | 2009-02-09 | 2012-10-09 | American Megatrends, Inc. | Information lifecycle management assisted asynchronous replication |
US9092294B2 (en) * | 2009-04-20 | 2015-07-28 | Cleversafe, Inc. | Systems, apparatus, and methods for utilizing a reachability set to manage a network upgrade |
US8601259B2 (en) * | 2009-04-20 | 2013-12-03 | Cleversafe, Inc. | Securing data in a dispersed storage network using security sentinel value |
US11868498B1 (en) | 2009-04-20 | 2024-01-09 | Pure Storage, Inc. | Storage integrity processing in a storage network |
US9483656B2 (en) | 2009-04-20 | 2016-11-01 | International Business Machines Corporation | Efficient and secure data storage utilizing a dispersed data storage system |
US8819781B2 (en) * | 2009-04-20 | 2014-08-26 | Cleversafe, Inc. | Management of network devices within a dispersed data storage network |
US11991280B2 (en) | 2009-04-20 | 2024-05-21 | Pure Storage, Inc. | Randomized transforms in a dispersed data storage system |
US10447474B2 (en) * | 2009-04-20 | 2019-10-15 | Pure Storage, Inc. | Dispersed data storage system data decoding and decryption |
US10104045B2 (en) | 2009-04-20 | 2018-10-16 | International Business Machines Corporation | Verifying data security in a dispersed storage network |
US8744071B2 (en) * | 2009-04-20 | 2014-06-03 | Cleversafe, Inc. | Dispersed data storage system data encryption and encoding |
US8656187B2 (en) * | 2009-04-20 | 2014-02-18 | Cleversafe, Inc. | Dispersed storage secure data decoding |
US8504847B2 (en) * | 2009-04-20 | 2013-08-06 | Cleversafe, Inc. | Securing data in a dispersed storage network using shared secret slices |
US8301706B2 (en) | 2009-06-15 | 2012-10-30 | Microsoft Corporation | Routing of pooled messages via an intermediary |
US10230692B2 (en) * | 2009-06-30 | 2019-03-12 | International Business Machines Corporation | Distributed storage processing module |
US10108492B2 (en) | 2009-07-30 | 2018-10-23 | International Business Machines Corporation | Rebuilding data stored in a dispersed storage network |
US9208025B2 (en) | 2009-07-30 | 2015-12-08 | Cleversafe, Inc. | Virtual memory mapping in a dispersed storage network |
US8489915B2 (en) * | 2009-07-30 | 2013-07-16 | Cleversafe, Inc. | Method and apparatus for storage integrity processing based on error types in a dispersed storage network |
US8560798B2 (en) * | 2009-07-30 | 2013-10-15 | Cleversafe, Inc. | Dispersed storage network virtual address space |
US9207870B2 (en) | 2009-07-30 | 2015-12-08 | Cleversafe, Inc. | Allocating storage units in a dispersed storage network |
US9009575B2 (en) | 2009-07-30 | 2015-04-14 | Cleversafe, Inc. | Rebuilding a data revision in a dispersed storage network |
US8706980B2 (en) * | 2009-07-30 | 2014-04-22 | Cleversafe, Inc. | Method and apparatus for slice partial rebuilding in a dispersed storage network |
US9558059B2 (en) | 2009-07-30 | 2017-01-31 | International Business Machines Corporation | Detecting data requiring rebuilding in a dispersed storage network |
US8527838B2 (en) | 2009-07-31 | 2013-09-03 | Cleversafe, Inc. | Memory controller utilizing an error coding dispersal function |
US9167277B2 (en) * | 2009-08-03 | 2015-10-20 | Cleversafe, Inc. | Dispersed storage network data manipulation |
US8782086B2 (en) | 2009-08-27 | 2014-07-15 | Cleversafe, Inc. | Updating dispersed storage network access control information |
US9411810B2 (en) * | 2009-08-27 | 2016-08-09 | International Business Machines Corporation | Method and apparatus for identifying data inconsistency in a dispersed storage network |
US8949695B2 (en) | 2009-08-27 | 2015-02-03 | Cleversafe, Inc. | Method and apparatus for nested dispersed storage |
US8473677B2 (en) | 2009-09-29 | 2013-06-25 | Cleversafe, Inc. | Distributed storage network memory access based on memory state |
US8689354B2 (en) * | 2009-09-29 | 2014-04-01 | Cleversafe, Inc. | Method and apparatus for accessing secure data in a dispersed storage system |
US8478937B2 (en) * | 2009-09-30 | 2013-07-02 | Cleversafe, Inc. | Method and apparatus for dispersed storage memory device utilization |
US8402344B2 (en) * | 2009-10-05 | 2013-03-19 | Cleversafe, Inc. | Method and apparatus for controlling dispersed storage of streaming data |
US8966194B2 (en) | 2009-10-29 | 2015-02-24 | Cleversafe, Inc. | Processing a write request in a dispersed storage network |
US9774678B2 (en) | 2009-10-29 | 2017-09-26 | International Business Machines Corporation | Temporarily storing data in a dispersed storage network |
US10389845B2 (en) | 2009-10-29 | 2019-08-20 | Pure Storage, Inc. | Determining how to service requests based on several indicators |
US9661356B2 (en) | 2009-10-29 | 2017-05-23 | International Business Machines Corporation | Distribution of unique copies of broadcast data utilizing fault-tolerant retrieval from dispersed storage |
US10757187B2 (en) | 2009-10-29 | 2020-08-25 | Pure Storage, Inc. | Streaming all-or-nothing encoding with random offset support |
US20110107380A1 (en) * | 2009-10-29 | 2011-05-05 | Cleversafe, Inc. | Media distribution to a plurality of devices utilizing buffered dispersed storage |
US8589637B2 (en) * | 2009-10-30 | 2013-11-19 | Cleversafe, Inc. | Concurrent set storage in distributed storage network |
US9195408B2 (en) | 2009-10-30 | 2015-11-24 | Cleversafe, Inc. | Highly autonomous dispersed storage system retrieval method |
US9900150B2 (en) * | 2009-10-30 | 2018-02-20 | International Business Machines Corporation | Dispersed storage camera device and method of operation |
US10073737B2 (en) | 2009-10-30 | 2018-09-11 | International Business Machines Corporation | Slice location identification |
US9311185B2 (en) | 2009-10-30 | 2016-04-12 | Cleversafe, Inc. | Dispersed storage unit solicitation method and apparatus |
US8572282B2 (en) | 2009-10-30 | 2013-10-29 | Cleversafe, Inc. | Router assisted dispersed storage network method and apparatus |
US8769035B2 (en) | 2009-10-30 | 2014-07-01 | Cleversafe, Inc. | Distributed storage network for storing a data object based on storage requirements |
US9413529B2 (en) | 2009-10-30 | 2016-08-09 | International Business Machines Corporation | Distributed storage network and method for storing and retrieving encryption keys |
US9098376B2 (en) | 2009-10-30 | 2015-08-04 | Cleversafe, Inc. | Distributed storage network for modification of a data object |
US9270298B2 (en) | 2009-11-24 | 2016-02-23 | International Business Machines Corporation | Selecting storage units to rebuild an encoded data slice |
US9152514B2 (en) | 2009-11-24 | 2015-10-06 | Cleversafe, Inc. | Rebuilding a data segment in a dispersed storage network |
US9501349B2 (en) | 2009-11-24 | 2016-11-22 | International Business Machines Corporation | Changing dispersed storage error encoding parameters |
US8918897B2 (en) * | 2009-11-24 | 2014-12-23 | Cleversafe, Inc. | Dispersed storage network data slice integrity verification |
US9836352B2 (en) | 2009-11-25 | 2017-12-05 | International Business Machines Corporation | Detecting a utilization imbalance between dispersed storage network storage units |
US8688907B2 (en) * | 2009-11-25 | 2014-04-01 | Cleversafe, Inc. | Large scale subscription based dispersed storage network |
US10015141B2 (en) | 2009-11-25 | 2018-07-03 | International Business Machines Corporation | Dispersed data storage in a VPN group of devices |
US9626248B2 (en) | 2009-11-25 | 2017-04-18 | International Business Machines Corporation | Likelihood based rebuilding of missing encoded data slices |
US9672109B2 (en) | 2009-11-25 | 2017-06-06 | International Business Machines Corporation | Adaptive dispersed storage network (DSN) and system |
US9489264B2 (en) | 2009-11-25 | 2016-11-08 | International Business Machines Corporation | Storing an encoded data slice as a set of sub-slices |
US8621268B2 (en) * | 2009-11-25 | 2013-12-31 | Cleversafe, Inc. | Write threshold utilization in a dispersed storage system |
US9996548B2 (en) | 2009-11-25 | 2018-06-12 | International Business Machines Corporation | Dispersed storage using localized peer-to-peer capable wireless devices in a peer-to-peer or femto cell supported carrier served fashion |
US8819452B2 (en) | 2009-11-25 | 2014-08-26 | Cleversafe, Inc. | Efficient storage of encrypted data in a dispersed storage network |
US8527807B2 (en) * | 2009-11-25 | 2013-09-03 | Cleversafe, Inc. | Localized dispersed storage memory system |
US10148788B2 (en) | 2009-12-29 | 2018-12-04 | International Business Machines Corporation | Method for providing schedulers in a distributed storage network |
US9866595B2 (en) | 2009-12-29 | 2018-01-09 | International Busines Machines Corporation | Policy based slice deletion in a dispersed storage network |
US10372686B2 (en) | 2009-12-29 | 2019-08-06 | International Business Machines Corporation | Policy-based storage in a dispersed storage network |
US10067831B2 (en) | 2009-12-29 | 2018-09-04 | International Business Machines Corporation | Slice migration in a dispersed storage network |
US10237281B2 (en) | 2009-12-29 | 2019-03-19 | International Business Machines Corporation | Access policy updates in a dispersed storage network |
US9152489B2 (en) * | 2009-12-29 | 2015-10-06 | Cleversafe, Inc. | Revision synchronization of a dispersed storage network |
US8468368B2 (en) * | 2009-12-29 | 2013-06-18 | Cleversafe, Inc. | Data encryption parameter dispersal |
US8762343B2 (en) * | 2009-12-29 | 2014-06-24 | Cleversafe, Inc. | Dispersed storage of software |
US9369526B2 (en) | 2009-12-29 | 2016-06-14 | International Business Machines Corporation | Distributed storage time synchronization based on retrieval delay |
US9462316B2 (en) * | 2009-12-29 | 2016-10-04 | International Business Machines Corporation | Digital content retrieval utilizing dispersed storage |
US9922063B2 (en) | 2009-12-29 | 2018-03-20 | International Business Machines Corporation | Secure storage of secret data in a dispersed storage network |
US9330241B2 (en) | 2009-12-29 | 2016-05-03 | International Business Machines Corporation | Applying digital rights management to multi-media file playback |
US9305597B2 (en) | 2009-12-29 | 2016-04-05 | Cleversafe, Inc. | Accessing stored multi-media content based on a subscription priority level |
US9413393B2 (en) | 2009-12-29 | 2016-08-09 | International Business Machines Corporation | Encoding multi-media content for a centralized digital video storage system |
US10031669B2 (en) | 2009-12-29 | 2018-07-24 | International Business Machines Corporation | Scheduling migration related traffic to be non-disruptive and performant |
US9798467B2 (en) | 2009-12-29 | 2017-10-24 | International Business Machines Corporation | Security checks for proxied requests |
US10133632B2 (en) | 2009-12-29 | 2018-11-20 | International Business Machines Corporation | Determining completion of migration in a dispersed storage network |
US8990585B2 (en) | 2009-12-29 | 2015-03-24 | Cleversafe, Inc. | Time based dispersed storage access |
US10289505B2 (en) | 2009-12-29 | 2019-05-14 | International Business Machines Corporation | Dispersed multi-media content for a centralized digital video storage system |
US10158648B2 (en) | 2009-12-29 | 2018-12-18 | International Business Machines Corporation | Policy-based access in a dispersed storage network |
US9727266B2 (en) | 2009-12-29 | 2017-08-08 | International Business Machines Corporation | Selecting storage units in a dispersed storage network |
US10001923B2 (en) | 2009-12-29 | 2018-06-19 | International Business Machines Corporation | Generation collapse |
US9507735B2 (en) | 2009-12-29 | 2016-11-29 | International Business Machines Corporation | Digital content retrieval utilizing dispersed storage |
US20180335967A1 (en) | 2009-12-29 | 2018-11-22 | International Business Machines Corporation | User customizable data processing plan in a dispersed storage network |
US9672108B2 (en) | 2009-12-29 | 2017-06-06 | International Business Machines Corporation | Dispersed storage network (DSN) and system with improved security |
US9043548B2 (en) | 2010-01-28 | 2015-05-26 | Cleversafe, Inc. | Streaming content storage |
US8959366B2 (en) | 2010-01-28 | 2015-02-17 | Cleversafe, Inc. | De-sequencing encoded data slices |
US9201732B2 (en) | 2010-01-28 | 2015-12-01 | Cleversafe, Inc. | Selective activation of memory to retrieve data in a dispersed storage network |
US8918674B2 (en) | 2010-01-28 | 2014-12-23 | Cleversafe, Inc. | Directory file system in a dispersed storage network |
US11301592B2 (en) | 2010-01-28 | 2022-04-12 | Pure Storage, Inc. | Distributed storage with data obfuscation and method for use therewith |
US8954667B2 (en) * | 2010-01-28 | 2015-02-10 | Cleversafe, Inc. | Data migration in a dispersed storage network |
US9760440B2 (en) | 2010-01-28 | 2017-09-12 | International Business Machines Corporation | Site-based namespace allocation |
US20110184997A1 (en) * | 2010-01-28 | 2011-07-28 | Cleversafe, Inc. | Selecting storage facilities in a plurality of dispersed storage networks |
US9311184B2 (en) * | 2010-02-27 | 2016-04-12 | Cleversafe, Inc. | Storing raid data as encoded data slices in a dispersed storage network |
US9135115B2 (en) | 2010-02-27 | 2015-09-15 | Cleversafe, Inc. | Storing data in multiple formats including a dispersed storage format |
US10216647B2 (en) | 2010-02-27 | 2019-02-26 | International Business Machines Corporation | Compacting dispersed storage space |
US10324791B2 (en) | 2010-11-01 | 2019-06-18 | International Business Machines Corporation | Selectable parallel processing of dispersed storage error encoding |
US9606867B2 (en) | 2014-06-05 | 2017-03-28 | International Business Machines Corporation | Maintaining data storage in accordance with an access metric |
US10007575B2 (en) | 2010-02-27 | 2018-06-26 | International Business Machines Corporation | Alternative multiple memory format storage in a storage network |
US20180365105A1 (en) | 2014-06-05 | 2018-12-20 | International Business Machines Corporation | Establishing an operation execution schedule in a dispersed storage network |
US11429486B1 (en) | 2010-02-27 | 2022-08-30 | Pure Storage, Inc. | Rebuilding data via locally decodable redundancy in a vast storage network |
US10268374B2 (en) | 2010-02-27 | 2019-04-23 | International Business Machines Corporation | Redundant array of independent discs and dispersed storage network system re-director |
US8281182B2 (en) * | 2010-03-12 | 2012-10-02 | Cleversafe, Inc. | Dispersed storage unit selection |
US8707091B2 (en) * | 2010-03-15 | 2014-04-22 | Cleversafe, Inc. | Failsafe directory file system in a dispersed storage network |
US8938013B2 (en) * | 2010-03-16 | 2015-01-20 | Cleversafe, Inc. | Dispersal of priority data in a dispersed storage network |
US9229824B2 (en) | 2010-03-16 | 2016-01-05 | International Business Machines Corporation | Caching rebuilt encoded data slices in a dispersed storage network |
US9170884B2 (en) | 2010-03-16 | 2015-10-27 | Cleversafe, Inc. | Utilizing cached encoded data slices in a dispersed storage network |
US8549538B2 (en) | 2010-03-18 | 2013-10-01 | Microsoft Corporation | Coordinating communication medium state for subtasks |
US10447767B2 (en) | 2010-04-26 | 2019-10-15 | Pure Storage, Inc. | Resolving a performance issue within a dispersed storage network |
US9092386B2 (en) | 2010-04-26 | 2015-07-28 | Cleversafe, Inc. | Indicating an error within a dispersed storage network |
US9495117B2 (en) | 2010-04-26 | 2016-11-15 | International Business Machines Corporation | Storing data in a dispersed storage network |
US9606858B2 (en) | 2010-04-26 | 2017-03-28 | International Business Machines Corporation | Temporarily storing an encoded data slice |
US10956292B1 (en) | 2010-04-26 | 2021-03-23 | Pure Storage, Inc. | Utilizing integrity information for data retrieval in a vast storage system |
US8914669B2 (en) | 2010-04-26 | 2014-12-16 | Cleversafe, Inc. | Secure rebuilding of an encoded data slice in a dispersed storage network |
US8938552B2 (en) | 2010-08-02 | 2015-01-20 | Cleversafe, Inc. | Resolving a protocol issue within a dispersed storage network |
US8625635B2 (en) | 2010-04-26 | 2014-01-07 | Cleversafe, Inc. | Dispersed storage network frame protocol header |
US8566354B2 (en) | 2010-04-26 | 2013-10-22 | Cleversafe, Inc. | Storage and retrieval of required slices in a dispersed storage network |
US9898373B2 (en) | 2010-04-26 | 2018-02-20 | International Business Machines Corporation | Prioritizing rebuilding of stored data in a dispersed storage network |
US8250234B2 (en) | 2010-04-26 | 2012-08-21 | Microsoft Corporation | Hierarchically disassembling messages |
US10193689B2 (en) | 2010-05-19 | 2019-01-29 | International Business Machines Corporation | Storing access information in a dispersed storage network |
US8621580B2 (en) | 2010-05-19 | 2013-12-31 | Cleversafe, Inc. | Retrieving access information in a dispersed storage network |
US11740972B1 (en) | 2010-05-19 | 2023-08-29 | Pure Storage, Inc. | Migrating data in a vast storage network |
US8707088B2 (en) | 2010-05-19 | 2014-04-22 | Cleversafe, Inc. | Reconfiguring data storage in multiple dispersed storage networks |
US10911230B2 (en) | 2010-05-19 | 2021-02-02 | Pure Storage, Inc. | Securely activating functionality of a computing device in a dispersed storage network |
US8448044B2 (en) | 2010-05-19 | 2013-05-21 | Cleversafe, Inc. | Retrieving data from a dispersed storage network in accordance with a retrieval threshold |
US10353774B2 (en) | 2015-10-30 | 2019-07-16 | International Business Machines Corporation | Utilizing storage unit latency data in a dispersed storage network |
US8909858B2 (en) | 2010-06-09 | 2014-12-09 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage network |
US8555142B2 (en) | 2010-06-22 | 2013-10-08 | Cleversafe, Inc. | Verifying integrity of data stored in a dispersed storage memory |
US9231768B2 (en) | 2010-06-22 | 2016-01-05 | International Business Machines Corporation | Utilizing a deterministic all or nothing transformation in a dispersed storage network |
US9077734B2 (en) | 2010-08-02 | 2015-07-07 | Cleversafe, Inc. | Authentication of devices of a dispersed storage network |
US20190095101A1 (en) | 2010-08-02 | 2019-03-28 | International Business Machines Corporation | Authenticating a credential in a dispersed storage network |
US10162524B2 (en) | 2010-08-02 | 2018-12-25 | International Business Machines Corporation | Determining whether to compress a data segment in a dispersed storage network |
US9063968B2 (en) | 2010-08-02 | 2015-06-23 | Cleversafe, Inc. | Identifying a compromised encoded data slice |
US10255135B2 (en) | 2010-08-25 | 2019-04-09 | International Business Machines Corporation | Method and apparatus for non-interactive information dispersal |
US9940195B2 (en) | 2010-08-25 | 2018-04-10 | International Business Machines Corporation | Encryption of slice partials |
US8621271B2 (en) | 2010-08-26 | 2013-12-31 | Cleversafe, Inc. | Reprovisioning a memory device into a dispersed storage network memory |
US10298957B2 (en) | 2010-10-06 | 2019-05-21 | International Business Machines Corporation | Content-based encoding in a multiple routing path communications system |
US10970168B2 (en) | 2010-10-06 | 2021-04-06 | Pure Storage, Inc. | Adjusting dispersed storage error encoding parameters based on path performance |
US9843412B2 (en) | 2010-10-06 | 2017-12-12 | International Business Machines Corporation | Optimizing routing of data across a communications network |
US8656138B2 (en) | 2010-10-06 | 2014-02-18 | Cleversafe, Inc. | Efficiently accessing an encoded data slice utilizing a memory bin |
US8918693B2 (en) | 2010-10-06 | 2014-12-23 | Cleversafe, Inc. | Data transmission utilizing data processing and dispersed storage error encoding |
US9571230B2 (en) | 2010-10-06 | 2017-02-14 | International Business Machines Corporation | Adjusting routing of data within a network path |
US10289318B2 (en) | 2010-11-01 | 2019-05-14 | International Business Machines Corporation | Adjusting optimistic writes in a dispersed storage network |
US20120109885A1 (en) | 2010-11-01 | 2012-05-03 | Cleversafe, Inc. | File retrieval during a legacy storage system to dispersed storage network migration |
US9015499B2 (en) | 2010-11-01 | 2015-04-21 | Cleversafe, Inc. | Verifying data integrity utilizing dispersed storage |
US10082970B2 (en) | 2010-11-01 | 2018-09-25 | International Business Machines Corporation | Storing an effective dynamic width of encoded data slices |
US10146645B2 (en) | 2010-11-01 | 2018-12-04 | International Business Machines Corporation | Multiple memory format storage in a storage network |
US10768833B2 (en) | 2010-11-01 | 2020-09-08 | Pure Storage, Inc. | Object dispersal load balancing |
US10805042B2 (en) | 2010-11-01 | 2020-10-13 | Pure Storage, Inc. | Creating transmission data slices for use in a dispersed storage network |
US9590838B2 (en) | 2010-11-09 | 2017-03-07 | International Business Machines Corporation | Transferring data of a dispersed storage network |
US8627065B2 (en) | 2010-11-09 | 2014-01-07 | Cleversafe, Inc. | Validating a certificate chain in a dispersed storage network |
US10802763B2 (en) | 2010-11-29 | 2020-10-13 | Pure Storage, Inc. | Remote storage verification |
US9336139B2 (en) | 2010-11-29 | 2016-05-10 | Cleversafe, Inc. | Selecting a memory for storage of an encoded data slice in a dispersed storage network |
US10922179B2 (en) | 2010-11-29 | 2021-02-16 | Pure Storage, Inc. | Post rebuild verification |
US9454431B2 (en) | 2010-11-29 | 2016-09-27 | International Business Machines Corporation | Memory selection for slice storage in a dispersed storage network |
US11789631B2 (en) | 2010-11-29 | 2023-10-17 | Pure Storage, Inc. | Utilizing metadata storage trees in a vast storage network |
US11307930B1 (en) | 2010-11-29 | 2022-04-19 | Pure Storage, Inc. | Optimized selection of participants in distributed data rebuild/verification |
US10372350B2 (en) | 2010-11-29 | 2019-08-06 | Pure Storage, Inc. | Shared ownership of namespace ranges |
US8832493B2 (en) | 2010-12-22 | 2014-09-09 | Cleversafe, Inc. | Storing directory metadata in a dispersed storage network |
US9319463B2 (en) | 2010-12-27 | 2016-04-19 | Cleversafe, Inc. | Reproducing data from obfuscated data retrieved from a dispersed storage network |
US8694752B2 (en) | 2011-02-01 | 2014-04-08 | Cleversafe, Inc. | Transferring data in response to detection of a memory system imbalance |
US9081715B2 (en) | 2011-02-01 | 2015-07-14 | Cleversafe, Inc. | Utilizing a dispersed storage network access token module to retrieve data from a dispersed storage network memory |
US9183073B2 (en) | 2011-03-02 | 2015-11-10 | Cleversafe, Inc. | Maintaining data concurrency with a dispersed storage network |
US10102063B2 (en) | 2011-03-02 | 2018-10-16 | International Business Machines Corporation | Transferring data utilizing a transfer token module |
US11418580B2 (en) | 2011-04-01 | 2022-08-16 | Pure Storage, Inc. | Selective generation of secure signatures in a distributed storage network |
US10298684B2 (en) | 2011-04-01 | 2019-05-21 | International Business Machines Corporation | Adaptive replication of dispersed data to improve data access performance |
US8843803B2 (en) | 2011-04-01 | 2014-09-23 | Cleversafe, Inc. | Utilizing local memory and dispersed storage memory to access encoded data slices |
US8627091B2 (en) | 2011-04-01 | 2014-01-07 | Cleversafe, Inc. | Generating a secure signature utilizing a plurality of key shares |
US9298550B2 (en) | 2011-05-09 | 2016-03-29 | Cleversafe, Inc. | Assigning a dispersed storage network address range in a maintenance free storage container |
US9219604B2 (en) | 2011-05-09 | 2015-12-22 | Cleversafe, Inc. | Generating an encrypted message for storage |
US10452836B2 (en) | 2011-05-09 | 2019-10-22 | Pure Storage, Inc. | Retrieving a hypertext markup language file from a dispersed storage network memory |
US20170192684A1 (en) | 2011-05-09 | 2017-07-06 | International Business Machines Corporation | Auditing a transaction in a dispersed storage network |
US8954787B2 (en) | 2011-05-09 | 2015-02-10 | Cleversafe, Inc. | Establishing trust in a maintenance free storage container |
US8656253B2 (en) | 2011-06-06 | 2014-02-18 | Cleversafe, Inc. | Storing portions of data in a dispersed storage network |
US10061650B2 (en) | 2011-06-06 | 2018-08-28 | International Business Machines Corporation | Priority based rebuilding |
US8756480B2 (en) | 2011-06-06 | 2014-06-17 | Cleversafe, Inc. | Prioritized deleting of slices stored in a dispersed storage network |
US10949301B2 (en) | 2011-06-06 | 2021-03-16 | Pure Storage, Inc. | Pre-positioning pre-stored content in a content distribution system |
US10042709B2 (en) | 2011-06-06 | 2018-08-07 | International Business Machines Corporation | Rebuild prioritization during a plurality of concurrent data object write operations |
US8924770B2 (en) | 2011-07-06 | 2014-12-30 | Cleversafe, Inc. | Rebuilding a data slice of a maintenance free storage container |
US20130013798A1 (en) | 2011-07-06 | 2013-01-10 | Cleversafe, Inc. | Distribution of multi-media content to a user device |
EP2737431A4 (en) | 2011-07-27 | 2015-03-25 | Cleversafe Inc | GENERATION OF DISTRIBUTED STORAGE NETWORK EVENT RECORDS |
US11016702B2 (en) | 2011-07-27 | 2021-05-25 | Pure Storage, Inc. | Hierarchical event tree |
US10678619B2 (en) | 2011-07-27 | 2020-06-09 | Pure Storage, Inc. | Unified logs and device statistics |
CA2842563A1 (en) * | 2011-08-03 | 2013-02-07 | Correlsense Ltd. | A method and apparatus for assembling elements of data transactions |
US9971802B2 (en) | 2011-08-17 | 2018-05-15 | International Business Machines Corporation | Audit record transformation in a dispersed storage network |
US10120756B2 (en) | 2011-08-17 | 2018-11-06 | International Business Machines Corporation | Audit object generation in a dispersed storage network |
US8782491B2 (en) | 2011-08-17 | 2014-07-15 | Cleversafe, Inc. | Detecting intentional corruption of data in a dispersed storage network |
US10454678B2 (en) | 2011-08-17 | 2019-10-22 | Pure Storage, Inc. | Accesor-based audit trails |
US20190179696A1 (en) | 2011-09-06 | 2019-06-13 | International Business Machines Corporation | Demultiplexing decoded data streams in a distributed storage network |
US11907060B2 (en) | 2011-09-06 | 2024-02-20 | Pure Storage, Inc. | Coding of data streams in a vast storage network |
US9213742B2 (en) | 2011-09-06 | 2015-12-15 | Cleversafe, Inc. | Time aligned transmission of concurrently coded data streams |
US10235237B2 (en) | 2011-09-06 | 2019-03-19 | Intertnational Business Machines Corporation | Decoding data streams in a distributed storage network |
US8555130B2 (en) | 2011-10-04 | 2013-10-08 | Cleversafe, Inc. | Storing encoded data slices in a dispersed storage unit |
US9274864B2 (en) | 2011-10-04 | 2016-03-01 | International Business Machines Corporation | Accessing large amounts of data in a dispersed storage network |
US8782494B2 (en) | 2011-10-04 | 2014-07-15 | Cleversafe, Inc. | Reproducing data utilizing a zero information gain function |
US11329830B1 (en) | 2011-11-01 | 2022-05-10 | Pure Storage, Inc. | Dispersed credentials |
US10365969B2 (en) | 2011-11-01 | 2019-07-30 | International Business Machines Corporation | Multiple wireless communication systems stream slices based on geography |
US10496500B2 (en) | 2011-11-01 | 2019-12-03 | Pure Storage, Inc. | Preemptively reading extra encoded data slices |
US8839368B2 (en) | 2011-11-01 | 2014-09-16 | Cleversafe, Inc. | Acquiring a trusted set of encoded data slices |
US10437678B2 (en) | 2011-11-01 | 2019-10-08 | Pure Storage, Inc. | Updating an encoded data slice |
US9304843B2 (en) | 2011-11-01 | 2016-04-05 | Cleversafe, Inc. | Highly secure method for accessing a dispersed storage network |
US8627066B2 (en) | 2011-11-03 | 2014-01-07 | Cleversafe, Inc. | Processing a dispersed storage network access request utilizing certificate chain validation information |
US10509705B2 (en) * | 2011-11-04 | 2019-12-17 | Veritas Technologies Llc | Application protection through a combined functionality failure manager |
US10055283B2 (en) | 2011-11-28 | 2018-08-21 | International Business Machines Corporation | Securely distributing random keys in a dispersed storage network |
US8848906B2 (en) | 2011-11-28 | 2014-09-30 | Cleversafe, Inc. | Encrypting data for storage in a dispersed storage network |
US10387071B2 (en) | 2011-11-28 | 2019-08-20 | Pure Storage, Inc. | On-the-fly cancellation of unnecessary read requests |
US10558592B2 (en) | 2011-11-28 | 2020-02-11 | Pure Storage, Inc. | Priority level adaptation in a dispersed storage network |
US11474958B1 (en) | 2011-11-28 | 2022-10-18 | Pure Storage, Inc. | Generating and queuing system messages with priorities in a storage network |
US10977194B2 (en) | 2011-11-28 | 2021-04-13 | Pure Storage, Inc. | Securely storing random keys in a dispersed storage network |
US8856549B2 (en) | 2011-11-28 | 2014-10-07 | Cleversafe, Inc. | Deleting encoded data slices in a dispersed storage network |
US10318445B2 (en) | 2011-11-28 | 2019-06-11 | International Business Machines Corporation | Priority level adaptation in a dispersed storage network |
US10346218B2 (en) | 2011-12-12 | 2019-07-09 | International Business Machines Corporation | Partial task allocation in a dispersed storage network |
US20180083930A1 (en) | 2011-12-12 | 2018-03-22 | International Business Machines Corporation | Reads for dispersed computation jobs |
US9584359B2 (en) | 2011-12-12 | 2017-02-28 | International Business Machines Corporation | Distributed storage and computing of interim data |
US10104168B2 (en) | 2011-12-12 | 2018-10-16 | International Business Machines Corporation | Method for managing throughput in a distributed storage network |
US20130238900A1 (en) | 2011-12-12 | 2013-09-12 | Cleversafe, Inc. | Dispersed storage network secure hierarchical file directory |
US10146621B2 (en) | 2011-12-12 | 2018-12-04 | International Business Machines Corporation | Chaining computes in a distributed computing system |
US10176045B2 (en) | 2011-12-12 | 2019-01-08 | International Business Machines Corporation | Internet based shared memory in a distributed computing system |
US9304858B2 (en) | 2011-12-12 | 2016-04-05 | International Business Machines Corporation | Analyzing found data in a distributed storage and task network |
US10360106B2 (en) | 2011-12-12 | 2019-07-23 | International Business Machines Corporation | Throttled real-time writes |
US10666596B2 (en) | 2011-12-12 | 2020-05-26 | Pure Storage, Inc. | Messaging via a shared memory of a distributed computing system |
US9141468B2 (en) | 2011-12-12 | 2015-09-22 | Cleversafe, Inc. | Managing memory utilization in a distributed storage and task network |
US10348640B2 (en) | 2011-12-12 | 2019-07-09 | International Business Machines Corporation | Partial task execution in a dispersed storage network |
US9817701B2 (en) | 2011-12-12 | 2017-11-14 | International Business Machines Corporation | Threshold computing in a distributed computing system |
US9009567B2 (en) | 2011-12-12 | 2015-04-14 | Cleversafe, Inc. | Encrypting distributed computing data |
US9674155B2 (en) | 2011-12-12 | 2017-06-06 | International Business Machines Corporation | Encrypting segmented data in a distributed computing system |
US9430286B2 (en) | 2011-12-12 | 2016-08-30 | International Business Machines Corporation | Authorizing distributed task processing in a distributed storage network |
US9891995B2 (en) | 2012-01-31 | 2018-02-13 | International Business Machines Corporation | Cooperative decentralized rebuild scanning |
US9465861B2 (en) | 2012-01-31 | 2016-10-11 | International Business Machines Corporation | Retrieving indexed data from a dispersed storage network |
US10671585B2 (en) | 2012-01-31 | 2020-06-02 | Pure Storage, Inc. | Storing indexed data to a dispersed storage network |
US10140177B2 (en) | 2012-01-31 | 2018-11-27 | International Business Machines Corporation | Transferring a partial task in a distributed computing system |
US9507786B2 (en) | 2012-01-31 | 2016-11-29 | International Business Machines Corporation | Retrieving data utilizing a distributed index |
US9146810B2 (en) | 2012-01-31 | 2015-09-29 | Cleversafe, Inc. | Identifying a potentially compromised encoded data slice |
US10013444B2 (en) | 2012-03-02 | 2018-07-03 | International Business Machines Corporation | Modifying an index node of a hierarchical dispersed storage index |
US10157051B2 (en) | 2012-03-02 | 2018-12-18 | International Business Machines Corporation | Upgrading devices in a dispersed storage network |
US11232093B2 (en) | 2012-03-02 | 2022-01-25 | Pure Storage, Inc. | Slice migration in a dispersed storage network |
US9588994B2 (en) | 2012-03-02 | 2017-03-07 | International Business Machines Corporation | Transferring task execution in a distributed storage and task network |
US10402393B2 (en) | 2012-03-02 | 2019-09-03 | Pure Storage, Inc. | Slice migration in a dispersed storage network |
US9380032B2 (en) | 2012-04-25 | 2016-06-28 | International Business Machines Corporation | Encrypting data for storage in a dispersed storage network |
US10795766B2 (en) | 2012-04-25 | 2020-10-06 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US10621044B2 (en) | 2012-04-25 | 2020-04-14 | Pure Storage, Inc. | Mapping slice groupings in a dispersed storage network |
US10073638B2 (en) | 2012-06-05 | 2018-09-11 | International Business Machines Corporation | Automatic namespace ordering determination |
US9613052B2 (en) | 2012-06-05 | 2017-04-04 | International Business Machines Corporation | Establishing trust within a cloud computing system |
US10474395B2 (en) | 2012-06-05 | 2019-11-12 | Pure Storage, Inc. | Abstracting namespace mapping in a dispersed storage network through multiple hierarchies |
US10002047B2 (en) | 2012-06-05 | 2018-06-19 | International Business Machines Corporation | Read-if-not-revision-equals protocol message |
US10447471B2 (en) | 2012-06-05 | 2019-10-15 | Pure Storage, Inc. | Systematic secret sharing |
US9164841B2 (en) | 2012-06-05 | 2015-10-20 | Cleversafe, Inc. | Resolution of a storage error in a dispersed storage network |
US11093327B1 (en) | 2012-06-25 | 2021-08-17 | Pure Storage, Inc. | Failure abatement approach for failed storage units common to multiple vaults |
US10157011B2 (en) | 2012-06-25 | 2018-12-18 | International Business Machines Corporation | Temporary suspension of vault access |
US10114697B2 (en) | 2012-06-25 | 2018-10-30 | International Business Machines Corporation | Large object parallel writing |
US20180336097A1 (en) | 2012-06-25 | 2018-11-22 | International Business Machines Corporation | Namespace affinity and failover for processing units in a dispersed storage network |
US10430276B2 (en) | 2012-06-25 | 2019-10-01 | Pure Storage, Inc. | Optimal orderings of processing unit priorities in a dispersed storage network |
US10120574B2 (en) | 2012-06-25 | 2018-11-06 | International Business Machines Corporation | Reversible data modifications within DS units |
US9110833B2 (en) | 2012-06-25 | 2015-08-18 | Cleversafe, Inc. | Non-temporarily storing temporarily stored data in a dispersed storage network |
US9141297B2 (en) | 2012-06-25 | 2015-09-22 | Cleversafe, Inc. | Verifying encoded data slice integrity in a dispersed storage network |
US9258177B2 (en) | 2012-08-02 | 2016-02-09 | International Business Machines Corporation | Storing a data stream in a set of storage devices |
US10651975B2 (en) | 2012-08-02 | 2020-05-12 | Pure Storage, Inc. | Forwarding data amongst cooperative DSTN processing units of a massive data ingestion system |
US9875158B2 (en) | 2012-08-31 | 2018-01-23 | International Business Machines Corporation | Slice storage in a dispersed storage network |
US10331518B2 (en) | 2012-08-31 | 2019-06-25 | International Business Machines Corporation | Encoding data in a dispersed storage network |
US10409679B2 (en) | 2012-08-31 | 2019-09-10 | Pure Storage, Inc. | Migrating data slices in a dispersed storage network |
US10409678B2 (en) | 2012-08-31 | 2019-09-10 | Pure Storage, Inc. | Self-optimizing read-ahead |
US9176822B2 (en) | 2012-08-31 | 2015-11-03 | Cleversafe, Inc. | Adjusting dispersed storage error encoding parameters |
US10241863B2 (en) | 2012-08-31 | 2019-03-26 | International Business Machines Corporation | Slice rebuilding in a dispersed storage network |
US11360851B2 (en) | 2012-08-31 | 2022-06-14 | Pure Storage, Inc. | Duplicating authentication information between connections |
US10057351B2 (en) | 2012-09-13 | 2018-08-21 | International Business Machines Corporation | Modifying information dispersal algorithm configurations in a dispersed storage network |
US10402423B2 (en) | 2012-09-13 | 2019-09-03 | Pure Storage, Inc. | Sliding windows for batching index updates |
US10417253B2 (en) | 2012-09-13 | 2019-09-17 | Pure Storage, Inc. | Multi-level data storage in a dispersed storage network |
US10331698B2 (en) | 2012-09-13 | 2019-06-25 | International Business Machines Corporation | Rebuilding data in a dispersed storage network |
US9424326B2 (en) | 2012-09-13 | 2016-08-23 | International Business Machines Corporation | Writing data avoiding write conflicts in a dispersed storage network |
US10318549B2 (en) | 2012-09-13 | 2019-06-11 | International Business Machines Corporation | Batching modifications to nodes in a dispersed index |
US9503513B2 (en) | 2012-10-08 | 2016-11-22 | International Business Machines Corporation | Robust transmission of data utilizing encoded data slices |
US10331519B2 (en) | 2012-10-08 | 2019-06-25 | International Business Machines Corporation | Application of secret sharing schemes at multiple levels of a dispersed storage network |
US10606700B2 (en) | 2012-10-08 | 2020-03-31 | Pure Storage, Inc. | Enhanced dispersed storage error encoding using multiple encoding layers |
US10127111B2 (en) | 2012-10-08 | 2018-11-13 | International Business Machines Corporation | Client provided request prioritization hints |
KR101424568B1 (ko) * | 2012-10-12 | 2014-08-01 | (주)티베로 | 트랜잭션 재시작 가능한 클라이언트 장치와 데이터베이스 서버 및 방법 |
US9794337B2 (en) | 2012-10-30 | 2017-10-17 | International Business Machines Corporation | Balancing storage node utilization of a dispersed storage network |
US9298542B2 (en) | 2012-10-30 | 2016-03-29 | Cleversafe, Inc. | Recovering data from corrupted encoded data slices |
US9521197B2 (en) | 2012-12-05 | 2016-12-13 | International Business Machines Corporation | Utilizing data object storage tracking in a dispersed storage network |
US10558621B2 (en) | 2012-12-05 | 2020-02-11 | Pure Storage, Inc. | Lock stealing writes for improved reliability |
US9811533B2 (en) | 2012-12-05 | 2017-11-07 | International Business Machines Corporation | Accessing distributed computing functions in a distributed computing system |
US10587691B2 (en) | 2012-12-05 | 2020-03-10 | Pure Storage, Inc. | Impatient writes |
CN103870478B (zh) * | 2012-12-12 | 2018-09-25 | 腾讯科技(深圳)有限公司 | 一种恢复同步数据的方法及装置 |
US10229002B2 (en) | 2013-01-04 | 2019-03-12 | International Business Machines Corporation | Process to migrate named objects to a dispersed or distributed storage network (DSN) |
US10423491B2 (en) | 2013-01-04 | 2019-09-24 | Pure Storage, Inc. | Preventing multiple round trips when writing to target widths |
US10013203B2 (en) | 2013-01-04 | 2018-07-03 | International Business Machines Corporation | Achieving storage compliance in a dispersed storage network |
US9558067B2 (en) | 2013-01-04 | 2017-01-31 | International Business Machines Corporation | Mapping storage of data in a dispersed storage network |
US10642992B2 (en) | 2013-01-04 | 2020-05-05 | Pure Storage, Inc. | Password augmented all-or-nothin transform |
US10204009B2 (en) | 2013-01-04 | 2019-02-12 | International Business Machines Corporation | Prioritized rebuilds using dispersed indices |
US10241866B2 (en) | 2013-01-04 | 2019-03-26 | International Business Machines Corporation | Allocating rebuilding queue entries in a dispersed storage network |
US10402270B2 (en) | 2013-01-04 | 2019-09-03 | Pure Storage, Inc. | Deterministically determining affinity for a source name range |
US20190250823A1 (en) | 2013-01-04 | 2019-08-15 | International Business Machines Corporation | Efficient computation of only the required slices |
US9311187B2 (en) | 2013-01-04 | 2016-04-12 | Cleversafe, Inc. | Achieving storage compliance in a dispersed storage network |
US11416340B1 (en) | 2013-01-04 | 2022-08-16 | Pure Storage, Inc. | Storage system with multiple storage types in a vast storage network |
US10310763B2 (en) | 2013-02-05 | 2019-06-04 | International Business Machines Corporation | Forming a distributed storage network memory without namespace aware distributed storage units |
US10268554B2 (en) | 2013-02-05 | 2019-04-23 | International Business Machines Corporation | Using dispersed computation to change dispersal characteristics |
US10430122B2 (en) | 2013-02-05 | 2019-10-01 | Pure Storage, Inc. | Using partial rebuilding to change information dispersal algorithm (IDA) |
US10664360B2 (en) | 2013-02-05 | 2020-05-26 | Pure Storage, Inc. | Identifying additional resources to accelerate rebuildling |
US10621021B2 (en) | 2013-02-05 | 2020-04-14 | Pure Storage, Inc. | Using dispersed data structures to point to slice or date source replicas |
US9043499B2 (en) | 2013-02-05 | 2015-05-26 | Cleversafe, Inc. | Modifying a dispersed storage network memory data access response plan |
US10055441B2 (en) | 2013-02-05 | 2018-08-21 | International Business Machines Corporation | Updating shared group information in a dispersed storage network |
US10642489B2 (en) | 2013-02-26 | 2020-05-05 | Pure Storage, Inc. | Determining when to initiate an intra-distributed storage unit rebuild vs. an inter-distributed storage unit rebuild |
US11036392B2 (en) | 2013-02-26 | 2021-06-15 | Pure Storage, Inc. | Determining when to use convergent encryption |
US9274908B2 (en) | 2013-02-26 | 2016-03-01 | International Business Machines Corporation | Resolving write conflicts in a dispersed storage network |
EP2962202A4 (en) * | 2013-02-28 | 2016-10-12 | Hewlett Packard Entpr Dev Lp | RECOVERY PROGRAM USING DIAGNOSTIC RESULTS |
US10318911B1 (en) * | 2013-03-14 | 2019-06-11 | Jpmorgan Chase Bank, N.A. | Persistenceless business process management system and method |
CN103136370B (zh) * | 2013-03-21 | 2016-05-25 | 曙光信息产业(北京)有限公司 | 元数据的恢复方法和装置 |
US10075523B2 (en) | 2013-04-01 | 2018-09-11 | International Business Machines Corporation | Efficient storage of data in a dispersed storage network |
US9456035B2 (en) | 2013-05-03 | 2016-09-27 | International Business Machines Corporation | Storing related data in a dispersed storage network |
US10223213B2 (en) | 2013-05-03 | 2019-03-05 | International Business Machines Corporation | Salted zero expansion all or nothing transformation |
US9405609B2 (en) | 2013-05-22 | 2016-08-02 | International Business Machines Corporation | Storing data in accordance with a performance threshold |
US9424132B2 (en) | 2013-05-30 | 2016-08-23 | International Business Machines Corporation | Adjusting dispersed storage network traffic due to rebuilding |
US11226860B1 (en) | 2013-05-30 | 2022-01-18 | Pure Storage, Inc. | Difference based rebuild list scanning |
US9432341B2 (en) | 2013-05-30 | 2016-08-30 | International Business Machines Corporation | Securing data in a dispersed storage network |
US11221916B2 (en) | 2013-07-01 | 2022-01-11 | Pure Storage, Inc. | Prioritized data reconstruction in a dispersed storage network |
US9652470B2 (en) | 2013-07-01 | 2017-05-16 | International Business Machines Corporation | Storing data in a dispersed storage network |
US10169369B2 (en) | 2013-07-01 | 2019-01-01 | International Business Machines Corporation | Meeting storage requirements with limited storage resources |
US9501360B2 (en) | 2013-07-01 | 2016-11-22 | International Business Machines Corporation | Rebuilding data while reading data in a dispersed storage network |
US10133635B2 (en) | 2013-07-01 | 2018-11-20 | International Business Machines Corporation | Low-width vault in distributed storage system |
US9565252B2 (en) | 2013-07-31 | 2017-02-07 | International Business Machines Corporation | Distributed storage network with replication control and methods for use therewith |
US10180880B2 (en) | 2013-07-31 | 2019-01-15 | International Business Machines Corporation | Adaptive rebuilding rates based on sampling and inference |
US9626125B2 (en) | 2013-07-31 | 2017-04-18 | International Business Machines Corporation | Accounting for data that needs to be rebuilt or deleted |
US20180188964A1 (en) | 2013-07-31 | 2018-07-05 | International Business Machines Corporation | Managed storage unit shutdown in a distributed storage network |
US10681134B2 (en) | 2013-07-31 | 2020-06-09 | Pure Storage, Inc. | Accelerated learning in adaptive rebuilding by applying observations to other samples |
US10484474B2 (en) | 2013-08-29 | 2019-11-19 | Pure Storage, Inc. | Rotating offline DS units |
US10489071B2 (en) | 2013-08-29 | 2019-11-26 | Pure Storage, Inc. | Vault provisioning within dispersed or distributed storage network (DSN) |
US9749414B2 (en) | 2013-08-29 | 2017-08-29 | International Business Machines Corporation | Storing low retention priority data in a dispersed storage network |
US9438675B2 (en) | 2013-08-29 | 2016-09-06 | International Business Machines Corporation | Dispersed storage with variable slice length and methods for use therewith |
US10601918B2 (en) | 2013-08-29 | 2020-03-24 | Pure Storage, Inc. | Rotating inactive storage units in a distributed storage network |
US10514857B2 (en) | 2013-08-29 | 2019-12-24 | Pure Storage, Inc. | Dynamic adjusting of parameters based on resource scoring |
US9857974B2 (en) | 2013-10-03 | 2018-01-02 | International Business Machines Corporation | Session execution decision |
US10182115B2 (en) | 2013-11-01 | 2019-01-15 | International Business Machines Corporation | Changing rebuild priority for a class of data |
US9781208B2 (en) | 2013-11-01 | 2017-10-03 | International Business Machines Corporation | Obtaining dispersed storage network system registry information |
US10304096B2 (en) | 2013-11-01 | 2019-05-28 | International Business Machines Corporation | Renting a pipe to a storage system |
US9900316B2 (en) | 2013-12-04 | 2018-02-20 | International Business Machines Corporation | Accessing storage units of a dispersed storage network |
US10922181B2 (en) | 2014-01-06 | 2021-02-16 | Pure Storage, Inc. | Using storage locations greater than an IDA width in a dispersed storage network |
US9594639B2 (en) | 2014-01-06 | 2017-03-14 | International Business Machines Corporation | Configuring storage resources of a dispersed storage network |
US11340993B2 (en) | 2014-01-06 | 2022-05-24 | Pure Storage, Inc. | Deferred rebuilding with alternate storage locations |
US9552261B2 (en) | 2014-01-31 | 2017-01-24 | International Business Machines Corporation | Recovering data from microslices in a dispersed storage network |
US11983070B2 (en) | 2014-01-31 | 2024-05-14 | Pure Storage, Inc. | Determining segmentation size in a distributed storage network |
US10318382B2 (en) | 2014-01-31 | 2019-06-11 | International Business Machines Corporation | Determining missing encoded data slices |
US9778987B2 (en) | 2014-01-31 | 2017-10-03 | International Business Machines Corporation | Writing encoded data slices in a dispersed storage network |
US11204836B1 (en) | 2014-01-31 | 2021-12-21 | Pure Storage, Inc. | Using trap slices for anomaly detection in a distributed storage network |
US9665429B2 (en) | 2014-02-26 | 2017-05-30 | International Business Machines Corporation | Storage of data with verification in a dispersed storage network |
US10592109B2 (en) | 2014-02-26 | 2020-03-17 | Pure Storage, Inc. | Selecting storage resources in a dispersed storage network |
US10140182B2 (en) | 2014-02-26 | 2018-11-27 | International Business Machines Corporation | Modifying allocation of storage resources in a dispersed storage network |
US10678638B2 (en) | 2014-02-26 | 2020-06-09 | Pure Storage, Inc. | Resolving write conflicts in a dispersed storage network |
US9529834B2 (en) | 2014-02-26 | 2016-12-27 | International Business Machines Corporation | Concatenating data objects for storage in a dispersed storage network |
US10635312B2 (en) | 2014-02-26 | 2020-04-28 | Pure Storage, Inc. | Recovering data in a dispersed storage network |
US10769016B2 (en) | 2014-02-26 | 2020-09-08 | Pure Storage, Inc. | Storing a plurality of correlated data in a dispersed storage network |
US10761917B2 (en) | 2014-04-02 | 2020-09-01 | Pure Storage, Inc. | Using global namespace addressing in a dispersed storage network |
US10015152B2 (en) | 2014-04-02 | 2018-07-03 | International Business Machines Corporation | Securing data in a dispersed storage network |
US20190087599A1 (en) | 2014-04-02 | 2019-03-21 | International Business Machines Corporation | Compressing a slice name listing in a dispersed storage network |
US10681138B2 (en) | 2014-04-02 | 2020-06-09 | Pure Storage, Inc. | Storing and retrieving multi-format content in a distributed storage network |
US10020826B2 (en) | 2014-04-02 | 2018-07-10 | International Business Machines Corporation | Generating molecular encoding information for data storage |
US10628245B2 (en) | 2014-04-02 | 2020-04-21 | Pure Storage, Inc. | Monitoring of storage units in a dispersed storage network |
US9390283B2 (en) | 2014-04-02 | 2016-07-12 | International Business Machines Corporation | Controlling access in a dispersed storage network |
US11347590B1 (en) | 2014-04-02 | 2022-05-31 | Pure Storage, Inc. | Rebuilding data in a distributed storage network |
US9542239B2 (en) | 2014-04-30 | 2017-01-10 | International Business Machines Corporation | Resolving write request conflicts in a dispersed storage network |
US9762395B2 (en) | 2014-04-30 | 2017-09-12 | International Business Machines Corporation | Adjusting a number of dispersed storage units |
US10296263B2 (en) | 2014-04-30 | 2019-05-21 | International Business Machines Corporation | Dispersed bloom filter for determining presence of an object |
US10394476B2 (en) | 2014-04-30 | 2019-08-27 | Pure Storage, Inc. | Multi-level stage locality selection on a large system |
US10802732B2 (en) | 2014-04-30 | 2020-10-13 | Pure Storage, Inc. | Multi-level stage locality selection on a large system |
US10509577B2 (en) | 2014-06-05 | 2019-12-17 | Pure Storage, Inc. | Reliable storage in a dispersed storage network |
US20150356305A1 (en) | 2014-06-05 | 2015-12-10 | Cleversafe, Inc. | Secure data access in a dispersed storage network |
US11606431B2 (en) | 2014-06-30 | 2023-03-14 | Pure Storage, Inc. | Maintaining failure independence for storage of a set of encoded data slices |
US11099763B1 (en) | 2014-06-30 | 2021-08-24 | Pure Storage, Inc. | Migrating generational storage to a decentralized agreement protocol paradigm |
US10673946B2 (en) | 2014-06-30 | 2020-06-02 | Pure Storage, Inc. | Using separate weighting scores for different types of data in a decentralized agreement protocol |
US10042564B2 (en) | 2014-06-30 | 2018-08-07 | International Business Machines Corporation | Accessing data while migrating storage of the data |
US10440105B2 (en) | 2014-06-30 | 2019-10-08 | Pure Storage, Inc. | Using a decentralized agreement protocol to rank storage locations for target width |
US9841925B2 (en) | 2014-06-30 | 2017-12-12 | International Business Machines Corporation | Adjusting timing of storing data in a dispersed storage network |
US9690520B2 (en) | 2014-06-30 | 2017-06-27 | International Business Machines Corporation | Recovering an encoded data slice in a dispersed storage network |
US9838478B2 (en) | 2014-06-30 | 2017-12-05 | International Business Machines Corporation | Identifying a task execution resource of a dispersed storage network |
US11398988B1 (en) | 2014-06-30 | 2022-07-26 | Pure Storage, Inc. | Selection of access resources in a distributed storage network |
US10447612B2 (en) | 2014-06-30 | 2019-10-15 | Pure Storage, Inc. | Migrating encoded data slices in a dispersed storage network |
US10459797B2 (en) | 2014-06-30 | 2019-10-29 | Pure Storage, Inc. | Making trade-offs between rebuild scanning and failing memory device flexibility |
US11728964B2 (en) | 2014-07-31 | 2023-08-15 | Pure Storage, Inc. | Performance aided data migration in a distributed storage network |
US10644874B2 (en) | 2014-07-31 | 2020-05-05 | Pure Storage, Inc. | Limiting brute force attacks against dispersed credentials in a distributed storage system |
US10613936B2 (en) | 2014-07-31 | 2020-04-07 | Pure Storage, Inc. | Fractional slices in a distributed storage system |
US10089036B2 (en) | 2014-07-31 | 2018-10-02 | International Business Machines Corporation | Migrating data in a distributed storage network |
US11442921B1 (en) | 2014-09-05 | 2022-09-13 | Pure Storage, Inc. | Data access in a dispersed storage network with consistency |
US10049120B2 (en) | 2014-09-05 | 2018-08-14 | International Business Machines Corporation | Consistency based access of data in a dispersed storage network |
US10402395B2 (en) | 2014-09-05 | 2019-09-03 | Pure Storage, Inc. | Facilitating data consistency in a dispersed storage network |
US10176191B2 (en) | 2014-09-05 | 2019-01-08 | International Business Machines Corporation | Recovering from conflicts that emerge from eventually consistent operations |
US10146622B2 (en) | 2014-09-08 | 2018-12-04 | International Business Machines Corporation | Combining deduplication with locality for efficient and fast storage |
US10268545B2 (en) | 2014-09-08 | 2019-04-23 | International Business Machines Corporation | Using reinforcement learning to select a DS processing unit |
US9591076B2 (en) | 2014-09-08 | 2017-03-07 | International Business Machines Corporation | Maintaining a desired number of storage units |
US9916325B2 (en) * | 2014-09-30 | 2018-03-13 | International Business Machines Corporation | Quick initialization of data regions in a distributed storage system |
US9904688B2 (en) * | 2014-09-30 | 2018-02-27 | International Business Machines Corporation | Buffering and replicating data written to a distributed storage system |
US20180101457A1 (en) | 2014-10-29 | 2018-04-12 | International Business Machines Corporation | Retrying failed write operations in a dispersed storage network |
US10459792B2 (en) | 2014-10-29 | 2019-10-29 | Pure Storage, Inc. | Using an eventually consistent dispersed memory to implement storage tiers |
US10223033B2 (en) | 2014-10-29 | 2019-03-05 | International Business Machines Corporation | Coordinating arrival times of data slices in a dispersed storage network |
US10481833B2 (en) | 2014-10-29 | 2019-11-19 | Pure Storage, Inc. | Transferring data encoding functions in a distributed storage network |
US10282135B2 (en) | 2014-10-29 | 2019-05-07 | International Business Machines Corporation | Strong consistency write threshold |
US9916114B2 (en) | 2014-10-29 | 2018-03-13 | International Business Machines Corporation | Deterministically sharing a plurality of processing resources |
US10095582B2 (en) | 2014-10-29 | 2018-10-09 | International Business Machines Corporation | Partial rebuilding techniques in a dispersed storage unit |
US10120739B2 (en) | 2014-12-02 | 2018-11-06 | International Business Machines Corporation | Prioritized data rebuilding in a dispersed storage network |
US10521298B2 (en) | 2014-12-02 | 2019-12-31 | Pure Storage, Inc. | Temporarily storing dropped and rebuilt slices in a DSN memory |
US10481832B2 (en) | 2014-12-02 | 2019-11-19 | Pure Storage, Inc. | Applying a probability function to avoid storage operations for already-deleted data |
US10558527B2 (en) | 2014-12-02 | 2020-02-11 | Pure Storage, Inc. | Rebuilding strategy in memory managed multi-site duplication |
US9727275B2 (en) | 2014-12-02 | 2017-08-08 | International Business Machines Corporation | Coordinating storage of data in dispersed storage networks |
US10503592B2 (en) | 2014-12-02 | 2019-12-10 | Pure Storage, Inc. | Overcoming bottlenecks in partial and traditional rebuild operations |
US10402271B2 (en) | 2014-12-02 | 2019-09-03 | Pure Storage, Inc. | Overcoming bottlenecks in zero information gain (ZIG) rebuild operations |
US10656866B2 (en) | 2014-12-31 | 2020-05-19 | Pure Storage, Inc. | Unidirectional vault synchronization to support tiering |
US9727427B2 (en) | 2014-12-31 | 2017-08-08 | International Business Machines Corporation | Synchronizing storage of data copies in a dispersed storage network |
US11604707B2 (en) | 2014-12-31 | 2023-03-14 | Pure Storage, Inc. | Handling failures when synchronizing objects during a write operation |
US10126974B2 (en) | 2014-12-31 | 2018-11-13 | International Business Machines Corporation | Redistributing encoded data slices in a dispersed storage network |
US10621042B2 (en) | 2014-12-31 | 2020-04-14 | Pure Storage, Inc. | Vault transformation within a dispersed storage network |
US10387252B2 (en) | 2014-12-31 | 2019-08-20 | Pure Storage, Inc. | Synchronously storing data in a plurality of dispersed storage networks |
US10623495B2 (en) | 2014-12-31 | 2020-04-14 | Pure Storage, Inc. | Keeping synchronized writes from getting out of synch |
US10642687B2 (en) | 2014-12-31 | 2020-05-05 | Pure Storage, Inc. | Pessimistic reads and other smart-read enhancements with synchronized vaults |
US10489247B2 (en) | 2014-12-31 | 2019-11-26 | Pure Storage, Inc. | Generating time-ordered globally unique revision numbers |
US10452317B2 (en) | 2014-12-31 | 2019-10-22 | Pure Storage, Inc. | DAP redistribution operation within a dispersed storage network |
US10423359B2 (en) | 2014-12-31 | 2019-09-24 | Pure Storage, Inc. | Linking common attributes among a set of synchronized vaults |
US10740180B2 (en) | 2015-01-30 | 2020-08-11 | Pure Storage, Inc. | Storing and retrieving data using proxies |
US9826038B2 (en) | 2015-01-30 | 2017-11-21 | International Business Machines Corporation | Selecting a data storage resource of a dispersed storage network |
US10620878B2 (en) | 2015-01-30 | 2020-04-14 | Pure Storage, Inc. | Write threshold plus value in dispersed storage network write operations |
US10440116B2 (en) | 2015-01-30 | 2019-10-08 | Pure Storage, Inc. | Minimizing data movement through rotation of spare memory devices |
US10498822B2 (en) | 2015-01-30 | 2019-12-03 | Pure Storage, Inc. | Adaptive scanning rates |
US10594793B2 (en) | 2015-01-30 | 2020-03-17 | Pure Storage, Inc. | Read-prepare requests to multiple memories |
US10169123B2 (en) | 2015-01-30 | 2019-01-01 | International Business Machines Corporation | Distributed data rebuilding |
US10511665B2 (en) | 2015-01-30 | 2019-12-17 | Pure Storage, Inc. | Efficient resource reclamation after deletion of slice from common file |
US10423490B2 (en) | 2015-01-30 | 2019-09-24 | Pure Storage, Inc. | Read-source requests to support bundled writes in a distributed storage system |
US10506045B2 (en) | 2015-01-30 | 2019-12-10 | Pure Storage, Inc. | Memory access using deterministic function and secure seed |
US10802915B2 (en) | 2015-01-30 | 2020-10-13 | Pure Storage, Inc. | Time based storage of encoded data slices |
US10530862B2 (en) | 2015-01-30 | 2020-01-07 | Pure Storage, Inc. | Determining slices to rebuild from low-level failures |
US10592132B2 (en) | 2015-01-30 | 2020-03-17 | Pure Storage, Inc. | Read-foreign-slices request for improved read efficiency with bundled writes |
US10498823B2 (en) | 2015-01-30 | 2019-12-03 | Pure Storage, Inc. | Optimally apportioning rebuilding resources |
US9740547B2 (en) | 2015-01-30 | 2017-08-22 | International Business Machines Corporation | Storing data using a dual path storage approach |
US10289342B2 (en) | 2015-01-30 | 2019-05-14 | International Business Machines Corporation | Data access optimization protocol in a dispersed storage network |
US10404410B2 (en) | 2015-02-27 | 2019-09-03 | Pure Storage, Inc. | Storage unit (SU) report cards |
US11188665B2 (en) | 2015-02-27 | 2021-11-30 | Pure Storage, Inc. | Using internal sensors to detect adverse interference and take defensive actions |
US10530861B2 (en) | 2015-02-27 | 2020-01-07 | Pure Storage, Inc. | Utilizing multiple storage pools in a dispersed storage network |
US10579451B2 (en) | 2015-02-27 | 2020-03-03 | Pure Storage, Inc. | Pro-actively preparing a dispersed storage network memory for higher-loads |
US10409772B2 (en) | 2015-02-27 | 2019-09-10 | Pure Storage, Inc. | Accessing serially stored data in a dispersed storage network |
US10657000B2 (en) | 2015-02-27 | 2020-05-19 | Pure Storage, Inc. | Optimizing data storage in a dispersed storage network |
US10275185B2 (en) | 2015-02-27 | 2019-04-30 | International Business Machines Corporation | Fail-in-place supported via decentralized or Distributed Agreement Protocol (DAP) |
US10423502B2 (en) | 2015-02-27 | 2019-09-24 | Pure Storage, Inc. | Stand-by distributed storage units |
US10437677B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Optimized distributed rebuilding within a dispersed storage network |
US10069915B2 (en) | 2015-02-27 | 2018-09-04 | International Business Machines Corporation | Storing data in a dispersed storage network |
US11836369B1 (en) | 2015-02-27 | 2023-12-05 | Pure Storage, Inc. | Storing data in an expanded storage pool of a vast storage network |
US10528425B2 (en) | 2015-02-27 | 2020-01-07 | Pure Storage, Inc. | Transitioning to an optimized data storage approach in a dispersed storage network |
US10437676B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Urgent reads and using data source health to determine error recovery procedures |
US10503591B2 (en) | 2015-02-27 | 2019-12-10 | Pure Storage, Inc. | Selecting retrieval locations in a dispersed storage network |
US10078472B2 (en) | 2015-02-27 | 2018-09-18 | International Business Machines Corporation | Rebuilding encoded data slices in a dispersed storage network |
US10440115B2 (en) | 2015-02-27 | 2019-10-08 | Pure Storage, Inc. | Write intent messaging in a dispersed storage network |
US10387067B2 (en) | 2015-02-27 | 2019-08-20 | Pure Storage, Inc. | Optimizing data storage in a dispersed storage network |
US10534668B2 (en) | 2015-02-27 | 2020-01-14 | Pure Storage, Inc. | Accessing data in a dispersed storage network |
US10079887B2 (en) | 2015-03-31 | 2018-09-18 | International Business Machines Corporation | Expanding storage capacity of a set of storage units in a distributed storage network |
US11055177B2 (en) | 2015-03-31 | 2021-07-06 | Pure Storage, Inc. | Correlating operational information with an error condition in a dispersed storage network |
US10528282B2 (en) | 2015-03-31 | 2020-01-07 | Pure Storage, Inc. | Modifying and utilizing a file structure in a dispersed storage network |
US10387070B2 (en) | 2015-03-31 | 2019-08-20 | Pure Storage, Inc. | Migrating data in response to adding incremental storage resources in a dispersed storage network |
US10534661B2 (en) | 2015-03-31 | 2020-01-14 | Pure Storage, Inc. | Selecting a storage error abatement alternative in a dispersed storage network |
US10963180B2 (en) | 2015-03-31 | 2021-03-30 | Pure Storage, Inc. | Adding incremental storage resources in a dispersed storage network |
US10331384B2 (en) | 2015-03-31 | 2019-06-25 | International Business Machines Corporation | Storing data utilizing a maximum accessibility approach in a dispersed storage network |
US10713374B2 (en) | 2015-03-31 | 2020-07-14 | Pure Storage, Inc. | Resolving detected access anomalies in a dispersed storage network |
US10852957B2 (en) | 2015-03-31 | 2020-12-01 | Pure Storage, Inc. | Migration agent employing moveslice request |
US10437515B2 (en) | 2015-03-31 | 2019-10-08 | Pure Storage, Inc. | Selecting storage units in a dispersed storage network |
US10915261B2 (en) | 2015-03-31 | 2021-02-09 | Pure Storage, Inc. | Selecting a set of storage units in a distributed storage network |
US10055170B2 (en) | 2015-04-30 | 2018-08-21 | International Business Machines Corporation | Scheduling storage unit maintenance tasks in a dispersed storage network |
US10037171B2 (en) | 2015-04-30 | 2018-07-31 | International Business Machines Corporation | Accessing common data in a dispersed storage network |
US10078561B2 (en) | 2015-04-30 | 2018-09-18 | International Business Machines Corporation | Handling failing memory devices in a dispersed storage network |
US10254992B2 (en) | 2015-04-30 | 2019-04-09 | International Business Machines Corporation | Rebalancing data storage in a dispersed storage network |
US10216594B2 (en) | 2015-04-30 | 2019-02-26 | International Business Machines Corporation | Automated stalled process detection and recovery |
US10157094B2 (en) | 2015-04-30 | 2018-12-18 | International Business Machines Corporation | Validating system registry files in a dispersed storage network |
US10067998B2 (en) | 2015-04-30 | 2018-09-04 | International Business Machines Corporation | Distributed sync list |
US10268376B2 (en) | 2015-04-30 | 2019-04-23 | International Business Machines Corporation | Automated deployment and assignment of access devices in a dispersed storage network |
US10168904B2 (en) | 2015-04-30 | 2019-01-01 | International Business Machines Corporation | Quasi-error notifications in a dispersed storage network |
US10613798B2 (en) | 2015-05-29 | 2020-04-07 | Pure Storage, Inc. | Slice fanout write request |
US10838664B2 (en) | 2015-05-29 | 2020-11-17 | Pure Storage, Inc. | Determining a storage location according to legal requirements |
US10169125B2 (en) | 2015-05-29 | 2019-01-01 | International Business Machines Corporation | Re-encoding data in a dispersed storage network |
US11115221B2 (en) | 2015-05-29 | 2021-09-07 | Pure Storage, Inc. | Verifying a rebuilt encoded data slice using slice verification information |
US10402122B2 (en) | 2015-05-29 | 2019-09-03 | Pure Storage, Inc. | Transferring encoded data slices in a dispersed storage network |
US10789128B2 (en) | 2015-05-29 | 2020-09-29 | Pure Storage, Inc. | External healing mode for a dispersed storage network memory |
US10430107B2 (en) | 2015-05-29 | 2019-10-01 | Pure Storage, Inc. | Identifying stored data slices during a slice migration activity in a dispersed storage network |
US10324657B2 (en) | 2015-05-29 | 2019-06-18 | International Business Machines Corporation | Accounting for data whose rebuilding is deferred |
US10409522B2 (en) | 2015-05-29 | 2019-09-10 | Pure Storage, Inc. | Reclaiming storage capacity in a dispersed storage network |
US10891058B2 (en) | 2015-05-29 | 2021-01-12 | Pure Storage, Inc. | Encoding slice verification information to support verifiable rebuilding |
US10523241B2 (en) | 2015-05-29 | 2019-12-31 | Pure Storage, Inc. | Object fan out write operation |
US10437671B2 (en) | 2015-06-30 | 2019-10-08 | Pure Storage, Inc. | Synchronizing replicated stored data |
US11669546B2 (en) | 2015-06-30 | 2023-06-06 | Pure Storage, Inc. | Synchronizing replicated data in a storage network |
US10055291B2 (en) | 2015-06-30 | 2018-08-21 | International Business Machines Corporation | Method and system for processing data access requests during data transfers |
US11782789B2 (en) | 2015-07-31 | 2023-10-10 | Pure Storage, Inc. | Encoding data and associated metadata in a storage network |
US10042704B2 (en) | 2015-07-31 | 2018-08-07 | International Business Machines Corporation | Validating stored encoded data slice integrity in a dispersed storage network |
US10466914B2 (en) | 2015-08-31 | 2019-11-05 | Pure Storage, Inc. | Verifying authorized access in a dispersed storage network |
US10198298B2 (en) | 2015-09-16 | 2019-02-05 | Salesforce.Com, Inc. | Handling multiple task sequences in a stream processing framework |
US10191768B2 (en) | 2015-09-16 | 2019-01-29 | Salesforce.Com, Inc. | Providing strong ordering in multi-stage streaming processing |
US10146592B2 (en) | 2015-09-18 | 2018-12-04 | Salesforce.Com, Inc. | Managing resource allocation in a stream processing framework |
US9965330B2 (en) | 2015-09-18 | 2018-05-08 | Salesforce.Com, Inc. | Maintaining throughput of a stream processing framework while increasing processing load |
US9946593B2 (en) * | 2015-09-18 | 2018-04-17 | Salesforce.Com, Inc. | Recovery strategy for a stream processing system |
US10073652B2 (en) | 2015-09-24 | 2018-09-11 | International Business Machines Corporation | Performance optimized storage vaults in a dispersed storage network |
US10169147B2 (en) | 2015-10-30 | 2019-01-01 | International Business Machines Corporation | End-to-end secure data storage in a dispersed storage network |
US10409514B2 (en) | 2015-11-30 | 2019-09-10 | International Business Machines Corporation | IP multicast message transmission for event notifications |
US10423362B2 (en) | 2015-11-30 | 2019-09-24 | International Business Machines Corporation | Utilizing multiple dispersal algorithms to encode data for storage in a dispersed storage network |
US20170192688A1 (en) | 2015-12-30 | 2017-07-06 | International Business Machines Corporation | Lazy deletion of vaults in packed slice storage (pss) and zone slice storage (zss) |
US10855759B2 (en) | 2016-01-26 | 2020-12-01 | Pure Storage, Inc. | Utilizing a hierarchical index in a dispersed storage network |
US10437635B2 (en) | 2016-02-10 | 2019-10-08 | Salesforce.Com, Inc. | Throttling events in entity lifecycle management |
US10089178B2 (en) | 2016-02-29 | 2018-10-02 | International Business Machines Corporation | Developing an accurate dispersed storage network memory performance model through training |
US10152246B1 (en) * | 2016-03-28 | 2018-12-11 | EMC IP Holding Company LLC | Application aware AMQP durable messages backup and restore |
US10831381B2 (en) | 2016-03-29 | 2020-11-10 | International Business Machines Corporation | Hierarchies of credential and access control sharing between DSN memories |
US10387248B2 (en) | 2016-03-29 | 2019-08-20 | International Business Machines Corporation | Allocating data for storage by utilizing a location-based hierarchy in a dispersed storage network |
CN105913711A (zh) * | 2016-04-08 | 2016-08-31 | 无锡科技职业学院 | 一种用于融合通信集中控制的恢复方法 |
US10419538B2 (en) | 2016-04-26 | 2019-09-17 | International Business Machines Corporation | Selecting memory for data access in a dispersed storage network |
US10169082B2 (en) | 2016-04-27 | 2019-01-01 | International Business Machines Corporation | Accessing data in accordance with an execution deadline |
US10007444B2 (en) | 2016-04-29 | 2018-06-26 | International Business Machines Corporation | Batching access requests in a dispersed storage network |
US10628399B2 (en) | 2016-04-29 | 2020-04-21 | International Business Machines Corporation | Storing data in a dispersed storage network with consistency |
US10091298B2 (en) | 2016-05-27 | 2018-10-02 | International Business Machines Corporation | Enhancing performance of data storage in a dispersed storage network |
US10353772B2 (en) | 2016-05-31 | 2019-07-16 | International Business Machines Corporation | Selecting data for storage in a dispersed storage network |
US10122795B2 (en) | 2016-05-31 | 2018-11-06 | International Business Machines Corporation | Consistency level driven data storage in a dispersed storage network |
US10027755B2 (en) | 2016-06-01 | 2018-07-17 | International Business Machines Corporation | Selecting storage units in one or more dispersed storage networks |
US10394650B2 (en) | 2016-06-03 | 2019-08-27 | International Business Machines Corporation | Multiple writes using inter-site storage unit relationship |
US10719499B2 (en) | 2016-06-06 | 2020-07-21 | INTERNATIONAL BUSINESS MACHINES CORPORATIOb | Establishing distributed consensus via alternate voting strategies in a dispersed storage network |
US10735545B2 (en) | 2016-06-06 | 2020-08-04 | International Business Machines Corporation | Routing vault access requests in a dispersed storage network |
US10652350B2 (en) | 2016-06-06 | 2020-05-12 | International Business Machines Corporation | Caching for unique combination reads in a dispersed storage network |
US10334045B2 (en) | 2016-06-06 | 2019-06-25 | International Business Machines Corporation | Indicating multiple encoding schemes in a dispersed storage network |
US10007438B2 (en) | 2016-06-25 | 2018-06-26 | International Business Machines Corporation | Method and system for achieving consensus using alternate voting strategies (AVS) with incomplete information |
US10564852B2 (en) | 2016-06-25 | 2020-02-18 | International Business Machines Corporation | Method and system for reducing memory device input/output operations |
US10235085B2 (en) | 2016-06-27 | 2019-03-19 | International Business Machines Corporation | Relocating storage unit data in response to detecting hotspots in a dispersed storage network |
US11115469B2 (en) | 2016-06-28 | 2021-09-07 | International Business Machines Corporation | Efficient updates within a dispersed storage network |
US10025505B2 (en) | 2016-06-29 | 2018-07-17 | International Business Machines Corporation | Accessing data in a dispersed storage network during write operations |
US10157021B2 (en) | 2016-06-29 | 2018-12-18 | International Business Machines Corporation | Processing incomplete data access transactions |
US10387286B2 (en) | 2016-06-30 | 2019-08-20 | International Business Machines Corporation | Managing configuration updates in a dispersed storage network |
US9934092B2 (en) | 2016-07-12 | 2018-04-03 | International Business Machines Corporation | Manipulating a distributed agreement protocol to identify a desired set of storage units |
US10534666B2 (en) | 2016-07-14 | 2020-01-14 | International Business Machines Corporation | Determining storage requirements based on licensing right in a dispersed storage network |
US10102067B2 (en) | 2016-07-14 | 2018-10-16 | International Business Machines Corporation | Performing a desired manipulation of an encoded data slice based on a metadata restriction and a storage operational condition |
US10114696B2 (en) | 2016-07-14 | 2018-10-30 | International Business Machines Corporation | Tracking data access in a dispersed storage network |
US10360103B2 (en) | 2016-07-18 | 2019-07-23 | International Business Machines Corporation | Focused storage pool expansion to prevent a performance degradation |
US9992063B2 (en) | 2016-07-18 | 2018-06-05 | International Business Machines Corporation | Utilizing reallocation via a decentralized, or distributed, agreement protocol (DAP) for storage unit (SU) replacement |
US10277490B2 (en) | 2016-07-19 | 2019-04-30 | International Business Machines Corporation | Monitoring inter-site bandwidth for rebuilding |
US10769015B2 (en) | 2016-07-19 | 2020-09-08 | International Business Machines Corporation | Throttling access requests at different layers of a DSN memory |
US10459796B2 (en) | 2016-07-20 | 2019-10-29 | International Business Machines Corporation | Prioritizing rebuilding based on a longevity estimate of the rebuilt slice |
US10554752B2 (en) | 2016-07-20 | 2020-02-04 | International Business Machines Corporation | Efficient transfer of encoded data slice sets to new or alternate storage units |
US10127112B2 (en) | 2016-07-20 | 2018-11-13 | International Business Machines Corporation | Assigning prioritized rebuild resources optimally |
US10031809B2 (en) | 2016-07-20 | 2018-07-24 | International Business Machines Corporation | Efficient method for rebuilding a set of encoded data slices |
US10379744B2 (en) | 2016-07-21 | 2019-08-13 | International Business Machines Corporation | System for collecting end-user feedback and usability metrics |
US10416930B2 (en) | 2016-07-21 | 2019-09-17 | International Business Machines Corporation | Global access permit listing |
US10459790B2 (en) | 2016-07-26 | 2019-10-29 | International Business Machines Corporation | Elastic storage in a dispersed storage network |
US10395043B2 (en) | 2016-07-29 | 2019-08-27 | International Business Machines Corporation | Securely storing data in an elastically scalable dispersed storage network |
US10031805B2 (en) | 2016-08-09 | 2018-07-24 | International Business Machines Corporation | Assigning slices to storage locations based on a predicted lifespan |
US10223036B2 (en) | 2016-08-10 | 2019-03-05 | International Business Machines Corporation | Expanding a dispersed storage network (DSN) |
US10129023B2 (en) | 2016-08-11 | 2018-11-13 | International Business Machines Corporation | Enhancing security for multiple storage configurations |
US10348829B2 (en) | 2016-08-15 | 2019-07-09 | International Business Machines Corporation | Auto indexing with customizable metadata |
US10013309B2 (en) | 2016-08-17 | 2018-07-03 | International Business Machines Corporation | Missing slice reconstruction in a dispersed storage network |
US10379778B2 (en) | 2016-08-18 | 2019-08-13 | International Business Machines Corporation | Using a master encryption key to sanitize a dispersed storage network memory |
US10078468B2 (en) | 2016-08-18 | 2018-09-18 | International Business Machines Corporation | Slice migration in a dispersed storage network |
US10389683B2 (en) | 2016-08-26 | 2019-08-20 | International Business Machines Corporation | Securing storage units in a dispersed storage network |
US10379773B2 (en) | 2016-08-29 | 2019-08-13 | International Business Machines Corporation | Storage unit for use in a dispersed storage network |
US10581807B2 (en) | 2016-08-29 | 2020-03-03 | International Business Machines Corporation | Using dispersal techniques to securely store cryptographic resources and respond to attacks |
US10061524B2 (en) | 2016-09-01 | 2018-08-28 | International Business Machines Corporation | Wear-leveling of memory devices |
US10169149B2 (en) | 2016-09-06 | 2019-01-01 | International Business Machines Corporation | Standard and non-standard dispersed storage network data access |
US10225271B2 (en) | 2016-09-09 | 2019-03-05 | International Business Machines Corporation | Distributed storage network with enhanced security monitoring |
US10387079B2 (en) | 2016-09-09 | 2019-08-20 | International Business Machines Corporation | Placement of dispersed storage data based on requestor properties |
US10547615B2 (en) | 2016-09-12 | 2020-01-28 | International Business Machines Corporation | Security response protocol based on security alert encoded data slices of a distributed storage network |
US10558396B2 (en) | 2016-09-14 | 2020-02-11 | International Business Machines Corporation | Pre-caching data according to a current or predicted requester location |
US10169415B2 (en) * | 2016-09-14 | 2019-01-01 | Google Llc | Query restartability |
US10558389B2 (en) | 2016-09-20 | 2020-02-11 | International Business Machines Corporation | Per-storage class quality of service (QoS) management within a distributed storage network (DSN) where the DSN stores data using dispersed storage error decoding/encoding |
CN106502579B (zh) * | 2016-09-22 | 2019-10-11 | 广州华多网络科技有限公司 | 一种数据存储失败时的重建方法及装置 |
US10067822B2 (en) | 2016-09-26 | 2018-09-04 | International Business Machines Corporation | Combined slice objects in alternate memory locations |
US9858151B1 (en) | 2016-10-03 | 2018-01-02 | International Business Machines Corporation | Replaying processing of a restarted application |
US10394630B2 (en) | 2016-10-26 | 2019-08-27 | International Business Machines Corporation | Estimating relative data importance in a dispersed storage network |
US10448062B2 (en) | 2016-10-26 | 2019-10-15 | International Business Machines Corporation | Pre-fetching media content to reduce peak loads |
US10585751B2 (en) | 2016-10-27 | 2020-03-10 | International Business Machines Corporation | Partial rebuild operation within a dispersed storage network including local memory and cloud-based alternative memory |
US10481977B2 (en) | 2016-10-27 | 2019-11-19 | International Business Machines Corporation | Dispersed storage of error encoded data objects having multiple resolutions |
US11169731B2 (en) * | 2016-10-31 | 2021-11-09 | International Business Machines Corporation | Managing storage resources in a dispersed storage network |
US10585607B2 (en) | 2016-11-10 | 2020-03-10 | International Business Machines Corporation | Determining an optimum selection of functions for units in a DSN memory |
US10540247B2 (en) | 2016-11-10 | 2020-01-21 | International Business Machines Corporation | Handling degraded conditions using a redirect module |
US10114698B2 (en) | 2017-01-05 | 2018-10-30 | International Business Machines Corporation | Detecting and responding to data loss events in a dispersed storage network |
US10782921B2 (en) | 2017-01-25 | 2020-09-22 | International Business Machines Corporation | Non-writing device finalization of a write operation initiated by another device |
US10180787B2 (en) | 2017-02-09 | 2019-01-15 | International Business Machines Corporation | Dispersed storage write process with lock/persist |
US10241865B2 (en) | 2017-02-15 | 2019-03-26 | International Business Machines Corporation | Handling storage unit failure in a dispersed storage network |
US10579309B2 (en) | 2017-02-16 | 2020-03-03 | International Business Machines Corporation | Method for increasing throughput in a distributed storage network |
US10248495B2 (en) | 2017-02-17 | 2019-04-02 | International Business Machines Corporation | Eventual consistency intent cleanup in a dispersed storage network |
US10552341B2 (en) | 2017-02-17 | 2020-02-04 | International Business Machines Corporation | Zone storage—quickly returning to a state of consistency following an unexpected event |
US10382553B2 (en) | 2017-02-20 | 2019-08-13 | International Business Machines Corporation | Zone storage—resilient and efficient storage transactions |
US10394468B2 (en) | 2017-02-23 | 2019-08-27 | International Business Machines Corporation | Handling data slice revisions in a dispersed storage network |
US10241677B2 (en) | 2017-02-24 | 2019-03-26 | International Business Machines Corporation | Ensuring consistency between content and metadata with intents |
US9998147B1 (en) | 2017-02-27 | 2018-06-12 | International Business Machines Corporation | Method for using write intents in a distributed storage network |
US10642532B2 (en) | 2017-02-28 | 2020-05-05 | International Business Machines Corporation | Storing data sequentially in zones in a dispersed storage network |
US10372380B2 (en) | 2017-03-01 | 2019-08-06 | International Business Machines Corporation | Asserting integrity with a verifiable codec |
US10169392B2 (en) | 2017-03-08 | 2019-01-01 | International Business Machines Corporation | Persistent data structures on a dispersed storage network memory |
US11226980B2 (en) | 2017-03-13 | 2022-01-18 | International Business Machines Corporation | Replicating containers in object storage using intents |
US10235241B2 (en) | 2017-03-15 | 2019-03-19 | International Business Machines Corporation | Method for partial updating data content in a distributed storage network |
US10693640B2 (en) | 2017-03-17 | 2020-06-23 | International Business Machines Corporation | Use of key metadata during write and read operations in a dispersed storage network memory |
US10331522B2 (en) * | 2017-03-17 | 2019-06-25 | International Business Machines Corporation | Event failure management |
US10241861B2 (en) | 2017-03-23 | 2019-03-26 | International Business Machines Corporation | Method for tenant isolation in a distributed computing system |
US10133634B2 (en) | 2017-03-30 | 2018-11-20 | International Business Machines Corporation | Method for performing in-place disk format changes in a distributed storage network |
US10360391B2 (en) | 2017-04-03 | 2019-07-23 | International Business Machines Corporation | Verifiable keyed all-or-nothing transform |
US10545699B2 (en) | 2017-04-11 | 2020-01-28 | International Business Machines Corporation | Dynamic retention policies and optional deletes |
US10379961B2 (en) | 2017-04-11 | 2019-08-13 | International Business Machines Corporation | Ensuring metadata and index consistency using write intents |
US10567509B2 (en) | 2017-05-15 | 2020-02-18 | International Business Machines Corporation | Rebuilding derived content |
US10491386B2 (en) | 2017-06-01 | 2019-11-26 | International Business Machines Corporation | Slice-level keyed encryption with support for efficient rekeying |
US10339003B2 (en) | 2017-06-01 | 2019-07-02 | International Business Machines Corporation | Processing data access transactions in a dispersed storage network using source revision indicators |
US10467097B2 (en) | 2017-06-02 | 2019-11-05 | International Business Machines Corporation | Indicating data health in a DSN memory |
US10372381B2 (en) | 2017-06-05 | 2019-08-06 | International Business Machines Corporation | Implicit leader election in a distributed storage network |
US10361813B2 (en) | 2017-06-16 | 2019-07-23 | International Business Machine Corporation | Using slice routers for improved storage placement determination |
US10534548B2 (en) | 2017-06-20 | 2020-01-14 | International Business Machines Corporation | Validating restricted operations on a client using trusted environments |
US10324855B2 (en) | 2017-06-23 | 2019-06-18 | International Business Machines Corporation | Associating a processing thread and memory section to a memory device |
US10540111B2 (en) | 2017-06-28 | 2020-01-21 | International Business Machines Corporation | Managing data container instances in a dispersed storage network |
US10594790B2 (en) | 2017-06-28 | 2020-03-17 | International Business Machines Corporation | Data compression in a dispersed storage network |
US11088896B2 (en) * | 2017-07-17 | 2021-08-10 | Vmware, Inc. | Data channel between a client and a restartable service |
US10509699B2 (en) | 2017-08-07 | 2019-12-17 | International Business Machines Corporation | Zone aware request scheduling and data placement |
US10599502B2 (en) | 2017-08-07 | 2020-03-24 | International Business Machines Corporation | Fault detection and recovery in a distributed storage network |
US10671746B2 (en) | 2017-08-28 | 2020-06-02 | International Business Machines Corporation | Controlling access when processing intents in a dispersed storage network |
US10379942B2 (en) | 2017-09-27 | 2019-08-13 | International Business Machines Corporation | Efficient transfer of objects between containers on the same vault |
US10802713B2 (en) | 2017-09-29 | 2020-10-13 | International Business Machines Corporation | Requester-associated storage entity data |
US10409661B2 (en) | 2017-09-29 | 2019-09-10 | International Business Machines Corporation | Slice metadata for optimized dispersed storage network memory storage strategies |
US10585748B2 (en) | 2017-09-29 | 2020-03-10 | International Business Machines Corporation | Scalable cloud—assigning scores to requesters and treating requests differently based on those scores |
US10540120B2 (en) | 2017-11-14 | 2020-01-21 | International Business Machines Corporation | Contention avoidance on associative commutative updates |
US10565392B2 (en) | 2017-11-28 | 2020-02-18 | International Business Machines Corporation | Secure and verifiable update operations |
US10423497B2 (en) | 2017-11-28 | 2019-09-24 | International Business Machines Corporation | Mechanism for representing system configuration changes as a series of objects writable to an object storage container |
US10785194B2 (en) | 2017-12-07 | 2020-09-22 | International Business Machines Corporation | Processing intents using trusted entities in a dispersed storage network |
US10681135B2 (en) | 2017-12-08 | 2020-06-09 | International Business Machines Corporation | Generating slices from a broadcast message and a recipient identity |
CN110019046B (zh) * | 2017-12-29 | 2024-05-14 | 北京奇虎科技有限公司 | 一种日志落地方法及装置 |
US10809938B2 (en) * | 2018-03-06 | 2020-10-20 | International Business Machines Corporation | Synchronized safe data commit scans in multiple data storage systems |
US10740007B2 (en) | 2018-03-06 | 2020-08-11 | International Business Machines Corporation | Synchronized primary-secondary role swaps with synchronized safe data commit scans |
US11412041B2 (en) | 2018-06-25 | 2022-08-09 | International Business Machines Corporation | Automatic intervention of global coordinator |
US10936452B2 (en) | 2018-11-14 | 2021-03-02 | International Business Machines Corporation | Dispersed storage network failover units used to improve local reliability |
US11055027B1 (en) * | 2019-11-15 | 2021-07-06 | Rapid7, Inc. | Dynamic queue management |
US11593026B2 (en) | 2020-03-06 | 2023-02-28 | International Business Machines Corporation | Zone storage optimization using predictive protocol patterns |
CN111694706A (zh) * | 2020-05-08 | 2020-09-22 | 广州微算互联信息技术有限公司 | 一种云手机故障处理方法、系统和存储介质 |
GB2612784B (en) * | 2021-11-10 | 2023-12-13 | Sage Global Services Ltd | Method and system for providing backup for a database |
KR20230119966A (ko) * | 2022-02-08 | 2023-08-16 | 삼성전자주식회사 | 전자 장치에서 데이터베이스 파일을 복구하는 방법 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5333303A (en) * | 1991-03-28 | 1994-07-26 | International Business Machines Corporation | Method for providing data availability in a transaction-oriented system during restart after a failure |
GB2276737A (en) * | 1993-03-30 | 1994-10-05 | Ibm | Fault-tolerant transaction-oriented data processing |
WO1995010805A1 (en) | 1993-10-08 | 1995-04-20 | International Business Machines Corporation | Message transmission across a network |
GB2301910B (en) * | 1995-06-07 | 1999-07-21 | Ibm | Management of units of work on a computer system log |
US6353834B1 (en) * | 1996-11-14 | 2002-03-05 | Mitsubishi Electric Research Laboratories, Inc. | Log based data architecture for a transactional message queuing system |
DE19836347C2 (de) * | 1998-08-11 | 2001-11-15 | Ericsson Telefon Ab L M | Fehlertolerantes Computersystem |
JP2000284987A (ja) * | 1999-03-31 | 2000-10-13 | Fujitsu Ltd | コンピュータ、コンピュータネットワークシステム及び記録媒体 |
US7065538B2 (en) * | 2000-02-11 | 2006-06-20 | Quest Software, Inc. | System and method for reconciling transactions between a replication system and a recovered database |
US6754842B2 (en) * | 2000-02-22 | 2004-06-22 | International Business Machines Corporation | Facilitating a restart operation within a data processing system |
US7043504B1 (en) * | 2000-04-10 | 2006-05-09 | International Business Machines Corporation | System and method for parallel primary and secondary backup reading in recovery of multiple shared database data sets |
JP2001350777A (ja) | 2000-06-05 | 2001-12-21 | Mitsubishi Electric Corp | 分散データベースシステム |
US6842763B2 (en) * | 2000-07-25 | 2005-01-11 | International Business Machines Corporation | Method and apparatus for improving message availability in a subsystem which supports shared message queues |
GB2369538B (en) | 2000-11-24 | 2004-06-30 | Ibm | Recovery following process or system failure |
US6665814B2 (en) * | 2000-11-29 | 2003-12-16 | International Business Machines Corporation | Method and apparatus for providing serialization support for a computer system |
EP1379949A4 (en) * | 2001-03-05 | 2006-09-27 | Sanpro Systems Inc | SYSTEM AND METHOD FOR ASYNCHRONOUS REPLICATION FOR MEMORY ZONE NETWORKS |
WO2002073409A1 (en) * | 2001-03-13 | 2002-09-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangements for node recovery |
GB0207967D0 (en) * | 2002-04-08 | 2002-05-15 | Ibm | Data processing arrangement and method |
GB0208143D0 (en) * | 2002-04-09 | 2002-05-22 | Ibm | Data recovery system |
US7039773B2 (en) * | 2003-04-29 | 2006-05-02 | Oracle International Corporation | Method and mechanism for efficient implementation of ordered records |
US7260739B2 (en) * | 2003-05-09 | 2007-08-21 | International Business Machines Corporation | Method, apparatus and program storage device for allowing continuous availability of data during volume set failures in a mirrored environment |
-
2003
- 2003-04-10 GB GBGB0308264.1A patent/GB0308264D0/en not_active Ceased
- 2003-10-22 CN CNB2003801071911A patent/CN100339834C/zh not_active Expired - Lifetime
- 2003-10-22 JP JP2004570494A patent/JP2006514374A/ja active Pending
- 2003-10-22 KR KR1020057016931A patent/KR100983300B1/ko not_active IP Right Cessation
- 2003-10-22 US US10/553,018 patent/US7543181B2/en not_active Expired - Fee Related
- 2003-10-22 WO PCT/GB2003/004589 patent/WO2004090724A1/en active IP Right Grant
- 2003-10-22 EP EP03769639A patent/EP1661000B1/en not_active Expired - Lifetime
- 2003-10-22 AU AU2003278330A patent/AU2003278330A1/en not_active Abandoned
- 2003-10-22 AT AT03769639T patent/ATE357693T1/de not_active IP Right Cessation
- 2003-10-22 DE DE60312746T patent/DE60312746T2/de not_active Expired - Lifetime
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011210106A (ja) * | 2010-03-30 | 2011-10-20 | Nippon Telegr & Teleph Corp <Ntt> | メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム |
JP2011210107A (ja) * | 2010-03-30 | 2011-10-20 | Nippon Telegr & Teleph Corp <Ntt> | メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム |
JP2014532932A (ja) * | 2011-11-02 | 2014-12-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 非同期複製システムにおける災害復旧中のメッセージ調整のための方法、システム、およびコンピュータ・プログラム |
KR20140137411A (ko) * | 2012-03-02 | 2014-12-02 | 알까뗄 루슨트 | 분산형 전자 전송 시스템 |
KR101629595B1 (ko) * | 2012-03-02 | 2016-06-10 | 알까뗄 루슨트 | 분산형 전자 전송 시스템 |
US20220172190A1 (en) * | 2018-12-19 | 2022-06-02 | Worldpay, Llc | Systems and methods for cloud-based asynchronous communication |
Also Published As
Publication number | Publication date |
---|---|
DE60312746T2 (de) | 2007-12-06 |
US7543181B2 (en) | 2009-06-02 |
GB0308264D0 (en) | 2003-05-14 |
CN1729455A (zh) | 2006-02-01 |
CN100339834C (zh) | 2007-09-26 |
AU2003278330A1 (en) | 2004-11-01 |
KR100983300B1 (ko) | 2010-09-20 |
WO2004090724A1 (en) | 2004-10-21 |
KR20060004915A (ko) | 2006-01-16 |
EP1661000A1 (en) | 2006-05-31 |
EP1661000B1 (en) | 2007-03-21 |
US20070088970A1 (en) | 2007-04-19 |
ATE357693T1 (de) | 2007-04-15 |
DE60312746D1 (de) | 2007-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7543181B2 (en) | Recovery from failures within data processing systems | |
US20040215998A1 (en) | Recovery from failures within data processing systems | |
AU2004237061B2 (en) | Flashback database | |
US7779295B1 (en) | Method and apparatus for creating and using persistent images of distributed shared memory segments and in-memory checkpoints | |
US6873995B2 (en) | Method, system, and program product for transaction management in a distributed content management application | |
US7996363B2 (en) | Real-time apply mechanism in standby database environments | |
US7596713B2 (en) | Fast backup storage and fast recovery of data (FBSRD) | |
US5740433A (en) | Remote duplicate database facility with improved throughput and fault tolerance | |
US8099627B1 (en) | Persistent images of distributed shared memory segments and in-memory checkpoints | |
JP2022095645A (ja) | 異種ターゲットに対して使用するために分散型データソースからの変更データをキャプチャするためのシステムおよび方法 | |
US6611923B1 (en) | System and method for backing up data stored in multiple mirrors on a mass storage subsystem under control of a backup server | |
US5745753A (en) | Remote duplicate database facility with database replication support for online DDL operations | |
JP5264077B2 (ja) | 地理的分散型クラスタ | |
US5794252A (en) | Remote duplicate database facility featuring safe master audit trail (safeMAT) checkpointing | |
KR100271342B1 (ko) | 데이터 베이스에 있어서의 백업실행장치 | |
US20070220059A1 (en) | Data processing node | |
US8626722B2 (en) | Consolidating session information for a cluster of sessions in a coupled session environment | |
JP2002507021A (ja) | 情報システムの独立性レベル及びトランザクション補償 | |
JP2005196683A (ja) | 情報処理システム、情報処理装置、及び情報処理システムの制御方法 | |
WO1996041263A1 (en) | Management of units of work on a computer system log | |
EP0724223B1 (en) | Remote duplicate database facility with database replication support for online line DDL operations | |
US6948093B2 (en) | Data processing arrangement and method | |
WO2024051027A1 (zh) | 一种大数据的数据配置方法和系统 | |
Strom et al. | A recoverable object store |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081014 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081223 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090127 |