JP5326588B2 - データベース検索システム、情報処理装置、データベース検索方法及びプログラム - Google Patents

データベース検索システム、情報処理装置、データベース検索方法及びプログラム Download PDF

Info

Publication number
JP5326588B2
JP5326588B2 JP2009004954A JP2009004954A JP5326588B2 JP 5326588 B2 JP5326588 B2 JP 5326588B2 JP 2009004954 A JP2009004954 A JP 2009004954A JP 2009004954 A JP2009004954 A JP 2009004954A JP 5326588 B2 JP5326588 B2 JP 5326588B2
Authority
JP
Japan
Prior art keywords
server
client device
database
search
program
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.)
Expired - Fee Related
Application number
JP2009004954A
Other languages
English (en)
Other versions
JP2010165043A (ja
Inventor
栄 横川
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 JP2009004954A priority Critical patent/JP5326588B2/ja
Publication of JP2010165043A publication Critical patent/JP2010165043A/ja
Application granted granted Critical
Publication of JP5326588B2 publication Critical patent/JP5326588B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、クライアント・サーバによって実現されるデータベース検索システム、情報処理装置、データベース検索方法及びプログラムに関する。
クライアント・サーバによって実現されるデータベース検索システムの一例として、特許文献1に開示されているものがある。特許文献1の図1に示されているように、このデータベース検索システムは、クライアント端末と、WWW(World Wide Web)サーバと、データベースサーバとから構成されている。このような構成のデータベース検索システムでは、クライアント端末からの検索要求を受けたWWWサーバが、データベースサーバに対して検索要求を行う。そして、WWWサーバは、データベースサーバから検索結果を受け取り、その検索結果をクライアント端末に表示させる。
特開2000−67075号公報
しかしながら、上記特許文献1のデータベース検索方法では、データベースサーバヘのアクセス方法が一つしか用意されておらず、サーバに負荷が集中した場合、検索結果の応答に時間がかかってしまうという問題がある。
このような問題を防ぐためには、サーバの台数や通信回線を増量する等、リソース増大を行う必要がある。しかし、リソースの増大は、コスト高に繋がるという別の問題がある。
本発明は、上記事情に鑑みてなされたものであり、リソースを増大させる必要なく、高速なデータベース検索を可能にするデータベース検索システム、情報処理装置、データベース検索方法及びプログラムを提供することを目的とする。
かかる目的を達成するために、本発明のデータベース検索システムは、クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続され、クライアント装置からサーバに対して検索要求がされると、データベースサーバへのアクセスとデータベースサーバが有するデータベースの検索が行われ、クライアント装置から検索結果が出力されるデータベース検索システムであって、サーバは、データベースサーバへアクセスするための複数の方法と、サーバの複数の負荷状況とが対応付けられた設定を予め保持しており、サーバの負荷状況を所定のタイミングで検出し、検出の結果と設定に応じて、最適な方法を選択する選択手段と、クライアント装置から検索要求がされた場合、選択手段によって選択された方法を、サーバ又はクライアント装置に実行させるためのサーバ側実行手段と、を有することを特徴とする。
本発明の情報処理装置は、第1の態様として、本発明のデータベース検索システムにおいて、クライアント装置として用いられることを特徴とする。
本発明の情報処理装置は、第2の態様として、本発明のデータベース検索システムにおいて、クライアント装置として用いられることを特徴とする。
本発明のデータベース検索方法は、クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続されているときに、クライアント装置からサーバに対して検索要求がされると、データベースサーバへのアクセスとデータベースサーバが有するデータベースの検索が行われ、クライアント装置から検索結果が出力されるデータベース検索方法であって、サーバは、データベースサーバへアクセスするための複数の方法と、サーバの複数の負荷状況とが対応付けられた設定を予め保持する設定保持ステップと、サーバの負荷状況を所定のタイミングで検出し、検出の結果と設定に応じて、最適な方法を選択する選択ステップと、クライアント装置から検索要求がされた場合、選択ステップで選択された方法を、サーバ又はクライアント装置に実行させる実行ステップと、を有することを特徴とする。
本発明のプログラムは、クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続されているときに、クライアント装置からサーバに対して検索要求がされると、データベースサーバへのアクセスとデータベースサーバが有するデータベースの検索が行われ、クライアント装置から検索結果が出力されるデータベース検索方法を実現するためのプログラムであって、データベースサーバへアクセスするための複数の方法と、サーバの複数の負荷状況とが対応付けられた設定を予め保持する設定保持処理と、サーバの負荷状況を所定のタイミングで検出し、検出の結果と設定に応じて、最適な方法を選択する選択処理と、クライアント装置から検索要求がされた場合、選択処理で選択された方法を、サーバ又はクライアント装置に実行させる実行処理と、をコンピュータに実行させることを特徴とする。
本発明によれば、リソースを増大させる必要なく、高速なデータベース検索を可能にすることが可能となる。
本発明の実施形態であるデータベース検索システムの全体構成を示す図である。 本発明の実施形態であるデータベース検索システムの動作例1を示すシーケンスチャートである。 本発明の実施形態であるデータベース検索システムの動作例1のときの構成を示す図である。 本発明の実施形態であるデータベース検索システムの動作例1に係るプログラムサンプルを示す図である。 本発明の実施形態であるデータベース検索システムの動作例2を示すシーケンスチャートである。 本発明の実施形態であるデータベース検索システムの動作例2のときの構成を示す図である。 本発明の実施形態であるデータベース検索システムの動作例2に係るプログラムサンプルを示す図である。 本発明の実施形態であるデータベース検索システムの動作例3を示すシーケンスチャートである。 本発明の実施形態であるデータベース検索システムの動作例3のときの構成を示す図である。 本発明の実施形態であるデータベース検索システムの動作例3に係るプログラムサンプルを示す図である。
以下、本発明を実施するための最良の形態について添付図面を参照して詳細に説明する。
図1は、本発明の一実施形態であるデータベース検索システムの構成例を示す図である。図1に示すように、本実施形態のデータベース検索システムは、クライアント装置1と、WWWサーバ2と、データベース(DB:Data Base)サーバとがネットワークを介して接続された構成である。
クライアント装置1は、データベース検索を行うユーザによって操作される情報処理装置である。クライアント装置1の例としては、パーソナルコンピュータ(PC:Personal Computer)や携帯電話機などが挙げられる。以下の説明では、クライアント装置1の例として、パーソナルコンピュータを想定して説明する。クライアント装置1のハードウェア構成は、一般的なパーソナルコンピュータや携帯電話機などと同じであるので、詳細な説明は省略する。すなわち、クライアント装置1は、ハードウェア構成として、CPU(Central Processing Unit)などの制御デバイス、ROM(Read Only Memory)やRAM(Random Access Memory)等の記憶デバイス、他装置、周辺機器、ネットワーク等と接続するためのインタフェースデバイスなどを備え、プログラム制御により動作する。
図1に示すクライアント装置1は、操作デバイス及び表示デバイスと接続されている。操作デバイスの例としては、マウスやキーボード等が挙げられる。また、表示デバイスの例としては、ディスプレイ等が挙げられる。
図1に示すように、クライアント装置1は、閲覧ソフト(ブラウザ)11を有する。また、図示していないが、クライアント装置1のOS(Operating System)は閲覧ソフト11が動作するものであればよい。OSの例としては、WINDOWS(登録商標)、UNIX(登録商標)、LINUX(登録商標)等が挙げられ、本実施形態では、WINDOWS−XPを想定する。また、OS上で動作する閲覧ソフト11も、例えば、インターネットエクスプローラ、FireFox、OPERA等を用いることができるが、WWWサーバ2から送られて来るプログラム(後述する)を動作できるものである必要がある。本実施形態では、インターネットエクスプローラを想定する。クライアント装置1上で動作するプログラムはJava(登録商標)Scriptを用いている。
クライアント装置1は、閲覧ソフト11により、ユーザ要求受付手段12、DBアクセス実行手段13、動的HTML(Hyper Text Markup Language)生成手段14として機能する。
ユーザ要求受付手段12は、ユーザが操作デバイスを操作することで入力された、検索要求と、検索条件などを示す入力情報とを受け付け、WWWサーバ2へ検索要求と入力情報とを送信する。本実施形態では、例として、WWWサーバ2によって提供されるサーチ・エンジンにおけるキーワード検索を想定する。よって、ここでの入力情報(検索条件)は、ユーザが検索したい内容に関する語句(文字、記号等)となる。
DBアクセス実行手段13は、WWWサーバ2から送られてくるプログラムを受信し、受信したプログラムに従って、データベースサーバ3へのアクセスを行う。このプログラムの例として、本実施形態では、DB問合/結果取得プログラム26と、非同期通信プログラム27とを想定している。これらプログラムの内容については、後述する。
動的HTML生成手段14は、要求した検索の結果を示す結果情報を受信し、受信した結果情報に基づいて自動的に画面表示用のHTML文書を生成し、生成したHTML文書を表示デバイスに出力する。結果情報は、クライアント装置1に対して、データベースサーバ3から直接送信されて来る、又は、データベースサーバ3からWWWサーバ2を中継して送信されて来る。
WWWサーバ(Webサーバ)2は、ネットワーク上に配置され、クライアント装置1及びデータベースサーバ3と通信を行う情報処理装置である。WWWサーバ2のハードウェア構成は、コミュニケーションサーバとして用いられる一般的なコンピュータと同じであるので、詳細な説明は省略する。すなわち、WWWサーバ2は、ハードウェア構成として、CPUなどの制御デバイス、ROMやRAM等の記憶デバイス、他装置、周辺機器、ネットワーク等と接続するためのインタフェースデバイスなどを備え、プログラム制御により動作する。
図1に示すように、WWWサーバ2は、WWWサーバソフト(図示せず)及びCGI(Common Gateway Interface)ソフト21を有する。WWWサーバソフトは、他装置との通信など、WWWサーバ2内の基本的な制御を行い、情報処理装置をWWWサーバとして機能させる。WWWサーバソフトの例として、本実施形態ではApacheを想定しているが、他にIISも使用できる。また、CGIソフト21の使用言語の例として、本実施形態ではPerlを想定しているが、他にVBS、Ruby、PHP、C等の多くのものが使用できる。また、図示していないが、WWWサーバ2のOSは、WWWサーバソフト及びCGIソフト21が動作するものであればよい。本実施形態では、OSの例として、WINDOWS SERVER2003を想定している。
WWWサーバ2は、WWWサーバソフト及びCGIソフト21により、アクセス方法選択手段22、DBアクセス実行手段23、プログラム保持手段24、動的HTML生成手段25として機能する。
アクセス方法選択手段22は、クライアント装置1から送信されて来る検索要求と入力情報を受信した場合に、そのときの自装置(WWWサーバ2)の負荷状況に応じて、データベースサーバ3へのアクセス方法を選択する。本実施形態では、例として、3つのアクセス方法が予め用意されているものとする。これら3つのアクセス方法は、データベースサーバ3へアクセスする過程の違いであり、検索動作自体は同じである。これら各方法の詳細及び各方法の選択処理の詳細については後述する。
DBアクセス実行手段23は、アクセス方法選択手段22で選択されたアクセス方法に基づいて、動作を実行する。すなわち、DBアクセス実行手段23は、選択されたアクセス方法によって異なる動作を行う。これら各動作については後述する。
プログラム保持手段24は、上記3つのアクセス方法に関するプログラムを予め保持している。本実施形態では、例として、DB問合/結果取得プログラム26と、非同期通信プログラム27とを保持している。DB問合/結果取得プログラム26は、クライアント装置1又はWWWサーバ2に、入力情報を基にSQL文を生成する処理、データベースサーバ3にSQL文を送信して検索要求を行う処理、データベースサーバ3から結果情報を受信する処理を実行させるためのプログラムである。また、非同期通信プログラム27は、クライアント装置1に、WWWサーバ2との間で非同期の通信処理を実行させるためのプログラムである。
動的HTML生成手段25は、要求した検索の結果を示す結果情報を受信し、受信した結果情報に基づいて自動的に画面表示用のHTML文書を生成し、生成したHTML文書をクライアント装置1へ送信する。
また、図示していないが、WWWサーバ2は、データベースサーバ3へアクセスするための複数の方法と、WWWサーバ2の複数の負荷状況とがそれぞれ対応付けられた設定を予め保持している。この設定については、閾値を用いた例を後述する。
図1に示すデータベースサーバ3は、大量の各種情報を予め格納しているデータベース32を管理する情報処理装置である。データベースサーバ3は、データベースサーバソフト(図示せず)を有する。データベースサーバソフトは、他装置から検索要求及び(検索条件)を受けて、データベース32を検索し、検索結果を出力するなどの、データベースサーバ3内の基本的な制御を行い、情報処理装置をデータベースサーバとして機能させる。データベースサーバソフトの例として、本実施形態では、WINDOWS SERVER2003上で動作するMySQLを想定しているが、他に、Oracle、PostgreSQL等が使用できる。また、図示していないが、データベースサーバ3のOSは、データベースサーバソフトが動作するものであればよい。
データベースサーバ3は、データベースサーバソフトにより、データベース検索手段31として機能する。
データベース検索手段31は、WWWサーバ2又はクライアント装置1から検索要求されたSQL文(検索条件)を実行し、データベース32内のデータを検索する。データベース検索手段31は、検索結果を示す結果情報を、要求元のWWWサーバ2又はクライアント装置1に送信する。
以上のように構成された本実施形態のデータベース検索システムにおける動作(本発明のデータベース検索方法の一実施形態)について、図2〜図10を参照しながら説明する。なお、以下では、上述した3つのアクセス方法が選択される場合を別々に分けて説明する。3つのアクセス方法はそれぞれ、第1の方法、第2の方法、第3の方法とする。
まず、動作例1として、第1の方法が選択される場合について、図2〜図4を参照して説明する。
クライアント装置1において、ユーザ要求受付手段12は、ユーザが操作デバイスを操作することで入力された、検索要求と、検索条件などを示す入力情報とを受け付け、WWWサーバ2へ検索要求と入力情報とを送信する(ステップS1)。ここでは、検索の例として、WWWサーバ2によって提供されるサーチ・エンジンにおけるキーワード検索を想定する。よって、ここでの入力情報(検索条件)は、ユーザが検索したい内容に関する語句(文字、記号等)となる。
WWWサーバ2において、アクセス方法選択手段22は、クライアント装置1から送信されて来る検索要求と入力情報を受信した場合に、そのときの自装置(WWWサーバ2)の負荷状況に応じて、データベースサーバ3へのアクセス方法を選択する(ステップS2)。WWWサーバ2は、予め用意されている3つのアクセス方法(第1の方法、第2の方法、第3の方法)の中から1つを選択する。ここで、この選択処理について説明する。
まず、アクセス方法選択手段22は、検索要求と入力情報の受信をトリガとして、自装置内の各デバイス(例えば、CPUやI/O等)から、現在どの程度の負荷であるかを値で示す負荷情報(負荷率、負荷状況)を取得(検出)する。そして、アクセス方法選択手段22は、取得した負荷情報と、予め設定されている閾値A(例えば、負荷率70%)とを比較し、負荷情報が閾値A以上であるかどうかを判断する。アクセス方法選択手段22は、判断の結果、負荷情報が閾値A以上ではない場合、第1の方法を選択する。一方、判断の結果、負荷情報が閾値A以上である場合、アクセス方法選択手段22は、さらに、取得した負荷情報と、予め設定されている閾値B(閾値Aより大きい値。例えば、負荷率90%)とを比較し、負荷情報が閾値B以上であるかどうかを判断する。アクセス方法選択手段22は、判断の結果、負荷情報が閾値B以上ではない場合、第2の方法を選択する。一方、判断の結果、負荷情報が閾値B以上である場合、アクセス方法選択手段22は、第3の方法を選択する。なお、閾値A、Bと、第1〜第3の方法との対応(どの閾値を境にしてどの方法を選択するか)は、例えば、WWWサーバ2内に保持されるテーブル等において、予め設定されているものとする。もちろん、ユーザ等の操作により、このテーブルの更新・変更は可能とする。
このように本実施形態では、WWWサーバ2(のアクセス方法選択手段22)が、自装置の負荷を検出し、その負荷状況に応じて、データベースサーバ3へのアクセス方法を選択することを特徴としている。
なお、本実施形態では、クライアント装置1の負荷やネットワーク負荷に関しては考慮していないが、これらも考慮した上でよりきめ細かく判断する方法も考えられる。その場合、アクセス方法選択手段22は、例えば、検索要求と入力情報の受信をトリガとして、自装置内だけではなく、クライアント装置1やネットワークからも、それらの負荷を値で示す負荷情報を取得する(負荷状況を検出する)。そして、アクセス方法選択手段22は、自装置の負荷情報と、クライアント装置1の負荷情報及びネットワークの負荷情報のうち少なくとも1つとを用いて、上述した判断を行う。
また、本実施形態では、アクセス方法選択手段22が、検索要求と入力情報の受信をトリガとして負荷情報を取得するようにしたが、負荷情報を別プログラムにより予め定期的に取得するようにしてもよい。そして、アクセス方法選択手段22は、定期的に取得した負荷情報に基づいて、どのアクセス方法が最適であるかを、検索要求を受ける前に判断しておく。よって、この方法では、クライアント装置1からの検索要求時の判断処理が短縮され、より高速な検索処理が可能になる。
ステップS2において、アクセス方法選択手段22は、予め用意されている3つのアクセス方法(第1の方法、第2の方法、第3の方法)の中から第1の方法を選択する。ここで、第1の方法について説明する。第1の方法は、WWWサーバ2のCGIソフト21からデータベースサーバ3へアクセスする方法である。すなわち、WWWサーバ2が、データベースサーバ3に対してSQL文(SQLコマンド)を発行し、検索結果を受け取る方法である。この第1の方法は、最も一般的な検索方法である。通常コンピュータシステムおいては、この第1の方法によるアクセスで性能が上がるように設計を行うのが一般的だが、一方で、WWWサーバ2への負荷集中による性能低下も起きやすい。図4に示すプログラムサンプル51は、このCGIプログラム21の一例である。
WWWサーバ2において、アクセス方法選択手段22により第1の方法が選択されると、DBアクセス実行手段23は、プログラム保持手段24のDB問合/結果取得プログラム26に基づいて、データベースサーバ3へのアクセスを実行する。このときのイメージを図3に示す。DB問合/結果取得プログラム26は、上述したように、WWWサーバ2に、入力情報を基にSQL文を生成する処理、データベースサーバ3にSQL文を送信して検索要求を行う処理、データベースサーバ3から結果情報を受信する処理を実行させるためのプログラムである。よって、DBアクセス実行手段23は、まず、クライアント装置1から受信した入力情報を基にSQL文を生成し、データベースサーバ3にSQL文を送信して検索要求(検索依頼・問い合せ)を行う(ステップS3)。
データベースサーバ3において、データベース検索手段32は、WWWサーバ2から検索要求されたSQL文を実行し、データベース32内のデータを検索し、検索結果を示す結果情報を、要求元のWWWサーバ2に送信する(ステップS4)。
WWWサーバ2において、動的HTML生成手段25は、データベースサーバ3から送信されて来る結果情報を受信し、受信した結果情報に基づいて自動的に画面表示用のHTML文書を生成し、生成したHTML文書(HTML結果情報)をクライアント装置1へ送信する(ステップS5)。
クライアント装置1において、WWWサーバ2から送信されて来るHTML文書(HTML結果情報)は、閲覧ソフト11の基本機能により、表示デバイスに出力され、検索結果として画面表示される(ステップS6)。この表示により、ユーザは、自分が要求した検索結果を認識できる。
次に、動作例2として、第2の方法が選択される場合について、図5〜図7を参照して説明する。
図5におけるステップS1〜S2の動作は、図2におけるステップS1〜S2の動作と同じであるので、ここでの説明は省略する。
ステップS2において、アクセス方法選択手段22は、上述した選択処理により、予め用意されている3つのアクセス方法(第1の方法、第2の方法、第3の方法)の中から第2の方法を選択する。ここで、第2の方法について説明する。第2の方法は、クライアント装置1の閲覧ソフト11からデータベースサーバ3へアクセスする方法である。すなわち、クライアント装置1が、WWWサーバ2を介さずに、直接データベースサーバ3に対してSQL文を発行し、検索結果を取得する方法である。この第2の方法は、近年、PC等のクライアント装置1の性能向上に伴い使用されるようになってきた方法である。第2の方法では、画面の切り替えが無いので動作が早く、また、負荷が分散され性能低下が起きにくい。その一方でクライアントソフトの違いによるプログラム実行の可否が問題になる。また、ユーザに対してプログラムソースを公開することになるので、セキュリティの問題が発生する場合がある。さらに、クライアント装置1にプログラムを送付する分の通信量は増加するので、検索件数が多量な場合に適している。本実施形態では、JavaScriptが備えるデータベース問合わせ機能を用いており、簡単なソース記述でアクセスが可能である。図7に示すプログラムサンプル52は、このJavaScriptプログラムの一例である。
WWWサーバ2において、アクセス方法選択手段22により第2の方法が選択されると、DBアクセス実行手段23は、プログラム保持手段24のDB問合/結果取得プログラム26を、クライアント装置1へ送信する(ステップS13)。
クライアント装置1において、DBアクセス実行手段13は、WWWサーバ2から送信されて来るDB問合/結果取得プログラム26を受信すると、それに基づいて、データベースサーバ3へのアクセスを実行する。このときのイメージを図6に示す。DB問合/結果取得プログラム26は、上述したように、クライアント装置1に、入力情報を基にSQL文を生成する処理、データベースサーバ3にSQL文を送信して検索要求を行う処理、データベースサーバ3から結果情報を受信する処理を実行させるためのプログラムである。よって、DBアクセス実行手段23は、まず、ユーザ要求受付手段12により受け付けられた入力情報を基にSQL文を生成し、データベースサーバ3にSQL文を送信して検索要求(検索依頼・問い合せ)を行う(ステップS14)。
データベースサーバ3において、データベース検索手段32は、クライアント装置1から検索要求されたSQL文を実行し、データベース32内のデータを検索し、検索結果を示す結果情報を、要求元のクライアント装置1に送信する(ステップS15)。
クライアント装置1において、動的HTML生成手段14は、データベースサーバ3から送信されて来る結果情報を受信し、受信した結果情報に基づいて自動的に画面表示用のHTML文書を生成する(ステップS16)。
クライアント装置1において、動的HTML生成手段14により生成されたHTML文書(HTML結果情報)は、閲覧ソフト11の基本機能により、表示デバイスに出力され、検索結果として画面表示される(ステップS17)。この表示により、ユーザは、自分が要求した検索結果を認識できる。
次に、動作例3として、第3の方法が選択される場合について、図8〜図10を参照して説明する。
図8におけるステップS1〜S2の動作は、図2におけるステップS1〜S2の動作と同じであるので、ここでの説明は省略する。
ステップS2において、アクセス方法選択手段22は、上述した選択処理により、予め用意されている3つのアクセス方法(第1の方法、第2の方法、第3の方法)の中から第3の方法を選択する。ここで、第3の方法について説明する。第3の方法は、クライアント装置1の閲覧ソフト11とWWWサーバ2のCGIプログラム21を両方使用する方法である。すなわち、クライアント装置1が、非同期通信プログラムによりWWWサーバ2のCGIプログラム21を呼び出し、検索結果を受け取る方法である。この第3の方法は、Ajax(アジャックス又はエイジャックス)と呼ばれ、JavaScriptプログラムの一種であるが、近年脚光を浴びている方法である。第3の方法では、画面処理と問合わせ処理が非同期で並行して行われ、画面の一部分のみを書き替えるため動作が速く、また、クライアント装置1側で処理が行われるため性能低下が起きにくい。さらに、クライアントの違いやセキュリティの問題が少ないという特徴がある。ただし、クライアントプログラムが上記第2の方法に比べて複雑になるのが欠点である。図10に示すプログラムサンプル53は、このプログラムの一例である。
WWWサーバ2において、アクセス方法選択手段22により第3の方法が選択されると、DBアクセス実行手段23は、プログラム保持手段24の非同期通信プログラム27を、クライアント装置1へ送信する(ステップS23)。
クライアント装置1において、DBアクセス実行手段13は、WWWサーバ2から送信されて来る非同期通信プログラム27を受信すると、それに基づいて、WWWサーバ2にデータベースサーバ3へのアクセスを実行させる(ステップS24)。このときのイメージを図9に示す。非同期通信プログラム27は、上述したように、クライアント装置1に、WWWサーバ2との間で非同期の通信処理を実行させるためのプログラムである。つまり、DBアクセス実行手段13は、非同期通信プログラム27の実行により、WWWサーバ2のCGIプログラム21を呼び出し、DB問合/結果取得プログラム26の実行を依頼する。これにより、非同期通信プログラム13と、WWWサーバ2のDB問合/結果取得プログラム26とが連携し、画面処理と問合わせ処理(検索要求処理)とが非同期で並行して行われる。
WWWサーバ2において、DBアクセス実行手段23は、DB問合/結果取得プログラム26に基づいて、クライアント装置1から受信した入力情報を基にSQL文を生成し、データベースサーバ3にSQL文を送信して検索要求(検索依頼・問い合せ)を行う(ステップS25)。
データベースサーバ3において、データベース検索手段32は、クライアント装置1から検索要求されたSQL文を実行し、データベース32内のデータを検索し、検索結果を示す結果情報を、WWWサーバ2に送信する(ステップS26)。
WWWサーバ2において、DBアクセス実行手段23は、データベースサーバ3から送信されて来る結果情報を受信すると、その結果情報をクライアント装置1へ転送する(ステップS27)。
クライアント装置1において、動的HTML生成手段14は、WWWサーバ2から送信されて来る結果情報を受信し、受信した結果情報に基づいて自動的に画面表示用のHTML文書を生成する(ステップS28)。
クライアント装置1において、動的HTML生成手段14により生成されたHTML文書(HTML結果情報)は、閲覧ソフト11の基本機能により、表示デバイスに出力され、検索結果として画面表示される(ステップS29)。この表示により、ユーザは、自分が要求した検索結果を認識できる。
以上説明したように、本実施形態のデータベース検索システムは、データベースサーバ3へのアクセス方法(問い合せ方法)として、WWWサーバ2からアクセスする第1の方法、クライアント装置1からアクセスする第2の方法、クライアント装置1とWWWサーバ2を組み合わせてアクセスする第3の方法を予め用意しておき、WWWサーバ2の負荷状況に応じて、3つの方法の中から最適なものを選択できる(切り替えられる)。従って、本実施形態によれば、リソースの増大を招くことなく、高速なデータベース検索を可能にできる。
以上、本発明の実施形態について説明したが、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変形が可能である。
例えば、上述した実施形態における動作は、ハードウェア、または、ソフトウェア、あるいは、両者の複合構成によって実行することも可能である。
ソフトウェアによる処理を実行する場合には、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれているコンピュータ内のメモリにインストールして実行させてもよい。あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させてもよい。
例えば、プログラムは、記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことが可能である。あるいは、プログラムは、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的、あるいは、永続的に格納(記録)しておくことが可能である。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することが可能である。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送してもよい。または、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送してもよい。コンピュータでは、転送されてきたプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることが可能である。
また、上記実施形態で説明した処理動作に従って時系列的に実行されるのみならず、処理を実行する装置の処理能力、あるいは、必要に応じて並列的にあるいは個別に実行するように構築することも可能である。
また、上記実施形態で説明したシステムは、複数の装置の論理的集合構成にしたり、各装置の機能を混在させたりするように構築することも可能である。
本発明によれば、クライアント・サーバシステムのデータベースアクセス(検索要求)時において、検索結果のデータが大量であり、かつ、短い時間で検索結果が応答される必要がある場合といった用途に適用できる。一般的にこのような場合には、システムの増強等のリソース強化によって解決するが、それが不可能な場合に本発明は適している。例えば、本発明によれば、データベースから同義語を検索する情報検索装置や、情報検索装置をコンピュータに実現するためのプログラムといった用途に適用できる。また、同義語を検索する機能をパソコンやワードプロセッサに搭載されている、かな漢字変換装置や、コンピュータにかな漢字変換機能といった用途にも適用できる。
1 クライアント装置
2 WWWサーバ(サーバの一例)
3 データベースサーバ
11 閲覧ソフト
12 ユーザ要求受付手段
13 DBアクセス実行手段(クライアント装置側実行手段の一例)
14 動的HTML生成手段(HTML生成手段の一例)
21 CGIソフト
22 アクセス方法選択手段(選択手段の一例)
23 DBアクセス実行手段(サーバ側実行手段の一例)
24 プログラム保持手段
25 動的HTML生成手段(HTML生成手段の一例)
26 DB問合/結果取得プログラム(第1のプログラムの一例)
27 非同期通信プログラム(第2のプログラムの一例)
31 データベース
32 データベース検索手段

Claims (13)

  1. クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続さ
    れ、前記クライアント装置から前記サーバに対して検索要求がされると、前記データベー
    スサーバへのアクセスと前記データベースサーバが有するデータベースの検索が行われ、
    前記クライアント装置から検索結果が出力されるデータベース検索システムであって、
    前記サーバは、
    前記データベースサーバへアクセスするための複数の方法と、前記サーバの複数の負荷
    状況とが対応付けられた設定を予め保持しており、
    前記サーバの負荷状況を所定のタイミングで検出し、前記検出の結果と前記設定に応じ
    て、最適な方法を選択する選択手段と、
    前記クライアント装置から検索要求がされた場合、前記選択手段によって選択された方
    法を、前記サーバ又は前記クライアント装置に実行させるためのサーバ側実行手段と、
    を有することを特徴とするデータベース検索システム。
  2. 前記データベースサーバへアクセスするための複数の方法は、
    前記サーバからアクセスする第1の方法、前記クライアント装置からアクセスする第2
    の方法、前記クライアント装置と前記サーバを組み合わせてアクセスする第3の方法であ
    ることを特徴とする請求項1記載のデータベース検索システム。
  3. 前記サーバは、
    前記クライアント装置から要求された検索に関する入力情報を基にSQL文を生成し、
    前記SQL文を前記データベースサーバに送信し、前記データベースサーバの前記SQL
    文の実行により得られた検索結果を示す結果情報を受信するための第1のプログラムを有
    しており、
    前記サーバ側実行手段は、
    前記選択手段によって前記第1の方法が選択された場合、前記第1のプログラムを実行
    し、
    前記データベースサーバから前記結果情報を受信すると、前記結果情報を前記クライア
    ント装置へ送信することを特徴とする請求項2記載のデータベース検索システム。
  4. 前記サーバは、
    前記クライアント装置から要求された検索に関する入力情報を基にSQL文を生成し、
    前記SQL文を前記データベースサーバに送信し、前記データベースサーバの前記SQL
    文の実行により得られた検索結果を示す結果情報を受信するための第1のプログラムを有
    しており、
    前記サーバ側実行手段は、
    前記選択手段によって前記第2の方法が選択された場合、前記第1のプログラムを前記
    クライアント装置へ送信し、
    前記クライアント装置が有するクライアント装置側実行手段は、
    前記第1のプログラムに基づいて、前記クライアント装置から要求された検索に関する
    入力情報を基にSQL文を生成し、前記SQL文を前記データベースサーバに送信し、前
    記データベースサーバの前記SQL文の実行により得られた検索結果を示す結果情報を受
    信することを特徴とする請求項2記載のデータベース検索システム。
  5. 前記サーバは、
    前記クライアント装置から要求された検索に関する入力情報を基にSQL文を生成し、
    前記SQL文を前記データベースサーバに送信し、前記データベースサーバの前記SQL
    文の実行により得られた検索結果を示す結果情報を受信するための第1のプログラムと、
    前記クライアント装置に、前記サーバとの間で非同期の通信を実行させるための第2のプ
    ログラムとを有しており、
    前記サーバ側実行手段は、
    前記選択手段によって前記第3の方法が選択された場合、前記第2のプログラムを前記
    クライアント装置へ送信し、
    前記クライアント装置が有するクライアント装置側実行手段は、
    前記第2のプログラムに基づいて、前記サーバ側実行手段に対して、前記第1のプログ
    ラムを実行するように依頼し、
    前記サーバ側実行手段は、
    前記クライアント装置側実行手段からの依頼に基づいて、前記第1のプログラムを実行
    し、
    前記データベースサーバから前記結果情報を受信すると、前記結果情報を前記クライア
    ント装置へ送信することを特徴とする請求項2記載のデータベース検索システム。
  6. 前記選択手段は、
    前記クライアント装置からの検索要求を受信したときに前記サーバの負荷状況を検出し
    、前記検出の結果と前記設定に応じて、最適な方法を選択することを特徴とする請求項1
    から5のいずれか1項に記載のデータベース検索システム。
  7. 前記選択手段は、
    前記クライアント装置からの検索要求を受信する前に定期的に前記サーバの負荷状況を
    検出し、前記検出の結果と前記設定に応じて、最適な方法を定期的に選択することを特徴
    とする請求項1から5のいずれか1項に記載のデータベース検索システム。
  8. 前記選択手段は、
    前記サーバの負荷状況に加え、前記クライアント装置の負荷状況及び前記ネットワーク
    の負荷状況のうち少なくとも1つを所定のタイミングで検出し、前記検出の結果と前記設
    定に応じて、最適な方法を選択することを特徴とする請求項1から7のいずれか1項に記
    載のデータベース検索システム。
  9. 前記クライアント装置及び前記サーバの少なくとも1つは、
    前記データベースサーバにより実行された検索結果を示す結果情報に基づいて、自動的
    に画面表示用のHTML文書を生成するHTML生成手段を有することを特徴とする請求
    項1から8のいずれか1項に記載のデータベース検索システム。
  10. クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続さ
    れているときに、前記クライアント装置から前記サーバに対して検索要求がされると、前
    記データベースサーバへのアクセスと前記データベースサーバが有するデータベースの検
    索が行われ、前記クライアント装置から検索結果が出力されるデータベース検索方法であ
    って、
    前記サーバは、
    前記データベースサーバへアクセスするための複数の方法と、前記サーバの複数の負荷
    状況とが対応付けられた設定を予め保持する設定保持ステップと、
    前記サーバの負荷状況を所定のタイミングで検出し、前記検出の結果と前記設定に応じ
    て、最適な方法を選択する選択ステップと、
    前記クライアント装置から検索要求がされた場合、前記選択ステップで選択された方法
    を、前記サーバ又は前記クライアント装置に実行させる実行ステップと、
    を有することを特徴とするデータベース検索方法。
  11. 前記データベースサーバへアクセスするための複数の方法は、
    前記サーバからアクセスする第1の方法、前記クライアント装置からアクセスする第2
    の方法、前記クライアント装置と前記サーバを組み合わせてアクセスする第3の方法であ
    ることを特徴とする請求項10記載のデータベース検索方法。
  12. クライアント装置と、サーバと、データベースサーバとがネットワークを介して接続さ
    れているときに、前記クライアント装置から前記サーバに対して検索要求がされると、前
    記データベースサーバへのアクセスと前記データベースサーバが有するデータベースの検
    索が行われ、前記クライアント装置から検索結果が出力されるデータベース検索方法を実
    現するためのプログラムであって、
    前記データベースサーバへアクセスするための複数の方法と、前記サーバの複数の負荷
    状況とが対応付けられた設定を予め保持する設定保持処理と、
    前記サーバの負荷状況を所定のタイミングで検出し、前記検出の結果と前記設定に応じ
    て、最適な方法を選択する選択処理と、
    前記クライアント装置から検索要求がされた場合、前記選択処理で選択された方法を、
    前記サーバ又は前記クライアント装置に実行させる実行処理と、
    をコンピュータに実行させることを特徴とするプログラム。
  13. 前記データベースサーバへアクセスするための複数の方法は、
    前記サーバからアクセスする第1の方法、前記クライアント装置からアクセスする第2
    の方法、前記クライアント装置と前記サーバを組み合わせてアクセスする第3の方法であ
    ることを特徴とする請求項12記載のプログラム。
JP2009004954A 2009-01-13 2009-01-13 データベース検索システム、情報処理装置、データベース検索方法及びプログラム Expired - Fee Related JP5326588B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009004954A JP5326588B2 (ja) 2009-01-13 2009-01-13 データベース検索システム、情報処理装置、データベース検索方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009004954A JP5326588B2 (ja) 2009-01-13 2009-01-13 データベース検索システム、情報処理装置、データベース検索方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2010165043A JP2010165043A (ja) 2010-07-29
JP5326588B2 true JP5326588B2 (ja) 2013-10-30

Family

ID=42581172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009004954A Expired - Fee Related JP5326588B2 (ja) 2009-01-13 2009-01-13 データベース検索システム、情報処理装置、データベース検索方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5326588B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0668032A (ja) * 1992-08-19 1994-03-11 Toshiba Corp データベースシステム
JP3277654B2 (ja) * 1993-12-20 2002-04-22 株式会社日立製作所 異種データベース・アクセス・システム
US20040111510A1 (en) * 2002-12-06 2004-06-10 Shahid Shoaib Method of dynamically switching message logging schemes to improve system performance
JP2006285601A (ja) * 2005-03-31 2006-10-19 Fujitsu Ltd ファイル配信方法とそれを実現するクライアント端末

Also Published As

Publication number Publication date
JP2010165043A (ja) 2010-07-29

Similar Documents

Publication Publication Date Title
JP6363738B2 (ja) ネイティブアプリケーションに関する検索結果
JP6173546B2 (ja) リダイレクトの低減
WO2017084508A1 (zh) 自动埋点方法和装置
EP3161678B1 (en) Deep links for native applications
CN107250981B (zh) 单页应用中的路由动态加载
US9547717B2 (en) Administration of search results
JP5551938B2 (ja) クライアントデバイスに表示する情報コンテンツを提供する方法及び装置
US10885143B2 (en) Determining whether an authenticated user session is active for a domain
JP6016808B2 (ja) Webアクセスを実装するための方法およびサーバシステム
US9154522B2 (en) Network security identification method, security detection server, and client and system therefor
WO2019191177A1 (en) Network address management systems and methods
KR101689745B1 (ko) 스크립트에 의한 동적 리소스 정보를 처리하는 웹 브라우징 시스템 및 방법
JP2009037501A (ja) 情報検索装置、情報検索方法およびプログラム
CN111651703A (zh) 一种页面跳转方法、装置、电子设备及可读存储介质
CN104932910A (zh) 应用程序接口扩展的方法及系统
US20120254233A1 (en) Information processing system, information processor, and computer program product
US10095791B2 (en) Information search method and apparatus
US11003728B1 (en) Native application search results
JP5326588B2 (ja) データベース検索システム、情報処理装置、データベース検索方法及びプログラム
EP3642727B1 (en) Resource pre-fetch using age threshold
US11210453B2 (en) Host pair detection
WO2016011699A1 (zh) 一种用于配置浏览器的导航页的方法与装置
CN116070052A (zh) 界面数据传输方法、装置、终端及存储介质
KR20130103239A (ko) 번역 기능을 구비한 웹 브라우징 서비스 제공 방법, 서버 및 단말
JP2012173946A (ja) ウェブページ表示装置およびフォーカス制御方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20110920

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130416

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130605

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130708

R150 Certificate of patent or registration of utility model

Ref document number: 5326588

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees