JP2007316691A - トランザクション処理装置、トランザクション処理方法 - Google Patents

トランザクション処理装置、トランザクション処理方法 Download PDF

Info

Publication number
JP2007316691A
JP2007316691A JP2006142340A JP2006142340A JP2007316691A JP 2007316691 A JP2007316691 A JP 2007316691A JP 2006142340 A JP2006142340 A JP 2006142340A JP 2006142340 A JP2006142340 A JP 2006142340A JP 2007316691 A JP2007316691 A JP 2007316691A
Authority
JP
Japan
Prior art keywords
server
memory domain
memory
logical
domain
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
JP2006142340A
Other languages
English (en)
Other versions
JP4277873B2 (ja
Inventor
Takeshi Miyata
剛 宮田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2006142340A priority Critical patent/JP4277873B2/ja
Priority to US11/752,773 priority patent/US7836162B2/en
Publication of JP2007316691A publication Critical patent/JP2007316691A/ja
Application granted granted Critical
Publication of JP4277873B2 publication Critical patent/JP4277873B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2048Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2038Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with a single idle spare processing component

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)

Abstract

【課題】トランザクション処理を行なうコンピュータシステムにおいて、メモリ上に処理対象となるデータを置く事で高速なデータ処理を実現しつつ、処理対象データの管理と複数サーバ間の情報交換の工夫によって、システム全体としての高可用性をも実現する。
【解決手段】処理データを一旦全てメモリ上に配置し、メモリ上でデータ更新処理を行なう。また、処理が全て完了、或いはある程度まとまった単位の更新が完了した時点でディスクに保存することで、高速なトランザクション処理を実現する。更に、データ処理を行なうサーバとは別のサーバ上に常にデータの複製を持つことで、サーバダウン時のデータ消失を防止し、復旧時もディスクを介さず、直接メモリ上のデータを復旧することで、迅速な処理再開を実現する。
【選択図】図2

Description

