(57)【要約】【課題】  ボトルネックと称される通信障害の発生を低減する。【解決手段】  データを保持管理するデータベースサーバ２０とデータベースサーバで管理しているデータに基づいて処理を行う複数の処理サーバ４０とを備えた分散型サーバシステム１０において、データ処理サーバは、データベースサーバで保持管理されているデータの取得要求を行うデータ取得要求部４４と、取得したデータを保持するためのデータ保持部４２と、データ保持部で保持しているデータの変更内容をデータベースサーバに通知する変更内容通知部４５とを備えており、データベースサーバは、変更内容通知を受けると、該変更内容に基づいて保持管理しているデータを更新するデータ更新部２３と、データ更新を前記各データ処理サーバに通知するデータ更新通知部２５とを備えており、前記データ取得要求部は、データ更新通知を受けると、更新されたデータの取得要求を行う。【選択図】        図１
2006058943.tif 000002
【特許請求の範囲】
【請求項１】
データを保持管理するデータベースサーバと、該データベースサーバで管理しているデータに基づいて処理を行う複数の処理サーバと、を備えた分散型サーバシステムにおいて、
前記データ処理サーバは、
前記データベースサーバで保持管理されているデータの取得要求を行うデータ取得要求部と、
取得したデータを保持するためのデータ保持部と、
前記データ保持部で保持しているデータの変更内容を前記データベースサーバに通知する変更内容通知部とを備えており、
前記データベースサーバは、
前記変更内容通知を受けると、該変更内容に基づいて保持管理しているデータを更新するデータ更新部と、
データ更新を前記各データ処理サーバに通知するデータ更新通知部とを備えており、
前記データ取得要求部は、前記データ更新通知を受けると、更新されたデータの取得要求を行うことを特徴とする分散型サーバシステム。
【請求項２】
前記データ更新通知部は、前記変更内容通知元のデータ処理サーバ以外のデータ処理サーバに対し、データ更新通知を行うことを特徴とする請求項１記載の分散型サーバシステム。
【請求項３】
データを保持管理するデータベースサーバと、該データベースサーバで管理しているデータに基づいて処理を行う複数の処理サーバと、を備えた分散型サーバシステムにおけるデータ管理方法において、
前記データ処理サーバは、
前記データベースサーバで保持管理されているデータの取得要求を行うこと、
取得したデータを保持すること、
保持しているデータの変更内容を前記データベースサーバに通知すること、
前記データベースサーバは、
前記変更内容通知を受けると、該変更内容に基づいて保持管理しているデータを更新すること、
データ更新を前記各データ処理サーバに通知すること、
前記データ処理サーバは、前記データ更新通知を受けると、更新されたデータの取得要求を行うことを特徴とする分散型サーバシステムにおけるデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散型サーバシステムおよび分散型サーバシステムにおけるデータ管理方法に関するものである。
【背景技術】
【０００２】
データベースサーバに保持管理されているデータベースに基づいて複数のデータ処理サーバで処理を行う分散型サーバシステムが従来から知られている。すなわち、従来の分散型サーバシステムでは、共通のデータベースを保持管理しているデータベースサーバに対し、各データ処理サーバがデータ取得のアクセスを行っており、このアクセスで取得したデータに基づいて、各データ処理サーバでデータ処理が行われている。複数のデータ処理サーバでデータ処理を分散して行うことで、単一で処理を行うよりも、処理負荷を軽減することができ、効率的に処理を行うことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、従来の分散型サーバシステムは、処理に必要なデータを取得するために、データ処理サーバからデータベースサーバに対しアクセスが行われている。このアクセスは、データを共用していることから頻繁に行われており、データ取得要求のアクセスがある度、データベースサーバは、要求されたデータをデータベースから読み出し、該データを要求元のデータ処理サーバに送信している。従って、同時的に複数のデータ処理サーバからデータベースサーバに対しデータ取得のアクセスが行われると、データ取得要求を行ったデータ処理サーバの幾つかは、要求したデータを取得するまでに時間を要する虞があり、いわゆるボトルネックと称される障害が問題となっていた。
【０００４】
従って、本発明の目的は、ボトルネックの発生を低減し得る分散型サーバシステムと、分散型サーバシステムにおけるデータ管理方法を提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、以上の点を解決するために、次の構成を採用する。
データを保持管理するデータベースサーバと、該データベースサーバで管理しているデータに基づいて処理を行う複数の処理サーバと、を備えた分散型サーバシステムにおいて、前記データ処理サーバは、前記データベースサーバで保持管理されているデータの取得要求を行うデータ取得要求部と、取得したデータを保持するためのデータ保持部と、前記データ保持部で保持しているデータの変更内容を前記データベースサーバに通知する変更内容通知部とを備えており、前記データベースサーバは、前記変更内容通知を受けると、該変更内容に基づいて保持管理しているデータを更新するデータ更新部と、データ更新を前記各データ処理サーバに通知するデータ更新通知部とを備えており、前記データ取得要求部は、前記データ更新通知を受けると、更新されたデータの取得要求を行うことを特徴とする。
【０００６】
前記データ更新通知部は、前記変更内容通知元のデータ処理サーバ以外のデータ処理サーバに対し、データ更新通知を行うことができる。
【０００７】
データを保持管理するデータベースサーバと、該データベースサーバで管理しているデータに基づいて処理を行う複数の処理サーバと、を備えた分散型サーバシステムにおけるデータ管理方法において、前記データ処理サーバは、前記データベースサーバで保持管理されているデータの取得要求を行うこと、取得したデータを保持すること、保持しているデータの変更内容を前記データベースサーバに通知すること、前記データベースサーバは、前記変更内容通知を受けると、該変更内容に基づいて保持管理しているデータを更新すること、データ更新を前記各データ処理サーバに通知すること、前記データ処理サーバは、前記データ更新通知を受けると、更新されたデータの取得要求を行うことを特徴とする。
【発明の効果】
【０００８】
本発明の分散型サーバシステムによれば、データベースサーバから予めデータを取得して保持することで、データベースサーバにデータ取得のアクセスを行わなくとも、保持しているデータに基づいて処理を行うことができる。また、データ処理サーバで保持するデータに変更が生じた際には、変更内容をデータベースサーバに通知し、通知を受けたデータベースサーバでは、変更された内容で保持管理するデータの更新を行い、データ更新通知を各データ処理サーバに通知する。通知を受けた処理サーバでは、データベースサーバから最新のデータを取得し、該データに基づいて処理を行う。これにより、データベースサーバで保持管理しているデータ内容と同期を取ることができると共に、データベースサーバに対するデータ取得のためのアクセス回数を低減することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態を図を用いて詳細に説明する。
【実施例１】
【００１０】
本発明の分散型サーバシステム１０は、図１に示すように、データベースサーバ２０と、該データベースサーバ２０と第１の伝送路３０を介して接続するデータ処理サーバ４０と、を備えている。
【００１１】
ここで、前記各サーバの詳細説明に先立ち、システム構成を説明する。本発明の分散型サーバシステム１０のシステムは、図２に示すように、データベースサーバ２０と、該データベースサーバ２０が接続する第１の伝送路３０と、該第１の伝送路３０に接続する複数のデータ処理サーバ４０と、該データ処理サーバ４０が接続する第２の伝送路５０と、該第２の伝送路５０に接続する複数の端末装置６０と、で構成されている。
【００１２】
各端末装置６０は、第２の伝送路５０を介して接続するデータ処理サーバ４０に対し処理を依頼するクライアントとして機能を備えており、該端末装置６０は、例えば電話機や携帯電話機などの通信装置、パーソナルコンピュータと称される処理装置などの装置である。例えば、通信装置としての各端末装置６０からの回線接続依頼は、分担処理すべく、設けられた複数のデータ処理サーバ４０の何れかで、回線接続の制御処理が行われる。
【００１３】
データ処理サーバ４０は、クライアントとしての端末装置６０に対し、サーバとしての関係にあり、端末装置６０からの要求に応じて処理を行い、その処理結果を端末装置６０へ通知する。例えば、端末装置６０が電話機などの通信装置の場合、データ処理サーバ４０は交換局の交換制御装置に相当する。
【００１４】
データ処理サーバ４０は、予めデータベースサーバ２０から取得して保持しているデータと、データベースサーバ２０で保持管理されているデータとを適宜選択し、選択したデータに基づいて処理を行う。
【００１５】
この選択は、処理の内容に応じて決まり、例えば、端末装置６０が電話機などの通信装置であり、データ処理サーバ４０が交換局の交換制御装置の場合であって、処理内容が発呼制御および着呼制御などであり、その制御を管理するための共用データを頻繁に変更する必要がある場合には、データベースサーバ２０で保持管理されているデータを取得し該データに基づいて呼制御を行う。一方、データベースサーバ２０に頻繁に変更（更新）を行う必要がない音声ガイダンス案内やリオーダートーンなどの制御に係る場合には、予めデータベースサーバ２０から取得して保持しているデータに基づいて音声ガイダンス案内やリオーダートーンの制御を行う。すなわち、変更する頻度が高いデータはデータベースサーバ２０で保持管理させ、変更頻度が低いデータは予めデータ処理サーバ４０で保持させている。これにより、データベースサーバ２０へのアクセス回数を低減することができる。
【００１６】
ところで、データ処理サーバ４０に予め保持させるデータは、変更頻度が低いデータに限る必要は無く、サイズが大きいデータを予めデータ処理サーバ４０に保持させてもよく、また端末認証情報（ＭＡＣアドレス等）や端末毎の提供サービス情報などのアクセス頻度が高いデータも予めデータ処理サーバ４０に保持させてもよい。
【００１７】
データベースサーバ２０は、データベース２１を備えており、各データ処理サーバ４０からのデータ取得要求に応じて、データベース２１を検索してデータを取得し、該データを要求元のデータ処理サーバ４０へ送信する。データベースサーバ２０のデータベース２１は、各データ処理サーバ４０で共用するデータが保持されている。
【００１８】
次に、再び図１に戻って、本発明の分散型サーバシステム１０のデータベースサーバ２０およびデータ処理サーバ４０の各構成を詳細に説明する。
データベースサーバ２０は、各データ処理サーバ４０で共用するデータを保持するデータベース２１と、該データベース２１のデータを検索するデータ検索部２２およびデータを更新するデータ更新部２３を有するデータベース管理部２４と、データベース２１のデータベースを更新したことを各データ処理サーバ４０に通知するための制御を行うデータ更新通知部２５と、第１の伝送路３０を介してデータ処理サーバ４０と通信するための制御を行うデータベース通信部２６とを備える。
【００１９】
データベース管理部２４のデータベース２１は、各データ処理サーバ４０で共用する多数のデータを保持しており、それらの幾つかは、各データ処理サーバ４０に予め保持させるためのデータである。
データ検索部２２は、要求されたデータの検索を行う。この検索でデータベース２１が参照され、該データベース２１から所望のデータが取得される。
【００２０】
データベース管理部のデータ更新部２３は、データ処理サーバ４０からデータ更新通知を受けると、該通知内容に基づいてデータベース２１で保持しているデータの更新を行う。通知内容には、更新すべきデータの識別情報（ファイル名）と、その内容とが示されている。
【００２１】
データ更新通知部２５は、データ更新部２３で更新したデータを共用している各データ処理サーバ４０に通知するための制御を行うべく、更新すべきデータの識別情報の送信制御を行う。
データベース通信部２６は、第１の伝送路３０を介して接続する各データ処理サーバ４０と通信するための制御を行う。
【００２２】
次に、データ処理サーバ４０は、第１の伝送路３０を介してデータベースサーバ２０と通信するための制御および第２の伝送路５０を介して各端末装置６０と通信するための制御を行うデータ処理通信部４１と、該データ処理通信部４１を介してデータベースサーバ２０から取得したデータを保持するためのデータ保持部（メモリ）４２と、端末装置６０からの依頼などに基づいて、制御に伴うデータ処理を行う処理部４３と、データベースサーバ２０で保持管理されているデータの取得要求を行うためのデータ取得要求部４４と、係員によりデータ保持部４２で保持しているデータの内容が変更されたとき、その旨をデータベースサーバ２０に通知するための制御を行う変更内容通知部４５とを備える。
【００２３】
データ取得要求部４４は、データ処理サーバ４０が起動すると、所定のデータの取得要求をデータベースサーバ２０に対し行う。起動時にデータ取得要求部４４が要求するデータは、データ更新の頻度が低いデータ、データのサイズが大きいデータおよびアクセス頻度が高いデータなどである。データ取得要求部４４の要求により取得されたデータは、データ保持部４２で保持される。
【００２４】
ところで、データ取得要求部４４は、起動時に所定のデータの取得要求を行う他に、データベースサーバ２０からデータ更新通知を受けると、通知内容とデータ保持部４２で保持しているデータとに基づいて更新が必要であるか否かを判断し、更新が必要である場合には、データベースサーバ２０に対し、更新されたデータの取得を要求する。この要求で取得したデータはデータ保持部４２で保持され、データの更新が行われる。
【００２５】
処理部４３は、データ保持部４２で保持するデータやデータベースサーバ２０で保持管理しているデータに基づいて、処理を行う。
ところで、データ保持部４２で保持しているデータに基づいて処理を行う際、必要に応じてデータの内容が変更される場合がある。このような場合、変更内容通知部４５はデータの内容が変更されたことをデータベースサーバ２０に通知する。
【００２６】
次に、本発明の分散型サーバシステム１０の運用形態を図３に示し、該図と共にフローチャートに沿って本発明の分散型サーバシステム１０動作を説明する。
先ず、図３に示すように、データベースサーバ２０が動作状態にあり、データ処理サーバ４０が停止状態であるとき、該データ処理サーバ４０を起動した時の動作を図４のフローチャートに沿って説明する。
【００２７】
データ処理サーバ４０が起動すると（ステップＳ１）、データ取得要求部４４はデータベースサーバ２０に対し、データの取得要求を行う（ステップＳ２）。データの取得要求は、データ処理通信部４１の通信制御により、第１の伝送路３０を介してデータベースサーバ２０へ通知される（ステップＳ３）。
【００２８】
ところで、データの取得要求を行う際、データ取得要求部４４は、要求する各データを予め指定してもよいし、起動時のデータ要求である旨だけをデータベースサーバ２０に通知し、該データベースサーバ２０でデータ処理サーバ４０に保持させるべきデータをデータベース２１から選定させようにしてもよい。
【００２９】
データの取得要求を受けたデータベースサーバ２０は、データ検索部２２を起動してデータベース２１からデータを取得する（ステップＳ４）。データベース２１から取得するデータは、データ更新の頻度が低いデータ、データのサイズが大きいデータおよびアクセス頻度が低いデータなどであり、該各データはデータベース通信部２６の通信制御により、第１の伝送路３０を介してデータ処理サーバ４０へ送信される（ステップＳ５）。
【００３０】
データベースサーバ２０から、起動時のデータを受けたデータ処理サーバ４０は、該各データをデータ保持部４２に保持する（ステップＳ６）。これにより、処理部４３は、データ更新の頻度が低いデータ、データのサイズが大きいデータおよびアクセス頻度が低いデータなどをデータ保持部４２から読出し、読出したデータに基づいて処理を行う。これにより、データベースサーバ２０へのアクセス回数（アクセス時間）を低減することができる。
一方、更新頻度が高いデータ、データのサイズが小さいデータおよびアクセス頻度が低いデータは、データベースサーバ２０から取得して処理を行う。
【００３１】
次に、本発明の分散型サーバシステム１０を運用中に、データ処理サーバ４０のデータ保持部４２で保持しているデータに変更が生じたときの動作を図５のフローチャートに沿って説明する。
【００３２】
データ処理サーバ４０の処理部４３がデータ保持部４２で保持しているデータの内容を変更すると（ステップＳ１１）、その旨が変更内容通知部４５へ通知される。
変更内容通知部４５は、変更されたデータの内容をデータベースサーバ２０へ通知する制御を行う（ステプＳ１２）。
【００３３】
データベースサーバ２０は変更内容通知を受けると、データ更新部２３により、変更内容に基づいてデータベース２１で保持管理しているデータの更新が行われる（ステップＳ１３）。
データ更新部２３によるデータ更新が行われた後、データ更新通知部２５は、第１の伝送路３０に接続する各データ処理サーバ４０に対し、データ更新されたことを通知する（ステップＳ１４）（図３の運用中フェーズ参照）。このデータ更新通知を受けた各データ処理サーバ４０は、データ取得要求部４４で通知内容とデータ保持部４２で保持しているデータとに基づいて更新が必要であるか否かを判断し、更新が必要である場合には、データベースサーバ２０に対し、更新されたデータの取得を要求する（ステップＳ１５）。
【００３４】
データの取得要求を受けたデータベースサーバ２０は、データ検索部２２で要求されたデータをデータベース２１から検索して取得すると、該データをデータ処理サーバ４０へ出力する（ステップＳ１６）。
データ処理サーバ４０は、データベースサーバ２０からのデータを受けると、データ更新を行うべく、受信したデータをデータ保持部４２に保持する（ステップＳ１７）。
【００３５】
前記したように、本発明の分散型サーバシステム１０によれば、データ処理サーバ４０で保持するデータの内容に変更が生じても、その変更内容をデータベースサーバ２０へ通知し、変更内容に基づいてデータベースサーバ２０のデータベース２１の更新を行う。そして、データが更新されたことを各データ処理サーバ４０に対し通知し、この通知を受けたデータ処理サーバ４０からのデータ取得要求に応じて更新されたデータを各データ処理サーバ４０に送信する。各データ処理サーバ４０では、受信したデータに基づいて保持しているデータの更新を行うことから、あるデータ処理サーバ４０に保持させたデータに変更が生じても、その変更内容を、データベースサーバ２０およびその他のデータ処理サーバ４０で保持するデータに反映させることができる。
【００３６】
これにより、データをデータベースサーバ２０に集中的に保持させなくとも、各データ処理サーバ４０に、更新頻度の低いデータ、サイズの大きいデータおよびアクセス頻度の高いデータなどを保持させることができ、データベースサーバ２０に対するデータ取得のための通信集中を防止することができ、ボトルネックと称される通信障害の発生を低減することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の分散型サーバシステムの機能ブロック図である。
【図２】本発明の分散型サーバシステムのシステム図である。
【図３】本発明の分散型サーバシステムの運用形態図である。
【図４】本発明の分散型サーバシステムの起動時の動作を示すフローチャートである。
【図５】本発明の分散型サーバシステムのデータ変更時の動作を示すフローチャートである。
【符号の説明】
【００３８】
１０  分散型サーバシステム
２０  データベースサーバ
２１  データベース
２２  データ検索部
２３  データ更新部
２４  データベース管理部
２５  データ更新通知部
３０  第１の伝送路
４０  データ処理サーバ
４１  データ処理通信部
４２  データ保持部
４３  処理部
４４  データ取得要求部
４５  変更内容通知部
５０  第２の伝送路
６０  端末装置
【図１】
2006058943.tif 000003
【図２】
2006058943.tif 000004
【図３】
2006058943.tif 000005
【図４】
2006058943.tif 000006
【図５】
2006058943.tif 000007