(57)【要約】【課題】  複数のデータベース内に位置する属性によりデータベース・レコードを管理する方法、システム及びコンピュータ・プログラムを提供すること。【解決手段】  複数のレジストリ内に位置する属性によりデータベース・レコードを管理するための方法、システム及びコンピュータ・プログラムが開示される。データ処理システムは、複数の分散データベースの１つ又は複数からアクセスされる１つ又は複数のレコードの属性を識別し、ここでは、１つ又は複数の属性のうちの第１の属性は複数のデータベースのうちの不明のデータベース内にあり、第２の属性は複数のデータベースのうちの特定のデータベース内にあることが知られている。データ処理システムは、第１の属性についての要求及び第２の属性についての要求を含む照会を形成し、この照会を特定のデータベースに送信する。データ処理システムは、特定のデータベースがレコードについての第１の属性を含むことを示す照会に対する肯定応答を受信し、この肯定応答を受信したことに応答して、データ処理システムは、第１の属性に関連する特定のデータベースの識別子を格納する。次に、データ処理システムは、特定のデータベースにおけるレコードの第１の属性及び第２の属性にアクセスする。【選択図】      図１
2008509467.tif 000002
【特許請求の範囲】
【請求項１】
分散データベースにアクセスするための方法であって、
複数の分散データベースの１つ又は複数からアクセスされるレコードの１つ又は複数の属性を識別するステップであって、前記１つ又は複数の属性のうちの第１の属性が前記複数のデータベースのうちの不明のデータベース内にあり、第２の属性が前記複数のデータベースのうちの特定のデータベース内にあることが知られている、ステップと、
前記第１の属性についての要求と前記第２の属性についての要求とを含む照会を形成するステップと、
前記複数の分散データベースのうちの前記特定のデータベースに前記照会を送信するステップと、
前記特定のデータベースが前記レコードについての前記第１の属性を含むことを示す、前記照会に対する肯定応答を受信するステップと、
前記肯定応答を受信したことに応答して、前記第１の属性に関連する前記特定のデータベースの識別子を格納するステップと、
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするステップと、
を含む方法。
【請求項２】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするステップが、前記選択された属性を前記特定のデータベースから受信するステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするステップが、前記選択された属性を前記特定のデータベース内で変更するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するステップが、前記識別子を第２のデータベースに送信するステップをさらに含む、請求項１に記載の方法。
【請求項５】
アクセスされるレコードの１つ又は複数の属性を識別するステップが、前記複数のデータベースのうちの不明のデータベース内にある前記１つ又は複数の属性のうちの第３の属性を識別するステップをさらに含み、
照会を形成するステップが、前記第１の属性についての要求、前記第２の属性についての要求、及び、前記第３の属性についての要求を含む、前記特定のデータベースの第１の照会を形成するステップをさらに含み、
前記方法が、前記第３の属性についての要求を含み、前記第１の属性及び前記第２の属性についての要求を除外する第２の照会を、前記複数の分散データベースのうちの第２のデータベースに送信するステップをさらに含む、
請求項１に記載の方法。
【請求項６】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するステップが、クライアント上の前記第１の属性に関連する前記特定のデータベースの前記識別子を格納するステップを含む、請求項１に記載の方法。
【請求項７】
肯定応答が受信されなかった１つ又は複数の属性をログに記録するステップをさらに含む、請求項１に記載の方法。
【請求項８】
前記第２の属性に対する肯定応答を受信することに対する障害をログに記録するステップをさらに含む、請求項１に記載の方法。
【請求項９】
分散データベースにアクセスするためのシステムであって、
複数の分散データベースの１つ又は複数からアクセスされるレコードの１つ又は複数の属性を識別するための手段であって、前記１つ又は複数の属性のうちの第１の属性が前記複数のデータベースのうちの不明のデータベース内にあり、第２の属性が前記複数のデータベースのうちの特定のデータベース内にあることが知られている、手段と、
前記第１の属性についての要求と、前記第２の属性についての要求とを含む照会を形成するための手段と、
前記複数の分散データベースのうちの前記特定のデータベースに前記照会を送信するための手段と、
前記特定のデータベースが前記レコードについての前記第１の属性を含むことを示す前記照会に対する肯定応答を受信するための手段と、
前記肯定応答を受信したことに応答して、前記第１の属性に関連する前記特定のデータベースの識別子を格納するための手段と、
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするための手段と、
を含むシステム。
【請求項１０】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするための前記手段が、前記選択された属性を前記特定のデータベースから受信するための手段をさらに含む、請求項９に記載のシステム。
【請求項１１】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするための前記手段が、前記選択された属性を前記特定のデータベース内で変更するための手段をさらに含む、請求項９に記載のシステム。
【請求項１２】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するための前記手段が、前記識別子を第２のデータベースに送信するための手段をさらに含む、請求項９に記載のシステム。
【請求項１３】
アクセスされるレコードの１つ又は複数の属性を識別するための前記手段が、前記複数のデータベースのうちの不明のデータベース内にある前記１つ又は複数の属性のうちの第３の属性を識別するための手段をさらに含み、
照会を形成するための前記手段が、前記第１の属性についての要求、前記第２の属性についての要求、及び、前記第３の属性についての要求を含む、前記特定のデータベースの第１の照会を形成するための手段をさらに含み、
前記システムが、前記第３の属性についての要求を含み、前記第１の属性及び前記第２の属性についての要求を除外する第２の照会を、前記複数の分散データベースのうちの第２のデータベースに送信するための手段をさらに含む、
請求項９に記載のシステム。
【請求項１４】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するための前記手段が、クライアント上の前記第１の属性に関連する前記特定のデータベースの前記識別子を格納するための手段を含む、請求項９に記載のシステム。
【請求項１５】
肯定応答が受信されなかった１つ又は複数の属性を記録するための手段をさらに含む、請求項９に記載のシステム。
【請求項１６】
前記第２の属性に対する肯定応答を受信することに対する障害をログに記録するための手段をさらに含む、請求項９に記載のシステム。
【請求項１７】
分散データベースにアクセスするためのコンピュータ可読媒体内のコンピュータ・プログラムであって、前記コンピュータ・プログラムが、
コンピュータ可読媒体と、
複数の分散データベースの１つ又は複数からアクセスされるレコードの１つ又は複数の属性を識別するためのコンピュータ可読媒体上の命令であって、前記１つ又は複数の属性のうちの第１の属性が前記複数のデータベースのうちの不明のデータベース内にあり、第２の属性が前記複数のデータベースのうちの特定のデータベース内にあることが知られている、コンピュータ可読媒体上の命令と、
前記第１の属性についての要求と、前記第２の属性についての要求とを含む照会を形成するためのコンピュータ可読媒体上の命令と、
前記複数の分散データベースのうちの前記特定のデータベースに前記照会を送信するためのコンピュータ可読媒体上の命令と、
前記特定のデータベースが前記レコードについての前記第１の属性を含むことを示す前記照会に対する肯定応答を受信するためのコンピュータ可読媒体上の命令と、
前記肯定応答を受信したことに応答して、前記第１の属性に関連する前記特定のデータベースの識別子を格納するためのコンピュータ可読媒体上の命令と、
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするためのコンピュータ可読媒体上の命令と、
を含むコンピュータ・プログラム。
【請求項１８】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするためのコンピュータ可読媒体上の前記命令が、前記選択された属性を前記特定のデータベースから受信するためのコンピュータ可読媒体上の命令をさらに含む、請求項１７に記載のコンピュータ・プログラム。
【請求項１９】
前記特定のデータベースにおける前記レコードの前記第１の属性及び前記第２の属性にアクセスするためのコンピュータ可読媒体上の前記命令が、前記選択された属性を前記特定のデータベース内で変更するためのコンピュータ可読媒体上の命令をさらに含む、請求項１７に記載のコンピュータ・プログラム。
【請求項２０】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するためのコンピュータ可読媒体上の前記命令が、前記識別子を第２のデータベースに送信するためのコンピュータ可読媒体上の命令をさらに含む、請求項１７に記載のコンピュータ・プログラム。
【請求項２１】
アクセスされるレコードの１つ又は複数の属性を識別するためのコンピュータ可読媒体上の前記命令が、前記複数のデータベースのうちの不明のデータベース内にある前記１つ又は複数の属性のうちの第３の属性を識別するためのコンピュータ可読媒体上の命令をさらに含み、
照会を形成するためのコンピュータ可読媒体上の前記命令が、前記第１の属性についての要求、前記第２の属性についての要求、及び、前記第３の属性についての要求を含む、前記特定のデータベースの第１の照会を形成するためのコンピュータ可読媒体上の命令をさらに含み、
前記コンピュータ・プログラムが、前記第３の属性についての要求を含み、前記第１の属性及び前記第２の属性についての要求を除外する第２の照会を、前記複数の分散データベースのうちの第２のデータベースに送信するためのコンピュータ可読媒体上の命令をさらに含む、
請求項１７に記載のコンピュータ・プログラム。
【請求項２２】
前記第１の属性に関連する前記特定のデータベースの識別子を格納するためのコンピュータ可読媒体上の前記命令が、クライアント上の前記第１の属性に関連する前記特定のデータベースの前記識別子を格納するためのコンピュータ可読媒体上の命令を含む、請求項１７に記載のコンピュータ・プログラム。
【請求項２３】
肯定応答が受信されなかった１つ又は複数の属性をログに記録するためのコンピュータ可読媒体上の命令をさらに含む、請求項１７に記載のコンピュータ・プログラム。
【請求項２４】
前記第２の属性に対する肯定応答を受信することに対する障害をログに記録するためのコンピュータ可読媒体上の命令をさらに含む、請求項１７に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、データ処理に関し、具体的には、分散データベース内のデータ・アクセス、配布及び変更の効率を改善することに関する。
【背景技術】
【０００２】
多くの分散データベースのアプリケーションで、そのデータベースの複数の部分、さらに個別のレコードの場合でさえも、その複数の部分が、ネットワーク上でデータ交換を行う別々のデータ処理システム上に分散されるようになっており、今日では、ほんの数年前には想像もつかなかった様々な技術を可能にしている。上述の種類の分散データベースに依存するアプリケーションは、単純なネットワーク・ログイン方式から、銀行取引を実行するための高度な金融サービスのデータベースまでの範囲に及ぶ。
【０００３】
従来、分散データベース・システムは、ユーザＩＤ、ユーザ・グループその他の情報のようなレコードを、特定の機能に関連する種々の異なる位置及び格納システムにおいて定義し、格納している。既存の標準ベースの情報の格納及び取得方法（例えば、分散コンピューティング環境（ＤＣＥ）、軽量ディレクトリ・アクセス・プロトコル（ＬＤＡＰ）、ネットワーク情報システム（ＮＩＳ＋）など）が、異なる目的に応えるように設計された。
【０００４】
例えば、ＤＣＥは、分散コンピュータのシステムにおけるクライアント／サーバ・モデル上でコンピューティング及びデータ交換を構成及び管理するためのソフトウェア技術を提供するものであり、これは典型的には、異なるサイズのサーバが地理的に分散して置かれるようになったコンピューティング・システムのより大きいネットワークにおいて用いられる。ＤＣＥを用いることにより、アプリケーションのユーザはリモート・サーバでアプリケーション及びデータを用いることができ、アプリケーションのプログラマは、彼らのプログラムがどこで実行されるか、或いは、データがどこに位置するかについて知る必要はない。
【０００５】
対照的に、ＮＩＳ＋は、セキュリティ機能も提供する、より小さいネットワークのための命名及び管理システムを含む。ＮＩＳ＋を用いることにより、システムにおける各ホスト、クライアント又はサーバ・コンピュータは、システム全体についての知識を有する。いずれのホストにおけるユーザも、単一のユーザ識別及びパスワードで、ネットワークにおけるあらゆるホスト上のファイル又はアプリケーションにアクセスすることができる。ＮＩＳ＋はインターネットのドメイン・ネーム・システムに類似しているが、幾分単純であり、より小さいネットワークのために設計されている。これは、リモート・プロシージャ・コール・インターフェースの動作による、ローカル・エリア・ネットワーク上でのクライアント／サーバの使用を対象としている。ＮＩＳ＋は、サーバ、クライアント・プログラムのライブラリ、及び幾つかの管理ツールからなり、ネットワーク・ファイル・システムと共に用いられることが多い。
【０００６】
ＬＤＡＰは、クライアント又はユーザが、公共のインターネット上であれ、企業のイントラネット上であれ、組織、個別のユーザ・レコード及びネットワークにおけるファイル及び装置のような他のリソースにアクセスすることを可能にするためのソフトウェア・プロトコルである。ＬＤＡＰは、ユーザが、それがどこに位置しているかを知ることなく、個別のレコードを検索することを可能にする。
【０００７】
上に列挙されたプロトコルの各々の説明から予測できるように、位置独立についての強調は、上に列挙されたいずれの格納及び検索方法も、アプリケーションが情報の位置を求めることを容易に可能にしないことを意味する。さらに、上に列挙されたプロトコルの設計は、それらを使用する目的が異なっているために、各プロトコルはそれ自体の管理ツールを設け、管理者及びアプリケーションの設計者がそれらのツールを学習することを要求する。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
これらの異なるプロトコル及びアプリケーション全体にわたる複数の同時ソースからのユーザ及びグループ・アカウント情報を管理するための既存の機構はない。複数の物理ストレージ位置全体にわたって分散されたデータベースと透過的に対話するシステムに対して増加している必要性により、位置独立の相互運用性に対する必要性が増加した。幾つかのストレージ位置全体にわたって分散されるデータベース・レコードと対話するアプリケーションが、レコードの属性の位置を知ることを可能にする方法が必要とされる。
【課題を解決するための手段】
【０００９】
以下では、複数のレジストリ内に位置する属性によりデータベース・レコードを管理するための方法、システム及びコンピュータ・プログラムが開示される。データ処理システムは、複数の分散データベースの１つ又は複数からアクセスされる１つ又は複数のレコードの属性を識別し、ここでは、１つ又は複数の属性のうちの第１の属性は複数のデータベースのうちの不明のデータベース内にあり、第２の属性は複数のデータベースのうちの特定のデータベース内にあることが知られている。データ処理システムは、第１の属性についての要求及び第２の属性についての要求を含む照会を形成し、この照会を特定のデータベースに送信する。データ処理システムは、特定のデータベースがレコードについての第１の属性を含むことを示す照会に対する肯定応答を受信し、この肯定応答を受信したことに応答して、データ処理システムは、第１の属性に関連する特定のデータベースの識別子を格納する。次に、データ処理システムは、特定のデータベースにおけるレコードの第１の属性及び第２の属性にアクセスする。
【発明を実施するための最良の形態】
【００１０】
ここで、本発明の好ましい実施形態を、一例として、以下の図面を参照して、詳細に説明する。
【００１１】
ここで図１を参照すると、本発明の実施形態を有利に使用することができる例示的なネットワーク環境が示されている。図示されるネットワーク環境は、インターネット又は別のパケット化されたデジタル・ネットワークのような、ローカル又は広域ネットワーク１００を含む。照会クライアント・データ処理システム１０２、第１のデータベース１０４、第２のデータベース１０６、第３のデータベース１０８及び構成サーバ１１０がネットワーク１００に接続される。
【００１２】
第１のデータベース１０４、第２のデータベース１０６、第３のデータベース１０８の各々は電子レコードに格納されたデータを含むが、個別のレコードの内容は、第１のデータベース１０４、第２のデータベース１０６、第３のデータベース１０８の１つより多くに拡がることができる。照会クライアント・データ処理システム１０２は、第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８に位置する電子レコードのアクセス、配布及び変更に関する機能を実行する。照会クライアント・データ処理システム１０２は、構成サーバ１１０によって格納されるデータを用いて、ネットワーク１００上で、第１のデータベース１０４、第２のデータベース１０６、第３のデータベース１０８と通信する。
【００１３】
本発明の実施形態の説明を簡単にするために、関係のあるデータ処理技術の当業者に知られる範囲内ものである、照会クライアント・データ処理システム１０２の多くの詳細は本発明の実施形態の説明から除外される。第１のデータベース１０４、第２のデータベース１０６、第３のデータベース１０８に関する照会クライアント・データ処理システム１０２の動作は、従来の又は後に開発されたハードウェア又はソフトウェアで実施することができる。
【００１４】
照会クライアント・データ処理システム１０２の機能は、、属性から作られた電子レコードへのアクセス、配布及び変更を含むが、これに限定されるものではない。照会クライアント・データ処理システム１０２に関して示される例においては、照会クライアント・データ処理システム１０２は、所与のレコード又はレコードのグループに対して、第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８を組み立てるための命令の下で動作する。第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８の幾つかにおいて、照会クライアント・データ処理システム１０２は、格納された情報にアクセスでき、この情報は、以下では割り当てと呼ばれるもので、時には内部に格納され、時には構成サーバ１１０上に格納され、幾つかの属性について、これを取得することができる位置に関するものであり、他の属性については、これを取得することができる位置に関する割り当て情報はもたないことがある。
【００１５】
第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８は、照会クライアント・データ処理システム１０２が、第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８に、照会を送信することにより取得される。説明目的のために、図１に関して示される例は、照会クライアント・データ処理システム１０２が、第１の属性１１２及び第３の属性１１６にアクセスできる第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８のうちの位置に関する格納された情報にアクセスできるという仮定で動作する。第２の属性１１４及び第４の属性１１８に関しては、図１に関して示される例は、第２の属性１１４及び第４の属性１１８についての第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８のうちの属性の位置を確認するのに役立つと思われる照会クライアント・データ処理システム１０２に使用可能な位置データはないものと仮定する。
【００１６】
以下で、図２に関して詳細に説明される、本発明の好ましい実施形態による、複数のレジストリ内に位置する属性によりデータベース・レコードを管理するためのプロセスは、幾つかのメッセージの送受信をもたらす。これらのメッセージの例として、第１の照会メッセージ１２６は、第１のデータベース１０４に向けられる第１の照会１２０を含み、第１の属性１１２、第２の属性１１４及び第４の属性１１８に対する要求を含む。第３のデータベース１０８上の第３の属性１１６の存在を示す位置データが照会クライアント・データ処理システム１０２に使用可能であるため、第３の属性１１６に対する要求は第１の照会１２０に含まれない。第１の照会１２０に対する応答は、第１の属性メッセージ１２８の形態で照会クライアント・データ処理システム１０２に到達し、これは、第１の属性１１２と、第１のデータベース１０４に第２の属性並びに第４の属性１１８がないことを知らせるデータとを含む。照会クライアント・データ処理システム１０２は、第１の属性の戻りメッセージ１３０により、第１の属性１１２を第１のデータベース１０４に戻す。
【００１７】
同様に、第２の照会メッセージ１３２は、第２のデータベース１０６に向けられる第２の照会１２２を含み、第２の属性１１４及び第４の属性１１８に対する要求を含む。第３のデータベース１０８上に第３の属性１１６の存在を示す位置データが照会クライアント・データ処理システム１０２に使用可能であるため、第３の属性１１６に対する要求は第２の照会１２２に含まれない。同様に、照会クライアント・データ処理システム１０２は、第１の属性メッセージ１２８において第１の属性１１２を受信したので、第１の属性１１２に対する要求は第２の照会１２２に含まれない。第２の照会１２２に対する応答は、第２の属性メッセージ１３４の形態で、照会クライアント・データ処理システム１０２に到達し、これは、第２の属性１１４と、第２のデータベース１０６に第４の属性１１８がないことを知らせるデータとを含む。照会クライアント・データ処理システム１０２は、第２の属性の戻りメッセージ１３６により、第２の属性１１４を第２のデータベース１０６に戻す。
【００１８】
最後の例として、第３の照会メッセージ１４２は、第３のデータベース１０８に向けられる第３の照会１２４を含み、第３の属性１１６及び第４の属性１１８に対する要求を含む。照会クライアント・データ処理システム１０２は、第１の属性メッセージ１２８において第１の属性１１２を受信し、第２の属性メッセージ１３４において第２の属性１１４を受信したので、第１の属性１１２又は第２の属性１１４に対する要求は第３の照会１２４に含まれない。第３の照会１２４に対する応答は、第３の属性メッセージ１４０の形態で、照会クライアント・データ処理システム１０２に到達し、これは、第３の属性と、第３のデータベース１０８に第４の属性１１８がないことを知らせるデータとを含む。照会クライアント・データ処理システム１０２は、第３の属性の戻りメッセージ１３８により、第３の属性１１６を第３のデータベース１０８に戻す。
【００１９】
ここで図２を参照すると、本発明の好ましい実施形態による、複数のレジストリ内に位置する属性によりデータベース・レコードを管理するためのプロセスの高度な論理フローチャートが示される。図２のプロセスは、説明を明瞭にする目的のために、単一の動作が逐次的に説明される論理フローチャートとして、簡略化された実施形態において示されるが、当業者であれば、図２に示すプロセスは、並列処理においてモジュール又はプログラム・オブジェクトとして動作し、互いに対話する対話プロセスのグループに分離できることを即座に理解するであろう。
【００２０】
モジュールとして説明でき、以下にその部品がより詳細に説明されるこれらのサブプロセスにおいて、割り当てモジュール２５４はステップ２０４ないしステップ２１２を含む。割り当てモジュール２５４は、各々の要求された属性に対して、第１のデータベース１０４のような既知のデータベース位置が、第１の属性１１２のための位置として存在するかどうかを識別することに関するステップを実行する。以下に詳細に説明されるように、図１に示される例に関して、割り当てモジュール２５４のステップは、どのデータベースが適切に目的とする属性を提供できるかということを照会クライアント・データ処理システム１０２によって分析し、この属性をリストに割り当てて、このリストが後で照会準備モジュール２５６において照会クライアント・データ処理システム１０２により使用されるようにすることを含む。
【００２１】
照会準備モジュール２５６は、ステップ２１４ないしステップ２３０及びステップ２５０を含む。照会準備モジュール２５６は、照会クライアント・データ処理システム１０２が、ネットワーク１００上のデータベースに送信するための照会を準備する。第３のモジュール、照会通信モジュール２５８は、ステップ２３２ないしステップ２４０を含み、照会をネットワーク１００上の照会をデータベースに送信する。戻りモジュール２６０は、変更された後で、照会データを適切なデータベースに戻し、ステップ２４２ないしステップ２４６を含む。
【００２２】
図２のプロセスは、ステップ２００で開始し、このステップは、照会クライアント・データ処理システム１０２が、ネットワークに接続された複数のデータ処理システム全体にわたって分散されたデータベースにおけるレコードにアクセスし、配布し、変更するプロセスを開始することを示す。ステップ２００は、典型的には、照会クライアント・データ処理システム１０２上での照会プロセスの起動を含み、起動は、ユーザ又は自動化照会からもたらされることができる。次に、プロセスはステップ２０２に進み、このステップは、照会クライアント・データ処理システム１０２が、リモート・データベース上に位置する１つ又は複数のレコードに対するレコード属性にアクセスする又はこれを変更するための要求を受信することを示す。図１における例に関して示されるように、照会クライアント・データ処理システム１０２は、１つ又は複数のレコードの４つの属性に対する照会を処理する。要求される属性は、第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８である。
【００２３】
図２のプロセスは、次に、以前に割り当てモジュール２５４として識別された、割り当てサブプロセスの一部であるステップ２０４に移動する。ステップ２０４は、照会クライアント・データ処理システム１０２が、いずれかの要求される属性（例えば、第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８）が「割り当てられていない」状態のままであるかどうかを判断することを示す。図１に関して説明される例を踏まえて、図２に関する説明の目的のために、割り当てられていない状態は、第１の属性１１２、第２の属性１１４、第３の属性１１６及び第４の属性１１８の１つに関して、照会クライアント・データ処理システム１０２が、必要とされる属性が格納される第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８における位置についての情報をもたない場合はいつでも存在する。すべての所望の属性の位置が知られている場合には、図２のプロセスは、照会形成モジュール２５６におけるステップ２１４に移動し、以下に詳細に説明される。
【００２４】
しかしながら、図１に示す例におけるように、属性が割り当てられていない状態にあって、その位置データが照会クライアント・データ処理システム１０２において使用可能ではない場合には、図２のプロセスが次にステップ２０６に進み、このステップは、照会クライアント・データ処理システム１０２が、その位置の識別のために次の属性をキューに入れることを示す。次に、プロセスはステップ２０８に移動し、このステップは、照会クライアント・データ処理システム１０２が照会を送信することができるデータベースのうちのいずれかのデータベース（例えば、第１のデータベース１０４、第２のデータベース１０６及び第３のデータベース１０８）が、当該属性を提供するように割り当てられているかどうかを判断することを示す。照会クライアント・データ処理システム１０２が照会を送信できるもののうちのいずれかのデータベースが、当該属性を提供するように割り当てられているかどうかに関する判断は、ステップ２０２において属性にアクセスする要求において受信されたデータから、照会クライアント・データ処理システム１０２上に格納されたデータから、又は、他のソースにより格納されたデータから行うことができる。
【００２５】
データベースが当該属性に指定されている場合には、プロセスは、次に、ステップ２１０に移動し、このステップは、照会クライアント・データ処理システム１０２が、指定されたデータベースの位置リストに当該属性を割り当てることを示す。図１に示す例に関して、第１のデータベース１０４上の第１の属性１１２の位置が知られているので、照会クライアント・データ処理システム１０２は、第１のデータベース１０４から照会される属性のリストに第１の属性１１２を割り当てる。同様に、第３のデータベース１０８上の第３の属性１１６の位置が知られているので、照会クライアント・データ処理システム１０２は、第３のデータベース１０８から照会される属性のリストに第３の属性１１６を割り当てる。
【００２６】
ステップ２０８において、第１の属性１１２に使用可能な位置データがない場合には、プロセスはステップ２１２に進み、このステップは、照会クライアント・データ処理システム１０２が、知られているデータベースがない属性のリストに属性を割り当てることを示す。図１に示す例においては、第１の属性１１２及び第３の属性１１６に対してデータベースの位置が割り当てられ、知られており、これは、それぞれの第１のデータベース１０４及び第３のデータベース１０８の照会リストに割り当てられる。しかしながら、第２の属性１１４及び第４の属性１１８に使用可能な位置データはない。第２の属性１１４及び第４の属性１１８は、データベースの位置データが知られていない属性の照会リストに割り当てられる。ステップ２１０の完了又はステップ２１２の完了の後、プロセスはステップ２０４に戻る。
【００２７】
ステップ２０４において、特定のデータベースに対するリスト、又は、データベースの位置が知られていないリストに割り当てられていない属性が残っていない場合には、プロセスがステップ２１４に移動するときに、プロセスは次に照会準備モジュール２５６に入る。ステップ２１４は、照会クライアント・データ処理システム１０２が、既知の未使用のデータベースの位置データのいずれかを、位置のデータベースが知られていない属性に関して照会されるデータベースのリストに追加することを示す。このデータは、典型的には構成サーバ１１０から入手可能である。
【００２８】
次に、図２のプロセスはステップ２１６に進み、このステップは、照会クライアント・データ処理システム１０２が、受信されていない属性が残っているかどうかを判断することを示す。受信されていない属性が残っていない場合には、プロセスは照会準備モジュール２５６を離れ、プロセスがステップ２４２に移動するときに、戻りモジュール２６０に入り、以下に詳細に説明される。
【００２９】
いずれかの受信されていない属性が残っている場合には、図２のプロセスはステップ２１８に進み、このステップは、照会クライアントでデータ処理システム１０２が、いずれかの受信されていない属性に対する照会を受信するのに使用可能である、可能性のあるデータベースの全てが尽くされたかどうかを判断することを示す。受信されていない属性に対する照会を受信するのに使用可能なデータベースは、照会クライアント・データ処理システム１０２上に格納される情報内に記載されるデータベース、構成サーバ１１０から受信される情報に記載されるデータベース、及び以前に照会されたデータベースに対する照会に応じて受信されるいずれかの情報に記載されるデータベースを含む。個別のデータベースは、照会が送信された後、尽くされたものとされる。
【００３０】
使用可能なデータベースが尽くされていない場合には、プロセスはステップ２２０に移動し、このステップは、照会クライアント・データ処理システム１０２が、ステップ２２０において選択された現在のデータベースに伝送するように準備された次の属性を、照会に追加することができるものとして、キューに入れることを示す。次にプロセスはステップ２２２に進み、このステップは、照会クライアント・データ処理システム１０２が、所望の属性のいずれかが、ステップ２２０において選択された現在のデータベースに対して試行されないまま残っているかどうかを判断することを示す。このステップは、受信されていない属性の各々が、ステップ２２０において選択された現在のデータベースに対して試行されたかどうかを判断することを含む。
【００３１】
ステップ２２２において、試行されていない属性が残っている場合には、好ましい実施形態のプロセスはステップ２２４に移動し、このステップは、照会クライアント・データ処理システム１０２が、ステップ２２０において選択された現在のデータベースに送信される照会に追加することができるものとして次の属性を指定することを示す。次に、プロセスはステップ２２６に進み、このステップは、照会クライアント・データ処理システム１０２が、現在形成されている照会を受信するようにステップ２２４において指定されたデータベースが、考慮中の属性を含むとして割り当てられた所望のデータベースであるかどうかを判断することを示す。照会形成モジュール２５６において現在形成されている照会を受信するようにステップ２２４において指定されたデータベースが、考慮中の属性を含むとして割り当てられた所望のデータベースであるかどうかを判断するために、照会クライアント・データ処理システム１０２は、割り当てモジュール２５４において、ステップ２２０において選択された現在のデータベースに対して準備されたリストを参照し、含まれる現在の属性が割り当てモジュール２５４において生成されたリスト上で識別されるかどうかを確認する。試行されている指定されたデータベースが、要求される属性を含むと知られている所望のデータベースである場合には、プロセスはステップ２２８に移動し、このステップは、照会クライアント・データ処理システムが、現在のデータベースに対する照会に現在の属性を追加することを示す。
【００３２】
ステップ２２６において、指定されたデータベースが所望のデータベースでない場合には、プロセスはステップ２３０に進み、このステップは、照会クライアント・データ処理システムが、いずれかのデータベースが考慮中の属性に関して指定されたかどうかを判断することを示す。照会クライアント・データ処理システム１０２は、データベースが指定されなかった属性を含む、割り当てモジュール２５４により準備されたリストにおける現在の属性を検索することにより、属性にデータベースが指定されていないことを判断する。考慮中の属性にデータベースが指定されていない場合には、プロセスはステップ２２８に移動し、このステップは、照会クライアント・データ処理システム１０２が、使用可能な位置データがない考慮中の属性を、ステップ２２０において選択された現在のデータベースに対して準備される照会に追加することを示す。
【００３３】
指定されたデータベースが使用可能だが、現在のデータベースが指定されたデータベースではない場合には、プロセスは、上述のステップ２２２に戻る。ステップ２２２に戻って、現在のデータベースに対して試行されないまま残っている属性がない場合には、プロセスは、照会を現在のデータベースに送信することを示すステップ２３２に移動する。
【００３４】
図１に関して示される例においては、３つの照会が提示される。第１の照会１２０は、第１の属性１１２、第４の属性１１８及び第２の属性１１４に対する照会である。第２の照会１２２は、第２の属性１１４及び第４の属性１１８を要求する照会である。第３の照会１２４は、第３の属性１１６及び第４の属性１１８を要求する。
【００３５】
図２に戻ると、図２のプロセスは、次に、属性を受信するクライアント・データ処理システム１０２を示すステップ２３４に入る。上述したように、第１の照会メッセージ１２６として照会１２０を送信することは、第１の属性メッセージ１２８における属性１１２の戻りという結果をもたらす。同様に、第２の照会メッセージ１３２として第２の照会１２２を送信することは、第２の属性メッセージ１３４として第２の属性１１４を受信する結果をもたらし、第３の照会メッセージ１４２として第３の照会１２４を送信することは、第３の属性メッセージ１４０として第３の属性１１６を受信する結果をもたらす。プロセスは次にステップ２３６に進み、ここでは、照会クライアント・データ処理システム１０２が、ステップ２３４において受信した属性に対する位置データを格納する。プロセスは次にステップ２３８に移動し、このステップは、照会クライアント・データ処理システムが、受信した属性上で又はこれを用いて動作を実行することを示す。受信した属性上で実行される動作は実施形態ごとに異なり、従来、実行されるいずれかの動作を含むことができる。図２のプロセスは、次に、受信されていない属性を記録することを示すステップ２４０に進み、次に、上述のステップ２１６への戻りが続く。
【００３６】
ステップ２１６に戻って、照会クライアント・データ処理システムが、受信されていない属性が残っていないと判断した場合には、プロセスは次にステップ２４２に移動し、このステップは、照会クライアント・データ処理システム１０２が、いずれかの属性の戻りが要求されるかどうかを判断することを示す。属性の戻りが要求される場合には、図２のプロセスは、次に、変更を要求する属性の変更を示すステップ２４４に進む。次にプロセスはステップ２４６に進み、このステップは、格納された位置情報を参照することにより、変更された属性を元のデータベースにおいて置換することを示す。プロセスは、次に、ステップ２４８で終了する。ステップ２４２において、照会クライアント・データ処理システム１０２が、いずれの属性も変更を要求しないと判断した場合には、図２のプロセスは、次に、ステップ２４８に移動し、そこで終了する。
【００３７】
ステップ２１８に戻って、ステップ２１８において、照会クライアント・データ処理システム１０２が、使用可能なデータベースの全てが照会され、いずれのデータベースにも見出されない属性があると判断した場合には、プロセスは、次に、照会クライアント・データ処理システムが障害を報告することを示すステップ２５０に進み、ステップ２４８で終了する。
【００３８】
以上説明したように、本発明の実施形態は、ネットワークに接続された複数のデータ処理システム全体にわたって分散されるデータベースにおけるレコードにアクセス、配布及び／又は変更するためのシステム、方法及びコンピュータ・プログラムを提供する。さらに、ローカル照会クライアント・データ処理システムからの照会をリモート・データベースに送信するための機能が提供され、この照会はデータベース上に格納されると知られている属性についての要求と、その位置が知られていない属性についての要求とからなる。属性がリモート・データベースから受信されると、本発明の実施形態は、属性の位置をリモート・データベース上に記録するため、並びに、格納された位置情報に基づいて、属性をリモート・データベースに戻す前に、その属性を変更するための機能を提供する。本発明の実施形態は、複数のデータベース全体にわたり分散した属性を処理するための順序だった系統的なシステムを提供することによって、データベースとの対話を改善する。
【００３９】
以上の説明は、完全に機能的なコンピュータシステムの環境に関連して行われたが、当業者は、本発明の機構が種々の形態におけるプログラムとして配布でき、本発明は、実際にその配布を行うために使用される信号支持媒体の特定の種類にかかわらず、等しく適用することを理解するはずである。信号支持媒体のとしては、、フロッピーディスク又はＣＤ  ＲＯＭのような書き込み可能型媒体、及びアナログ又はデジタル通信リンクのような伝送型媒体を含むが、これらに限定されるものではない。
【図面の簡単な説明】
【００４０】
【図１】複数のレジストリ内に位置する属性によりデータベース・レコードを管理するための方法、システム及びコンピュータ・プログラムの好ましい実施形態が実施される、ネットワーク環境における分散データベースを示す。
【図２】本発明の好ましい実施形態による、複数のレジストリ内に位置する属性によりデータベース・レコードを管理するためのプロセスの高レベル論理フローチャートである。
【図１】
2008509467.tif 000003
【図２】
2008509467.tif 000004
【国際調査報告】
2008509467.tif 000005
2008509467.tif 000006
2008509467.tif 000007