本発明は、高速、高可用性を実現するトランザクション処理装置及びトランザクション処理方法に関する。
従来のトランザクション処理方法では、データベースからのデータの読み出し、更新、確定の間にディスクへのI/Oが発生するため、サーバダウン時の更新データ消失の危険が抑えられている一方、ディスクへのアクセス性能がトランザクション処理性能の上限となり、処理性能をある程度以上に向上させることができなかった。また、システムダウン後の復旧に要する時間を短縮することも困難であった。
また、従来より、トランザクション処理をミラーリングしながらメモリ上で行なうシステムはあるが、次のような問題点があった。
第一の問題点は、サーバダウン後の復旧に時間がかかるという点である。特に、何らかの理由で、データ処理を行なうサーバとその処理データを複製するサーバというように役割が分けられている場合、データ処理を行なうサーバを復旧させるためには、一旦、後者のサーバでデータを保存し、データ処理を行なうサーバへ転送してから復旧操作を行なう必要があった。
第二の問題点は、サーバダウン後の復旧操作が論理的な処理データ単位になってしまうという点である。サーバがダウンして、そこに論理的な処理データ1000個が置かれていた場合、従来の方法では、復旧先サーバでその1000個を順次、又は特定の数ずつ並列に、復旧処理することになり、1000という数に依存した処理が発生することで、処理性能に限界が生じていた。
第三の問題点は、データ処理を行なうサーバとその処理データを複製するサーバの処理内容がほとんど対称であるがゆえに、サーバ台数の低減など、システム構築の柔軟性に問題があるという点である。データ処理を行なうサーバと同等の処理を、複製する側のサーバでも実行するため、複製する側のサーバを集約するなど、柔軟なシステム構築を行なう上で限界があった。
関連する技術として、特開2000−57030号公報に2重更新を行なうデータベースを有するクライアントサーバーシステムが開示されている。
このクライアントサーバーシステムは、少なくとも1つのクライアントと、前記クライアントの接続サーバーを切り替えるゲートウェイと、同一の構成を有する正系サーバーと副系サーバーと、前記正系サーバーと副系サーバーとによってそれぞれ参照及び更新される一対のデータベースとを有する。前記正系サーバーと副系サーバーはともに、前記クライアントのメッセージに対してオンライン処理を行なうオンラインアプリケーション手段と、データベースの参照と更新を行なうデータベースシステムと、自系のデータベースに対するデータベース変更メッセージを一時的に蓄積して他系に送出するメッセージキュー送出手段と、他系のデータベースに対するデータベース変更メッセージを自系に受け入れて一時的に蓄積するメッセージキュー受入手段と、前記メッセージキュー受入手段から他系のデータベースのデータベース変更メッセージを入力し、前記データベースシステムを介して自系のデータベースを更新するメッセージキュー起動アプリケーション手段とを有する。通常の処理においては前記正系サーバーは、そのオンラインアプリケーション手段によってオンライン処理を行ない、必要に応じて正系のデータベースシステムを介して正系のデータベースを変更するとともに、正系のデータベースに対するデータベース変更メッセージを正系のメッセージキュー送出手段に送る。前記副系サーバーは、副系のメッセージキュー受入手段が正系のメッセージキュー送出手段から正系のデータベースに対するデータベース変更メッセージを逐次受け入れ、副系のメッセージキュー起動アプリケーション手段が副系のメッセージキュー受入手段から正系のデータベースに対するデータベース変更メッセージを入力し、副系のデータベースシステムを介して副系のデータベースを更新する。前記正系サーバーにファイルの破損が発生したときは、前記ゲートウェイの切替えによって処理要求のあった前記クライアントを前記副系サーバーに接続し、副系のオンラインアプリケーション手段によってオンライン処理を行ない、必要に応じて副系のデータベースシステムを介して副系のデータベースを変更するとともに、副系のデータベースに対するデータベース変更メッセージを逐次副系のメッセージキュー送出手段に送る。前記正系サーバーは機能が回復した後に、正系のメッセージキュー受入手段が副系のメッセージキュー送出手段から副系処理中の副系のデータベースに対するデータベース変更メッセージを受け入れ、正系のメッセージキュー起動アプリケーション手段が正系のメッセージキュー受入手段から副系のデータベースに対するデータベース変更メッセージを入力し、正系のデータベースシステムを介して正系のデータベースを更新する。
また、特開2003−345523号公報にデータ多重化システムが開示されている。
このデータ多重化システムは、少なくとも一つの正側記憶ボリュームを備える複数の正側記憶装置と、少なくとも一つの副側記憶ボリュームを備えるとともに前記複数の正側記憶装置に接続する副側記憶装置とを備え、前記各正側記憶装置の正側記憶ボリュームに記憶される正側データと同じ内容の副側データを前記副側記憶装置へ転送して前記副側記憶装置の副側記憶ボリュームに記憶することにより、前記正側記憶装置と前記副側記憶装置とにおいてデータを多重に保持する。前記副側記憶装置は、前記副側データの到着状況を管理する手段と、前記複数の正側記憶装置に接続するホストコンピュータが前記各正側記憶装置へ前記正側データを送信した時刻を表すために前記正側データ及び前記副側データに付された時刻情報に基づいて、受信した前記副側データを時系列順に前記副側記憶ボリュームに書き込む手段と、或る前記正側記憶装置からの前記副側データの到着状況が設定された条件を満たすと、前記或る正側記憶装置からの前記副側データの前記到着状況が前記設定された条件から外れるようにするための条件離脱処理を実行する手段とを備える。
特開2005−293315号公報にデータミラー型クラスタシステムが開示されている。
このデータミラー型クラスタシステムは、一台が運用系、少なくとももう一台が待機系として動作するサーバ装置から構成され、運用系データベース上のデータ変更を待機系のデータベースに反映する。各サーバ装置は、それぞれのデータベースと、両サーバ装置からアクセス可能な共有メモリとを備え、トランザクションを相手サーバ装置に転送できるインターコネクトにより相互に接続されている。各サーバ装置は、運用系として動作しているときに、データベース上のデータの変更を共有メモリに書き込む運用系メモリドライバ手段と、待機系として動作しているときに、前記インターコネクトを介して共有メモリ上に転送されてきたデータをデータベースに書き込む待機系メモリドライバ手段とを備える。
特開平4−264937号公報にオンラインデータベース装置が開示されている。
このオンラインデータベース装置は、メモリに展開すべき情報を格納している磁気ディスク装置と、高速度アクセスされる情報が格納されている主記憶装置と、メモリに情報を展開するメモリ情報展開手段と、アプリケーションプログラムよりメモリ情報をアクセスするアプリケーションインタフェース手段と、端末トランザクション制御を行なうオンライン制御手段と、オンラインシステム終了時に磁気ディスク装置に退避するメモリ情報退避手段とを有する。
特開平5−88954号公報にデータベースの更新方法が開示されている。
このデータベースの更新方法は、プロセッサの主記憶装置上にデータベースのプライマリコピーを格納し、ディスク装置上にデータベースのバックアップコピーを格納するデータベース処理システムにおいて用いられる。このデータベース処理システムは、主記憶装置上にトランザクションが更新したデータに関する情報を格納するための更新情報格納領域と、コミットを宣言したトランザクションのトランザクション番号を格納するためのコミットリストと、トランザクションが前記プライマリコピーに対して更新を行った結果を前記バックアップコピーに反映させるための一括コミット処理部を有する。前記トランザクションは、データに対する排他ロックを獲得した後にプライマリコピーに対する前記データの更新と前記更新情報格納領域への登録を行ない、コミットを宣言した時点で前記トランザクション自身のトランザクション番号を前記コミットリストに登録する。また、それまでに獲得したデータに対する排他ロックを全て解除する。前記一括コミット処理部は、前記コミットリストに登録された前記トランザクション番号に対応するトランザクションがコミット可能かどうかを前記更新情報格納領域に登録された情報に基づいて判定を行なう。コミット可能と判定したトランザクション群について、一括して更新データを前記プライマリコピーから前記バックアップコピーに転送して、コミット完了を前記トランザクション群に通知する。
特開平9−244933号公報にデータベースバックアップ装置が開示されている。
この従来技術は、全データベースが常駐する主記憶手段と、データベースのバックアップとログ情報を保持する2次記憶手段とを有するメモリデータベースにおけるデータベースバックアップ装置に関する。このデータベースバックアップ装置は、レコード単位、カラム単位、該レコード単位と該カラム単位の組み合わせのいずれかの単位で、リカバリ処理でデータ保証する種別と保証しない保証種別に基づいて前記主記憶手段の連続した領域上にデータを保持するテーブルと、前記保証種別のデータの領域の前記主記憶手段上のレコードの位置情報を有するテーブル管理情報と、前記主記憶手段の保証種別のデータの領域の前記主記憶手段上のカラムの位置情報を有するデータベース管理情報と、レコード単位、カラム単位、レコード単位とカラム単位の組み合わせのいずれかの単位で、リカバリ処理で保証する種別のデータのみを、テーブル管理情報及びデータベース管理情報と共に格納する2次記憶手段と、前記2次記憶手段に、前記レコード単位、前記カラム単位、前記レコード単位と前記カラム単位の組み合わせのいずれかの単位で、前記リカバリ処理で保証する種別のデータのみを前記テーブル管理情報及びデータベース管理情報と共にバックアップするバックアップ手段とを有する。
特開2000−57030号公報 特開2003−345523号公報 特開2005−293315号公報 特開平4−264937号公報 特開平5−88954号公報 特開平9−244933号公報
本発明の目的は、トランザクション処理を行なうコンピュータシステムにおいて、メモリ上に処理対象となるデータを置く事で高速なデータ処理を実現するトランザクション処理装置を提供することである。
本発明の他の目的は、処理対象データの管理と複数サーバ間の情報交換の工夫によって、システム全体としての高可用性を実現するトランザクション処理装置を提供することである。
以下に、[発明を実施するための最良の形態]で使用される番号を括弧付きで用いて、課題を解決するための手段を説明する。これらの番号は、[特許請求の範囲]の記載と[発明を実施するための最良の形態]との対応関係を明らかにするために付加されたものである。但し、それらの番号を、[特許請求の範囲]に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明のトランザクション処理装置は、サーバ(100)のメモリの中に共有メモリとして確保された領域であるメモリドメイン(103)と、前記メモリドメイン(103)及び前記メモリドメイン(103)の内部の情報を管理するメモリドメイン管理機構(101)と、前記メモリドメイン(103)の先頭アドレスを記録するドメイン管理情報(105)と、前記ドメイン管理情報(105)の先頭アドレス及び共有メモリ識別子を記録する管理情報アドレス記録ファイル(102)と、データ処理及びサーバ間の制御を行なうTx処理機構(104)とを具備する。
前記メモリドメイン管理機構(101)は、前記Tx処理機構(104)からのメモリ確保要求によって前記メモリドメイン(103)内に、論理データの領域を確保し、前記ドメイン管理情報(105)内に、前記論理データの位置情報を、前記先頭アドレスからの相対位置によって記録し、前記ドメイン管理情報(105)を前記先頭アドレスから一定の位置に配置する。
前記メモリドメイン管理機構(101)は、前記メモリドメイン(103)の先頭アドレスを、論理サーバ名として使用できない文字を含む固定したファイル名で保存する。
本発明のトランザクション処理装置は、ネットワーク上の各サーバが正常に稼動していることを前記ネットワーク経由で監視するサーバ監視機構と、更新データからのデータ読み込み指示及びトランザクション処理の制御を行なうTx管理機構とを更に具備する。前記サーバ監視機構は、設定ファイルから、現用サーバ及び退避サーバがダウンした場合に実行すべき処理を読み取り、前記各サーバの監視を開始する。前記Tx管理機構は、前記各サーバ上のTx処理機構(104)に対して問合せを行なうことで、前記現用サーバを確認し、前記現用サーバ上のTx処理機構(104)に対してデータ処理の開始を指示する。
第一の効果は、トランザクションデータを高速に処理可能であるという点にある。その理由は、処理対象となるデータが全てメモリ上に配置され、且つメモリ上で更新されており、ディスクへの保存はトランザクション処理完了後に一括して行われるため、ディスクアクセスが処理速度の足枷になることがないからである。
第二の効果は、サーバダウン(異常停止)時に、処理途中のデータが消失する可能性が低減されているという点にある。その理由は、複数のサーバがメモリ上に処理途中のデータの複製を保持しているからである。
第三の効果は、サーバダウン後、迅速に処理の再開が可能という点にある。その理由は、他サーバのメモリ上にあるデータを基に、ダウンしたサーバ上のデータを、待機サーバのメモリ上に展開した形で復元するからである。
第四の効果は、サーバダウン後、待機サーバへの高速なデータ復旧が可能という点にある。その理由は、論理的なデータを直接メモリ上に確保した領域へ配置するのではなく、一旦メモリ上に確保した空間内に論理的なデータを配置することによって、待機サーバへのデータ転送回数が抑制され、転送後の待機サーバ上でのアドレス変換の回数をも低減できるためである。また、確保する共有メモリが広大である場合、最初のメモリアクセス時に論理アドレス−物理アドレスのマッピングに時間を要することになるが、本発明では事前に確保、及びマッピングした領域に転送するため、その時間をも抑制できる。
第五の効果は、退避サーバ側のピーク時のCPU負荷が、現用サーバ側と比較して低減されているという点にある。その理由は、データの処理に2フェーズコミット方式を採用することで、退避サーバ側で2回目のコミットまでのデータ更新内容を最適化することが可能となり、退避サーバ側で2回目のコミット時の処理量(データ更新量)が低減されているためである。
以下に本発明の第1実施形態について添付図面を参照して説明する。
まず図1に、本発明の構成要素となるサーバ内の詳細な構成を示す。
本発明に用いるサーバ100は、メモリドメイン管理機構101と、管理情報アドレス記録ファイル102と、メモリドメイン103と、Tx処理機構104と、ドメイン管理情報105と、論理データ1:106と、論理データ2:107と、論理データ3:108と、アドレスX109を備えている。
メモリドメイン管理機構101は、メモリドメイン103及びその内部の情報を管理する。管理情報アドレス記録ファイル102は、ドメイン管理情報105の先頭アドレス、及び共有メモリ識別子を記録する。メモリドメイン103は、サーバの主記憶装置であるメモリ110の中に共有メモリとして確保された領域である。Tx処理機構104は、データ処理及びサーバ間の制御を仲介するコンピュータプログラムである。ドメイン管理情報105は、メモリドメイン103の先頭アドレスを記録するアドレスX109を有する。論理データ1:106、論理データ2:107、及び論理データ3:108は、メモリドメイン103内に確保された領域であり、その中に処理対象となる情報を含む。
メモリドメイン103はオペレーティングシステムに対する共有メモリ確保要求によって領域確保されるため、同じサイズのメモリ確保要求を別なサーバはもちろん同じサーバで再び行ったとしても、そのメモリ110内における先頭アドレスは必ずしも同じにはならない。ここでメモリドメイン103はシステム内において一意となる管理上の名称(ID:識別情報)を付与される。管理情報アドレス記録ファイル102のファイル名の一部分は、実施例で後述するようにシステムの制御のために使用し、メモリドメイン103の名称を含むことがある。
論理データ1:106、論理データ2:107、論理データ3:108は、メモリドメイン管理機構101に対するメモリ確保要求によって、メモリドメイン103内に領域確保される。メモリドメイン管理機構101は、ドメイン管理情報105内に、論理データ1:106、論理データ2:107、論理データ3:108の位置情報を、アドレスX109内に記録されたメモリドメイン先頭アドレスからの相対位置によって記録する。ドメイン管理情報105は、メモリドメイン先頭アドレスから一定の位置に配置する。
以上によって、メモリドメイン103のシステム内での名称が特定できれば、管理情報アドレス記録ファイル102のファイル名が特定でき、その内部の情報からメモリドメインの先頭アドレスとドメイン管理情報105の先頭アドレスが特定できる。更に、アドレスX109内のメモリドメイン先頭アドレスを変更することによって、ドメイン管理情報105内のその他の情報を変更することなく、メモリドメイン103を異なるアドレスに配置することが可能となる。
次に、本発明の全体図となる図2を参照すると、システムは5種類のサーバで構成されている。詳細は図示していないが、各サーバは前述した図1の構成要素をその内に含んでいる。
図2に示すように、本発明のシステムは、Tx制御サーバ200と、現用サーバ202と、現用待機サーバ222と、退避待機サーバ232と、ネットワーク切替機構260を有する。Tx制御サーバ200は、Tx管理機構201と、サーバ監視機構240を備えている。現用サーバ202は、メモリドメインA:203と、Tx処理機構A:204を備えている。メモリドメインA:203は、ドメイン管理情報A:205と、論理データA1:206と、論理データA2:207を有する。また、現用サーバ202は、更新データ208と、入力データ209を利用する。退避サーバ212は、メモリドメインA’:213と、Tx処理機構A’:214を備えている。メモリドメインA’:213は、ドメイン管理情報A’:215と、論理データA1’:216と、論理データA2’:217を有する。現用待機サーバ222は、メモリドメインS:223と、Tx処理機構S:224を備えている。退避待機サーバ232は、メモリドメインS’:233と、Tx処理機構S’:234を備えている。
更新データ208はトランザクション処理の入力データを表している。更新データ208には”どの論理データをどのように変更するか”、”どの論理データにどのようなレコードを追加するか”、”どの論理データのどのレコードを削除するか”という情報が格納されている。
Tx制御サーバ200上のTx管理機構201は、更新データ208からのデータ読み込み指示等、トランザクション処理の制御を行なう。現用サーバ202上のメモリには、メモリドメインA:203として論理的なメモリ空間が確保され、その上にTx処理機構A:204によって入力データ209から処理の初期情報となるデータが読み込まれる。論理データA1:206、論理データA2:207はデータを読み込む領域及びその中のデータを表しており、一般的なデータベースにおけるテーブルに相当する。
退避サーバ212上のTx処理機構A’:214は、同サーバ上に現用サーバ202上のデータの複製が保持されるよう、Tx処理機構A:204からの指示に従ってデータ更新処理を行なう。
メモリドメインA’:213はメモリドメインA:203の複製であり、論理データA1’:216、論理データA2’:217が、それぞれ論理データA1:206、論理データA2:207の複製として、メモリドメインA’:213に作成される。
現用待機サーバ222は現用サーバ202がダウン(異常発生による停止)した場合、退避待機サーバ232は退避サーバ212がダウンした場合に、それぞれ代替として機能する。
現用待機サーバ222、退避待機サーバ232は、その上でそれぞれTx処理機構S:224、Tx処理機構S’:234が起動し、メモリドメインS:223、メモリドメインS’:233がメモリ上に確保された状態となっている。初期状態で、メモリドメインS:223、メモリドメインS’:233はその中に論理データを含まない。メモリドメインA:203、メモリドメインA’:213、メモリドメインS:223、メモリドメインS’:233は全て同じ大きさの領域であるが、確保されたメモリ上の論理アドレスは必ずしも同じではない。
各サーバはネットワーク切替機構260を介して、相互に高速なネットワークで接続されている。また、接続が図示されていないが更新データ208、入力データ209も、同様に各サーバからアクセスできるよう、高速なネットワークで接続されている。設定ファイル250の内容も全サーバで共有されている。
サーバ監視機構240は、その他の各サーバが正常に稼動していることをネットワーク切替機構260に接続されたネットワーク経由で監視する。
まず、図3A、図3Bを使用して、本発明におけるトランザクションデータ処理時の動作を詳細に説明する。
まず、設定ファイル250の内容を全サーバで共有しておく。
(1)ステップS101
ユーザは現用サーバ202でTx処理機構A:204、退避サーバ212でTx処理機構A’:214を稼動モードで起動する。モードには稼動モードと待機モードが存在する。稼動モードではメモリドメインとして確保される領域内にドメイン管理情報を生成するが、待機モードではドメイン管理情報を生成しない。また、待機モードで確保されたメモリドメインのための領域は初期状態でメモリドメインとしての名称をもたない。
(2)ステップS102
次に退避サーバ212において、その論理サーバ名を”VA’”と命名するためのコマンドを実行する。コマンドは設定ファイル250の情報から論理サーバVA’上にメモリドメインA:203と同じサイズのメモリ領域が必要であることを読み取り、同時に、退避サーバ212のメモリ上に領域を確保してメモリドメインA’:213を”A’”と命名する。メモリドメイン名は、複製している現用サーバの論理サーバ名と一対一に対応する。メモリドメインA’:213の先頭アドレスは、退避サーバ212の内蔵ディスクに、”A’”の名称と関連づけたファイル名で保存される。
(3)ステップS103
現用サーバ202において、その論理サーバ名を”VA”と命名するためのコマンドを実行する。コマンドは同時に、現用サーバ202のメモリ上に領域を確保してメモリドメインA:203を”A”と命名する。メモリドメインA:203の先頭アドレスは、現用サーバ202の内蔵ディスクに、”A”の名称と関連づけたファイル名で保存される。更に、設定ファイル250より論理サーバVA(現用サーバ202)の複製が論理サーバVA’(退避サーバ212)に作成されるべきであることがコマンドによって読み取られ、Tx処理機構A:204の中に複製作成先情報として記憶される。
(4)ステップS104
現用待機サーバ222でTx処理機構S:224、退避待機サーバ232でTx処理機構S’:234を待機モードで起動する。
(5)ステップS105
現用待機サーバ222、退避待機サーバ232では、それぞれ、メモリドメインS:223、メモリドメインS’:233として、メモリドメインA:203と同じサイズの領域が確保される。領域確保のみでドメイン管理情報は生成されない。確保したメモリドメインS:223、メモリドメインS’:233の先頭アドレスは、それぞれ現用待機サーバ222、退避待機サーバ232の内蔵ディスクに、論理サーバ名として使用できない文字を含む、ある固定したファイル名で保存する。例えば、論理サーバ名として”@”を使用できないものと規定し、”@standby.shm”というファイル名で保存する。
(6)ステップS106
更に現用サーバ202でコマンドを実行し、メモリドメインA:203に入力データ209からの情報を読み込む。読み込むにあたってメモリドメインA:203内にそのための領域を確保し、論理データA1:206、論理データA2:207として配置する。なお、入力データ209からデータを読み込むのは、データベースのテーブルが2つであった場合である。
(7)ステップS107
メモリドメインA:203内に確保した領域の位置情報は、メモリの論理アドレスを使わない形でドメイン管理情報A:205に記録される。同時にコマンドはTx処理機構A:204に対し、複製作成先に論理データA1:206、論理データA2:207の複製を作成するよう指示する。これによって、現用サーバ202から退避サーバ212に対してネットワークを通じたデータ転送が為され、論理データA1’:216、論理データA2’:217がメモリドメインA’:213に生成される。論理データA1’:216、論理データA2’:217の位置情報はドメイン管理情報A’:215に記録される。
(8)ステップS108
次にTx制御サーバ200において、Tx管理機構201とサーバ監視機構240を起動する。
(9)ステップS109
サーバ監視機構240は、設定ファイル250から、現用サーバ202、退避サーバ212がダウンした場合に実行すべき処理を読み取り、監視を開始する。
(10)ステップS110
Tx管理機構201は、全サーバ上のTx処理機構に対して問合せを行なうことで、論理サーバVAが現用サーバ202であることを知り、現用サーバ202上のTx処理機構A:204に対してデータ処理の開始を指示する。
(11)ステップS111
Tx処理機構A:204は指示を受けて、更新データ208からトランザクション処理のためのデータを読み込み、処理を開始する。
(12)ステップS112
処理を開始したTx処理機構A:204は、読み込んだデータに従い、論理データA1:206、論理データA2:207を更新する。この際、複製作成先情報に従い、現用サーバ202から退避サーバ212に更新情報(以下、更新ログと表記)をネットワーク転送する。Tx処理機構A’:214はそれを利用して、論理データA1’:216、論理データA2’:217を同様に更新する。更新結果の確定は、Tx処理機構A:204によって、いわゆる2フェーズコミットで行われる。現用サーバ202から退避サーバ212に2段階のコミット(確定)指示が伝送されるが、2段階目のコミット指示で退避サーバ212側での更新を確定させるまでの間、Tx処理機構A’:214は論理データA1’:216、論理データA2’:217のデータ更新量が最小となるよう、更新ログを最適化する。例えば、論理データA1’:216内のあるデータを”5”→”3”→”2”と更新する更新ログが送られてきた場合、最終的に”2”に更新するという情報のみを保持するなどである。
(13)ステップS113
Tx処理機構A’:214側での更新が確定したことはTx処理機構A:204側へネットワークを通じて伝達される。
(14)ステップS114
Tx処理機構A:204が更新データ208から読み込んだデータを処理し終わった場合、Tx処理機構A:204は更新データ208に、処理済の箇所を記録する。全トランザクション処理が完了した場合、Tx処理機構A:204はTx管理機構201にトランザクション処理完了を通知する。
(15)ステップS115
ユーザは必要に応じて現用サーバ202上でコマンドを実行し、論理データA1:206、論理データA2:207をトランザクション処理結果としてディスク上に保存する。
以上で処理は完了となる。
次に、図4において現用サーバ202がダウンした場合の動作について説明する。
(1)ステップS201
サーバ監視機構240は、現用サーバ202がダウンしたことを検知すると、保持していた設定ファイル250の情報から”現用待機サーバ222を論理サーバVAと命名して”現用サーバ202の代替にするための動作を開始する。
(2)ステップS202
まず、サーバ監視機構240は現用待機サーバ222において、”論理サーバVAの情報を論理サーバVA’”のデータから復元するためのコマンドをネットワークを通じて遠隔実行する。実行されたコマンドは全サーバに問合せ、論理サーバVA’が退避サーバ212であることを知る。コマンドは、現用待機サーバ222を”論理サーバVA”として命名し、更にメモリドメインS:223の先頭アドレスを保存してあったファイルから読み取り、Tx処理機構S:224を通じて、それを”新たなメモリドメインA”として命名する。コマンドはTx処理機構A’:214に対して、論理サーバVAが現用待機サーバ222に変更されたことを通知し、メモリドメインA’:213の内容を”新たなメモリドメインA”となったメモリドメインS:223に対して転送するよう指示する。
(3)ステップS203
指示を受けたTx処理機構A’:214はネットワークを通じて、メモリドメインA’:213の内容をメモリドメインS:223へ転送し、上書きする。転送が完了したら、コマンドは、ドメイン管理情報A’:215の特定の位置(図1におけるアドレスX109)に格納されていた論理アドレスを、メモリドメインS:223の先頭アドレスに書き換える。
これによって、退避サーバ212において論理データA1’:216、論理データA2’:217であったデータが、現用待機サーバ222(新たな”論理サーバVA”)上で正常にアクセス可能となる。
(4)ステップS204
サーバ監視機構240は、現用待機サーバ222(新たな”論理サーバVA”)上で実行したコマンドが完了したことを知り、Tx処理機構S:224を通じてトランザクション処理を再開する。
次に、図5において退避サーバ212がダウンした場合の動作について説明する。
(1)ステップS211
サーバ監視機構240は、退避サーバ212がダウンしたことを検知すると、保持していた設定ファイル250の情報から、”退避待機サーバ232を論理サーバVA’と命名して”退避サーバ212の代替にするための動作を開始する。
(2)ステップS212
まず、サーバ監視機構240は退避待機サーバ232において、”論理サーバVA’の情報を論理サーバVA”のデータから復元するためのコマンドを遠隔実行する。実行されたコマンドは全サーバに問合せ、論理サーバVAが現用サーバ202であることを知る。コマンドは、退避待機サーバ232を”論理サーバVA’”として命名し、更にメモリドメインS’:233の先頭アドレスを保存してあったファイルから読み取り、Tx処理機構S’:234を通じて、それを”新たなメモリドメインA’”として命名する。コマンドはTx処理機構A:204に対して、論理サーバVA’が退避待機サーバ232に変更されたことを通知し、メモリドメインA:203の内容を”新たなメモリドメインA’”となったメモリドメインS’:233に対して転送するよう指示する。
(3)ステップS213
指示を受けたTx処理機構A:204はネットワークを通じて、メモリドメインA:203の内容をメモリドメインS’:233へ転送する。転送が完了したら、コマンドはドメイン管理情報A:205の特定の位置(図1におけるアドレスX119)に格納されていた論理アドレスを、メモリドメインS’:233の先頭アドレスに書き換える。
これによって、現用サーバ202において論理データA1:206、論理データA2:207であったデータが、退避待機サーバ232(新たな”論理サーバVA’”)へ正常に複製される。
(4)ステップS214
サーバ監視機構240は、退避待機サーバ232(新たな”論理サーバVA’”)上で実行したコマンドが完了したことを知り、Tx処理機構A:204を通じてトランザクション処理を再開する。
図6を使用して、本発明の第2実施形態について詳細に説明する。
図6に示すように、本発明のシステムは、Tx制御サーバ300と、現用サーバ302と、現用待機サーバ322と、退避待機サーバ332と、ネットワーク切替機構360と、現用サーバ2:372を有する。Tx制御サーバ300は、Tx管理機構301と、サーバ監視機構340を備えている。現用サーバ302は、メモリドメインA:303と、Tx処理機構A:304を備えている。メモリドメインA:303は、ドメイン管理情報A:305と、論理データA1:306と、論理データA2:307を有する。また、現用サーバ302は、更新データ308と、入力データ309を利用する。退避サーバ312は、メモリドメインA’:313と、Tx処理機構A’:314と、メモリドメインB’:383を備えている。メモリドメインA’:313は、ドメイン管理情報A’:315と、論理データA1’:316と、論理データA2’:317を有する。メモリドメインB’:383は、ドメイン管理情報B’:385と、論理データB1’:386と、論理データB2’:387を有する。現用待機サーバ322は、メモリドメイン323と、Tx処理機構S:324を備えている。退避待機サーバ332は、メモリドメインSa:333と、Tx処理機構Sa:334と、メモリドメインSb:393を備えている。現用サーバ2:372は、メモリドメインB:373、Tx処理機構2:374を備えている。メモリドメインB:373は、ドメイン管理情報B:375、論理データB1:376、論理データB2:377を有する。
図6では、図2と比較し、構成要素に現用サーバ2:372、及びその内部のメモリドメインB:373、Tx処理機構2:374、ドメイン管理情報B:375、論理データB1:376、論理データB2:377、そして、退避サーバ312内にメモリドメインB’:383、ドメイン管理情報B’:385、論理データB1’:386、論理データB2’:387が加わっている。
また、退避サーバ312に対応して、退避待機サーバ332内にTx処理機構Sx:334、メモリドメインSa:333、メモリドメインSb:393が存在する。
経路が図示されていないが、図2と同様に、設定ファイル350の内容、更新データ308、入力データ309は、全サーバで共有されている。
図7を使用して、第2実施形態におけるトランザクションデータ処理時の動作を詳細に説明する。
(1)ステップS301
ユーザは現用サーバ1:302でTx処理機構A:304、退避サーバ312でTx処理機構X:314、現用サーバ2:372でTx処理機構2:374を稼動モードで起動する。
(2)ステップS302
ユーザは退避サーバ312において、その論理サーバ名を”Vx”と命名するためのコマンドを実行する。コマンドは設定ファイル350の情報から論理サーバVx上にメモリドメインA:303、メモリドメインB:373と同じサイズのメモリ領域が必要であることを読み取り、同時に、退避サーバ312のメモリ上に領域を確保して、メモリドメインA’:313、メモリドメインB’:383と命名する。メモリドメインA’:313、メモリドメインB’:383の先頭アドレスは、退避サーバ312の内蔵ディスクに、それぞれ”A’”、”B’”の名称と関連づけたファイル名で保存される。
(3)ステップS303
現用サーバ1:302において、その論理サーバ名を”VA”と命名するためのコマンドを実行する。コマンドは同時に、現用サーバ1:302のメモリ上に領域を確保してメモリドメインA:203と命名する。メモリドメインA:303の先頭アドレスは、現用サーバ302の内蔵ディスクに、”A”の名称と関連づけたファイル名で保存される。更に、設定ファイル350より論理サーバVA(現用サーバ1:302)の複製が論理サーバVA’(退避サーバ312)に作成されるべきであることがコマンドによって読み取られ、Tx処理機構1:304の中に複製作成先情報として記憶される。
(4)ステップS304
現用サーバ2:372において、その論理サーバ名を”VB”と命名するためのコマンドを実行する。コマンドは同時に、現用サーバ2:372のメモリ上に領域を確保してメモリドメインB:373と命名する。メモリドメインB:373の先頭アドレスは、現用サーバ372の内蔵ディスクに、”B”の名称と関連づけたファイル名で保存される。更に、設定ファイル350より論理サーバVB(現用サーバ2:372)の複製が論理サーバVx(退避サーバ312)に作成されるべきであることがコマンドによって読み取られ、Tx処理機構2:374の中に複製作成先情報として記憶される。
(5)ステップS305
現用待機サーバ322でTx処理機構S:324を待機モードで起動すると、設定ファイル350の情報より、メモリドメインA:303、メモリドメインB:373のうち、より大きい方の領域サイズで、メモリドメインS:323が確保される。領域確保のみでドメイン管理情報は生成されない。確保したメモリドメインS:323の先頭アドレスは、現用待機サーバ322の内蔵ディスクに、論理サーバ名として使用できない文字を含む、ある法則に従ったファイル名で保存する。例えば、論理サーバ名として”@”を使用できないものと規定し、”@standby.shm”というファイル名で保存する。
(6)ステップS306
退避待機サーバ332でTx処理機構Sx:334を待機モードで起動すると、設定ファイル350の情報より、メモリドメインA’:313と同じ領域サイズのメモリドメインSa:333、メモリドメインB’:383と同じ領域サイズのメモリドメインSb:393が確保される。領域確保のみでドメイン管理情報は生成されない。確保したメモリドメインSa:333、メモリドメインSb:393の先頭アドレスは、退避待機サーバ332の内蔵ディスクに、論理サーバ名として使用できない文字を含む、ある法則に従ったファイル名で保存する。例えば、論理サーバ名として”@”を使用できないものと規定し、ファイル名をそれぞれ”@standby_A.shm”、”@standby_B.shm”とする。
(7)ステップS307
以降、図2の例と同様に、現用サーバ1:302、現用サーバ2:372でコマンドを実行し、入力データ309からの情報を読み込んだ後、Tx制御サーバ300において、Tx管理機構301とサーバ監視機構340を起動して処理を開始する。
(8)ステップS308
現用サーバ1:302、現用サーバ2:372でデータ更新が実行された結果である更新ログは、退避サーバ312上のTx処理機構X:314に送られる。Tx処理機構X:314は、予め読み込んでいた設定ファイル350の情報から、メモリドメインA’:313、メモリドメインB’:383のそれぞれがメモリドメインA:303、メモリドメインB:373に対応することを認識して、送られてきた更新ログをメモリドメインA’:313、メモリドメインB’:383に振り分けて、論理データA1’:316、論理データA2’:317、論理データB1’:386、論理データB2’:387の更新処理を行なう。
図7において、現用サーバ1:302、現用サーバ2:372がダウンした場合の動作は、図2の場合とほぼ同じである。但し、メモリドメインS:323の領域サイズは必ずしも転送元のサイズと一致しないため、退避サーバ312からのメモリドメイン情報の転送後、ドメイン管理情報内に、有効な(使用されている)領域のサイズを記録する。
図8において、退避サーバ312がダウンした場合の動作について説明する。
(1)ステップS311
サーバ監視機構340は、退避サーバ312がダウンしたことを検知すると、保持していた設定ファイル350の情報から”退避待機サーバ332を論理サーバVxと命名して”退避サーバ312の代替にするための動作を開始する。
(2)ステップS312
まず、サーバ監視機構340は退避待機サーバ232において、”論理サーバVxの情報を論理サーバVA、及び論理サーバVB”のデータから復元するためのコマンドを遠隔実行する。
(3)ステップS313
実行されたコマンドは全サーバに問合せ、論理サーバVAが現用サーバ1:302、論理サーバVBが現用サーバ2:372であることを知る。コマンドは、退避待機サーバ332を”論理サーバVx”として命名する。
(4)ステップS314
更に、メモリドメインSa:333がメモリドメインA’:313、すなわちメモリドメインA:303の複製の代替となる領域であることを設定ファイル350から読み取り、予め規定していたファイル命名則に従い(前述の例の場合、”@standby_A.shm”)、先頭アドレスを保存しているファイルを特定する。そこからメモリドメインSa:333の先頭アドレスを読み取り、Tx処理機構Sx:334を通じて、それを”新たなメモリドメインA’”として命名する。同様に、メモリドメインSb:393の先頭アドレスを特定し、”新たなメモリドメインB’”として命名する。
(5)ステップS315
コマンドはTx処理機構1:304、及びTx処理機構2:374に対して、論理サーバVxが退避待機サーバ332に変更されたことを通知し、メモリドメインA:303の内容を”新たなメモリドメインA’”となったメモリドメインSa:333に、メモリドメインB:373の内容を”新たなメモリドメインB’”となったメモリドメインSb:393に対して転送するよう指示する。
(6)ステップS316
指示を受けたTx処理機構1:304、Tx処理機構2:374は、ネットワークを通じてメモリドメインA:303、メモリドメインB:373の内容をメモリドメインSa:333、メモリドメインSb:393へ転送する。転送が完了したら、コマンドはドメイン管理情報A:305の特定の位置(図1におけるアドレスX109)に格納されていた論理アドレスを、メモリドメインSa:333の先頭アドレスに、ドメイン管理情報B:375の特定の位置に格納されていた論理アドレスを、メモリドメインSb:393の先頭アドレスに書き換える。
これによって、現用サーバ1:302において論理データA1:306、論理データA2:307であったデータ、現用サーバ2:372において論理データB1:376、論理データB2:377であったデータが、退避待機サーバ332(新たな”論理サーバVx”)へ正常に複製される。
(7)ステップS317
サーバ監視機構340は、退避待機サーバ332(新たな”論理サーバVx”)上で実行したコマンドが完了したことを知り、Tx処理機構1:304、Tx処理機構2:374を通じてトランザクション処理を再開する。
以上のように、本発明は、いわゆるトランザクション処理を行なうコンピュータシステムにおいて、メモリ上に処理対象となるデータを置く事で高速なデータ処理を実現しつつ、処理対象データの管理と複数サーバ間の情報交換の工夫によって、システム全体としての高可用性をも実現している点に特徴がある。
本発明では、処理データを一旦全てメモリ上に配置し、メモリ上でデータ更新処理を行なう。また、処理が全て完了、或いはある程度まとまった単位の更新が完了した時点でディスクに保存することで、高速なトランザクション処理を実現する。更に、データ処理を行なうサーバとは別のサーバ上に常にデータの複製を持つことで、サーバダウン時のデータ消失を防止し、復旧時もディスクを介さず、直接メモリ上のデータを復旧することで、迅速な処理再開を実現する。
図1は、本発明に用いるサーバ内の構成を示すブロック図である。 図2は、本発明のシステムの全体図である。 図3Aは、本発明におけるトランザクションデータ処理時の動作を示すフローチャートである。 図3Bは、本発明におけるトランザクションデータ処理時の動作を示すフローチャートである。 図4は、現用サーバがダウンした場合の動作を示すフローチャートである。 図5は、退避サーバがダウンした場合の動作を示すフローチャートである。 図6は、本発明の他のシステムの全体図である。 図7は、他のトランザクションデータ処理時の動作を示すフローチャートである。 図8は、他の退避サーバがダウンした場合の動作を示すフローチャートである。
符号の説明
100…サーバ
101…メモリドメイン管理機構
102…管理情報アドレス記録ファイル
103…メモリドメイン
104…Tx処理機構
105…ドメイン管理情報
106…論理データ1
107…論理データ2
108…論理データ3
109…アドレスX
110…メモリ
200,300… Tx制御サーバ
201,301… Tx管理機構
202,302… 現用サーバ
203,303… メモリドメインA
204,304… Tx処理機構A
205,305… ドメイン管理情報A
206,306… 論理データA1
207,307… 論理データA2
208,308… 更新データ
209,309… 入力データ
212,312… 退避サーバ
213,313… メモリドメインA’
214,314… Tx処理機構A’
215,315… ドメイン管理情報A’
216,316… 論理データA1’
217,317… 論理データA2’
222,322… 現用待機サーバ
223,323… メモリドメインS
224,324… Tx処理機構S
232,332… 退避待機サーバ
233… メモリドメインS’
234… Tx処理機構S’
240,340… サーバ監視機構
260,360… ネットワーク切替機構
333… メモリドメインSa
334… Tx処理機構Sa
372… 現用サーバ2
373… メモリドメインB
374… Tx処理機構2
375… ドメイン管理情報B:
376… 論理データB1
377… 論理データB2
383… メモリドメインB’
385… ドメイン管理情報B’
386… 論理データB1’
387… 論理データB2’
393… メモリドメインSb:

