JP2008090839A - レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラム - Google Patents

レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラム Download PDF

Info

Publication number
JP2008090839A
JP2008090839A JP2007247079A JP2007247079A JP2008090839A JP 2008090839 A JP2008090839 A JP 2008090839A JP 2007247079 A JP2007247079 A JP 2007247079A JP 2007247079 A JP2007247079 A JP 2007247079A JP 2008090839 A JP2008090839 A JP 2008090839A
Authority
JP
Japan
Prior art keywords
record
component
value
search request
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007247079A
Other languages
English (en)
Other versions
JP5063275B2 (ja
Inventor
Matthew J Kalos
マシュー・ジョゼフ・カロス
Harry Morris Yudenfriend
ハリー・モリス・ユデンフレンド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2008090839A publication Critical patent/JP2008090839A/ja
Application granted granted Critical
Publication of JP5063275B2 publication Critical patent/JP5063275B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラムを提供すること。
【解決手段】レコードが値と一致しているかどうかを判定するための検索要求が受信される。第1のコンポーネントが、レコードが値と一致しているかどうかを判定するための検索要求を実行する。第1のコンポーネントは、レコードが値と一致しているかどうかを判定するための検索要求を実行するために、その検索要求を実行しなかった第2のコンポーネントへ検証要求を送信する。第1および第2のコンポーネントが検索要求を実行した結果が記録される。
【選択図】図1

Description

本発明は、レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、および製品に関する。
特定のコンピューティング環境においては、複数のホスト・システムは、1つまたは複数の論理パスを通じて相互接続されたハード・ディスク・ドライブなどのストレージ・デバイスへのアクセスを提供する複数のコントロール・ユニット(CU)(ストレージ・コントローラ、ストレージ・サブシステム、エンタープライズ・ストレージ・サーバ(enterprise storage server)などとしても知られている)と通信することができる。それらの相互接続されたドライブは、DASD(DirectAccess Storage Device)、RAID(Redundant Array of Independent Disks)、JBOD(Just aBunch of Disks)などとして構成することができる。コントロール・ユニットは、1つまたは複数のロジカル・サブシステム(logicalsubsystem)(LSS)を構成することができ、その場合には、それぞれのLSSは、複数のボリュームを含むように構成される。
特定の状況においては、ホスト・システムは、コントロール・ユニットによって管理されているレコードのうちで、ロックが得られなければならないレコードを修正する必要が生じる場合がある。そのレコードを修正する一部として、ホストは、修正するレコードを、修正オペレーションが開始した時点でのそのレコードの値と比較して、そのレコード上のロックにもかかわらずに値が変化しているかどうかを判定する作業をコントロール・ユニットに行わせるために、そのホスト内のチャネル・サブシステム・プログラムを通じて、検索コマンドを発行することができる。レコードの値が変化していないことを検索の応答が示している場合には、チャネル・サブシステム・プログラムは、コントロール・ユニットへ送信する次のチャネル指令語に進んで、ロックされているレコードまたは他のデータ・オブジェクトの修正を実行することができる。レコードの値が変化している場合、すなわちレコードが検索値と一致していない場合には、この不一致は、コントロール・ユニットまたはホスト内のハードウェアまたはソフトウェアあるいはその両方の問題を示している可能性がある。このような場合には、チャネル・サブシステム・プログラムは、エラー処理モードへと進み、レコードの修正は進めない。
当技術分野においては、アトミック・オペレーション(atomic operation)を処理するための改良された技術が必要とされている。
提供されるのは、レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、および製品である。レコードが値と一致しているかどうかを判定するための検索要求が受信される。第1のコンポーネントが、レコードが値と一致しているかどうかを判定するための検索要求を実行する。第1のコンポーネントは、レコードが値と一致しているかどうかを判定するための検索要求を実行するために、その検索要求を実行しなかった第2のコンポーネントへ検証要求を送信する。第1および第2のコンポーネントが検索要求を実行した結果が記録される。
さらなる実施形態においては、レコードが値と一致していると第2のコンポーネントが判定したことに応答して、第1のコンポーネントがエラー・モードにあることが示され、そのエラー・モードにおいては、第1のコンポーネントは、オペレーションから隔離されている。
さらなる実施形態においては、第2のコンポーネントへの検証要求は、値およびレコードのアドレスのためのエラー・チェッキング・コードを含む。第2のコンポーネントは、第1のコンポーネントによって使用されたレコード・アドレスおよび値を確認するためのエラー・チェッキング・コードを使用したエラー・チェッキング・オペレーションをさらに実行する。エラー・チェッキング・コードがレコード・アドレスおよび値を確認しないと第2のコンポーネントが判定したことに応答して、第1のコンポーネントがエラー・モードにあることが示される。
さらなる実施形態においては、レコードが値と一致していない場合に、検索要求に関連付けられたフラグが設定されているかどうかについて判定が行われ、フラグが設定されていると判定されたことに応答してのみ、検証要求が第2のコンポーネントへ送信される。
さらなる実施形態においては、設定されているフラグは、検索要求が、レコードに関連付けられているデータを更新するためのアトミック・オペレーションの一部であることを示す。
さらなる実施形態においては、検証要求を第2のコンポーネントへ送信するように示すようにフラグが設定されていないと判定されたことに応答して、第1のコンポーネントが検索要求を実行した結果が記録される。
さらなる実施形態においては、検索されるレコードは、あるホストが依然としてホストの管理されているグループの一部であるかどうかを判定するために検索が実行される結合されたデータ・セット・レコードと、レコードを修正するオペレーションの最中にそのレコードのための値が変化していないかどうかを判定するために検索が実行されるボリューム目次レコード(volume table of contents record)とを含むレコードのセットの一部である。
さらなる実施形態においては、第1のコンポーネントはネットワーク・アダプタを含み、第2のコンポーネントはプロセッサ・コンプレックス(processor complex)を含む。
さらに提供されるのは、あるシステムによって管理されているストレージ内のレコードを修正するオペレーションを開始する方法、システム、および製品である。オペレーション中に他のプロセスがレコードを修正できないようにロックを設定するためのコマンドが、システムへ送信される。ストレージからレコードが読み取られて、そのレコードのための値が割り出される。修正するレコードがその割り出された値を有するかどうかを判定するためのシステムへの検索要求が作成され、システムは、第1のコンポーネントを使用してその検索要求を実行する。レコードが値と一致していないとシステムが判定したことに応答して、第1のコンポーネントによる検索要求の実行に関与しなかった第2のコンポーネントを使用して検索要求を再実行するための第2のチェッキング・オペレーションをシステムに実行させるためのフラグが設定される。検索要求は、システムへ送信される。
さらなる実施形態においては、フラグは、検索要求用のコマンド内に含めて送信される。
さらなる実施形態においては、レコードが値と一致したかどうかを示す検索要求からの結果が受信される。レコードが値と一致しなかったことを示す結果に応答して、レコードを修正するオペレーションが継続される。レコードが値と一致したことを示す結果に応答して、レコードを修正するオペレーションが終了される。
さらなる実施形態においては、結果は、第1のコンポーネント内のエラーのためにレコードが値と一致しなかったのかどうかを示す。エラーが第1のコンポーネント内のエラーのためではなかったことを示す結果に応答して、オペレーションを開始した、および検索要求を作成したコンポーネントのエラー・チェッキングが実行される。
図1は、実施形態を実装することができるコンピューティング環境を示している。1つまたは複数のホスト2(1つだけが図示されている)は、レコード8を有するストレージ6へのアクセスを管理するサーバ4と通信状態にある。ホスト2は、ストレージ6内のレコード8にアクセスするためにサーバ4へ送信するためのI/O要求を作成するオペレーティング・システム10を含む。サーバ4は、ストレージ6へのI/O要求を管理するためのI/O(Input/Output)マネージャー12を含む。サーバ4は、ストレージ6からのレコード8およびデータをメモリ14内に一時的に格納することができる。サーバ4はまた、図示されている第1のコンポーネント16および第2のコンポーネント18など、複数のコンポーネントを含む。第1のコンポーネント16および第2のコンポーネント18は、ネットワーク・アダプタ、処理コンプレックス(processingcomplex)、コントローラ、ブリッジ、コンピュータ・プログラムなど、ストレージ6に関するI/O関連の要求を実行できるハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方を含むことができる。
図2は、レコード8を修正するオペレーションの一部として、その修正を実行する前に修正オペレーション中にレコード8の値が変化していないことを確認するためにホスト2がサーバ4へ送信できる検索コマンド50の一実施形態を示している。この修正は、対象のレコード8を更新すること、または削除することを含むことができる。検索コマンド50は、検索要求を指定する検索コマンド・コード52と、その検索要求が、レコード8を更新したりチェックしたりしてそのレコード8が変化しているかどうかを判定するオペレーションなど、アトミック・オペレーションの一部であることをサーバ4に示すアトミック・フラグ(atomic flag)54と、修正するレコード8を識別するレコード・アドレス56と、識別されたレコード8に関して確認する値を示す検索値58と、CRC(cyclicalredundancy check)コードなど、レコード・アドレス56および検索値58のためのエラー・チェッキング・コード60とを含む。一実施形態においては、エラー・チェッキング・コード60は、検索要求50がカプセル化されている送信パケットと共に含まれているエラー・チェッキング・コードを含むことができる。たとえばエラー・チェッキング・コード60は、送信の内容を確認するために使用される検索要求を送信するネットワーク・プロトコル・ドライバによって作成することができる。図2の実施形態においては、アトミック・フラグ54は、検索コマンド50内に含まれる。代替実施形態においては、アトミック・フラグ54は、検索コマンド50とは別にサーバ4へ伝達することができる。
図3は、ストレージ6内のレコード8を修正するオペレーションを実行するためにホスト・オペレーティング・システム10または他の何らかのプログラムによって実行されるオペレーションの一実施形態を示している。レコード8を修正するオペレーションを(ブロック100において)開始すると、オペレーティング・システム10は、そのオペレーション中に他のプロセスがそのレコードを修正できないようにロックを設定するためのコマンドを(ブロック102において)サーバ4へ送信する。オペレーティング・システム10は、(ブロック104において)ストレージからレコード8を読み取って、そのレコード8のための値を割り出す。レコード8は、サーバ・メモリ14から戻すことができる。オペレーティング・システム10は、修正するレコード8が、割り出された値を有するかどうか、すなわちそのレコードの値が、ロックにもかかわらずにオペレーションの開始以降に変化しているかどうかを判定するための検索要求50を(ブロック106において)作成する。レコードが変化している場合には、これは、サーバ4またはホスト2にハードウェアまたはソフトウェアの問題があるかもしれないということを示している。フラグ54は、レコード8が値と一致していないとサーバ4が判定した場合には、第1のコンポーネント16による検索要求の実行には関与しなかった第2のコンポーネント18を使用して検索要求を再実行する第2のチェッキング・オペレーションをサーバ4に実行させるように(ブロック108において)設定される。これによって、サーバ4は、レコードと値とにおける判定された不一致が、最初の検索コマンド50を実行した第1のコンポーネント16内のエラーの結果かどうかをチェックすることができる。オペレーティング・システム10は、実行するための検索コマンド50を(ブロック110において)サーバ4へ送信する。
図4は、ホスト2からの検索コマンド50を処理するために第1のコンポーネント16および第2のコンポーネント18によって実行されるオペレーションの一実施形態を示している。レコード56が値58と一致しているかどうかを判定するための検索要求50を(ブロック150において)受信すると、第1のコンポーネント16(たとえば、アダプタや、他のハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方)は、レコード・アドレス56におけるレコードが検索値58と一致しているかどうかを判定するための検索要求を(ブロック152において)実行する。(ブロック154において)レコードが値58と一致している場合には、第1のコンポーネント16は、検索が一致したというステータスを(ブロック156において)ホスト2へ返す。(ブロック154において)レコードが値と一致しなかった場合には、第1のコンポーネント16は、検索要求50が、たった今チェックしたレコード8を修正するオペレーションなどのアトミック・オペレーションの一部であることを示すために、その検索要求50に関連付けられているアトミック・フラグ54が設定されているかどうかを(ブロック158において)判定する。アトミック・オペレーションを示すためにアトミック・フラグ54が設定されていない場合には、第1のコンポーネント16は、レコードが値58と一致していないことを示すメッセージを(ブロック160において)返す。
(ブロック158において)アトミック・フラグ54が設定されている場合には、第1のコンポーネント16は、レコードが値と一致していないかどうかを確認するための検索要求を再実行するために、その検索要求を実行しなかった(あるいは、その検索要求の処理に関与しなかった)第2のコンポーネント18(たとえば、プロセッサ・コンプレックスや、他のハードウェアまたはソフトウェアあるいはその両方)へ(ブロック162において)検証要求を送信する。第1のコンポーネント16から第2のコンポーネント18への検証要求は、第1のコンポーネント16がその検索において使用したレコード・アドレス56および検索値58を提供することができる。第2のコンポーネント18は、第1のコンポーネント16によって使用されたレコード・アドレスおよび値を確認するために第1のコンポーネント16へ送信された検索要求90と共に提供されたエラー・チェッキング・コード60を(ブロック164において)使用する。上述のように、エラー・チェッキング・コード60は、ネットワーク伝送プロトコル・ドライバによって計算されて、ホスト2からサーバ4へ送信された検索コマンドをカプセル化している送信パッケージ内に含まれているエラー・チェッキング・コードを含むことができる。第1のコンポーネント16によって使用されたレコード・アドレスおよび値が(ブロック166において)確認された場合には、第1のコンポーネント16は、正しい情報を使用したことになり、第2のコンポーネント18は、提供されたレコード・アドレスにおけるレコードが、提供された値と一致しているかどうかを(ブロック168において)判定する。(ブロック168において)一致がない場合には、第1のコンポーネント16は、一致がないことを正しく計算したことになり、第2のコンポーネント18は、ハードウェア用のエラー・チェッキング情報および検索結果を記録し、レコードが一致していないこと、およびサーバ・ハードウェアが正しく機能していることを示すメッセージを(ブロック170において)返す。
(ブロック168において)一致がある場合、すなわち第2のコンポーネント18が、第1のコンポーネント16とは異なる結果を得た場合には、第2のコンポーネント18は、エラー・チェッキング情報および検索結果を記録し、レコードが検索値58と一致していることを示すメッセージを(ブロック172において)返す。第2のコンポーネント18によって判定された異なる結果は、予想される結果、すなわちレコードが値と一致しているという結果とは異なる結果を判定した第1のコンポーネント16のハードウェアまたはロジックあるいはその両方に何らかの問題がある可能性が高いということを示している。このような場合には、第2のコンポーネント18は、第1のコンポーネント16がエラー・モードにあり、第1のコンポーネント16がオペレーションから隔離されている可能性もあるということを(ブロック174において)示す。複数のアダプタなど、第1のコンポーネント16の余分なインスタンスがある場合には、第1のコンポーネント16が隔離されても、サーバ4のオペレーションが混乱することはない。
(ブロック166において)第2のコンポーネント18が、エラー・チェッキング・コード60を使用してレコード・アドレスおよび値を確認しない場合には、第1のコンポーネント16は、ホスト2によって送信されたレコード・アドレス56または検索値58とは異なる、第2のコンポーネント18に提供されたレコード・アドレスまたは検索値を使用したため、正しく機能していない可能性がある。このような場合には、第2のコンポーネント18は、ブロック174へ進んで、第1のコンポーネント16をオペレーションから隔離する。
第1のコンポーネント16および第2のコンポーネント18によって実行されるものとして説明したオペレーションの一部は、サーバ4内のI/Oマネージャー12または他のコンポーネントによって実行することができる。
図5は、検索コマンド50に応答してサーバ4から受信した結果を処理するためにオペレーティング・システム10によって実行されるオペレーションの一実施形態を示している。(ブロック200において)検索コマンド50に応答してサーバ4から結果を受信すると、提供されたアドレス56におけるレコードが、提供された検索値58と一致していることを(ブロック202において)応答が示している場合には、オペレーティング・システム10は、(ブロック204において)レコード8を修正するオペレーションを継続する。レコードが値58と一致していなかったこと、すなわち、レコード8上に設置されているロックにもかかわらずにレコード8が変化したことを(ブロック202において)応答が示している場合には、オペレーティング・システム10は、第1のコンポーネント16(たとえばアダプタ、ハードウェア、またはソフトウェア、あるいはそのすべて)の障害など、結果として障害につながったサーバ・コンポーネントの障害があったかどうかを(ブロック206において)判定する。サーバ・コンポーネントの障害があった場合には、オペレーティング・システム10は、検索コマンド50を(ブロック208において)再送することができ、それによって、障害が発生して隔離された第1のコンポーネント用のフェイルオーバ・コンポーネント、すなわち他の利用可能な余分なアダプタのうちの1つが、検索要求を処理することができる。サーバ・コンポーネント16に問題またはエラーがあったことを(ブロック208において)メッセージが示していない場合には、オペレーティング・システム10は、問題を診断するために、修正オペレーションを開始した、および検索要求50を作成したホスト2のコンポーネントのエラー・チェッキングを(ブロック210において)実行することができる。
説明した実施形態に関しては、第1のコンポーネント16が予想外の検索結果を得た場合には、第2のコンポーネント18が、第1のコンポーネント16によって判定された検索結果をチェックする。たとえば、レコード8(あるいはレコード8を含むデータ構造、たとえばテーブル、オブジェクトなど)の上でロックが得られた場合には、ロックが設置された後に判定されたレコードの値は変化していないと予想される。第1のコンポーネント16が予想外の検索結果を判定した場合には、第2のコンポーネント18は、第1のコンポーネント16のハードウェアまたはロジック(たとえばソフトウェア)あるいはその両方にエラーが存在するかどうかを判定するために、トラブルシューティング・オペレーションの一部としてその結果を再計算する。
図6は、代替コンピューティング環境の実施形態を示している。1つまたは複数のホスト302(1つだけが図示されている)は、1つまたは複数の処理システム304a、304b・・・304nを含み、これらの処理システムは、コントロール・ユニット306への複数の論理パスを提供するチャネル・サブシステム308を通じてコントロール・ユニット306へI/O(Input/Output)要求を伝達する。それぞれの処理システム304a、304b・・・304nは、パス関連のオペレーションを管理するためのオペレーティング・システム305を含む。チャネル・サブシステム308は、アダプタ312を通って延びる論理パス310を管理する。アダプタ312は、物理層を提供し、この物理層を通って、論理パス310は、スイッチ(図示せず)を通じてコントロール・ユニット306または複数のコントロール・ユニットへと延びる。オペレーティング・システム305は、複数の論理パス310を1つのパス・グループにさらに関連付けることができ、その場合には、1つのパス・グループ内のすべてのパスは、コントロール・ユニット306と通信するために1つの処理システム304a、304b・・・304nによって使用することができる。
それぞれの処理システム304a、304b・・・304nは、オペレーティング・システム305およびチャネル・サブシステム308のコードを含むプログラムを実行するCPU(central processing unit)を含むことができる。あるいは、それぞれの処理システム304a、304b・・・304nは、複数のロジカル・パーティション(logicalpartition)(LPAR)のうちの1つを含むことができ、そのそれぞれは、自前のオペレーティング・システム305を実行する独立したシステムとして機能し、チャネル・サブシステム308のコードを共有することができる。さらなる実施形態においては、それぞれの処理システムは、プロセッサのロジカル・パーティションを含むことができる。この方法においては、ホスト2内の1つまたは複数のプロセッサは、複数のロジカル・パーティション(LPAR)を実装することができる。複数の処理システム304a、304b・・・304nが、単一の論理チャネル・サブシステム16を共有することもでき、あるいは別々の処理システム304a、304b・・・304nが、別々の論理チャネル・サブシステムを使用することもできる。
チャネル・サブシステム308は、処理システム304a、304b・・・304nからコントロール・ユニット306へI/O要求を伝達するオペレーションを実行するためのチャネル・サブシステム・プログラム316を含む。オペレーティング・システム305は、I/O要求を管理する。チャネル・サブシステム・プログラム316は、チャネル・サブシステム308からI/O要求を得る。1つまたは複数のメモリ・デバイスから構成されるメモリ317は、I/O要求を管理するためにチャネル・サブシステム・プログラム16によって使用される情報を含む。
チャネル・サブシステム・プログラム316は、ボリューム目次(Volume Tableof Contents)(VTOC)内の項目を修正するオペレーションなど、コントロール・ユニット306によって管理されるレコードを修正するオペレーションの一部として検索コマンド50を含むCCWコマンドを含むチャネル・プログラムを処理することができる。したがって、チャネル・サブシステム・プログラム316は、修正するレコードを含むテーブルまたは他のデータ構造、たとえばVTOC上でロックが得られた後で、更新するレコードが修正されたかどうかを判定するために、図3および図5のオペレーションを実行するための一連のコマンドを実行することができる。
コントロール・ユニット306は、トラック、パーティション、ロジカル・デバイス(logicaldevice)、ロジカル・ボリューム(logical volume)、ロジカル・ユニット・ナンバー(logical unit number)(LUN)、ロジカル・サブシステム(LSS)、あるいはストレージのその他のロジカル・ユニットまたはフィジカル・ユニットなど、ストレージ・システム318a、318b・・・318nにアクセスしたいという処理システム304a、304b・・・304nからの要求を管理する。ストレージ318aは、1つまたは複数のLSS 332を含む構成を示しており、この場合には、1つまたは複数のボリューム334が、それぞれのLSS 332内で構成されている。これらのボリュームは、複数のストレージ・デバイスにわたることができる。「デバイス」という用語は、フィジカル・トラック(physicaltrack)、LSS、パーティション、ロジカル・ボリューム、ボリュームなど、あらゆる物理的または論理的なデータ・ストレージ・ユニット(data storageunit)を指す。コントロール・ユニット306は、ストレージ・システム318a、318b・・・318nからのデータを一時的に格納できるメモリ324と、ホスト302からコマンドおよび要求を受信するためのアダプタ326と、処理コンプレックス328とを含む。ストレージ318aは、それぞれの定義されたデータ・セットに割り当てられているストレージ・ロケーション(storagelocation)の範囲を含む、ボリューム334内で定義されたそれぞれのデータ・セットに関する情報を提供するボリューム目次(VTOC)336をさらに含むことができる。
一実施形態においては、アダプタ326は、検索コマンド内に示されているレコードをはじめにチェックする第1のコンポーネントを含むことができ、処理コンプレックス328は、アダプタ326によって実行された検索チェッキングをチェックするためのチェッキング・オペレーションを実行する第2のコンポーネントを含むことができる。
ホスト302は、ワークステーション、メインフレーム、サーバなど、当技術分野で知られているコンピューテーショナル・デバイス(computational device)を含むことができる。コントロール・ユニット306は、エンタープライズ・ストレージ・サーバ、ストレージ・コントローラなど、ストレージ・サブシステムまたはサーバ、あるいは接続されているボリュームへのI/O要求を管理するために使用されるその他のデバイスを含むことができる。ストレージ318a、318b・・・318nは、(たとえばDASD、RAID、JBOD、仮想化されたデバイスなどとして構成されている)相互接続されたハード・ディスク・ドライブ、磁気テープ、電子メモリ、フラッシュ・メモリ、光ディスクなど、当技術分野で知られているストレージ・デバイスを含むことができる。ホスト302は、LAN(LocalArea Network)、SAN(Storage Area Network)、WAN(Wide Area Network)、ピアツーピア・ネットワーク、無線ネットワークなどのネットワークを通じて広がることができる論理パス310を介してコントロール・ユニット306と通信することができる。あるいはホスト302は、PCI(PeripheralComponent Interconnect)バスまたはシリアル・インターフェースなどのバス・インターフェースを介してストレージ・コントローラ6と通信することもできる。
さらなる実施形態の詳細
説明したオペレーションは、ソフトウェア、ファームウェア、ハードウェア、またはそれらの任意の組合せを製造するための標準的なプログラミング技術またはエンジニアリング技術あるいはその両方を使用した方法、装置、または製品として実装することができる。説明したオペレーションは、「コンピュータ可読メディア」内に保持されるコードとして実装することができ、その場合には、プロセッサは、そのコンピュータ可読メディアからそのコードを読み取って、実行することができる。コンピュータ可読メディアは、磁気ストレージ・メディア(たとえばハード・ディスク・ドライブ、フロッピー(登録商標)・ディスク、テープ等)、光ストレージ(CD−ROM、DVD、光ディスク等)、揮発性および不揮発性のメモリ・デバイス(たとえばEEPROM、ROM、PROM、RAM、DRAM、SRAM、フラッシュ・メモリ、ファームウェア、プログラマブル・ロジック等)などのメディアを含むことができる。説明したオペレーションを実施するコードは、ハードウェア・ロジック(たとえば集積回路チップ、PGA(Programmable Gate Array)、ASIC(Application Specific IntegratedCircuit)など)の中にさらに実装することができる。またさらに、説明したオペレーションを実施するコードは、「伝送信号」内に実装することもでき、その場合には、伝送信号は、空間を通じて、あるいは光ファイバーや銅線などの伝送メディアを通じて伝搬することができる。コードまたはロジックがコード化されている伝送信号は、無線信号、衛星伝送、電波、赤外線信号、Bluetoothなどをさらに含むことができる。コードまたはロジックがコード化されている伝送信号は、送信局によって送信し、受信局によって受信することができ、その場合には、伝送信号内でコード化されているコードまたはロジックをデコードして、受信側および送信側の局またはデバイスにおけるハードウェアまたはコンピュータ可読メディア内に保存することができる。「製品」とは、コードを実装することができるコンピュータ可読メディア、ハードウェア・ロジック、または伝送信号あるいはそのすべてを含む。オペレーションの説明した実施形態を実施するコードがコード化されているデバイスは、コンピュータ可読メディアまたはハードウェア・ロジックを含むことができる。もちろん、本発明の範囲から逸脱することなく、この構成に対して多くの修正を施すことができるということ、および製品は、当技術分野で知られている適切な情報搬送メディア(informationbearing medium)を含むことができるということを当業者なら認識できるであろう。
「an embodiment」、「embodiment」、「embodiments」、「theembodiment」、「the embodiments」、「one or more embodiments」、「some embodiments」、および「oneembodiment」という用語は、明確にその他の指定がない限り、「one or more (but not all) embodiments of thepresent invention(s)」を意味する。
「including」、「comprising」、「having」という用語、およびそれらの変形は、明確にその他の指定がない限り、「includingbut not limited to」を意味する。
列挙して記載した項目は、明確にその他の指定がない限り、それらのあらゆるまたはすべての項目が相互に排他的であることを意味しない。
「a」、「an」、および「the」という用語は、明確にその他の指定がない限り、「oneor more」を意味する。
相互に通信状態にあるデバイスは、明確にその他の指定がない限り、相互に継続的に通信状態にある必要はない。さらに、相互に通信状態にあるデバイスは、直接、あるいは1つまたは複数の中間物を通じて間接的に通信することができる。
相互に通信状態にあるいくつかのコンポーネントを伴う実施形態の説明は、そのようなコンポーネントがすべて必須であることを意味しない。それどころか、本発明のさまざまな可能な実施形態を説明するために、さまざまな任意選択のコンポーネントが記載されている。
さらに、プロセスのステップ、方法のステップ、アルゴリズムなどは、一連の順序で説明することができるが、そのようなプロセス、方法、およびアルゴリズムは、別の順序で機能するように構成することもできる。すなわち、説明できるステップのいかなるシーケンスまたは順序も、それらのステップがその順序で実行される必要性を必ずしも示しているわけではない。本明細書に記載されているプロセスのステップは、実用的ないかなる順序で実行することもできる。さらに、いくつかのステップは、同時に実行することもできる。
単一のデバイスまたは製品について本明細書に記載されている場合には、単一のデバイス/製品の代わりに複数のデバイス/製品を(それらが連携するか否かを問わずに)使用することができるということが容易に明らかになるであろう。同様に、複数のデバイスまたは製品について(それらが連携するか否かを問わずに)本明細書に記載されている場合には、それらの複数のデバイスまたは製品の代わりに単一のデバイス/製品を使用することもでき、あるいは、示されている数のデバイスまたはプログラムの代わりに異なる数のデバイス/製品を使用することもできるということが容易に明らかになるであろう。あるいは、あるデバイスの機能または特徴あるいはその両方は、そのような機能/特徴を有するとは明確に記載されていない1つまたは複数の他のデバイスによって具体化することもできる。したがって、本発明のその他の実施形態は、そのデバイスそのものを含む必要がない。
さらに、特定の数のアイテムを示すために「a」、「b」、または「n」などの参照文字が使用されている場合には、別々の要素と共に使用されている参照「a」、「b」、または「n」は、同じ数のそのような要素を示すこともでき、あるいは異なる数のそのような要素を示すこともできる。
図2は、特定のフォーマットで保持されている情報を示している。代替実施形態においては、これらの図に示されている情報は、別のデータ構造およびフォーマットで、および異なる組合せで保持することもできる。
図3、図4、および図5の例示されているオペレーションは、特定の順序で生じる特定のイベントを示している。代替実施形態においては、特定のオペレーションは、異なる順序で実行したり、修正したり、あるいは削除したりすることができる。さらに、上述のロジックにステップを追加して、なおかつ記載の実施形態に準拠することができる。さらに、本明細書に記載されているオペレーションは、順次行うこともでき、あるいは特定のオペレーションは、並行して処理することもできる。またさらに、オペレーションは、単一の処理装置によって実行することもでき、あるいは分散された処理装置によって実行することもできる。
本発明のさまざまな実施形態に関する前述の説明は、例示および説明の目的で提示されたものである。すべてを網羅すること、あるいは開示されている厳密な形態に本発明を限定することを意図するものではない。上述の教示に照らして、多くの修正および変形形態が可能である。本発明の範囲は、この詳細な説明によってではなく、むしろ本明細書に添付されている特許請求の範囲によって限定されることを意図している。上述の仕様、例、およびデータは、本発明の構成の製造および使用に関する完全な説明を提供している。本発明の多くの実施形態は、本発明の趣旨および範囲から逸脱することなく作成することができるため、本発明は、添付の特許請求の範囲に属するものである。
コンピューティング環境の一実施形態を示す図である。 レコードの値を検索値と比較するための検索コマンドの一実施形態を示す図である。 レコードを修正するオペレーションの一実施形態を示す図である。 検索コマンドを処理するオペレーションの一実施形態を示す図である。 検索コマンドの結果を処理するオペレーションの一実施形態を示す図である。 コンピューティング環境の代替実施形態を示す図である。
符号の説明
2 ホスト
4 サーバ
6 ストレージ
8 レコード
10 オペレーティング・システム
12 I/Oマネージャー
14 メモリ
16 第1のコンポーネント
18 第2のコンポーネント
50 検索コマンド
52 検索コマンド・コード
54 アトミック・フラグ
56 レコード・アドレス
58 検索値
60 エラー・チェッキング・コード
302 ホスト
304a 処理システム
304b 処理システム
304n 処理システム
305 オペレーティング・システム
306 コントロール・ユニット
308 チャネル・サブシステム
312 アダプタ
316 チャネル・サブシステム・プログラム
317 メモリ
318a ストレージ・システム
318b ストレージ・システム
318n ストレージ・システム
324 メモリ
326 アダプタ
328 処理コンプレックス
334 ボリューム

Claims (24)

  1. レコードが値と一致しているかどうかを判定するための検索要求を受信するステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検索要求を第1のコンポーネントによって実行するステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検索要求を実行するために、前記第1のコンポーネントによって、前記検索要求を実行しなかった第2のコンポーネントへ検証要求を送信するステップと、
    前記第1および第2のコンポーネントが前記検索要求を実行した結果を記録するステップとを含む方法。
  2. 前記レコードが前記値と一致していると前記第2のコンポーネントが判定したことに応答して、前記第1のコンポーネントがエラー・モードにあることを示すステップであって、前記エラー・モードにおいては前記第1のコンポーネントがオペレーションから隔離されているステップをさらに含む請求項1に記載の方法。
  3. 前記第2のコンポーネントへの前記検証要求が、前記値および前記レコードのアドレスのためのエラー・チェッキング・コードを含む方法であって、
    前記第1のコンポーネントによって使用された前記レコード・アドレスおよび前記値を確認するための前記エラー・チェッキング・コードを使用したエラー・チェッキング・オペレーションを前記第2のコンポーネントによって実行するステップと、
    前記エラー・チェッキング・コードが前記レコード・アドレスおよび前記値を確認しないと前記第2のコンポーネントが判定したことに応答して、前記第1のコンポーネントがエラー・モードにあることを示すステップとをさらに含む請求項2に記載の方法。
  4. 前記レコードが前記値と一致していない場合に、前記検索要求に関連付けられたフラグが設定されているかどうかを判定するステップであって、前記フラグが設定されていると判定されたことに応答してのみ、前記検証要求が前記第2のコンポーネントへ送信されるステップをさらに含む請求項1に記載の方法。
  5. 前記検索要求が、前記レコードに関連付けられているデータを更新するためのアトミック・オペレーションの一部であることを、設定されている前記フラグが示す請求項4に記載の方法。
  6. 前記検証要求を前記第2のコンポーネントへ送信するように示すように前記フラグが設定されていないと判定されたことに応答して、前記第1のコンポーネントが前記検索要求を実行した結果を記録するステップをさらに含む請求項4に記載の方法。
  7. 前記検索されるレコードが、あるホストが依然としてホストの管理されているグループの一部であるかどうかを判定するために前記検索が実行される結合されたデータ・セット・レコードと、前記レコードを修正するオペレーションの最中に前記レコードのための前記値が変化していないかどうかを判定するために前記検索が実行されるボリューム目次レコードとを含むレコードのセットの一部である請求項1に記載の方法。
  8. 前記第1のコンポーネントがネットワーク・アダプタを含み、前記第2のコンポーネントがプロセッサ・コンプレックスを含む請求項1に記載の方法。
  9. あるシステムによって管理されているストレージ内のレコードを修正するオペレーションを開始するステップと、
    前記オペレーション中に他のプロセスが前記レコードを修正できないようにロックを設定するためのコマンドを前記システムへ送信するステップと、
    前記ストレージから前記レコードを読み取って、前記レコードのための値を割り出すステップと、
    修正する前記レコードが前記割り出された値を有するかどうかを判定するための前記システムへの検索要求を作成するステップであって、前記システムが、第1のコンポーネントを使用して前記検索要求を実行するステップと、
    前記レコードが前記値と一致していないと前記システムが判定したことに応答して、前記第1のコンポーネントによる前記検索要求の前記実行に関与しなかった第2のコンポーネントを使用して前記検索要求を再実行するための第2のチェッキング・オペレーションを前記システムに実行させるためのフラグを設定するステップと、
    前記検索要求を前記システムへ送信するステップとを含む方法。
  10. 前記フラグが、前記検索要求用のコマンド内に含めて送信される請求項9に記載の方法。
  11. 前記レコードが前記値と一致したかどうかを示す前記検索要求からの結果を受信するステップと、
    前記レコードが前記値と一致しなかったことを示す前記結果に応答して、前記レコードを修正する前記オペレーションを継続するステップと、
    前記レコードが前記値と一致したことを示す前記結果に応答して、前記レコードを修正する前記オペレーションを終了するステップとをさらに含む請求項9に記載の方法。
  12. 前記結果が、前記第1のコンポーネント内のエラーのために前記レコードが前記値と一致しなかったのかどうかを示す方法であって、
    前記エラーが前記第1のコンポーネント内のエラーのためではなかったことを示す結果に応答して、前記オペレーションを開始した、および前記検索要求を作成したコンポーネントのエラー・チェッキングを実行するステップをさらに含む請求項9に記載の方法。
  13. 第1のコンポーネントと、
    第2のコンポーネントと、
    オペレーションが実施されるようにするために少なくとも前記第1および第2のコンポーネントによって実行されるコードを実装しているデバイスとを含むシステムであって、前記オペレーションが、
    レコードが値と一致しているかどうかを判定するための検索要求を受信するステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検索要求を前記第1のコンポーネントによって実行するステップと、
    前記第1のコンポーネントによって、前記検索要求を実行しなかった前記第2のコンポーネントへ検証要求を送信するステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検証要求に応答して、前記第2のコンポーネントによって前記検索要求を実行するステップと、
    前記第1および第2のコンポーネントが前記検索要求を実行した結果を記録するステップとを含むシステム。
  14. 前記オペレーションが、
    前記レコードが前記値と一致していると前記第2のコンポーネントが判定したことに応答して、前記第1のコンポーネントがエラー・モードにあることを示すステップであって、前記エラー・モードにおいては前記第1のコンポーネントがオペレーションから隔離されているステップをさらに含む請求項13に記載のシステム。
  15. 前記第2のコンポーネントへの前記検証要求が、前記値および前記レコードのアドレスのためのエラー・チェッキング・コードを含み、前記オペレーションが、
    前記第1のコンポーネントによって使用された前記レコード・アドレスおよび前記値を確認するための前記エラー・チェッキング・コードを使用したエラー・チェッキング・オペレーションを、前記検証要求に応答して前記第2のコンポーネントによって実行するステップと、
    前記エラー・チェッキング・コードが前記レコード・アドレスおよび前記値を確認しないと前記第2のコンポーネントが判定したことに応答して、前記第1のコンポーネントがエラー・モードにあることを示すステップとをさらに含む請求項14に記載のシステム。
  16. 前記レコードが前記値と一致していない場合に、前記検索要求に関連付けられたフラグが設定されているかどうかを判定するステップであって、前記フラグが設定されていると判定されたことに応答してのみ、前記検証要求が前記第2のコンポーネントへ送信されるステップをさらに含む請求項13に記載のシステム。
  17. 前記検索要求が、前記レコードに関連付けられているデータを更新するためのアトミック・オペレーションの一部であることを、設定されている前記フラグが示す請求項16に記載のシステム。
  18. 前記オペレーションが、
    前記検証要求を前記第2のコンポーネントへ送信するように示すように前記フラグが設定されていないと判定されたことに応答して、前記第1のコンポーネントが前記検索要求を実行した結果を記録するステップをさらに含む請求項16に記載のシステム。
  19. 前記検索されるレコードが、あるホストが依然としてホストの管理されているグループの一部であるかどうかを判定するために前記検索が実行される結合されたデータ・セット・レコードと、前記レコードを修正するオペレーションの最中に前記レコードのための前記値が変化していないかどうかを判定するために前記検索が実行されるボリューム目次レコードとを含むレコードのセットの一部である請求項13に記載のシステム。
  20. 前記第1のコンポーネントがネットワーク・アダプタを含み、前記第2のコンポーネントがプロセッサ・コンプレックスを含む請求項13に記載のシステム。
  21. 前記デバイスが、コンピュータ可読メモリとハードウェア・デバイスとを含むデバイスのセットの少なくとも1つの部分である請求項13に記載のシステム。
  22. 第1および第2のコンポーネントを有する、およびストレージを管理するサーバと通信状態にあるシステムであって、
    オペレーションが実施されるようにするために実行されるコードを実装しているデバイスを含み、前記オペレーションが、
    前記サーバによって管理されている前記ストレージ内のレコードを修正するオペレーションを開始するステップと、
    前記オペレーション中に他のプロセスが前記レコードを修正できないようにロックを設定するためのコマンドを前記サーバへ送信するステップと、
    前記ストレージから前記レコードを読み取って、前記レコードのための値を割り出すステップと、
    修正する前記レコードが前記割り出された値を有するかどうかを判定するための前記サーバへの検索要求を作成するステップであって、前記サーバが、前記第1のコンポーネントを使用して前記検索要求を実行するステップと、
    前記レコードが前記値と一致していないと前記サーバが判定したことに応答して、前記第1のコンポーネントによる前記検索要求の前記実行に関与しなかった前記第2のコンポーネントを使用して前記検索要求を再実行するための第2のチェッキング・オペレーションを前記サーバに実行させるためのフラグを設定するステップと、
    前記検索要求を前記サーバへ送信するステップとを含むシステム。
  23. 第1のコンポーネントおよび第2のコンポーネントに関するオペレーションを引き起こすためにコンピュータに
    レコードが値と一致しているかどうかを判定するための検索要求を受信するステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検索要求を前記第1のコンポーネントに実行させるステップと、
    前記レコードが前記値と一致しているかどうかを判定するための前記検索要求を実行するために、前記第1のコンポーネントに、前記検索要求を実行しなかった前記第2のコンポーネントへ検証要求を送信させるステップと、
    前記第1および第2のコンポーネントが前記検索要求を実行した結果を記録するステップと、
    を実行させるプログラム。
  24. 前記オペレーションが、
    前記レコードが前記値と一致していると前記第2のコンポーネントが判定したことに応答して、前記第1のコンポーネントがエラー・モードにあることを示すステップであって、前記エラー・モードにおいては前記第1のコンポーネントがオペレーションから隔離されているステップをさらに含む請求項23に記載のプログラム。
JP2007247079A 2006-10-03 2007-09-25 レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラム Active JP5063275B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/538401 2006-10-03
US11/538,401 US7958406B2 (en) 2006-10-03 2006-10-03 Verifying a record as part of an operation to modify the record

Publications (2)

Publication Number Publication Date
JP2008090839A true JP2008090839A (ja) 2008-04-17
JP5063275B2 JP5063275B2 (ja) 2012-10-31

Family

ID=39262195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007247079A Active JP5063275B2 (ja) 2006-10-03 2007-09-25 レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラム

Country Status (4)

Country Link
US (2) US7958406B2 (ja)
JP (1) JP5063275B2 (ja)
CN (1) CN101158915B (ja)
TW (1) TW200825905A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7958406B2 (en) * 2006-10-03 2011-06-07 International Business Machines Corporation Verifying a record as part of an operation to modify the record
US7949794B2 (en) 2006-11-02 2011-05-24 Intel Corporation PCI express enhancements and extensions
US7818473B2 (en) * 2008-08-11 2010-10-19 International Business Machines Corporation Embedded locate records for device command word processing
CN102646453A (zh) * 2011-02-18 2012-08-22 安凯(广州)微电子技术有限公司 NandFlash控制器中错误校正码模块的测试方法及系统
US8788877B2 (en) * 2011-08-03 2014-07-22 International Business Machines Corporation Acquiring a storage system into copy services management software
US9965513B2 (en) * 2014-11-25 2018-05-08 Sap Se Set-orientated visibility state retrieval scheme
US9792066B2 (en) 2015-02-23 2017-10-17 International Business Machines Corporation Handling failure of a command to add a record to a log
US20230229352A1 (en) * 2022-01-20 2023-07-20 Micron Technology, Inc. Host training indication for memory artificial intelligence

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002351727A (ja) * 2001-05-29 2002-12-06 Fujitsu Ltd データベース管理システム,データベース管理処理方法,データベース管理システム用のプログラムおよびその記録媒体
US20070055674A1 (en) * 2005-09-02 2007-03-08 Akira Sunada Data server, data management method, and data management system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US6721740B1 (en) * 1998-05-29 2004-04-13 Sun Microsystems, Inc. Method and apparatus of performing active update notification
US6378087B1 (en) * 1999-06-08 2002-04-23 Compaq Computer Corporation System and method for dynamically detecting unchecked error condition values in computer programs
US6715036B1 (en) * 2000-08-01 2004-03-30 International Business Machines Corporation Method, system, and data structures for transferring blocks of data from a storage device to a requesting application
US6850938B1 (en) * 2001-02-08 2005-02-01 Cisco Technology, Inc. Method and apparatus providing optimistic locking of shared computer resources
US6973511B2 (en) * 2002-03-28 2005-12-06 International Business Machines Corporation System and method for dual stage persistent reservation preemption protocol
TW591441B (en) * 2003-07-28 2004-06-11 Accton Technology Corp Database system and data access method thereof
GB2413742B (en) * 2003-11-05 2006-05-31 Internet Comp Bureau Plc Computer address resolution
JP2006085539A (ja) * 2004-09-17 2006-03-30 Fujitsu Ltd データベース管理プログラム、方法、装置及び記録媒体
US7478265B2 (en) 2004-10-14 2009-01-13 Hewlett-Packard Development Company, L.P. Error recovery for input/output operations
GB0426309D0 (en) 2004-11-30 2004-12-29 Ibm Method and system for error strategy in a storage system
US7404133B2 (en) 2004-12-12 2008-07-22 Hewlett-Packard Development Company, L.P. Error detection and correction employing modulation symbols satisfying predetermined criteria
US7418636B2 (en) * 2004-12-22 2008-08-26 Alcatel Lucent Addressing error and address detection systems and methods
JP2006309447A (ja) * 2005-04-27 2006-11-09 Hitachi Ltd 記憶システム及びバックアップ方法
US8364711B2 (en) * 2006-05-09 2013-01-29 John Wilkins Contact management system and method
US7958406B2 (en) * 2006-10-03 2011-06-07 International Business Machines Corporation Verifying a record as part of an operation to modify the record
US8111838B2 (en) * 2007-02-28 2012-02-07 Panasonic Corporation Conferencing apparatus for echo cancellation using a microphone arrangement

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002351727A (ja) * 2001-05-29 2002-12-06 Fujitsu Ltd データベース管理システム,データベース管理処理方法,データベース管理システム用のプログラムおよびその記録媒体
US20070055674A1 (en) * 2005-09-02 2007-03-08 Akira Sunada Data server, data management method, and data management system

Also Published As

Publication number Publication date
US7958406B2 (en) 2011-06-07
TW200825905A (en) 2008-06-16
US20110179070A1 (en) 2011-07-21
CN101158915B (zh) 2010-06-02
US9411536B2 (en) 2016-08-09
CN101158915A (zh) 2008-04-09
JP5063275B2 (ja) 2012-10-31
US20080082496A1 (en) 2008-04-03

Similar Documents

Publication Publication Date Title
JP5063275B2 (ja) レコードを修正するオペレーションの一部としてそのレコードを検証するための方法、システム、およびプログラム
US8140785B2 (en) Updating metadata in a logical volume associated with a storage controller for data units indicated in a data structure
CA2644997C (en) Providing an address format compatible with different addressing formats used for addressing different sized address spaces
US8032702B2 (en) Disk storage management of a tape library with data backup and recovery
JP5147941B2 (ja) 異なるネットワークを介した1次ストレージから2次ストレージへの書き込みコピーを管理するための方法、システム、およびコンピュータ・プログラム
US8131957B2 (en) Splitting writes between a storage controller and replication engine
US20140108349A1 (en) Merging an out of synchronization indicator and a change recording indicator in response to a failure in consistency group formation
JP2008502060A (ja) ソース・データをターゲット・データに移行する方法、システム及びプログラム
US8868517B2 (en) Scatter gather list for data integrity
JP2007058286A (ja) 記憶装置のフォーマットを不要としたストレージシステム及び記憶制御方法
US20080301495A1 (en) Reassigning storage volumes from a failed processing system to a surviving processing system
US8949528B2 (en) Writing of data of a first block size in a raid array that stores and mirrors data in a second block size
US10860224B2 (en) Method and system for delivering message in storage system
US8024534B2 (en) Replication engine communicating with a splitter to split writes between a storage controller and replication engine
US7647456B2 (en) Comparing data in a new copy relationship to data in preexisting copy relationships for defining how to copy data from source to target
US7568121B2 (en) Recovery from failure in data storage systems
CN108475254A (zh) 对象复制方法、装置及对象存储设备
JP2014032573A (ja) ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100525

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120313

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120529

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20120529

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20120530

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120717

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20120717

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120807

R150 Certificate of patent or registration of utility model

Ref document number: 5063275

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150817

Year of fee payment: 3