(57)【要約】      （修正有）【課題】入力検索処理とN台の振り分け先データベースの対応関係を記述した対応関係表作成に必要な時間を短縮する。【解決手段】データベース装置１０１〜１０Ｎにおいて、処理負荷分散装置１００から要求されたＭ個の処理に対するアクセス位置情報を、アクセス位置情報記憶手段１３１に格納されているデータアクセス経路情報（全部でL個）を用いて、処理と検索するデータアクセス位置情報を推定して処理負荷分散装置に返却し、処理負荷分散装置で当該データアクセス位置情報に基づいて対応関係表を生成し、当該対応関係表に基づいて処理をデータベース装置に振り分ける。データベース装置では、振り分けられた処理を実行し、処理に対するデータアクセス経路情報をアクセス位置情報記憶手段に格納すると共に、他のデータベース装置とデータの内容を同期させる。【選択図】図１
2012190348.tif 000002
【特許請求の範囲】
【請求項１】
データ内容が同期されたＮ台のデータベースに対して検索処理を負荷分散のために振り分ける処理負荷分散システムであって、
処理負荷分散装置とＮ台のデータベース装置から構成され、
前記処理負荷分散装置は、
対応関係表を格納した対応関係表記憶手段と、
M個の処理に対するアクセス位置情報を前記データベース装置から取得し、該M個の処理がN台のデータベースへのアクセス位置が重複しないように振り分けルールを定め、最終的に処理内容と振り分けるデータベースの対応関係表を作成し、前記対応関係表記憶手段に格納する対応関係表初期化手段と、
処理入力装置から入力された処理内容に基づいて、前記対応関係表記憶手段を参照し、どのデータベース装置に振り分けた場合にキャッシュヒット率が向上するかを判断する対応関係決定手段と、
前記対応関係決定手段から対応関係情報が付与された処理内容を取得し、該処理内容に付与された情報と統計情報に基づいて、処理を振り分けるデータベース装置を決定し、決定したデータベース装置に該処理内容を送信する処理振り分け手段と、
前記データベース装置から処理の実行結果を取得して出力する処理結果受信手段と、
を有し、
前記データベース装置は、
前記処理負荷分散装置から送信された前記処理内容を受信し、処理結果を返却する処理送受信手段と、
前記処理負荷分散装置から振り分けられた処理を実行するデータベース処理手段と、
処理に対するデータアクセス経路情報を格納するアクセス位置情報記憶手段と、
前記対応関係表初期化手段から要求されたＭ個の処理に対するアクセス位置情報を、前記アクセス位置情報記憶手段に格納されている前記データアクセス経路情報（全部でL個）を用いて、処理と検索するデータアクセス位置情報を推定して該対応関係表初期化手段に返却するアクセス位置情報管理手段と、
他のデータベース装置とデータの内容を同期させるデータ同期手段と、
を有することを特徴とする処理負荷分散システム。
【請求項２】
前記データベース装置の前記アクセス位置情報管理手段は、
前記アクセス位置情報記憶手段からｉ番目のデータアクセス経路情報とその他のL−１個のデータアクセス経路の通過傾向に基づいて、処理と検索するデータアクセス位置情報の対応関係を推定し、該処理と該処理に対応する１つ以上のデータアクセス位置情報を前記データアクセス位置情報とする対応推定手段を含む
請求項１記載の処理負荷分散システム。
【請求項３】
前記対応推定手段は、
通過経路回数を含む前記データアクセス経路情報と処理毎のデータアクセス位置情報が対応付けて格納されている前記アクセス位置情報記憶手段を参照し、各データアクセス経路相互の通過経路回数の相関が高いものを、同一の処理によって通過したと推定し、同一の処理によって通過した経路情報に対応する処理と、該処理に対応するデータアクセス位置情報を取得する手段を含む
請求項２記載の処理負荷分散システム。
【請求項４】
データ内容が同期されたＮ台のデータベースに対して検索処理を負荷分散のために振り分ける処理負荷分散方法であって、
処理負荷分散装置とＮ台のデータベース装置から構成されるシステムにおいて、
前記データベース装置のアクセス位置情報管理手段が、
前記処理負荷分散装置からM個の処理に対するアクセス位置情報の要求を取得すると、アクセス位置情報記憶手段に格納されているデータアクセス経路情報（全部でL個）を用いて、処理と検索するデータアクセス位置情報を推定して該処理負荷分散装置に返却するアクセス位置情報推定ステップと、
前記処理負荷分散装置の対応関係表初期化手段が、
前記データベース装置から取得した前記データアクセス位置情報を利用し、M個の処理がN台のデータベースへのアクセス位置が重複しないように振り分けルールを定め、最終的に処理内容と振り分けるデータベースの対応表を作成し、対応関係表記憶手段に格納する対応関係表作成ステップと、
前記処理負荷分散装置の対応関係決定手段が、
処理入力装置から入力された処理内容に基づいて、前記対応関係表記憶手段を参照し、前記データベース装置のいずれに振り分けた場合にキャッシュヒット率が向上するかを判断する対応関係決定ステップと、
前記処理負荷分散装置の処理振り分け手段が、
前記対応関係決定ステップにより得られた対応関係情報が付与された処理内容を取得し、該処理内容に付与された情報と統計情報に基づいて、処理を振り分けるデータベース装置を決定し、決定したデータベース装置に該処理内容を送信する処理振り分けステップと、
前記データベース装置のデータベース処理手段が、
前記処理負荷分散装置から送信された前記処理内容の処理を行い、該処理に対するデータアクセス経路情報を前記アクセス位置情報記憶手段に格納するデータベース処理ステップと、
前記データベース装置の同期手段が、
前記データベース処理ステップによる処理によるデータ記憶手段のデータの内容を他のデータベース装置と同期させる同期ステップと、
前記処理負荷分散装置の処理結果受信手段が、
前記データベース装置から処理の実行結果を取得して出力する処理結果受信ステップと、
を行うことを特徴とする処理負荷分散方法。
【請求項５】
前記アクセス位置情報推定ステップは、
前記アクセス位置情報記憶手段からｉ番目のデータアクセス経路情報とその他のL−１個のデータアクセス経路の通過傾向に基づいて、処理と検索するデータアクセス位置情報の対応関係を推定し、該処理と該処理に対応する１つ以上のデータアクセス位置情報を前記データアクセス位置情報とする対応推定ステップを含む
請求項４記載の処理負荷分散方法。
【請求項６】
前記対応推定ステップは、
通過経路回数を含む前記データアクセス経路情報と処理毎のデータアクセス位置情報が対応付けて格納されている前記アクセス位置情報記憶手段を参照し、各データアクセス経路相互の通過経路回数の相関が高いものを、同一の処理によって通過したと推定し、同一の処理によって通過した経路情報に対応する処理と、該処理に対応するデータアクセス位置情報を取得する
請求項５記載の処理負荷分散方法。
【請求項７】
データ内容が同期されたＮ台のデータベースに対して検索処理を負荷分散のために振り分けるための処理負荷分散装置とＮ台のデータベース装置から構成される処理負荷分散システムにおけるデータベース装置であって、
前記処理負荷分散装置から送信された前記処理内容を受信し、処理結果を返却する処理送受信手段と、
前記処理負荷分散装置から振り分けられた処理を実行するデータベース処理手段と、
実行された処理に対するデータアクセス経路情報を格納するアクセス位置情報記憶手段と、
前記処理負荷分散装置からＭ個の処理に対するアクセス位置情報が要求されると、前記アクセス位置情報記憶手段に格納されている前記データアクセス経路情報（全部でL個）を用いて、処理と検索するデータアクセス位置情報を推定して該処理負荷分散装置に返却するアクセス位置情報管理手段と、
他のデータベース装置とデータの内容を同期させるデータ同期手段と、
を有することを特徴とするデータベース装置。
【請求項８】
前記アクセス位置情報管理手段は、
前記アクセス位置情報記憶手段からｉ番目のデータアクセス経路情報とその他のL−１個のデータアクセス経路の通過傾向に基づいて、処理と検索するデータアクセス位置情報の対応関係を推定し、該処理と該処理に対応する１つ以上のデータアクセス位置情報を前記データアクセス位置情報とする対応推定手段を含む
請求項７記載のデータベース装置。
【請求項９】
前記対応推定手段は、
通過経路回数を含む前記データアクセス経路情報と処理毎のデータアクセス位置情報が対応付けて格納されている前記アクセス位置情報記憶手段を参照し、各データアクセス経路相互の通過経路回数の相関が高いものを、同一の処理によって通過したと推定し、同一の処理によって通過した経路情報に対応する処理と、該処理に対応するデータアクセス位置情報を取得する手段を含む
請求項８記載のデータベース装置。
【請求項１０】
コンピュータを、
請求項７乃至９記載のデータベース装置の各手段として機能させるための処理負荷分散プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理負荷分散システム及び方法及びデータベース装置及び処理負荷分散プログラムに係り、特に、データ内容が同期されたＮ台のデータベースにSQL（Structured Query Language）で記述された検索処理を負荷分散のために振り分ける処理負荷分散システム及び方法及びデータベース装置及び処理負荷分散プログラムに関する。
【背景技術】
【０００２】
近年インターネット上には様々なサービスが存在し、一般利用者に広く普及している環境において、サービス上のデータを管理するデータベース層における性能問題が指摘されている。そのため、インターネット向けのシステムでは、入力クエリを特定のルールに従い振り分けることで負荷を分散させている。
【０００３】
従来の負荷分散の例として、処理が検索するデータアクセス位置を考慮して、データアクセス位置が重複しないように処理を振り分ける技術がある。当該技術は、SQLで記述された処理が入力される度に、データアクセス位置情報として、処理で検索した全てのデータ位置情報を直接利用するものである（例えば、非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】山室健 et al., "レプリケーションのバッファ内容重複排除による応答速度改善手法", DBS研究会、2010.8.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術は、SQLで記述された処理が入力される度に、データアクセス位置情報として、処理で検索した全てのデータ位置情報を直接利用するため、対応関係表を作成するために必要なデータ量が大きくなり、作成時間が非常に長くなってしまうという問題がある。
【０００６】
本発明は、上記の点に鑑みなされたもので、従来技術のキャッシュヒット率を維持したまま入力検索処理とN台の振り分け先データベースの対応関係を記述した対応関係表作成に必要な時間を短縮することが可能な処理負荷分散システム及び方法及びデータベース装置及び処理負荷分散プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明は、データ内容が同期されたＮ台のデータベースに対して検索処理を負荷分散のために振り分ける処理負荷分散システムであって、
処理負荷分散装置とＮ台のデータベース装置から構成され、
前記処理負荷分散装置は、
対応関係表を格納した対応関係表記憶手段と、
M個の処理に対するアクセス位置情報を前記データベース装置から取得し、該M個の処理がN台のデータベースへのアクセス位置が重複しないように振り分けルールを定め、最終的に処理内容と振り分けるデータベースの対応関係表を作成し、前記対応関係表記憶手段に格納する対応関係表初期化手段と、
処理入力装置から入力された処理内容に基づいて、前記対応関係表記憶手段を参照し、どのデータベース装置に振り分けた場合にキャッシュヒット率が向上するかを判断する対応関係決定手段と、
前記対応関係決定手段から対応関係情報が付与された処理内容を取得し、該処理内容に付与された情報と統計情報に基づいて、処理を振り分けるデータベース装置を決定し、決定したデータベース装置に該処理内容を送信する処理振り分け手段と、
前記データベース装置から処理の実行結果を取得して出力する処理結果受信手段と、
を有し、
前記データベース装置は、
前記処理負荷分散装置から送信された前記処理内容を受信し、処理結果を返却する処理送受信手段と、
前記処理負荷分散装置から振り分けられた処理を実行するデータベース処理手段と、
前記処理に対するデータアクセス経路情報を格納するアクセス位置情報記憶手段と、
前記対応関係表初期化手段から要求されたＭ個の処理に対するアクセス位置情報を、前記アクセス位置情報記憶手段に格納されている前記データアクセス経路情報（全部でL個）を用いて、処理と検索するデータアクセス位置情報を推定して該対応関係表初期化手段に返却するアクセス位置情報管理手段と、
他のデータベース装置とデータの内容を同期させるデータ同期手段と、を有することを特徴とする。
【０００８】
また、本発明は、前記データベース装置の前記アクセス位置情報管理手段において、前記アクセス位置情報記憶手段からｉ番目のデータアクセス経路情報とその他のL−１個のデータアクセス経路の通過傾向に基づいて、処理と検索するデータアクセス位置情報の対応関係を推定し、該処理と該処理に対応する１つ以上のデータアクセス位置情報を前記データアクセス位置情報とする対応推定手段を含む。
【０００９】
また、本発明は、前記対応推定手段において、通過経路回数を含む前記データアクセス経路情報と処理毎のデータアクセス位置情報が対応付けて格納されている前記アクセス位置情報記憶手段を参照し、各データアクセス経路相互の通過経路回数の相関が高いものを、同一の処理によって通過したと推定し、同一の処理によって通過した経路情報に対応する処理と、該処理に対応するデータアクセス位置情報を取得する手段を含む。
【発明の効果】
【００１０】
上記のように、本発明は、データ内容が同期されたN台のデータベースにSQLで記述された検索処理を負荷分散のために振り分ける場合に、従来のキャッシュヒット率を維持したまま、入力された検索処理とN台の振り分け先のデータベースの対応関係を記述した対応関係表を作成するために必要な時間を短縮(約１/6)することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施の形態におけるシステム構成図である。
【図２】本発明の一実施の形態における全体の処理のフローチャートである。
【図３】本発明の一実施の形態における図２のS200の詳細フローチャートである。
【図４】本発明の一実施の形態における図３のS310の詳細フローチャートである。
【図５】本発明の一実施の形態における同一処理によって通過されたデータアクセス経路の推定方法を示す図である。
【図６】本発明の一実施の形態における処理と、データアクセス経路／位置の関係である。
【図７】本発明の一実施の形態における図４のS415の詳細スローチャートである。
【図８】従来技術による処理と検索するデータアクセス位置情報取得処理のフローチャートである。
【図９】対応関係表作成に必要なデータ量とキャッシュヒット率である。
【発明を実施するための形態】
【００１２】
以下図面と共に、本発明の実施の形態を説明する。
【００１３】
図１は、本発明の一実施の形態におけるシステム構成を示す。
【００１４】
同図に示すシステムは、初期化情報入力装置１、処理入力装置２、処理負荷分散装置１００、結果出力装置３、複数のマシン１０から構成される。
【００１５】
処理負荷分散装置１００は、処理入力装置３から実行する処理を受け取り、データベース装置１０１〜１０Nにこの処理を振り分けることで、最終的に処理結果を結果出力装置2に出力する。
【００１６】
処理負荷分散装置１００は、対応関係表初期化部１１０、アクセス位置送受信部１２０、対応関係表記憶部１３０、処理と振り分けデータベースの対応関係決定部（以下、「対応関係決定部」と記す）１４０、処理振り分け部１５０、処理結果受信部１６０から構成される。
【００１７】
データベース装置１０１〜１０Nは、それぞれ、アクセス位置情報送受信部１１、アクセス位置情報管理部１２０、アクセス位置情報記憶部１３、キャッシュ管理部１４、キャッシュ記憶部１５、データ同期部１６、データ記憶部１７、データベース処理部１８、データベース処理送受信部１９から構成される。
【００１８】
データベース装置１０１〜１０Nは、データ同期部１６を介してデータの同期を行っているため、データベース装置１０１が受け取った処理はどのデータベース装置でも実行可能であり、結果は同じとなる。但し、キャッシュ管理部１４が管理しているキャッシュ上に存在するデータによって処理速度が異なる（処理に必要なデータがキャッシュ上に存在する場合、これを"キャッシュヒット"したと呼び、処理速度を向上させる）。処理負荷分散装置１００は、このキャッシュ上に存在するデータを最適化できるように、処理と振り分けるデータベース装置の対応付けを事前に記録した対応関係表記憶部１３０を参照し、処理を振り分けることで、データベース装置１０１〜１０Nのキャッシュヒット率の向上を図る。また、この対応関係表記憶部１３０を作成するために、事前に初期化処理として初期化情報入力装置１から最適化を行うM個の処理(想定するワークロード)を入力する。そして、そのM個の処理をどのように振り分けた場合にキャッシュ上のデータを効率化できるかをデータベース装置１０１に問い合わせ、最終的に処理対応表記憶部１３０に処理対応表を作成する。
【００１９】
以下に、処理負荷分散装置１００の各構成要素について説明する。
【００２０】
対応関係決定部１４０は、処理入力装置２から入力された処理内容を取得し、対応関係表記憶部１３０を参照し、入力された処理をデータベース装置１０１〜１０Nのどれに振り分けた場合に、キャッシュヒット率が向上するかを判断し、対応関係情報が付与された処理内容を処理振り分け部１５０に出力する。
【００２１】
処理振り分け部１５０は、対応関係決定部１４０から対応関係情報が付与された処理内容を取得して、当該処理内容に付与された情報とCPUや入出力の統計情報に基づいて、処理を振り分けるデータベース装置１０を決定し、そのデータベース装置１０に処理を送信する。
【００２２】
処理結果受信部１６０は、処理を振り分けた先のデータベース装置１０から入力された処理の実行結果を取得して、結果出力装置３に出力する。
【００２３】
対応関係表初期化部１１０は、初期化情報入力装置１から入力されたM個の処理と、当該処理負荷分散装置１００のアクセス位置送受信部１２０とデータベース装置１０１のアクセス位置情報送受信部１１を利用することで、M個の処理内容を実行する仮定で得られた全てのデータアクセス位置情報（処理と検索するデータアクセス位置情報の組情報）を取得し、この情報を利用することで処理とデータベース装置１０の対応関係を決定し、対応関係表記憶部１３０に格納する。
【００２４】
アクセス位置情報送受信部１２０は、対応関係表初期化部１１０を介して入力された処理を、データベース装置１０１のアクセス位置情報送受信部１１に送信し、当該処理に対応するアクセス位置情報を取得する。
【００２５】
次に、データベース装置１０１〜１０Nの構成について説明する。
【００２６】
各データベース装置１０１〜１０Nは、全て同様の構成を有し、処理負荷分散装置１００の処理振り分け部１５０から受信した処理の実行を行う。処理の実行を行う際に必要になったデータをキャッシュ管理部１４を利用して取得する。この際、キャッシュ上にないデータはキャッシュ管理部１４がキャッシュ記憶部１５から取得し、キャッシュ上のデータとの入れ替えを行う。また、併せて処理負荷分散装置１００の対応関係表初期化部１１０から送信されたM個の処理を実行して得られるアクセス位置情報を取得し、処理負荷分散装置１００に送り返す。
【００２７】
データベース処理受信部１９は、処理負荷分散装置１００の処理振り分け部１５０から取得した処理をデータベース処理部１８に出力し、処理結果を処理結果受信部１６０に送信する。
【００２８】
アクセス位置情報管理部１２は、対応関係表初期化部１１０から送られたM個の処理に関しては、M個の処理実行後にアクセス位置情報記憶部１３に問い合わせを行うことで、これらの処理を実行する過程で得られたアクセス位置情報を取得し、処理負荷分散装置１００に送信する処理も行う。
【００２９】
アクセス位置情報送受信部１１は、データベース処理部１８が実行した処理における、インデックスの統計情報(参照したインデックス識別子と、参照カウント値)を収集し、処理負荷分散装置１００のアクセス位置情報送受信部１２０に返却する。
【００３０】
データベース処理部１８は、必要な情報をキャッシュ管理部１４から取得し、処理結果を生成する。
【００３１】
キャッシュ管理部１４は、データベース処理部１８から要求されたデータを要求データ識別子からキャッシュ記憶部１５を検索し、キャッシュ上にある場合はそれをデータベース処理部１８に返却し、ない場合は、データ記憶部１７から検索を行い、キャッシュ上のデータと入れ替えを行い、そのデータをデータベース処理部１８に返却する。
【００３２】
データ同期部１６は、データ記憶部１７で更新処理が行われた場合、その対になるほかのデータベース装置１０のデータ記憶部にその更新処理を同様に実施し、データの内容を同期させる。
【００３３】
次に、上記のシステムにおける一連の動作を説明する。
【００３４】
図２は、本発明の一実施の形態における全体の処理のフローチャートである。
【００３５】
ステップ２００）  処理負荷分散装置１００の対応関係表初期化部１１０は、初期化情報入力装置１から入力されたM個の処理を実行した後に得られるデータアクセス位置情報から、処理内容と振り分けるデータベース装置の対応表を作成し、対応関係表記憶部１３０に格納する。当該処理の詳細については図３にて後述する。
【００３６】
ステップ２０５）  処理負荷分散装置１００の対応関係決定部１４０は、処理入力装置２から入力があるまで待機する。
【００３７】
ステップ２１０）  対応関係決定部１４０は、処理入力装置２から処理内容が入力されると、当該処理内容を利用して対応関係表記憶部１３０の中から入力処理が対応付けられたデータベース装置を探索し、その内容を処理振り分け部１５０に出力する。
【００３８】
ステップ２１５）  処理振り分け部１５０は、CPUと入出力の負荷情報を考慮し、振り分け先のデータベース装置を決定する。なお、CPUと入出力の負荷情報は、予め統計情報として記憶媒体に格納しておき、これを参照するものとする。
【００３９】
ステップ２２０）  処理振り分け部１５０は、対応関係が付与された処理内容に基づいて、振り分け先のデータベース装置１０のデータベース処理送受信部１１に処理内容を転送する。
【００４０】
次に、上記のステップ２００の対応関係表初期化部１１０の処理について説明する。
【００４１】
図３は、本発明の一実施の形態における対応関係表初期化部の処理（S200）の詳細フローチャートである。
【００４２】
ステップ３００）  対応関係表初期化部１１０は、初期化情報入力装置１から入力されるM個の処理内容を取得し、データベース装置１０１にM個の処理内容を転送する。
【００４３】
ステップ３０５）  データベース装置１０１のデータベース処理部１８は、M個の処理を実行する。
【００４４】
ステップ３１０）  アクセス位置情報送受信部１１は、アクセス位置情報記憶部１２に問い合わせることで、データベース処理部１８がステップ３０５を実行中に得られるデータアクセス位置情報を取得する。ここでは、処理と検索するデータアクセス位置情報を取得するために、従来技術のように直接その関係を記録するのではなく、データアクセス位置の１００〜２００分の１程度の情報量であるデータアクセス経路情報(全部でL個)を利用して、処理と検索するデータアクセス位置情報を推定することで対応関係表作成に必要なデータ量の削減を可能にしている。詳細については図４で後述する。
【００４５】
ステップ３１５）  アクセス位置情報送受信部１１は、情報負荷分散装置１００のアクセス位置送受信部１２０にデータアクセス位置情報を転送する。
【００４６】
ステップ３２０）  対応関係表初期化部１１０は、アクセス位置送受信部１２０を介して取得したデータアクセス位置情報を利用し、入力されるM個の処理が、N台のデータベース装置１０へのアクセス位置が重複しないように振り分けルールを定め、最終的に処理内容と振り分けるデータベースの対応表を作成する。
【００４７】
ステップ３２５）  対応関係表初期化部１１０は、生成された対応関係表を対応関係表記憶部１３０に格納する。
【００４８】
次に、上記のステップ３１０の処理について詳細に説明する。
【００４９】
以下では、データベース装置１０１を対象として説明する。
【００５０】
図４は、本発明の一実施の形態におけるＳ３１０の詳細フローチャートである。
【００５１】
ステップ４０５）  データベース装置１０１のアクセス位置情報管理部１２は、データアクセス経路情報を順に読み込むためのポイントとして利用する変数ｉを０で初期化する。
【００５２】
ステップ４１０）  データベース装置１０１のアクセス位置情報管理部１２は、アクセス位置情報記憶部１３からｉ番目のデータアクセス経路情報(データアクセス経路情報の識別番号、M個の処理の経路通過回数、通路通過傾向が似ているデータアクセス経路情報の識別情報を管理するリスト)を読み込む。
【００５３】
ステップ４１５）  アクセス位置情報管理部１２は、入力されたｉ番目のデータアクセス経路情報と、その他の（Ｌ−１）個のデータアクセス経路の通過傾向から、処理と検索するデータアクセス位置情報の対応関係を推定する。最終的に出力したい情報は「ある処理と、その処理が検索した１つ以上のデータアクセス位置情報」の対応関係である。ある処理は、複数のデータアクセス経路を通過し、複数のデータアクセス位置情報を検索している可能性がある。そこで、データアクセス経路の通過傾向を利用し、通過傾向が似ている経路は同一の処理によって通過された経路だと推定する。より具体的には、図５に示すように、各データアクセス経路には、内部のメタデータとして処理による経路通過回数を保存しており、その各データアクセス経路相互の経路通過回数の相関が高いものを、"同一の処理によって通過された"と推定する。各データアクセス経路の先には、各データアクセス位置情報が図６に示すように対応しているため、この"同一の処理によって通過された経路情報"を用いて、ある処理と、その処理が通過（検索）した全データアクセス経路情報(各データアクセス位置情報に対応)がわかるため、最終的に目的の"処理と、検索するデータアクセス位置情報"として出力する。より具体的な方法については図７で後述する。
【００５４】
ステップ４２０）  ステップ４１５の経路通過傾向分析後のｉ番目のデータアクセス経路情報を送信用バッファ(図示せず)に保存する。
【００５５】
ステップ４２５）  アクセス位置情報管理部１２は、データアクセス位置情報のポインタを次に進める（i＝i＋１）。
【００５６】
上記のステップ４１５の経路通過傾向分析処理について説明する。
【００５７】
図７は、本発明の一実施の形態におけるＳ４１５の詳細フローチャートである。
【００５８】
ステップ５００）  アクセス位置情報管理部１２は、データアクセス経路情報を順に読み込むためのポインタとして利用する変数ｊを０で初期化する。
【００５９】
ステップ５０５）  アクセス位置情報管理部１２は、アクセス位置情報記憶部１３からｊ番目のデータアクセス経路情報(データアクセス経路情報の識別番号、M個の処理の経路通過回数、通路通過傾向が似ているデータアクセス経路情報の識別情報を管理するリスト)を読み込む。
【００６０】
ステップ５１０）  ｊ番目とｉ番目のデータアクセス経路情報内の経路通過回数を利用して相関係数を計算する。
【００６１】
ステップ５１５）  ｊ番目とｉ番目のデータアクセス経路通過回数の相関係数値が０以上であれば、アクセス位置情報記憶部１３に記録する。
【００６２】
ステップ５２０）  データアクセス位置情報のポイントを次に進める（ｊ＝ｊ＋１）。
【００６３】
ステップ５２５）  経路通過傾向が似ていると判断された組同士を、ある処理から同時検索されたデータアクセス位置集合と見做し、この情報を１つの"処理と検索するデータアクセス位置情報の組"として生成する。
【００６４】
上記の本発明の図４の処理と比較するため、以下に図４に対応する従来の処理を以下に示す。
【００６５】
図８は、従来技術による処理と検索するデータアクセス位置情報取得処理のフローチャートである。以下では、図１に示すデータベース装置１０１の構成に基づいて説明する。
【００６６】
ステップ６００）  データベース装置１０１のアクセス位置情報管理部１２は、データアクセス経路情報を順に読み込みためのポイントとして利用する変数ｉを０で初期化する。
【００６７】
ステップ６０５）  データベース装置１０１のアクセス位置情報記憶部１３にｉ番目のデータアクセス位置情報(処理と検索するデータアクセス位置情報対応関係情報)を問い合わせて取得する。
【００６８】
ステップ６１０）  取得したｉ番目のデータアクセス位置情報をデータベース装置１０1用の送信バッファ(図示せず)に書き込む。
【００６９】
ステップ６１５）  データアクセス位置情報のポインタを次に進める（ｉ=i+1）
本発明は、図４のステップ４１０において、データベース装置１０１のアクセス位置情報管理部１２が取得するデータアクセス経路情報は、従来技術のステップ６０５で取得したデータアクセス位置情報と比べ、1/100〜1/200程度の情報量であるため、これを利用して対応関係表作成に必要な「処理が参照するデータアクセス位置情報」を推定することで、図９に示すように、直後データアクセス位置情報を利用する従来技術に比べて、少ないデータ量で処理負荷分散装置１００の振り分け処理部１５０の対応関係表作成を実現し、入力データ量と対応関係表作成に必要な時間がほぼ比例するため、対応表作成時間の短縮化が可能となる。
【００７０】
つまり、本発明によれば、データ内容が同期されたＮ台のデータベースにSQLで記述された検索処理を負荷分散のために振り分ける環境下で、図９に示すように、従来技術のキャッシュヒット率（従来技術が83.62%、本発明が83.90%）を維持したまま、入力検索処理とＮ台の振り分け先データベースの対応関係を記述した処理振り分け処理部１５０が利用する対応関係表作成に必要な時間が１／６に短縮される。
【００７１】
なお、上記の処理負荷分散装置１００及び、各データベース装置１０の各構成要素の動作をプログラムとして構築し、処理負荷分散装置、データベース装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００７２】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００７３】
１  初期化情報入力装置
２  処理入力装置
３  結果出力装置
１０  データベース装置
１１  アクセス位置情報送受信部
１２  アクセス位置情報管理部
１３  アクセス位置情報記憶部
１４  キャッシュ管理部
１５  キャッシュ記憶部
１６  データ同期部
１７  データ記憶部
１８  データ処理部
１９  データベース処理送受信部
１００  処理負荷分散装置
１１０  対応関係表初期化部
１２０  アクセス位置送受信部
１３０  対応関係表記憶部
１４０  処理と振り分けデータベースの対応関係決定部
１５０  処理振り分け部
１６０  処理結果受信部
【図１】
2012190348.tif 000003
【図２】
2012190348.tif 000004
【図３】
2012190348.tif 000005
【図４】
2012190348.tif 000006
【図５】
2012190348.tif 000007
【図６】
2012190348.tif 000008
【図７】
2012190348.tif 000009
【図８】
2012190348.tif 000010
【図９】
2012190348.tif 000011