Claims (10)

  1. サーバのメモリの中に共有メモリとして確保された領域であるメモリドメインと、
    前記メモリドメイン及び前記メモリドメインの内部の情報を管理するメモリドメイン管理機構と、
    前記メモリドメインの先頭アドレスを記録するドメイン管理情報と、
    前記ドメイン管理情報の先頭アドレス及び共有メモリ識別子を記録する管理情報アドレス記録ファイルと、
    データ処理及びサーバ間の制御を行なうTx処理機構と
    を具備し、
    前記メモリドメイン管理機構は、前記Tx処理機構からのメモリ確保要求によって前記メモリドメイン内に、論理データの領域を確保し、前記ドメイン管理情報内に、前記論理データの位置情報を、前記先頭アドレスからの相対位置によって記録し、前記ドメイン管理情報を前記先頭アドレスから一定の位置に配置する
    トランザクション処理装置。
  2. 請求項1に記載のトランザクション処理装置において、
    前記メモリドメイン管理機構は、前記メモリドメインの先頭アドレスを、論理サーバ名として使用できない文字を含む固定したファイル名で保存する
    トランザクション処理装置。
  3. 請求項1又は2に記載のトランザクション処理装置において、
    ネットワーク上の各サーバが正常に稼動していることを前記ネットワーク経由で監視するサーバ監視機構と、
    更新データからのデータ読み込み指示及びトランザクション処理の制御を行なうTx管理機構と
    を更に具備し、
    前記サーバ監視機構は、設定ファイルから、現用サーバ及び退避サーバがダウンした場合に実行すべき処理を読み取り、前記各サーバの監視を開始し、
    前記Tx管理機構は、前記各サーバ上のTx処理機構に対して問合せを行なうことで、前記現用サーバを確認し、前記現用サーバ上のTx処理機構に対してデータ処理の開始を指示する
    トランザクション処理装置。
  4. (A)サーバ上でTx処理機構が、稼動モードで起動し、前記サーバ上のメモリドメインとして確保される領域内にドメイン管理情報を生成するステップと、
    (B)前記サーバが、論理サーバ名を命名し、且つ、前記サーバのメモリ上に領域を確保して前記メモリドメインを命名するステップと、
    (C)前記サーバが、前記メモリドメインに入力データからの情報を読み込むステップと、
    (D)前記サーバが、前記ドメイン管理情報に、前記メモリドメイン内に確保した領域の位置情報を、メモリの論理アドレスを使わない形で記録するステップと、
    (E)前記Tx処理機構が、Tx管理機構からデータ処理の開始の指示を受けて、更新データからトランザクション処理のためのデータを読み込み、処理を開始するステップと、
    (F)前記Tx処理機構が、前記読み込んだデータに従い、論理データを更新し、且つ、複製作成先情報に従い、更新情報をネットワーク転送するステップと、
    (G)前記Tx処理機構が更新データから読み込んだデータを処理し終わった場合、前記Tx処理機構が、更新データに処理済の箇所を記録し、全トランザクション処理が完了した場合、前記Tx処理機構が、前記Tx管理機構にトランザクション処理完了を通知するステップと
    を具備する
    トランザクション処理方法。
  5. (a1)現用サーバでTx処理機構Aが、稼動モードで起動し、前記現用サーバ上のメモリドメインとして確保される領域内にドメイン管理情報Aを生成し、退避サーバでTx処理機構A’が、稼動モードで起動し、前記退避サーバ上のメモリドメインとして確保される領域内にドメイン管理情報A’を生成するステップと、
    (a2)前記退避サーバが、論理サーバ名を「VA’」と命名するためのコマンドを実行し、設定ファイルの情報から論理サーバVA’上にメモリドメインAと同じサイズのメモリ領域が必要であることを読み取り、前記退避サーバのメモリ上に領域を確保して前記メモリドメインA’を「A’」と命名するステップと、
    (a3)前記現用サーバが、論理サーバ名を”VA”と命名するためのコマンドを実行し、前記現用サーバのメモリ上に領域を確保して前記メモリドメインAを「A」と命名するステップと、
    (a4)現用待機サーバでTx処理機構S、退避待機サーバでTx処理機構S’が待機モードで起動するステップと、
    (a5)前記現用待機サーバがメモリドメインS、前記退避待機サーバがメモリドメインS’として、それぞれ前記メモリドメインAと同じサイズの領域を確保し、前記メモリドメインS、前記メモリドメインS’の先頭アドレスを、それぞれ前記現用待機サーバ、前記退避待機サーバの内蔵ディスクに、論理サーバ名として使用できない文字を含む固定したファイル名で保存するステップと、
    (a6)前記現用サーバが、前記メモリドメインAに入力データからの情報を読み込むステップと、
    (a7)前記現用サーバが、前記ドメイン管理情報Aに、前記メモリドメインA内に確保した領域の位置情報を、メモリの論理アドレスを使わない形で記録するステップと、
    (a8)Tx制御サーバでTx管理機構及びサーバ監視機構が起動するステップと、
    (a9)前記サーバ監視機構が、設定ファイルから、前記現用サーバ、前記退避サーバがダウンした場合に実行すべき処理を読み取り、監視を開始するステップと、
    (a10)前記Tx管理機構は、全サーバ上のTx処理機構に対して問合せを行なうことで、前記論理サーバVAが前記現用サーバであることを確認し、前記現用サーバ上の前記Tx処理機構Aに対してデータ処理の開始を指示するステップと、
    (a11)前記Tx処理機構Aが指示を受けて、更新データからトランザクション処理のためのデータを読み込み、処理を開始するステップと、
    (a12)前記Tx処理機構Aが、前記読み込んだデータに従い、論理データAを更新し、且つ、複製作成先情報に従い、前記現用サーバから前記退避サーバに更新情報をネットワーク転送するステップと、
    (a13)前記Tx処理機構A’が、論理データA’を更新し、前記Tx処理機構A’側での更新が確定した旨を前記Tx処理機構A側へネットワークを通じて伝達するステップと、
    (a14)前記Tx処理機構Aが更新データから読み込んだデータを処理し終わった場合、前記Tx処理機構Aが、更新データに処理済の箇所を記録し、全トランザクション処理が完了した場合、前記Tx処理機構Aが、前記Tx管理機構にトランザクション処理完了を通知するステップと
    を具備する
    トランザクション処理方法。
  6. 請求項5に記載のトランザクション処理方法において、
    (b1)前記サーバ監視機構は、前記現用サーバがダウンしたことを検知すると、保持していた設定ファイル250の情報から、前記現用待機サーバを前記論理サーバVAと命名して、前記現用サーバの代替にするための動作を開始するステップと、
    (b2)前記サーバ監視機構が前記現用待機サーバにおいて、前記論理サーバVAの情報を前記論理サーバVA’のデータから復元するためのコマンドをネットワークを通じて遠隔実行し、前記論理サーバVA’が前記退避サーバであることを確認し、前記現用待機サーバを前記論理サーバVAとして命名し、前記メモリドメインSの先頭アドレスを保存してあったファイルから読み取り、前記Tx処理機構Sを通じて、それを「新たな前記メモリドメインA」として命名し、前記Tx処理機構A’に対して、前記論理サーバVAが前記現用待機サーバに変更されたことを通知し、前記メモリドメインA’の内容を前記メモリドメインAとなった前記メモリドメインSに対して転送するよう指示するステップと、
    (b3)前記Tx処理機構A’はネットワークを通じて、前記メモリドメインA’の内容を前記メモリドメインSへ転送して上書きし、転送が完了したら、前記論理サーバVA’の前記ドメイン管理情報A’の特定の位置に格納されていた論理アドレスを、前記メモリドメインSの先頭アドレスに書き換えるステップと、
    (b4)前記サーバ監視機構が、前記現用待機サーバ上で実行したコマンドが完了したことを確認し、前記Tx処理機構Sを通じてトランザクション処理を再開するステップと、
    を更に具備する
    トランザクション処理方法。
  7. 請求項5に記載のトランザクション処理方法において、
    (c1)前記サーバ監視機構は、前記退避サーバがダウンしたことを検知すると、保持していた設定ファイルの情報から、前記退避待機サーバを前記論理サーバVA’と命名して前記退避サーバの代替にするための動作を開始するステップと、
    (c2)前記サーバ監視機構が、前記退避待機サーバにおいて前記論理サーバVA’の情報を前記論理サーバVAのデータから復元するためのコマンドを遠隔実行し、全サーバに問合せ、前記論理サーバVAが前記現用サーバであることを確認し、前記退避待機サーバを前記論理サーバVA’として命名し、前記メモリドメインS’の先頭アドレスを保存してあったファイルから読み取り、前記Tx処理機構S’を通じて、新たな前記メモリドメインA’として命名し、前記Tx処理機構Aに対して、前記論理サーバVA’が前記退避待機サーバに変更されたことを通知し、前記メモリドメインAの内容を新たな前記メモリドメインA’となった前記メモリドメインS’に対して転送するよう指示するステップと、
    (c3)前記Tx処理機構Aが、ネットワークを通じて前記メモリドメインAの内容を前記メモリドメインS’へ転送し、前記ドメイン管理情報Aの特定の位置に格納されていた論理アドレスを、前記メモリドメインS’の先頭アドレスに書き換えるステップと、
    (c4)前記サーバ監視機構が、前記退避待機サーバ上で実行したコマンドが完了したことを確認し、前記Tx処理機構Aを通じてトランザクション処理を再開するステップと
    を更に具備する
    トランザクション処理方法。
  8. 請求項5に記載のトランザクション処理方法において、
    (d1)前記現用サーバで前記Tx処理機構A、前記退避サーバで前記Tx処理機構X、前記現用サーバで前記Tx処理機構が稼動モードで起動するステップと、
    (d2)前記退避サーバが、前記論理サーバ名をVxと命名するためのコマンドを実行し、設定ファイルの情報から前記論理サーバVx上に前記メモリドメインA、前記メモリドメインBと同じサイズのメモリ領域が必要であることを読み取り、前記退避サーバのメモリ上に領域を確保して、前記メモリドメインA’、前記メモリドメインB’と命名し、前記メモリドメインA’、前記メモリドメインB’の先頭アドレスを、前記退避サーバの内蔵ディスクに、それぞれA’、B’の名称と関連づけたファイル名で保存するステップと、
    (d3)前記現用サーバが、前記論理サーバ名をVAと命名するためのコマンドを実行し、前記現用サーバのメモリ上に領域を確保して前記メモリドメインAと命名し、前記メモリドメインAの先頭アドレスを、前記現用サーバの内蔵ディスクに、Aの名称と関連づけたファイル名で保存し、設定ファイルより前記論理サーバVAの複製が前記論理サーバVA’に作成されるべきであることを読み取り、前記Tx処理機構の中に複製作成先情報として記憶するステップと、
    (d4)前記現用サーバが、前記論理サーバ名をVBと命名するためのコマンドを実行し、前記現用サーバのメモリ上に領域を確保して前記メモリドメインBと命名し、前記メモリドメインBの先頭アドレスを、前記現用サーバの内蔵ディスクに、Bの名称と関連づけたファイル名で保存し、設定ファイルより前記論理サーバVBの複製が前記論理サーバVxに作成されるべきであることを読み取り、前記Tx処理機構の中に複製作成先情報として記憶するステップと、
    (d5)前記現用待機サーバで前記Tx処理機構Sが待機モードで起動し、設定ファイルの情報より、前記メモリドメインA、前記メモリドメインBのうち、より大きい方の領域サイズで、前記メモリドメインSを確保し、前記メモリドメインSの先頭アドレスを、前記現用待機サーバの内蔵ディスクに、前記論理サーバ名として使用できない文字を含む所定の法則に従ったファイル名で保存するステップと、
    (d6)前記退避待機サーバで前記Tx処理機構Sxが待機モードで起動し、設定ファイルの情報より、前記メモリドメインA’と同じ領域サイズの前記メモリドメインSa、前記メモリドメインB’と同じ領域サイズの前記メモリドメインSbを確保し、前記メモリドメインSa、前記メモリドメインSbの先頭アドレスを、前記退避待機サーバの内蔵ディスクに、前記論理サーバ名として使用できない文字を含む所定の法則に従ったファイル名で保存するステップと、
    (d7)前記現用サーバ、前記現用サーバがコマンドを実行し、入力データからの情報を読み込んだ後、前記Tx制御サーバが、Tx管理機構と前記サーバ監視機構を起動して処理を開始するステップと、
    (d8)前記現用サーバ及び前記現用サーバが、データ更新を実行した結果である更新情報を、前記退避サーバ上の前記Tx処理機構Xに送るステップと、
    (d9)前記Tx処理機構Xが、予め読み込んでいた設定ファイルの情報から、前記メモリドメインA’、前記メモリドメインB’のそれぞれを前記メモリドメインA、前記メモリドメインBに対応することを認識して、前記更新情報を前記メモリドメインA’、前記メモリドメインB’に振り分けて、論理データA’、論理データB’の更新処理を行なうステップと
    を更に具備する
    トランザクション処理方法。
  9. 請求項5に記載のトランザクション処理方法において、
    (e1)前記サーバ監視機構は、前記退避サーバがダウンしたことを検知すると、保持していた設定ファイルの情報から前記退避待機サーバを前記論理サーバVxと命名して前記退避サーバの代替にするための動作を開始するステップと、
    (e2)前記サーバ監視機構が、前記退避待機サーバにおいて前記論理サーバVxの情報を前記論理サーバVA、及び前記論理サーバVBのデータから復元するためのコマンドを遠隔実行し、全サーバに問合せ、前記論理サーバVAが前記現用サーバ、前記論理サーバVBが前記現用サーバであることを確認し、前記退避待機サーバを前記論理サーバVxとして命名するステップと、
    (e3)前記メモリドメインSaが前記メモリドメインA’、すなわち前記メモリドメインAの複製の代替となる領域であることを設定ファイルから読み取り、予め規定していたファイル命名則に従い、先頭アドレスを保存しているファイルを特定し、前記メモリドメインSaの先頭アドレスを読み取り、前記Tx処理機構Sxを通じて、新たな前記メモリドメインA’として命名し、同様に、前記メモリドメインSbの先頭アドレスを特定し、新たな前記メモリドメインB’として命名するステップと、
    (e4)前記Tx処理機構、及び前記Tx処理機構に対して、前記論理サーバVxが前記退避待機サーバに変更されたことを通知し、前記メモリドメインAの内容を新たな前記メモリドメインA’となった前記メモリドメインSaに、前記メモリドメインBの内容を新たな前記メモリドメインB’となった前記メモリドメインSbに対して転送するよう指示するステップと、
    (e5)前記Tx処理機構及び前記Tx処理機構は、ネットワークを通じて前記メモリドメインA、前記メモリドメインBの内容を前記メモリドメインSa、前記メモリドメインSbへ転送し、転送が完了したら、前記ドメイン管理情報Aの特定の位置に格納されていた論理アドレスを、前記メモリドメインSaの先頭アドレスに、ドメイン管理情報Bの特定の位置に格納されていた論理アドレスを、前記メモリドメインSbの先頭アドレスに書き換えるステップと、
    (e6)前記サーバ監視機構は、前記退避待機サーバ上で実行したコマンドが完了したことを確認し、前記Tx処理機構、前記Tx処理機構を通じてトランザクション処理を再開するステップと
    を更に具備する
    トランザクション処理方法。
  10. 請求項4乃至9のいずれか一項に記載のトランザクション処理方法を、コンピュータに実行させるためのプログラム。
