(57)【要約】  トランザクショナルシステムは、クラスタ化されたデータベースによって提供される分散ストレージおよび高可用性（ＨＡ）ケーパビリティを利用して、容易かつ実現可能なディザスタリカバリをサポートすることができる。トランザクショナルミドルウェアマシン環境は、トランザクションに関連付けられた１つ以上のトランザクショナルアプリケーションサーバを含む。１つ以上のトランザクショナルアプリケーションサーバは、トランザクションに関連付けられたトランザクショナルログ情報を、ローカルサイトの上記１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースに永続化するように動作する。ローカルサイトのデータベースは、永続化されたトランザクショナルログ情報を、リモートサイトのリモートデータベースに複製するように動作する。災害がローカルサイトをディスエーブルにすると、リモートデータベースは、永続化されたトランザクショナルログ情報をリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
2014528610.tif 000002
【特許請求の範囲】
【請求項１】
トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするためのシステムであって、
トランザクションに関連付けられた１つ以上のトランザクショナルアプリケーションサーバを備え、前記１つ以上のトランザクショナルアプリケーションサーバは、トランザクションに関連付けられたトランザクショナルログ情報を、ローカルサイトの前記１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースに永続化するように動作し、
データベースは、永続化されたトランザクショナルログ情報を、ローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製し、災害がローカルサイトをディスエーブルにすると、リモートデータベースは、永続化されたトランザクショナルログ情報をリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可するように動作する、システム。
【請求項２】
前記１つ以上のトランザクショナルアプリケーションサーバは、ローカルデータベースサーバへの既存のデータベース接続を再使用する、請求項１に記載のシステム。
【請求項３】
トランザクショナルログ情報を、トランザクショナルログファイルに書込むことができる、請求項１に記載のシステム。
【請求項４】
トランザクショナルログファイルは、分散ファイルシステムにおいてサポートされる、請求項３に記載のシステム。
【請求項５】
トランザクショナルログファイル内のトランザクショナルログ情報は、リカバリサイト上で同期される、請求項３に記載のシステム。
【請求項６】
前記トランザクションは、二段階トランザクションである、請求項１に記載のシステム。
【請求項７】
前記二段階トランザクションの第１段階の実行が成功した後、前記トランザクショナルログ情報は、トランザクションマネージャの永続化状態を含む、請求項６に記載のシステム。
【請求項８】
前記トランザクショナルログ情報は、トランザクショナルファイルシステムのマップに基づいており、トランザクショナルログレコードにおいて維持される、請求項１に記載のシステム。
【請求項９】
前記トランザクショナルファイルシステムのマップは、グローバルトランザクションを用いて作成され、トランザクションプロセスがブートされるとトランザクショナルログレコードが開かれる、請求項８に記載のシステム。
【請求項１０】
前記トランザクショナルログ情報は、複数のトランザクショナルドメインについての情報を含む、請求項１に記載のシステム。
【請求項１１】
トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするための方法であって、
１つ以上のトランザクショナルアプリケーションサーバによって、トランザクションに関連付けられたトランザクショナルログ情報を、ローカルサイトの前記１つ以上のトランザクショナルアプリケーションサーバに接続するデータベースに永続化することと、
データベースによって、永続化されたトランザクショナルログ情報を、ローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製することと、
災害がローカルサイトをディスエーブルにすると、永続化されたトランザクショナルログ情報をリモートデータベースサーバからリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可することとを含む、方法。
【請求項１２】
前記ローカルデータベースサーバへの既存のデータベース接続を再使用することを、前記１つ以上のトランザクショナルアプリケーションサーバに許可することをさらに含む、請求項１１に記載の方法。
【請求項１３】
前記トランザクショナルログファイルにトランザクショナルログ情報を書込むことをさらに含む、請求項１１に記載の方法。
【請求項１４】
分散ファイルシステムにおいて前記トランザクショナルログファイルをサポートすることをさらに含む、請求項１３に記載の方法。
【請求項１５】
リカバリサイト上で前記トランザクショナルログファイル内のトランザクショナルログ情報を同期させることをさらに含む、請求項１３に記載の方法。
【請求項１６】
前記トランザクションが二段階トランザクションであることを許可することをさらに含む、請求項１１に記載の方法。
【請求項１７】
前記二段階トランザクションの第１段階の実行が成功した後、トランザクショナルログ情報がトランザクションマネージャの永続化状態を含むことを許可することをさらに含む、請求項１６に記載の方法。
【請求項１８】
前記トランザクショナルログ情報が、トランザクショナルファイルシステムのマップに基づくことと、トランザクショナルログレコードにおいてトランザクショナルログ情報を維持することとを許可することをさらに含む、請求項１１に記載の方法。
【請求項１９】
グローバルトランザクションを用いて前記トランザクショナルファイルシステムのマップを作成し、トランザクションプロセスがブートされるとトランザクショナルログレコードを開くことをさらに含む、請求項１８に記載の方法。
【請求項２０】
前記トランザクショナルログ情報が、複数のトランザクショナルドメインについての情報を含むことを許可することをさらに含む、請求項１１に記載の方法。
【請求項２１】
請求項１１〜２０のうちいずれか１項に記載の方法を行なうためのプログラム。
【請求項２２】
請求項２１に記載のプログラムを格納する不揮発性メディア。
【発明の詳細な説明】
【技術分野】
【０００１】
著作権表示
この特許文書の開示の一部は、著作権の保護下にある内容を含む。特許商標庁の特許ファイルまたは記録に現れる限りにおいては、著作権所有者は、誰でも当該特許文書または特許開示を複製することについて異議はないが、そうでなければ如何なる場合でもすべての著作権を留保する。
【０００２】
発明の分野
本発明は概して、コンピュータシステムおよびミドルウェアのようなソフトウェアに関し、特定的にはトランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートすることに関する。
【背景技術】
【０００３】
背景
トランザクショナルミドルウェアシステム、すなわちトランザクション指向のミドルウェアは、組織内の様々なトランザクションを処理することができる企業アプリケーションサーバを含む。高性能ネットワークおよびマルチプロセッサコンピュータのような新たな技術の発展により、トランザクショナルミドルウェアの性能をさらに向上させる必要がある。これらは、一般に発明の実施例が対処することが意図される分野である。
【発明の概要】
【課題を解決するための手段】
【０００４】
概要
本願明細書に記載されるのは、クラスタ化されたデータベースによって提供される分散ストレージおよび高可用性（ＨＡ）ケーパビリティを利用して、容易かつ実現可能なディザスタリカバリをサポートすることができるトランザクショナルシステムである。トランザクショナルミドルウェアマシン環境は、トランザクションに関連付けられた１つ以上のトランザクショナルアプリケーションサーバを含む。トランザクショナルアプリケーションサーバは、ローカルサイトにおいて１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースへのトランザクションに関連付けられたトランザクショナルログ情報を永続化することができる。ローカルサイトのデータベースは、永続化されたトランザクショナルログ情報を、リモートサイトのデータベースに複製することができる。災害がローカルサイトをディスエーブルにすると、リモートデータベースは、永続化されたトランザクショナルログ情報をリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
【図面の簡単な説明】
【０００５】
【図１】発明の実施例に係る、ディザスタリカバリをサポートするトランザクショナルミドルウェアマシン環境の例証を示す図である。
【図２】発明の実施例に係る、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートする典型的なフローチャートを例示する図である。
【図３】発明の実施例に係る、トランザクショナルミドルウェアマシン環境における複雑なインターフェイスの例証を示す図である。
【図４】いくつかの実施例に係る、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするための装置の機能ブロック図である。
【発明を実施するための形態】
【０００６】
詳細な説明
本願明細書に記載されるのは、複数のプロセッサを有する高速マシンを利用することができる、Ｔｕｘｅｄｏ（登録商標）のようなトランザクショナルミドルウェアシステムおよび高性能ネットワーク接続をサポートするためのシステムおよび方法である。トランザクショナルシステムは、クラスタ化されたデータベースによって提供される分散ストレージおよび高可用性（ＨＡ）ケーパビリティを利用して、容易かつ実現可能なディザスタリカバリをサポートすることができる。トランザクショナルミドルウェアマシン環境は、トランザクションに関連付けられた１つ以上のトランザクショナルアプリケーションサーバを含む。上記１つ以上のトランザクショナルアプリケーションサーバは、ローカルサイトの上記１つ以上のトランザクショナルアプリケーションサーバに接続するデータベースへのトランザクションに関連付けられたトランザクショナルログ情報を永続化するように動作する。ローカルサイトのデータベースは、永続化されたトランザクショナルログ情報をリモートサイトのリモートデータベースに複製するように動作する。災害がローカルサイトをディスエーブルにすると、リモートデータベースは、永続化されたトランザクショナルログ情報をリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
【０００７】
本発明の実施例に従うと、当該システムは、高性能ハードウェア、たとえば６４ビットプロセッサ技術、高性能な大きなメモリ、ならびに冗長なインフィニバンドおよびイーサネット（登録商標）ネットワーキングと、ＷｅｂＬｏｇｉｃ  Ｓｕｉｔｅのようなアプリケーションサーバまたはミドルウェア環境との組合せを含み、これにより、迅速に備えられ得るとともにオンデマンドでスケール変更可能な大規模並列メモリグリッドを含む完全なＪａｖａ（登録商標）ＥＥアプリケーションサーバコンプレックスを提供する。本発明の実施例に従うと、当該システムは、アプリケーションサーバグリッド、ストレージエリアネットワーク、およびインフィニバンド（ＩＢ）ネットワークを提供するフルラック、ハーフラック、もしくはクォーターラック、または他の構成としてデプロイされ得る。ミドルウェアマシンソフトウェアは、たとえばＷｅｂＬｏｇｉｃ  Ｓｅｒｖｅｒ、ＪＲｏｃｋｉｔまたはＨｏｔｓｐｏｔ  ＪＶＭ、Ｏｒａｃｌｅ  Ｌｉｎｕｘ（登録商標）またはＳｏｌａｒｉｓ、およびＯｒａｃｌｅ  ＶＭといった、アプリケーションサーバと、ミドルウェアと、他の機能性とを提供し得る。本発明の実施例に従うと、当該システムは、ＩＢネットワークによって互いに通信する複数のコンピュートノードと、ＩＢスイッチゲートウェイと、ストレージノードまたはユニットとを含み得る。ラック構成として実施される場合、当該ラックの未使用部分は、空のままとされるか、またはフィラー（ｆｉｌｌｅｒ）によって占有され得る。
【０００８】
本願明細書において「Ｓｕｎ  Ｏｒａｃｌｅ  Ｅｘａｌｏｇｉｃ」または「Ｅｘａｌｏｇｉｃ」と称される本発明の実施例に従うと、当該システムは、Ｏｒａｃｌｅ  Ｍｉｄｄｌｅｗａｒｅ  ＳＷ  ｓｕｉｔｅまたはＷｅｂｌｏｇｉｃといったミドルウェアまたはアプリケーションサーバソフトウェアをホスティングするための、デプロイが容易なソリューションである。本願明細書に記載されるように、実施例に従うと、当該システムは、１つ以上のサーバと、ストレージユニットと、ストレージネットワーキングのためのＩＢファブリックと、ミドルウェアアプリケーションをホストするために要求されるすべての他のコンポーネントとを含む「グリッド・イン・ア・ボックス（ｇｒｉｄ  ｉｎ  ａ  ｂｏｘ）」である。たとえばＲｅａｌ  Ａｐｐｌｉｃａｔｉｏｎ  ＣｌｕｓｔｅｒｓおよびＥｘａｌｏｇｉｃ  ｏｐｅｎ  ｓｔｏｒａｇｅを用いて大規模並列グリッドアーキテクチャを活用することにより、すべてのタイプのミドルウェアアプリケーションのために有意な性能が与えられ得る。このシステムは、線形のＩ／Ｏスケーラビリティとともに向上した性能を与え、使用および管理が簡易であり、ミッションクリティカルな可用性および信頼性を与える。
【０００９】
発明の実施例に従うと、Ｔｕｘｅｄｏ（登録商標）は、高性能の分散ビジネスアプリケーションの構築、実行および管理を可能にし、多くの多階層アプリケーション開発ツールによってトランザクショナルミドルウェアとして使用されてきた一組のソフトウェアモジュールである。Ｔｕｘｅｄｏ（登録商標）は、分散コンピューティング環境において分散トランザクション処理を管理するために使用することができるミドルウェアプラットフォームである。無限のスケーラビリティおよび規格に基づいたインターオペラビリティを提供しつつ、企業レガシーアプリケーションをアンロックし、それらをサービス指向のアーキテクチャに拡張するための検証済みのプラットフォームである。
【００１０】
発明の実施例に従うと、Ｔｕｘｅｄｏ（登録商標）システムのようなトランザクショナルミドルウェアシステムは、Ｅｘａｌｏｇｉｃミドルウェアマシンのような多数のプロセッサを有する高速マシン、およびインフィニバンド（ＩＢ）ネットワークのような高性能ネットワーク接続を利用することができる。
【００１１】
発明の実施例に従うと、トランザクショナルシステムは、クラスタ化されたデータベースによって提供される分散ストレージおよび高可用性（ＨＡ）ケーパビリティを利用して、容易かつ実現可能なディザスタリカバリをサポートすることができる。
【００１２】
クラスタ化されたデータベースへのトランザクションレコードの永続化
発明の実施例に従うと、トランザクショナルアプリケーションサーバは、トランザクショナルログ情報のようなトランザクションレコードをクラスタ化されたデータベースに永続化して、トランザクショナルミドルウェアマシン環境におけるトランザクションのための高可用性（ＨＡ）ケーパビリティを高めることができる。クラスタ化されたデータベースは、そのようなトランザクショナル情報をローカルサイトからリモートサイトに複製して、ＨＡケーパビリティをトランザクショナルミドルウェアマシン環境に提供することができる。
【００１３】
図１は、発明の実施例に係る、ディザスタリカバリをサポートするトランザクショナルミドルウェアマシン環境の例証を示す。図１に示されるように、１つ以上のトランザクショナルアプリケーションサーバ（サーバＡ１０３およびサーバＤ１０６）は、トランザクション（トランザクションＡ１２１）に関連付けられたトランザクショナル情報を、クラスタ化されたデータベース、たとえばローカルサイトＡ１０１のデータベースサーバＡ１０７に永続化することができる。クラスタ化されたデータベース１１１は、リモートサイトＢ１０２のリモートデータベースサーバＢ１０８にトランザクショナルログ情報を複製することができる。
【００１４】
図１に示されるように、災害がローカルサイトＡを襲うと、リモートサイトＢのトランザクショナルアプリケーションサーバＢ１０４は、データベースサーバＢのトランザクションＡ１２２についての永続化されたトランザクショナルログ情報をリモートデータベースからピックアップし、トランザクションを直ちに遅延なく完了することができる。一方、トランザクションＤ１２４のためのトランザクションログが単にローカルサイトＡのフラットファイルＤ１１１のみに書込まれた場合は、システムがディザスタリカバリを行ない、トランザクションを完了するには、より長い時間がかかり得る。
【００１５】
発明の実施例に従うと、トランザクショナルシステムがアクティブにされると、トランザクショナルシステムは、ファイルに書込む代わりに、データベース接続を開き、データベースに記録を書込むことができる。トランザクショナルシステムは、同時データベース接続の数を保存するために、アプリケーションが現在使用しているデータベースにトランザクションログ情報を書込むように構成されることができる。
【００１６】
その上、抽出されたトランザクションファイルオペレーションインターフェイスは、分散ファイルシステム１１２のようなファイルシステムにトランザクションログ情報を格納するために使用することができる。分散ファイルシステムは、ローカルサイトＡのファイルＡ１０９に格納されたトランザクションログ情報を、リモートサイトＣ１１０３のファイルＣ１１０に同期させることができる。同様に、災害がローカルサイトＡを襲うと、リモートサイトＣのトランザクショナルアプリケーションサーバＣ１０５は、ファイルＣのトランザクションＡ１２３についての格納されたトランザクションログ情報をピックアップし、トランザクションを完了することができる。
【００１７】
フラットファイル内のトランザクションログ情報は、リカバリサイト上で、避けられない時間ウィンドウと同期されなければならないため、トランザクションログ情報をファイルシステムに格納することは、ディザスタリカバリソリューションにとって好都合ではない場合がある。その上、分散ファイルシステムのためのサポートが限定される可能性がある。
【００１８】
発明の実施例に従うと、クラスタ化されたデータベースにおいてトランザクションログ情報を永続化することによって、システムは、複製と、基礎をなすデータベースシステムから固有の他のＨＡアスペクトとを活用することができる。システムは、特に、クロスサイトリカバリのようなシナリオにおけるディザスタリカバリシナリオの処理も向上させることができる。また、分散ファイルシステムソリューションの必要性を軽減することができる。データベースの構成は、ＮＦＳなどといった分散ファイルシステムと比較して、一般にあまり複雑ではなく、および／または、たとえば正常なランタイム／アプリケーションワークの必要性がすでにあるため、システムは、ユーザにとっての複雑度も低下させる。
【００１９】
サーバ１０３〜１０８は、ハードウェアコンピュートノードであり得る。トランザクショナルアプリケーションサーバＡ１０３、トランザクショナルアプリケーションサーバＤ１０６、およびデータベースサーバＡ１０７は、ローカルサイトＡ１０１におけるミドルウェアマシンのラックに提供され得る。トランザクショナルアプリケーションサーバＢ１０４およびデータベースサーバＢ１０８は、リモートサイトＢ１０２においてミドルウェアマシンのラックに提供され得る。トランザクショナルアプリケーションサーバＣ１０５は、リモートサイトＣ１０３におけるミドルウェアマシンのラックに提供され得る。
【００２０】
図２は、発明の実施例に係る、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするための典型的なフローチャートを例示する。図２に示されるように、ステップ２０１において、１つ以上のトランザクショナルアプリケーションサーバは、トランザクションに関連付けられたトランザクショナルログ情報を、ローカルサイトの上記１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースに永続化することができる。次いで、ステップ２０２において、データベースは、永続化されたトランザクショナルログ情報を、ローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製することができる。最後に、ステップ２０３において、災害がローカルサイトをディスエーブルにすると、システムは、永続化されたトランザクションログ情報をリモートデータベースサーバからリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
【００２１】
Ｔｕｘｅｄｏ（登録商標）におけるトランザクションログ（ＴＬＯＧ）
Ｔｕｘｅｄｏ（登録商標）の例では、トランザクションログ（ＴＬＯＧ）はログレコードを含み、トランザクションが完了するまで、トランザクションに関する情報を保持することができる。Ｔｕｘｅｄｏ（登録商標）は、クラスタ化されたデータベース、たとえばＯｒａｃｌｅ  ＲＡＣデータベースによって提供される分散ストレージおよびＨＡケーパビリティを利用して、容易かつ実現可能なディザスタリカバリをサポートすることができる。その上、データベースは、ＴＬＯＧレコードを分散サイトに複製して、より一層高い可用性を実現することができる。
【００２２】
発明の実施例に従うと、ユーザは、異なるドメインのためのトランザクションログを作成することができる。ユーザはまず、Ｔｕｘｅｄｏ（登録商標）環境においてＴＬＯＧを作成するために、汎用デバイスリスト（ＵＤＬ）を作成することができる。ＵＤＬは、Ｔｕｘｅｄｏ（登録商標）ファイルシステムのようなトランザクショナルファイルシステムのマップである。アプリケーションがブートされると、ＵＤＬを共有メモリにロードすることができる。ＴＬＯＧ装置についてＵＤＬにおいてエントリを作成するため、システムは、グローバルトランザクションを用いて、各マシン上でＵＤＬを作成することができる。Ｂｕｌｌｅｔｉｎ  Ｂｏａｒｄ  Ｌｉａｉｓｏｎ（ＢＢＬ）は、ブートプロセス中にＴＬＯＧを初期化し、開くことができる。次いでユーザは、Ｔｕｘｅｄｏ（登録商標）サーバを構成するために、コンフィギュレーションファイル、たとえばＴｕｘｅｄｏ（登録商標）コンフィギュレーションファイル内のＭＡＣＨＩＮＥＳセクションにおいて、関係するトランザクション関連パラメータを定義することができる。
【００２３】
発明の実施例に従うと、抽出されたファイルオペレーションインターフェイスをＴｕｘｅｄｏ（登録商標）環境において提供することができる。インターフェイスがアクティブにされると、Ｔｕｘｅｄｏ（登録商標）は、ファイルを開く代わりにデータベース接続を開始することができる。したがって、Ｔｕｘｅｄｏ（登録商標）は、ファイルに書込む代わりにデータベースにＴＬＯＧを書込むことができ、データベースは、ＴＬＯＧレコードを分散サイトに複製して、より高い可用性を得ることができる。
【００２４】
発明の実施例に従うと、クラスタ化されたデータベースを用いて、トランザクションログ情報の永続性をサポートすることができる。Ｏｒａｃｌｅ  ＲＡＣデータベースのようなクラスタ化されたデータベースは、単一のデータベースにアクセスしつつ、Ｏｒａｃｌｅ  ＲＤＢＭＳソフトウェアを同時に実行することを複数のコンピュータに許可する。Ｔｕｘｅｄｏ（登録商標）は、クラスタ化されたデータベースによって提供される分散ストレージおよびＨＡケーパビリティを利用することができる。クラスタ化されたデータベース環境では、（各々がインスタンスを有する）２台以上のコンピュータが同時に単一のデータベースにアクセスすることができる。システムは、コンピュータのうちいずれか１つに接続し、調整された一組のデータにアクセスすることを、アプリケーションまたはユーザに許可する。
【００２５】
一方、クラスタ化されていないデータベースでは、単一のインスタンスは単一のデータベースにアクセスする。データベースは、ディスク上に配置されたデータファイル、コントロールファイル、およびリドゥログの集まりで構成される。インスタンスは、コンピュータシステム上で作動するオラクル関連のメモリおよびオペレーティングシステムプロセスの集まりを含む。
【００２６】
図３は、発明の実施例に係る、トランザクショナルミドルウェアマシン環境における複雑なインターフェイスの例証を示す。Ｔｕｘｅｄｏ（登録商標）は、ＴＬＯＧレコードを永続化するために２つの手法をサポートする。一方の手法は、クラスタ化されたデータベースに格納された情報を使用することであり、別の手法は、ファイルシステムに格納された情報を使用することである。図３に示されるように、トランザクションログレコードの永続化をサポートするために、Ｔｕｘｅｄｏ（登録商標）アプリケーション３０１は、まずＴＬＯＧ  ＡＰＩ  ３０２のようなハイレベルＡＰＩにアクセスすることができる。ｔｌｏｇ  ＡＰＩは、ＴＬＯＧレコードを永続化するために、Ｔｕｘｅｄｏ（登録商標）において異なるＡＰＩに一組の均一なインターフェイスを提供する。このハイレベルＡＰＩは、次に、ＯＲＡＣＬＥデータベースにおいてＴＬＯＧレコードを処理するｄｂ＿ｔｌｏｇ  ＡＰＩ３０３と、ファイル内のＴＬＯＧレコードを処理するｆｉｌｅ＿ｌｏｇ  ＡＰＩ３０４とを含む２組のローレベルＡＰＩのうちの１つを呼び出すように選択することができる。ハイレベルＴＬＯＧ  ＡＰＩは、Ｔｕｘｅｄｏ（登録商標）の構成、ｔｕｘｃｏｎｆｉｇまたはｄｍｃｏｎｆｉｇに従って２つのローレベルＡＰＩの一方を動的に呼び出すことができる。この複雑なインターフェイスを採用して、抽出されたＴｕｘｅｄｏ（登録商標）ファイルオペレーションインターフェイスを置換することができ、したがって、アクティブにされると、Ｔｕｘｅｄｏ（登録商標）はファイルを開く代わりにデータベース接続を開始し、フラットファイルの代わりにデータベースに記録を書込むことができる。
【００２７】
発明の実施例に従うと、同時データベース接続の数を保存するために、コンフィギュレーションファイル内の専用アイテムを用いてＴｕｘｅｄｏ（登録商標）環境においてオペレーションインターフェイスを構成することができ、したがって、Ｔｕｘｅｄｏ（登録商標）アプリケーションが現在使用しているのと同じデータベースにＴＬＯＧを書込むことができる。また、構成されている場合は、同じ接続においてアプリケーションが使用しているのと同じデータベースにＴＬＯＧを書込んで、同時データベース接続の数を保存することができる。たとえば、Ｏｒａｃｌｅ  ＸＡは、所与のＸＡ接続のためのデータベースサービスハンドルを戻すインターフェイスｘａｏＳｖｃＣｔｘ（）を提供する。インターフェイスｄｂ＿ｔｌｏｇは、データベースサーバへの新たな接続を開かない。代わりに、システムは、トランザクション処理モニタ（ＴＰＭ）によって先に開始された接続を使用する。
【００２８】
いくつかの実施例に従うと、図４は、トランザクショナルミドルウェアマシン環境において、上述したような本発明の原理に従って構成されるディザスタリカバリをサポートするための装置１０００の機能ブロック図を示す。装置１０００の機能ブロックは、本発明の原理を実施するために、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組合せによって実現され得る。当業者であれば、図４に記載される機能ブロックは、本発明の原理を実現するために、組み合されてもよく、またはサブブロックへと分離されてもよいということが理解される。したがって、本願明細書における記載は、本願明細書において記載される機能ブロックの任意の可能な組合せ、分離、またはさらなる定義をサポートし得る。
【００２９】
図４に示されるように、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするための装置１０００は、永続化ユニット１１００と、複製ユニット１２００と、リカバリユニット１３００とを備える。永続化ユニット１１００は、１つ以上のトランザクショナルアプリケーションサーバによって、ローカルサイトの上記１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースに、トランザクションに関連付けられたトランザクショナルログ情報を永続化する。複製ユニット１２００は、データベースによって、永続化されたトランザクショナルログ情報を、ローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製する。災害がローカルサイトをディスエーブルにすると、リカバリユニット１３００は、永続化されたトランザクショナルログ情報をリモートデータベースサーバからリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
【００３０】
いくつかの実施例において、装置１０００は、ローカルデータベースサーバへの既存のデータベース接続を再使用することを上記１つ以上のトランザクショナルアプリケーションサーバに許可するための再使用ユニット１４００をさらに備える。
【００３１】
いくつかの実施例において、装置１０００は、トランザクショナルログ情報をトランザクショナルログファイルに書込むための書込ユニット１５００をさらに備える。
【００３２】
いくつかの実施例において、装置１０００は、分散ファイルシステムにおいてトランザクショナルログファイルをサポートするためのサポートユニット１６００をさらに備える。
【００３３】
いくつかの実施例において、装置１０００は、リカバリサイト上のトランザクショナルログファイル内のトランザクショナルログ情報を同期させるための同期ユニット１７００をさらに備える。
【００３４】
いくつかの実施例において、トランザクションは二段階トランザクションである。
いくつかの実施例において、トランザクショナルログ情報は、二段階トランザクションの第１段階の実行に成功した後に、トランザクションマネージャの永続化状態を含む。
【００３５】
いくつかの実施例において、トランザクショナルログ情報は、トランザクショナルファイルシステムのマップに基づいており、トランザクショナルログレコードにおいて維持される。
【００３６】
いくつかの実施例において、装置１０００は、グローバルトランザクションを用いてトランザクショナルファイルシステムのマップを作成し、トランザクションプロセスがブートされるとトランザクショナルログレコードを開くための作成ユニット１８００をさらに備える。
【００３７】
いくつかの実施例において、トランザクショナルログ情報は、複数のトランザクショナルドメインについての情報を含む。
【００３８】
別の実施例は、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするためのシステムを備え、トランザクションに関連付けられたローカルサイトにおける１つ以上のトランザクショナルアプリケーションサーバと、上記１つ以上のトランザクショナルアプリケーションサーバと接続するデータベースとを備え、上記１つ以上のトランザクショナルアプリケーションサーバは、トランザクションに関連付けられたトランザクショナルログ情報をデータベースに永続化するように動作し、データベースは、永続化されたトランザクショナルログ情報をローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製するように動作し、リモートデータベースは、災害がローカルサイトをディスエーブルにすると、永続化されたトランザクショナルログ情報をリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可する。
【００３９】
別の実施例は、前記１つ以上のトランザクショナルアプリケーションサーバが、ローカルデータベースサーバへの既存のデータベース接続を再使用するシステムを備える。
【００４０】
別の実施例は、トランザクショナルログ情報をトランザクショナルログファイルに書込むことができるシステムを備える。
【００４１】
別の実施例は、トランザクショナルログファイルが分散ファイルシステムにおいてサポートされるシステムを備える。
【００４２】
別の実施例は、トランザクショナルログファイル内のトランザクショナルログ情報がリカバリサイト上で同期されるシステムを備える。
【００４３】
別の実施例は、トランザクションが二段階トランザクションであるシステムを備える。
別の実施例は、二段階トランザクションの第１段階の実行が成功した後、トランザクショナルログ情報がトランザクションマネージャの永続化状態を含むシステムを備える。
【００４４】
別の実施例は、トランザクショナルログ情報がトランザクショナルファイルシステムのマップに基づいており、トランザクショナルログレコードにおいて維持されるシステムを備える。
【００４５】
別の実施例は、トランザクショナルファイルシステムのマップがグローバルトランザクションを用いて作成され、トランザクションプロセスがブートされるとトランザクショナルログレコードが開かれるシステムを備える。
【００４６】
別の実施例は、トランザクショナルログ情報が複数のトランザクショナルドメインについての情報を含むシステムを備える。
【００４７】
別の実施例は、トランザクショナルミドルウェアマシン環境においてディザスタリカバリをサポートするための装置を備え、当該装置は、１つ以上のトランザクショナルアプリケーションサーバによって、トランザクションに関連付けられたトランザクショナルログ情報を、ローカルサイトの前記１つ以上のトランザクショナルアプリケーションサーバに接続するデータベースに永続化するための手段と、データベースによって、永続化されたトランザクショナルログ情報を、ローカルサイトのローカルデータベースサーバからリモートサイトのリモートデータベースサーバに複製するための手段と、災害がローカルサイトをディスエーブルにするとに、永続化されたトランザクショナルログ情報をリモートデータベースサーバからリカバリし、トランザクションを完了することを、リモートサイトの異なるトランザクショナルアプリケーションサーバに許可するための手段とを備える。
【００４８】
別の実施例は、ローカルデータベースサーバへの既存のデータベース接続を再使用することを、前記１つ以上のトランザクショナルアプリケーションサーバに許可するための手段をさらに備える装置を備える。
【００４９】
別の実施例は、トランザクショナルログファイルにトランザクショナルログ情報を書込むための手段をさらに含む装置を備える。
【００５０】
別の実施例は、分散ファイルシステムにおいてトランザクショナルログファイルをサポートするための手段をさらに含む装置を備える。
【００５１】
別の実施例は、リカバリサイト上でトランザクショナルログファイル内のトランザクショナルログ情報を同期させるための手段をさらに含む装置を備える。
【００５２】
別の実施例は、トランザクションが二段階トランザクションである装置を備える。
別の実施例は、請求項３６の装置であって、二段階トランザクションの第１段階の実行が成功した後、トランザクショナルログ情報がトランザクションマネージャの永続化状態を含む装置を備える。
【００５３】
別の実施例は、トランザクショナルログ情報が、トランザクショナルファイルシステムのマップに基づいており、トランザクショナルログレコードにおいてトランザクショナルログ情報を維持する装置を備える。
【００５４】
別の実施例は、グローバルトランザクションを用いてトランザクショナルファイルシステムのマップを作成し、トランザクションプロセスがブートされるとトランザクショナルログレコードを開くための手段をさらに備える装置を備える。
【００５５】
別の実施例は、トランザクショナルログ情報が複数のトランザクショナルドメインについての情報を含む装置を備える。
【００５６】
本発明は、１つ以上のプロセッサ、メモリ、および／または本開示の教示に従ってプログラムされたコンピュータ可読記憶媒体を含む１つ以上の従来の汎用または専用デジタルコンピュータ、コンピューティング装置、マシン、またはマイクロプロセッサを用いて簡便に実施され得る。ソフトウェア技術の当業者には明らかであるように、適切なソフトウェアコーディングは、熟練したプログラマによって本開示の教示に基づき容易に用意され得る。
【００５７】
いくつかの実施例では、本発明は、本発明の処理のいずれかを実行するようコンピュータをプログラムするのに用いられ得る命令を格納した記憶媒体またはコンピュータ可読媒体であるコンピュータプログラムプロダクトを含む。当該記憶媒体は、フロッピー（登録商標）ディスク、光ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、マイクロドライブ、および光磁気ディスクを含む任意のタイプのディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＤＲＡＭ、ＶＲＡＭ、フラッシュメモリ素子、磁気または光学カード、ナノシステム（分子メモリＩＣを含む）、または命令および／またはデータを格納するのに好適な任意のタイプの媒体もしくは装置を含み得るが、これらに限定されない。
【００５８】
本発明の上記の記載は、例示および説明目的で与えられている。網羅的であることまたは開示されたそのものの形態に本発明を限定することを意図したものではない。当業者にとっては、多くの修正例および変形例が明確であろう。上記の実施例は、本発明の原理およびその実際的な適用をもっともよく説明するために選択および記載されたものであり、これにより他の当業者が、特定の使用に好適なさまざまな修正例を考慮して、さまざまな実施例について本発明を理解するのが可能になる。本発明の範囲は、添付の特許請求の範囲およびそれらの均等物によって定義されることが意図される。
【図１】
2014528610.tif 000003
【図２】
2014528610.tif 000004
【図３】
2014528610.tif 000005
【図４】
2014528610.tif 000006
【国際調査報告】
2014528610.tif 000007