(57)【特許請求の範囲】
【請求項１】
データベースが接続されたデータベース・サーバと、ネットワークを介して前記データベース・サーバと通信する複数のデータベース・クライアントとを備えるシステムで、前記データベース・クライアントと通信するための方法であって、
前記データベース・サーバが、データベース管理者コンピュータから１以上のデータベース・クライアントにメッセージを送信することに関し、メッセージ内容とメッセージが送信される１以上のデータベース・クライアントとを示す情報を備えるメッセージ・リクエストを受信するステップであって、前記メッセージが送信される前記１以上のデータベース・クライアントの情報は、データベース名を備える、ステップと、
前記データベース・サーバが、前記１以上のデータベース・クライアントのそれぞれに関連するＩＰアドレスを前記メッセージ・リクエストに基づいて決定するステップであって、前記データベース名を現在当該データベースにアクセスしているＩＰアドレスのリストを参照して、前記データベース名に関連したすべてのネットワーク・アドレスを、決定するステップを含む、ステップと、
前記データベース・サーバが、前記メッセージ・リクエストが示すメッセージ内容を備えるメッセージを前記決定されたＩＰアドレスへ送信するステップと、
を含む、方法。
【請求項２】
データベースが接続されたデータベース・サーバと、ネットワークを介して前記データベース・サーバと通信する複数のデータベース・クライアントとを備えるシステムであって、前記データベースに現在アクセスしているＩＰアドレスのリクエストを含むシステムにおいて用いられるプログラムであって、
前記データベース・サーバに、
データベース管理者コンピュータから１以上のデータベース・クライアントにメッセージを送信することに関し、メッセージ内容とメッセージが送信される１以上のデータベース・クライアントとを示す情報を備えるメッセージ・リクエストを受信するステップであって、前記メッセージが送信される前記１以上のデータベース・クライアントの情報は、データベース名を備える、ステップと、
前記１以上のデータベース・クライアントのそれぞれに関連するＩＰアドレスを前記メッセージ・リクエストに基づいて決定するステップであって、前記データベース名を現在当該データベースにアクセスしているＩＰアドレスのリストを参照して、前記データベース名に関連したすべてのネットワーク・アドレスを、決定するステップを含む、ステップと、
前記データベース・サーバが、前記メッセージ・リクエストが示すメッセージ内容を備えるメッセージを前記決定されたＩＰアドレスへ送信するステップと、
を実行させるプログラム。
【請求項３】
データベースが接続されたデータベース・サーバと、ネットワークを介して前記データベース・サーバと通信する複数のデータベース・クライアントとを備えるシステムであってあって、前記データベースに現在アクセスしているＩＰアドレスのリクエストを含むシステムにおいて、
前記データベース・サーバは、
データベース管理者コンピュータから１以上のデータベース・クライアントにメッセージを送信することに関し、メッセージ内容とメッセージが送信される１以上のデータベース・クライアントとを示す情報を備えるメッセージ・リクエストを受信する手段であって、前記メッセージが送信される前記１以上のデータベース・クライアントの情報は、データベース名を備える、手段と、
前記１以上のデータベース・クライアントのそれぞれに関連するＩＰアドレスを前記メッセージ・リクエストに基づいて決定する手段であって、前記データベース名を現在当該データベースにアクセスしているＩＰアドレスのリストを参照して、前記データベース名に関連したすべてのネットワーク・アドレスを、決定する手段を含む、手段と、
前記メッセージ・リクエストが示すメッセージ内容を備えるメッセージを前記決定されたＩＰアドレスへ送信する手段と、
を備えるデータベース・メッセージング・システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、データ処理システムの技術分野に関し、特に、データベース・サーバなどからデータベース・クライアント・ユーザと通信をするためのシステム、方法、およびプログラムに関する。
【背景技術】
【０００２】
周知技術であるパーソナル・コンピュータ（ＰＣ）、サーバ、ワークステーション、およびメインフレームのようなコンピュータ・システムは、今日の近代社会の数多くの部門に対して計算資源を提供するために幅広く利用されてきている。コンピュータ・システムの重要な機能は、情報をアクセスし、修正し、共有することである。かかる機能を実現するために、情報は、数多くのコンピュータ・システム間で共有されてもよいように、データベース内に記憶されることが多い。データベースは、典型的には、他のコンピュータ・システムによるデータベース内の情報のアクセス、操作、または記憶を容易にするために、データベース・マネージャを有する。データベース・マネージャは、典型的には、データベース・サーバ上で実行され、データベースを使用するコンピュータ・システムは、クライアント‐サーバ関係にあるデータベース・クライアントとしての役割を果たすことがある。データベース・マネージャの例には、インターナショナル・ビジネス・マシーンズ・コーポレーション（ＩＢＭ（登録商標））のＤＢ２（登録商標）データベース管理システム、マイクロソフト・コーポレーションのＭｉｃｒｏｓｏｆｔ（登録商標）ＳＱＬサーバ・システム、オラクル・コーポレーションのＯｒａｃｌｅ（登録商標）データベース管理システム、またはサイベース・インクのデータベース管理システムがある。データベース・サーバおよびそのクライアントは、様々なオペレーティング・システム・プラットフォーム上で実行されることがあり、データベース・クライアント（およびそのアプリケーション）は、サーバからデータを取得するために、データベース・サーバと通信を行う。
【０００３】
データベース管理者（ＤＢＡ）は、回復性、リソース管理、整合性、セキュリティ、利用可能性、性能、開発、テストのサポートといったデータベース環境を管理する。データベース・サーバのサポートは、通常、データベース・サーバが、データベース管理者が通知をリクエストしたイベント（テーブル・ロックなど）をデータベース管理者に対して通知する機能を提供するとともに、復帰コード（エラー、警告、または情報コード）を接続されたアプリケーションへ送信する。しばしば、データベース管理者は、データベースを壊すかまたは保守のために再利用される必要がある場合やデータベースに性能上の問題がある場合などに、特定のイベントをデータベース・クライアント・ユーザに通知することを希望する。データベース管理者は、障害およびその回復に要する推定時間をデータベース・クライアント・ユーザに通知することによって、データベース・クライアント・ユーザが自分たちにはわからない理由でデータベースが利用不可能になった場合に感じるであろう不満足を緩和させることができるだろう。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この課題に対する１つの解決策は、インスタント・メッセージング・システムを使用して、データベース管理者からデータベース・クライアント・ユーザへメッセージを送信することである。しかし、この解決策は、データベース管理者がインスタント・メッセージを送信するためには、データベースに接続されたデータベース・クライアント・ユーザのインスタント・メッセージング・システムにおける身元を知らなければならないという重大な課題がある。典型的な大規模データベースにおいては、データベース管理者は、どのデータベース・クライアント・ユーザがどの時間において接続しているかを知ることはなく、したがって、インスタント・メッセージを効果的に送信することができない。さらに、データベース管理者およびデータベース・クライアント・ユーザは、刻々と変化することが互いに異なる交代などのため多く、また物理的に離れていることが多いため、どのデータベース・クライアント・ユーザがデータベースを現在使用しているかを知ることは非常に困難である。また、そのような解決策は、メッセージ送信がインスタント・メッセージング・サーバの利用可能性に依存しており、かつ送信者および受信者はともにログオンしていなければならないので、インスタント・メッセージングの実用性をさらに制限するものとなっている。したがって、データベース・クライアント・ユーザとの通信のための効果的な機構に対する必要性が理解される。
【課題を解決するための手段】
【０００５】
上述の課題に対処するために、データベース・クライアント・ユーザとの通信のためのシステム、方法、およびプログラムが提供される。本発明の実施形態は、データベース・クライアントのユーザと通信するための方法を含む。方法は、１以上のデータベース・クライアントへメッセージを送信することに関するメッセージ・リクエストを受信するステップを含み、当該メッセージ・リクエストは、メッセージ内容と、メッセージが送信される１以上のデータベース・クライアントを示す情報とを含む。また、方法は、１以上の各データベース・クライアントに関連したインターネット・プロトコル（ＩＰ）アドレスをメッセージ・リクエストに基づいて決定するステップと、決定された各ＩＰアドレスへメッセージを送信するステップとを含み、メッセージは、メッセージ内容を含む。また、方法は、ＩＰアドレスのうちの１つに関連したデータベース・クライアントにおいて、送信されたメッセージを受信するステップと、メッセージのための表示ウィンドウを生成するステップと、表示ウィンドウ内にメッセージを表示するステップとを含むことが好ましい。開示された手法を使用する管理者は、したがって、匿名の２地点間メッセージをデータベース・クライアントへ送信し、データベース・クライアント・ユーザについての身元、インスタント・メッセージング・アドレスまたは他の情報を知る必要なくデータベース・クライアント・ユーザに対して表示を実施することができる。
【０００６】
他の実施形態は、データ処理システムにおいて実行する場合に、システムに対してデータベース・クライアントのユーザと通信するための一連の動作を行わせるのに有効な命令を含むプログラムおよびかかるプログラムを格納した機械アクセス可能な媒体を提供する。一連の動作は、一般的には、１以上のデータベース・クライアントへメッセージを送信することに関するメッセージ・リクエストを受信するステップを含み、メッセージ・リクエストは、メッセージ内容と、メッセージが送信される１以上のデータベース・クライアントを示す情報とを含む。また、実施形態は、メッセージ・リクエストに基づいて１以上の各データベース・クライアントに関連したインターネット・プロトコル（ＩＰ）アドレスを決定し、決定された各ＩＰアドレスへメッセージを送信するための一連の動作を含んでもよく、メッセージは、メッセージ内容を含む。また、実施形態は、ＩＰアドレスのうちの１つに関連したデータベース・クライアントにおいて、送信されたメッセージを受信し、メッセージのための表示ウィンドウを生成し、表示ウィンドウ内にメッセージを表示するための一連の動作を含んでもよい。
【０００７】
さらなる実施形態は、データベース・メッセージング・システムを提供する。データベース・メッセージング・システムは、一般的に、データベース・メッセージング・モジュールを有するデータベース・サーバを含む。データベース・メッセージング・モジュールは、メッセージ・リクエストを受信するためのデータベース管理者（ＤＢＡ）インターフェース・モジュールを含み、メッセージ・リクエストは、メッセージ内容と、メッセージが送信される１以上のデータベース・クライアントを示す情報とを含む。また、データベース・メッセージング・モジュールは、メッセージが送信される１以上の各データベース・クライアントに関連したＩＰアドレスを決定するためのアドレス・モジュールと、決定された各ＩＰアドレスへメッセージを送信するためのデータベース・メッセージ送信器とを含み、メッセージはメッセージ内容を含む。さらなる実施形態は、データベース・サーバとネットワークを介して通信する１以上のデータベース・クライアントを含んでもよく、データベース・アプリケーションに含まれる各データベース・クライアントと、データベース・サーバからメッセージを受信してそれをデータベースのクライアント・モニタ上に表示するためのクライアント・リスナーとを含む。
【発明を実施するための最良の形態】
【０００８】
本発明の利点は、以下の詳細な説明を読み、かつ添付の図面を参照すると明らかになるだろう。添付の図面において、同様の参照は、同様の要素を示すことがある。
【０００９】
以下は、添付の図面に示す本発明の実施形態例の詳細な説明である。実施形態例は、明確に本発明を伝えるように詳細に示されている。しかし、提供される詳細な説明は、本発明の実施形態の変形を制限するものではない。それどころか、逆に、添付の請求項によって規定されるような本発明の精神および範囲内にあるすべての変更、均等物および代替物を含むことが意図されている。以下の説明は、実施形態が当業者に対して明らかになるように設計されている。
【００１０】
データベース・クライアント・ユーザと通信するためのシステム、方法、およびプログラムが開示される。本発明の実施形態は、データベース・サーバと１以上のデータベース・クライアントを有するデータベース・メッセージング・システムを含むことができる。データベース・サーバは、データベース・メッセージング・モジュールを含むことができ、データベース・メッセージング・モジュールは、メッセージ・リクエストを受信するためのデータベース管理者インターフェース・モジュールを含むことができる。メッセージ・リクエストは、メッセージ内容と、メッセージが送信される１以上のデータベース・クライアントを示す情報とが含まれる。データベース・メッセージング・モジュールは、メッセージが送信される１以上のデータベース・クライアントのそれぞれに関連したＩＰアドレスを決定するためのアドレス・モジュールと、決定された各ＩＰアドレスへメッセージを送信するためのデータベース・メッセージ送信器とを含む。メッセージには、メッセージ内容を含めることができる。データベース・クライアントは、メッセージをデータベース・サーバから受信して、それをデータベース・クライアントのモニタに表示するためのクライアント・リスナーを含むことが好ましい。
【００１１】
本発明の実施形態のシステムおよび方法は、データベース・ユーザと通信する効果的かつ効率的な手法を提供する。データベース管理者がメッセージの送信を希望するデータベース・クライアントについてのＩＰアドレスを決定することによって、データベース管理者は、データベース・クライアント・ユーザの身元を知らなくとも、データベース・クライアントのユーザへメッセージを送信することができる。したがって、データベース管理者は、データベース・クライアント・ユーザに対して、今後生じるデータベースの中断を警告したり、情報によって影響を受けるデータベース・クライアント・ユーザだけに対して他の情報を提供することができる。インスタント・メッセージング・システムを使用するのとは異なり、本発明の実施形態の手法を使用するデータベース管理者は、データベース・クライアント・ユーザについて、名前、電子メール・アドレス、インスタント・メッセージング・アドレスその他の情報を知る必要はない。データベース管理者は、その代わりに、本発明の実施形態のシステムにおいて、データベース・クライアント・ユーザのコンピュータ（データベース・クライアント）のネットワーク・アドレスに依存して、通信を提供することができる。また、本発明の実施形態のシステムにおいては、インスタント・メッセージング・サーバ、電子メール・サーバその他の外部コンピュータ・システムに依存せずにそのタスクを実行することができ、そうすることによって解決策がさらに堅牢なものとなる。
【００１２】
特定の実施形態をハードウェア、ソフトウェアの特定の構成を参照して以下に説明するが、本発明の実施形態は、他の実質的に等価のハードウェア・システムおよび／またはソフトウェア・システムとともに実施形態できることを当業者は理解するだろう。本発明の一側面であるプログラムは、磁気的および光学的に読み取り可能で着脱可能なコンピュータ・ディスクを含むコンピュータ読み取り可能な媒体上に記憶し、配信することができ、また、インターネットまたは無線ネットワークを含む他のネットワーク上を電子的に配信することもできる。本発明に特有のデータ構造およびデータの送信（無線送信を含む）も、本発明の範囲内に含まれる。
【００１３】
図１は、本発明の実施形態に係るデータベース・サーバおよび１以上のデータベース・クライアントを伴うデータベース・メッセージング・システムのための環境を示す。図示した本発明の実施形態において、データベース・メッセージング・システム１００は、データベース・サーバ１０６とネットワーク１０４を介して通信する複数のデータベース・クライアント１０２と、データベース・サーバ１０６と通信するデータベース１１０とを含む。オプションのデータベース管理者（ＤＢＡ）コンピュータ・システム１０８も、データベース・サーバ１０６とネットワーク１０４を介して通信することができる。各データベース・クライアント１０２は、データベース・サーバ１０６を介してデータベース１１０にアクセスするためのデータベース・アプリケーション１１２と、データベース・サーバ１０６からメッセージを受信するためのクライアント・リスナー１１４とを含めることが好ましい。データベース・サーバ１０６は、データベース１１０との通信および動作を管理してもよい。また、後で詳述するように、データベース管理者からデータベース・クライアント１０２のユーザへの通信を容易にすることができる。
【００１４】
データベース・メッセージング・システム１００において、データベース・クライアント１０２、データベース・サーバ１０６、データベース管理者コンピュータ・システム１０８、およびデータベース１１０は、同一の建物のコンピュータ室のような同一の場所に位置することができるし、リモートに配置されてもよい。本明細書においては、「リモート」という用語は、データベース・メッセージング・システム１００の構成要素間の距離を指して使用されるが、この用語は、システム間の大きな物理的距離を示す意味というより、何らかの分離を示す意味で使用されていることに留意されたい。例えば、データベース・サーバ１０６とデータベース管理者コンピュータ・システム１０８とが同一のコンピュータ・システムの一部である場合のように、データベース・メッセージング・システム１００の任意の構成要素は、物理的に隣接しているか、または、同一のネットワーク配列内の同一のコンピュータ・システムの一部として配置することができる。
【００１５】
各データベース・クライアント１０２は、１以上のパーソナル・コンピュータ、ワークステーション、サーバ、メインフレーム・コンピュータ、ノートブックまたはラップトップ・コンピュータ、デスクトップ・コンピュータ、ＰＤＡ、セットトップ・ボックス、移動電話、無線装置などを含むことができる。本発明の実施形態において、データベース・クライアント１０２は、図２に関連して説明するようなコンピュータ・システムとすることができる。データベース・クライアント１０２は、ネットワーク１０４と有線または無線通信を行ってもよい。データベース・クライアント・ユーザは、データベース・クライアント１０２と、そのデータベース・アプリケーション１１２とを使用して、データベース１１０上の内容のアクセス、閲覧、および使用をデータベース・サーバ１０６を使用して行ってもよい。アプリケーション１１２は、データベース１１０をアクセスする実行可能なアプリケーションの任意の種類を含むことができ、データベース１１０からのファイルを使用するアプリケーション、ワード・プロセッサ、スプレッドシート、ビジネス・アプリケーション（例えば、業界固有のソフトウェア）、ブラウザ、または任意の種類のアプリケーションなどを含めることができる。クライアント・リスナー１１４は、データベース管理者からデータベース・サーバ１０６を通じてメッセージを受信し、表示ウィンドウ（新規のウィンドウまたはポップアップ・ウィンドウなど）を生成して、メッセージをデータベース・クライアント・ユーザに対して表示することができる。以下でさらに詳述するように、クライアント・リスナー１１４は、所定のポートを監視して、データベース・クライアント１０２のマシン上のサーバとしての役割を果たすことができる。オプションとして、クライアント・リスナー１１４は、データベース・アプリケーション１１２またはデータベース・クライアント１０２上にインストールされた任意のデータベース管理ソフトウェアに組み込むことができる。
【００１６】
ネットワーク１０４は、インターネット、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、イーサネット・ネットワーク、無線ネットワーク、固有ネットワーク、またはブロードバンド・ケーブル・ネットワークなどの（複数の）データ通信チャンネルの任意の種類または組み合わせであってもよい。本発明の実施形態例において、ＬＡＮ上で実施された企業のイントラネットが、企業のデータベース・メッセージング・システム１００の構成要素間の通信のためのネットワーク１０４として機能することができる。しかし、本発明の実施形態は、任意の種類のデータ通信チャンネルまたはデータ通信チャンネルの組み合わせを使用して実施することができることを、当業者は理解するだろう。
【００１７】
データベース・サーバ１０６は、データベース１１０内の情報のアクセス、操作、記憶をデータベース・クライアント１０２のデータベース・アプリケーション１１２によって容易にすることによって、データベース・クライアント１０２とデータベース１１０との間のインターフェースを提供する。データベース・サーバ１０６は、サーバ、パーソナル・コンピュータ、ワークステーション、メインフレーム・コンピュータ、ノートブックまたはラップトップ・コンピュータなどを含む、１以上の任意の種類のコンピュータ・システムであってもよい。ある実施形態においては、データベース・サーバ１０６は、図２に関連して説明するようなコンピュータ・システムであってもよい。データベース・サーバ１０６の一例は、ＩＢＭ（登録商標）ｅＳｅｒｖｅｒ（登録商標）サーバまたは類似のサーバである。この例において、データベース・サーバ１０６は、効果的で堅牢なデータベース・プラットフォームを提供するＩＢＭ（登録商標）のＤＢ２（登録商標）データベース管理システム・アプリケーションのようなソフトウェアを含むことが好ましい。
【００１８】
データベース・サーバ１０６は、データベース・マネージャ１２０、データベース・モニタ１２２、データベース・メッセージ送信器１２４、およびデータベース管理者インターフェース・モジュール１２６のようなモジュールを含んでもよい。データベース・マネージャ１２０は、ＩＢＭ（登録商標）のＤＢ２（登録商標）データベース管理システム、マイクロソフト（登録商標）のＳＱＬサーバ・システム、オラクル（登録商標）のデータベース管理システム、サイベース社（登録商標）のデータベース管理システムのようなデータベース管理システムとすることができる。データベース・マネージャ１２０は、データベース・クライアント１０２のデータベース・アプリケーション１１２によるデータベース１１０内の情報のアクセス、操作、または記憶を容易にすることができる。データベース・モニタ１２２は、データベース１１０の状態を監視してもよく、また、データベース管理者と通信するためにデータベース・サーバがサポートするようにすることができる。データベース・モニタ１２２は、記録が挿入、更新、または削除される場合、データベース１１０のデッドロック、またはファイル・システム・サイズの所定の閾値を超えたことなど、任意の種類のデータベース１１０の状態を監視することができる。データベース・モニタ１２２は、これらの状態を記録するか、および／または生じた場合にデータベース管理者に通知するか、を実施することができる。
【００１９】
データベース・メッセージ送信器１２４およびデータベース管理者インターフェース・モジュール１２６（両方とも、図３に関連して説明するようなデータベース・メッセージング・モジュールの一部とすることができる）は、データベース管理者とデータベース・クライアント１０２のユーザとの間の通信を提供することができる。データベース管理者インターフェース・モジュール１２６は、データベース管理者または他の人から１以上のデータベース・クライアント・ユーザへデータベース・クライアント接続を介して送信すべきメッセージ・リクエストを受信することができる。ある実施形態において、データベース管理者インターフェース・モジュール１２６は、データベース管理者が情報を入力するようなグラフィカル・ユーザ・インターフェース（ＧＵＩ）を提供する。メッセージ・リクエストは、メッセージ内容（メッセージ・テキスト、添付ファイル、または他の情報）と、データベース・クライアント・ユーザまたはメッセージが送信されるべきユーザを示す情報との両方を含んでもよい。データベース管理者または他の権限のある者が、データベース管理者コンピュータ・システム１０８を使用していてもよく、直接データベース・サーバ１０６にアクセスしていてもよく、または他のコンピュータ・システムを使用していてもよい。メッセージ・リクエストを受信後、データベース・メッセージ送信器１２４は、メッセージを各データベース・クライアント１０２についてのネットワーク・アドレス（すなわち、ＩＰアドレス）へ送信する。データベース・メッセージ送信器１２４は、受信データベース・クライアント１０２のクライアント・リスナー１１４に対するクライアントとしての役割を効果的に果たすことができる。データベース・サーバ１０６は、一般的に、データベース・クライアント・ユーザと通信するために、すべての接続されたデータベース・クライアント１０２についてのＩＰまたは他のネットワーク・アドレスに対するアクセス権を有する。データベース・クライアント１０２のＩＰアドレスを使用することによって、データベース管理者は、好都合にも、データベース・クライアント・ユーザについての身元、インスタント・メッセージング・アドレス、電子メール・アドレスまたは他の情報を知る必要なく、メッセージをデータベース・クライアント・ユーザへデータベース・クライアント接続を介して送信することができる。
【００２０】
データベース１１０は、データベース・マネージャ１２０などのデータベース管理システムによってアクセスおよび管理される関連情報の集合体であってもよい。データベース１１０は、階層的データベースまたはリレーショナル・データベースなどの任意の種類のデータベースであってもよい。最新のデータベースは、管理システムが、ＳＱＬなどの、プログラマが所望の結果を指定することができる非手続型言語のメッセージング・プロトコルに対するデータ・アクセスを制限するリレーショナル・データベースである。データベース１１０の例は、ＩＢＭ（登録商標）のＤＢ２（登録商標）データベース管理システム、Ｍｉｃｒｏｓｏｆｔ（登録商標）のＳＱＬサーバ・システム、Ｏｒａｃｌｅ（登録商標）のデータベース管理システム、またはサイベース（登録商標）のデータベース管理システムなどの管理システムに適合することができる。データベース１１０のデータは、ハード・ドライブなどの１以上の記憶媒体上、記憶域ネットワーク（ＳＡＮ）上、テープのバックアップ、ネットワーク結合記憶装置（ＮＡＳ）、または任意の他の手法または組み合わせで記憶されてもよい。データベース１１０を記憶するためのハードウェア的な解決策の一例として、ＩＢＭ（登録商標）のＴｏｔａｌＳｔｏｒａｇｅ（登録商標）のディスク記憶システムを採用することができる。
【００２１】
本発明の実施形態のシステムを使用して、データベース管理者は、メッセージをデータベース・クライアント・ユーザへ効率的かつ効果的に送信することができる。データベース管理者は、１以上のデータベース・クライアント１０２と、何らかのメッセージとを選択してもよく、データベース・サーバ１０６は、データベース・クライアント１０２に関連したＩＰアドレスへメッセージを送信することができる。これら各ＩＰアドレスについてのデータベース・クライアント１０２は、その後、メッセージを受信して、ポップアップ・ウィンドウを介するなどしてデータベース・クライアント・ユーザに対して表示することができる。データベース管理者は、例えば、データベース・クライアント・ユーザが停電の理由と、どのくらい停電が続く予定かを知らせるために、データベース１１０を再利用する前にデータベース名を指定することによって、現在データベース１１０にアクセスしているすべてのデータベース・クライアント・ユーザに対して通知することができる。複数のデータベース・クライアント１０２と、データベース名付きのデータベース・クライアント・ユーザを選択することによって、データベース管理者は、メッセージをデータベース・クライアント・ユーザすべてに対してメッセージを効果的に同報通信できてもよい。以前のシステムでは、データベース・クライアント・ユーザは、なぜデータベース１１０がダウンしたか、またはどのくらいの時間ダウンするだろうかを知ることはないことがあり、不満足を経験する結果となった。同様に、特定のＩＰアドレスにおける特定のデータベース・クライアント１０２がデータベース・サーバ１０６のリソースをロックしていて、システム性能が遅くなったことに気づいた場合に、データベース管理者は、データベース・クライアント・ユーザのアプリケーションを終了させる前または補正行為の勧めとともに、データベース・クライアント・ユーザに対して通知することもできる。これらおよび他の例について、データベース管理者は、データベース・クライアント・ユーザの身元を知る必要がなく、データベース・サーバ１０６によって保持されたクライアントＩＰアドレスに依存することができる。
【００２２】
データベース・クライアント１０２のクライアント・リスナー１１４およびデータベース・サーバ１０６のデータベース・メッセージ送信器１２４などのデータベース・メッセージング・システム１００の構成要素は、データベースとともにインストールされてもよいし、または、更新または別個のモジュールの一部など、後にインストールされてもよい。
【００２３】
図２は、データベース・クライアント１０２、データベース・サーバ１０６、またはデータベース管理者コンピュータ・システム１０８などのデータベース・メッセージング・システム１００の構成要素として使用するのに適したコンピュータ・システム２００の本発明の実施形態のブロック図を示す。本明細書における機能以外であってこれらの機能を超えるような機能を有するコンピュータを含む、コンピュータ・システム２００の他の可能性も実現可能であり、他の実施形態においては、ワークステーション、サーバ、メインフレーム・コンピュータ、ノートブックまたはラップトップ・コンピュータ、デスクトップ・コンピュータ、ＰＤＡ、移動電話、無線装置、セットトップ・ボックスなどの処理装置の任意の組み合わせであってもよい。コンピュータ・システム２００の少なくともある構成要素が、多層平面またはマザーボード（それ自体はシャーシに装着されていてもよい）に装着されて、コンピュータ・システム２００の構成要素を電気的に相互接続するための手段を提供することができる。
【００２４】
図示の実施形態において、コンピュータ・システム２００は、プロセッサ２０２と、ストレージ２０４と、メモリ２０６と、ユーザ・インターフェース・アダプタ２０８と、ディスプレイ・アダプタ２１０とを含み、これらはバス２１２に接続されている。バス２１２は、プロセッサ２０２と、コンピュータ・システム２００の他の構成要素との間の通信および構成要素間の通信を容易にする。プロセッサ２０２は、ＩＢＭ（登録商標）ＰｏｗｅｒＰＣ（商標）プロセッサ、Ｉｎｔｅｌ  Ｐｅｎｔｉｕｍ（登録商標）プロセッサ、アドバンスト・マイクロ・デバイス社のプロセッサ、または他の適切なプロセッサなどの、命令を実行するための１以上のシステム中央処理装置（ＣＰＵ）またはプロセッサを含んでもよい。プロセッサ２０２は、ストレージ２０４を使用してもよく、ストレージ２０４は、１以上のハード・ドライブ、テープ・ドライブ、ディスケット・ドライブ、ＣＤ‐ＲＯＭドライブ、ＤＶＤ‐ＲＯＭドライブなどの不揮発性ストレージであってもよい。また、プロセッサ２０２は、メモリ・コントローラ・ハブ（ＭＣＨ）を介するなど、バス２１２を介してメモリ２０６に接続されてもよい。システム・メモリ２０６は、ランダム・アクセス・メモリ（ＲＡＭ）またはダブル・データ・レート（ＤＤＲ）同期ダイナミック・ランダム・アクセス・メモリ（ＳＤＲＡＭ）などの揮発性メモリを含んでもよい。
【００２５】
ユーザ・インターフェース・アダプタ２０８は、プロセッサ２０２を、マウス２２０またはキーボード２２２などのユーザ・インターフェース装置に接続することができる。また、ユーザ・インターフェース・アダプタ２０８は、タッチ・パッド、タッチ・センシティブ
・スクリーン、電子ペン、マイクロフォンなどの他の種類のユーザ入力装置に接続することができる。データベース管理者は、例えば、メッセージ・テキストを入力しメッセージ・リクエストを送信するために、データベース管理者コンピュータ・システム１０８のユーザ・インターフェース・装置を使用することができる。また、バス２１２は、プロセッサ２０２を、ＬＣＤディスプレイまたはＣＲＴモニタなどのディスプレイ２１４にディスプレイ・アダプタ２１０を介して接続することができる。ある実施形態において、メッセージをデータベース・サーバ１０６から受信するデータベース・クライアント１０２は、データベース・クライアント・ユーザによる閲覧のために、当該メッセージをディスプレイ２１４のウィンドウ内に表示することができる。
【００２６】
図３は、本発明の実施形態に係るデータベース・メッセージング・モジュールを伴うデータベース・サーバのソフトウェア構成要素の概念図を示す。図示の実施形態のデータベース・サーバ１０６は、データベース・マネージャ１２０と、データベース・モニタ１２２と、データベース・メッセージ送信器１２４と、データベース管理者インターフェース・モジュール１２６と、通信モジュール３０２と、ユーザ・インターフェース・モジュール３０４と、データベース・メッセージング・モジュール３１０とを含む。データベース・メッセージング・モジュール３１０は、データベース・メッセージ送信器１２４およびデータベース管理者インターフェース・モジュール１２６に加えて、アドレス・モジュール３１２を含んでもよい。データベース・マネージャ１２０、データベース・モニタ１２２、データベース・メッセージ送信器１２４、およびデータベース管理者インターフェース・モジュール１２６は、図１に関連して説明したので、簡潔にするために説明を繰り返さない。
【００２７】
通信モジュール３０２は、データベース・クライアント１０２またはデータベース管理者コンピュータ・システム１０８との通信などの、ネットワーク１０４を介したデータベース・サーバ１０６へ、またはそこからの通信を容易にすることができる。ユーザ・インターフェース・モジュール３０４は、マウスまたはキーボードなどのユーザ入力装置からのユーザ入力を受信することができ、また、ディスプレイまたはスピーカを介するなどのユーザへの出力を発生させることができる。
【００２８】
データベース・メッセージング・モジュール３１０およびその構成要素は、１以上のデータベース・クライアント１０２へ送信するべきデータベース管理者からのメッセージ・リクエストを受信し、データベース・クライアント１０２に関連したＩＰアドレスを決定し、これらのＩＰアドレスへメッセージを送信することができる。上述したように、データベース管理者インターフェース・モジュール１２６は、メッセージ内容と、メッセージが送信される１以上のデータベース・クライアント１０２を示す情報とを含むメッセージ・リクエストを受信することができる。アドレス・モジュール３１２は、メッセージが送信される１以上の各データベース・クライアント１０２に関連したＩＰアドレスを決定することができ、その後、データベース・メッセージ送信器１２４は、決定されたＩＰアドレスへメッセージを送信することができる。
【００２９】
アドレス・モジュール３１２は、様々なでＩＰアドレスを決定することができる。データベース管理者が互いに異なるデータベース・クライアント１０２の１以上のＩＰアドレスのリストを送信する場合（リストからＩＰアドレスを選択することによるなど）、アドレス・モジュール３１２は、これらのＩＰアドレスを（必要に応じて１０進形式に変換した後で）単純に使用することができる。データベース管理者がデータベース名を指定した場合、アドレス・モジュール３１２は、現在アクティブなＩＰアドレスまたは当該データベースに関連したＩＰアドレスすべてを決定することができる。特定のデータベース・クライアント１０２が同一のデータベース１１０に１回以上接続する場合には、重複するＩＰアドレスを削除するとよい。データベース管理者がデータベース名を指定できるようにすることによって、データベース管理者は、接続されたデータベース・クライアントすべてに対して、それぞれ個別に指定する必要なく、メッセージを効果的に同報通信することができる。アドレス・モジュール３１２は、データベース管理者から受信したデータベース・クライアント１０２を示す情報を１以上のＩＰアドレスのリストに変換するための任意の手法を使用することができる。
【００３０】
図４は、本発明の実施形態に係る、メッセージ・リクエストを受信して１以上のデータベース・クライアントへメッセージを送信するためのフローチャートを示す。本発明の実施形態において、データベース・メッセージング・モジュール３１０およびその構成要素などのデータベース・サーバ１０６の構成要素は、フローチャート４００の要素を実行することができる。図示の実施形態において、フローチャート４００は、要素４０２で開始し、データベース・メッセージング・モジュール３１０のデータベース管理者インターフェース・モジュール１２６は、１以上のデータベース・クライアント１０２および／またはデータベース・クライアント・ユーザにデータベース管理者が送信をきぼうするメッセージ内容を含む、データベース管理者または他の権限のある者からのメッセージ・リクエストを受信することができる。上述のように、データベース管理者インターフェース・モジュール１２６は、データベース管理者コンピュータ・システム１０８またはデータベース・サーバ１０６を直接アクセスするデータベース管理者からのメッセージ・リクエストを受信することができる。メッセージ・リクエストを受信する一部として、データベース管理者インターフェース・モジュール１２６は、要素４０４においてメッセージを受信する１以上のデータベース・クライアント１０２を示す情報を受信することができる。メッセージを受信するデータベース・クライアント１０２の情報は、データベース・クライアント１０２についてのＩＰアドレスのリスト、データベース名、もしくは他の情報または情報の組み合わせであってもよい。ある実施形態において、メッセージ・リクエストは、メッセージ内容（例えば、メッセージ・テキスト、添付ファイル）と、データベース・クライアント１０２の情報との両方を含んでもよい。
【００３１】
（データベース・クライアント１０２の情報とともに）メッセージ・リクエストを受信した後、データベース・メッセージング・モジュール３１０のアドレス・モジュール３１２は、データベース・クライアント１０２の情報に関連したＩＰアドレスを決定することができる。判断ブロック４０６において、アドレス・モジュール３１２は、１以上のＩＰアドレスをデータベース・クライアント１０２として受信したかどうかを決定することができる。ＩＰアドレスが受信されていれば、アドレス・モジュール３１２は、これらのＩＰアドレス１０進形式に変換するなど、必要に応じて変換することによって、メッセージング受信者についてのＩＰアドレスを決定することができる。その後、データベース・メッセージ送信器１２４は、要素４０８において、選択されたＩＰアドレスへメッセージを（メッセージ内容に基づいて）送信することができる。判断ブロック４１０において、アドレス・モジュール３１２は、１以上のデータベース名がデータベース・クライアント１０２の情報の一部として受信されたかどうかを決定することができる。データベース名が受信されていれば、フローチャート４００の方法は要素４１２へ進み、アドレス・モジュール３１２は、データベース名を現在当該データベースにアクセスしているＩＰアドレスのリストとともに相互参照するなどして、データベース名に関連したＩＰアドレスを決定することができる。また、アドレス・モジュール３１２は、データベース・クライアント１０２が複数回ログインした場合に生じる重複するＩＰアドレスを削除することができる。その後、データベース・メッセージ送信器１２４は、要素４１４において、決定されたＩＰアドレスへメッセージを送信し、その後、方法は終了する。
【００３２】
データベース・メッセージ送信器１２４は、要素４０８および４１４において別個にメッセージを送信する場合があるように示されているが、方法４００が終了する前に、一部またはすべての送信を１つの送信にまとめてもよい。さらに、メッセージ・リクエストの一部として受信された１以上のデータベース・クライアント１０２の受信情報は、データベース・クライアント１０２を示すための互いに異なる複数の方法を含んでもよい。例えば、メッセージ・リクエストは、３つのＩＰアドレスのリストと、データベース名とを含んでもよい。この例において、アドレス・モジュール３１２によって該当するすべてのＩＰアドレスが決定された後に、データベース・メッセージ送信器１２４は、もし所望するならば、すべてのＩＰアドレスへメッセージを同時に送信することができる。
【００３３】
図５は、本発明の実施形態に係る、データベース・サーバからメッセージを受信して当該メッセージをデータベース・クライアント・ユーザに対して表示するためのフローチャートの例を示す。本発明の実施形態において、データベース・クライアント１０２の構成要素は、フローチャート５００の要素を実行することができる。図示の実施形態において、フローチャート５００は、要素５０２で開始し、データベース・クライアント１０２のクライアント・リスナー１１４は、データベース・サーバ１０６からメッセージを受信することができる。クライアント・リスナー１１４を実行するデータベース・クライアント１０２は、図４に関連して説明したような、アドレス・モジュール３１２によって決定されたＩＰアドレスのうちの１つと一致するＩＰアドレスを有する。上述したように、クライアント・リスナー１１４は、メッセージについてのデータベース・クライアント１０２の指定されたまたは所定のポートを聞いてもよい。そうする際に、クライアント・リスナー１１４は、データベース・メッセージ送信器１２４に対してデータベース・クライアント１０２上のサーバとしての役割を果たすることができる。
【００３４】
メッセージを受信後、クライアント・リスナー１１４は、要素５０２において、メッセージ用表示ウィンドウをオプションで生成してもよく、これは、そのような表示ウィンドウを作成するか、または他のアプリケーションに作成するように・リクエストするなどして実施される。表示ウィンドウは、例えば、ブラウザのインスタンシエーション、ポップアップ・ウィンドウ、テキスト・ウィンドウなどのようにメッセージを表示できるグラフィカル・ユーザ・インターフェース（ＧＵＩ）の任意の手法で実現することができる。代わりに、クライアント・リスナー１１４は、データベース管理者からの繰り返しメッセージの場合のように、既存のウィンドウを使用することができる。その後、クライアント・リスナー１１４は、要素５０６において、表示ウィンドウ内にメッセージを表示してもよく、データベース・クライアント１０２のユーザは、データベース管理者からのメッセージを閲覧することができるようになる。ある実施形態において、ユーザがメッセージをよく見るように、表示ウィンドウは、ユーザのディスプレイ２１４上の他の項目に取って代わってもよい。
【００３５】
また、クライアント・リスナー１１４は、オプションとして、判断ブロック５０８において、メッセージ・ログ内にメッセージを保存するかどうか決定することができる。メッセージを保存しない場合には、フローチャート５００の方法は単に終了することができる。メッセージを保存する場合には、クライアント・リスナー１１４は、要素５１０において、メッセージをメッセージ・ログ内に保存してもよく、その後、方法は終了する。
【００３６】
一般的に、本発明の実施形態を実施するために実行されるルーチンは、オペレーティング・システム、もしくは特定のアプリケーション、構成要素、プログラム、モジュール、オブジェクト、または命令シーケンスの一部であってもよい。本発明のコンピュータ・プログラムは、典型的には、コンピュータによって機械読み取り可能なフォーマット、したがって実行可能な命令に変換されるであろう多数の命令からなる。また、プログラムは、プログラムに局所的に常駐するか、またはメモリまたはストレージ装置に見つかるか変数およびデータ構造からなる。加えて、以後説明する様々なプログラムは、アプリケーションに基づいて識別されてもよく、このアプリケーションのために、本発明の特定の実施形態においてプログラムが実施される。しかし、後続の特定のプログラムの呼び方は、単に便宜上に過ぎず、本発明は、そのような呼び方によって識別または示唆がなされた任意の特定のアプリケーションにおいてのみの使用に限定されるものではないことを理解すべきである。
【００３７】
本発明は、データベース・クライアントのユーザとの通信のための方法、システム、およびプログラムを考慮していることは、本開示の利益を有する当業者にとって明らかだろう。詳細な説明および図面に示されかつ説明された本発明の実施形態は、単に一例に過ぎないものとされることが理解されるべきである。添付の請求項は、開示された実施形態例のすべての変形を広く含むように解釈されることが意図されている。
【図面の簡単な説明】
【００３８】
【図１】本発明の本発明の実施形態に係るデータベース・サーバおよび１以上のデータベース・クライアントを伴うデータベース・メッセージング・システムのための環境を示す。
【図２】データベース・メッセージング・システムの構成要素として使用するのに適したコンピュータ・システムの本発明の実施形態のブロック図を示す。
【図３】本発明の実施形態に係るデータベース・メッセージング・モジュールを伴うデータベース・サーバのソフトウェア構成要素の概念図を示す。
【図４】本発明の実施形態に係る、メッセージ・リクエストを受信して１以上のデータベース・クライアントへメッセージを送信するためのフローチャートの例を示す。
【図５】本発明の実施形態に係る、データベース・サーバからメッセージを受信して当該メッセージをデータベース・クライアント・ユーザに対して表示するためのフローチャートの例を示す。
【符号の説明】
【００３９】
１００  データベース・メッセージング・システム
１０２  データベース・クライアント
１０４  ネットワーク
１０６  データベース・サーバ
１０８  データベース管理者コンピュータ・システム
１１０  データベース
１１２  データベース・アプリケーション
１１４  クライアント・リスナー
１２０  データベース・マネージャ
１２２  データベース・モニタ
１２４  データベース・メッセージ送信器
１２６  データベース管理者インターフェース・モジュール
【図１】
0005159103.tif 000002
【図２】
0005159103.tif 000003
【図３】
0005159103.tif 000004
【図４】
0005159103.tif 000005
【図５】
0005159103.tif 000006