JP2006142340A 2006-05-23 2006-05-23 トランザクション処理装置、トランザクション処理方法 Expired - Fee Related JP4277873B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006142340A JP4277873B2 (ja) 2006-05-23 2006-05-23 トランザクション処理装置、トランザクション処理方法
US11/752,773 US7836162B2 (en) 2006-05-23 2007-05-23 Transaction processing system and transaction processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006142340A JP4277873B2 (ja) 2006-05-23 2006-05-23 トランザクション処理装置、トランザクション処理方法

Publications (2)

Publication Number Publication Date
JP2007316691A true JP2007316691A (ja) 2007-12-06
JP4277873B2 JP4277873B2 (ja) 2009-06-10

Family

ID=38750739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006142340A Expired - Fee Related JP4277873B2 (ja) 2006-05-23 2006-05-23 トランザクション処理装置、トランザクション処理方法

Country Status (2)

Country Link
US (1) US7836162B2 (ja)
JP (1) JP4277873B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100913196B1 (ko) 2007-12-11 2009-08-24 한국전자통신연구원 파일 갱신 시스템 및 방법
JP2010198404A (ja) * 2009-02-26 2010-09-09 Nec Corp 情報処理システム、ディザスタリカバリ方法及びディザスタリカバリプログラム
JPWO2015193973A1 (ja) * 2014-06-17 2017-04-20 三菱電機株式会社 情報処理装置および情報処理方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812433B2 (en) 2005-02-07 2014-08-19 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
US8918366B2 (en) 2005-02-07 2014-12-23 Mimosa Systems, Inc. Synthetic full copies of data and dynamic bulk-to-brick transformation
US8799206B2 (en) 2005-02-07 2014-08-05 Mimosa Systems, Inc. Dynamic bulk-to-brick transformation of data
US8275749B2 (en) * 2005-02-07 2012-09-25 Mimosa Systems, Inc. Enterprise server version migration through identity preservation
JP4957765B2 (ja) * 2009-08-24 2012-06-20 日本電気株式会社 ソフトウェアプログラム実行装置、ソフトウェアプログラム実行方法、及びプログラム
JP6248747B2 (ja) * 2014-03-28 2017-12-20 富士通株式会社 情報処理装置、制御方法および制御プログラム
US9830238B2 (en) 2014-08-29 2017-11-28 Netapp, Inc. Techniques for maintaining communications sessions among nodes in a storage cluster system
US10972335B2 (en) * 2018-01-24 2021-04-06 Hewlett Packard Enterprise Development Lp Designation of a standby node
US20220086691A1 (en) * 2018-12-21 2022-03-17 Telefonaktiebolaget Lm Ericsson (Publ) User Data Traffic Handling
US11194501B2 (en) * 2020-01-24 2021-12-07 Netapp, Inc. Standby copies withstand cascading fails

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04264937A (ja) 1991-02-20 1992-09-21 Nec Corp オンラインデータベース装置
JP3105029B2 (ja) 1991-07-09 2000-10-30 富士電機株式会社 二重化制御装置
JPH0588954A (ja) 1991-09-27 1993-04-09 Nippon Telegr & Teleph Corp <Ntt> データベースの更新方法
JP3575811B2 (ja) * 1992-05-07 2004-10-13 株式会社日立製作所 記憶装置
JPH07200390A (ja) * 1993-12-28 1995-08-04 Toshiba Corp データアクセス方法
JPH0926906A (ja) 1995-07-10 1997-01-28 Hitachi Ltd メモリデータベースの回復方法
JPH09244933A (ja) 1996-03-05 1997-09-19 Nippon Telegr & Teleph Corp <Ntt> データベースバックアップ方法及び装置
US6101422A (en) * 1997-12-31 2000-08-08 Dawnlawn Limited Process control for viscous materials
JPH11345139A (ja) 1998-06-01 1999-12-14 Hitachi Ltd 無停止型2重化システム
JP4267094B2 (ja) 1998-08-11 2009-05-27 株式会社野村総合研究所 2重更新を行うデータベースを有するクライアントサーバーシステム
US6466949B2 (en) * 1998-11-23 2002-10-15 Myway.Com Corporation Performing event notification in a database having a distributed web cluster
JP2000341285A (ja) 1999-05-26 2000-12-08 Nippon Telegr & Teleph Corp <Ntt> アドレス変換テーブル書き換えによる予備系立ち上げ方法
JP3608441B2 (ja) * 1999-07-15 2005-01-12 セイコーエプソン株式会社 データ転送制御装置及び電子機器
WO2002057904A1 (fr) * 2001-01-19 2002-07-25 Fujitsu Limited Controleur dote d'un fonction de telechargement
US7895097B2 (en) * 2001-11-26 2011-02-22 Hewlett-Packard Development Company, L.P. Intelligent apparatus, system and method for financial data computation, report remittance and funds transfer over an interactive communications network
JP2003316522A (ja) * 2002-04-26 2003-11-07 Hitachi Ltd 計算機システムおよび計算機システムの制御方法
JP2003345523A (ja) 2002-05-22 2003-12-05 Hitachi Ltd データ多重化システムの制御方法、データ多重化システム、副側記憶装置、および副側記憶装置用プログラム
JP3937438B2 (ja) * 2003-07-28 2007-06-27 船井電機株式会社 ディスク記録再生装置
EP1669883A1 (en) * 2003-08-29 2006-06-14 Yoshiko Kitagawa Information processing server and information processing method
JP2005293315A (ja) 2004-03-31 2005-10-20 Nec Corp データミラー型クラスタシステム及びデータミラー型クラスタシステムの同期制御方法
US7870426B2 (en) * 2004-04-14 2011-01-11 International Business Machines Corporation Apparatus, system, and method for transactional peer recovery in a data sharing clustering computer system
US8195744B2 (en) * 2004-07-09 2012-06-05 Orb Networks, Inc. File sharing system for use with a network
JP4671399B2 (ja) * 2004-12-09 2011-04-13 株式会社日立製作所 データ処理システム
US20080090654A1 (en) * 2006-10-17 2008-04-17 Aruze Gaming America, Inc. Server for gaming system and control method thereof
US7831772B2 (en) * 2006-12-12 2010-11-09 Sybase, Inc. System and methodology providing multiple heterogeneous buffer caches

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100913196B1 (ko) 2007-12-11 2009-08-24 한국전자통신연구원 파일 갱신 시스템 및 방법
US8019729B2 (en) 2007-12-11 2011-09-13 Electronics And Telecommunications Research Institute System and method for updating file
JP2010198404A (ja) * 2009-02-26 2010-09-09 Nec Corp 情報処理システム、ディザスタリカバリ方法及びディザスタリカバリプログラム
JPWO2015193973A1 (ja) * 2014-06-17 2017-04-20 三菱電機株式会社 情報処理装置および情報処理方法

Also Published As

Publication number Publication date
JP4277873B2 (ja) 2009-06-10
US7836162B2 (en) 2010-11-16
US20070276842A1 (en) 2007-11-29

Similar Documents

Publication Publication Date Title
JP4277873B2 (ja) トランザクション処理装置、トランザクション処理方法
US7107411B2 (en) Apparatus method and system for fault tolerant virtual memory management
JP3992427B2 (ja) ファイルシステム
US6732171B2 (en) Distributed network storage system with virtualization
US6912669B2 (en) Method and apparatus for maintaining cache coherency in a storage system
US8725951B2 (en) Efficient flash memory-based object store
JP2006268503A (ja) 計算機システム、ディスク装置およびデータ更新制御方法
US20100205482A1 (en) Mirroring controller, storage device, and mirroring control method
US7743381B1 (en) Checkpoint service
JP5250955B2 (ja) データ処理システムのバックアップ制御装置及びシステム
JP4563412B2 (ja) ソフトウェア複製
JP2005284980A (ja) 2重化システム及びリモートディスクミラーリングの初期化処理方法
JP4489500B2 (ja) バックアップ方法、バックアップシステム、ディスク制御装置、及びバックアッププログラム
JPH10289217A (ja) ログ・ストリーム管理システム
JP4131621B2 (ja) 分散ミラードディスクシステム
US7617175B1 (en) Method and apparatus for upgrading a database in a redundant environment by release chaining
JP2008217202A (ja) ディスクアレイ装置及びファームウェア更新方法
JP2006040065A (ja) データ記憶装置およびデータ記憶方法
JP2009157880A (ja) サーバ装置及びファイルシステム
JP4131583B2 (ja) 二重化計算機システム
WO2022003911A1 (ja) ワークフロー整合性確保装置、ワークフロー整合性確保方法、および、ワークフロー整合性確保プログラム
JPH11120017A (ja) 自動採番システム、二重系システム、クラスタシステム
JP6089985B2 (ja) オンラインバックアップ制御システム及びプログラム
JP2850756B2 (ja) 分散処理システムにおけるファイルの障害復旧方式
JPH04105159A (ja) 業務代行方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080520

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080715

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080916

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081126

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20081126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081127

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090113

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: 20090217

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: 20090302

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

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4277873

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: 20120319

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140319

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees