(57)【特許請求の範囲】
【請求項１】
プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される不揮発性記憶媒体と、前記プロセッサに接続され、他の装置と通信するためのネットワークインタフェースとを備えるデータ処理装置であって、
前記データ処理装置は、
処理対象となるデータを格納する対象データ格納部と、
前記データ処理装置と接続される計算機から、前記対象データ格納部に格納されるデータに対する第１の処理命令を受信する命令受信部と、
前記受信した第１の処理命令に基づいて、複数の第２の処理命令を生成する処理命令生成部と、
前記生成された各第２の処理命令の実行を前記計算機が要求する確率を表す分析需要、及び前記生成された各第２の処理命令の処理時間に関する情報である処理コストを取得し、前記取得された分析需要及び前記取得された処理コストに基づいて、前記複数の第２の処理命令の実行順序を決定するための優先度を算出し、前記算出された優先度に基づいて、前記第２の処理命令を出力する優先度管理部と、
前記受信した第１の処理命令、又は、前記優先度管理部から出力された前記第２の処理命令を実行し、前記第１の処理命令又は前記第２の処理命令の処理結果を出力する処理命令実行部と、
前記出力された処理結果に基づいて、前記計算機に出力する結果情報を生成する出力情報生成部と、
前記計算機における操作情報を取得する操作情報取得部と、を備え、
前記操作情報取得部は、前記計算機から、前記複数の第２の処理命令に含まれる処理命令の実行を要求する前記操作情報を取得した場合に、前記優先度管理部に前記操作情報を出力し、
前記優先度管理部は、
前記複数の第２の処理命令に含まれる処理命令がすでに前記処理命令実行部に出力されているか否かを判定し、
前記複数の第２の処理命令に含まれる処理命令が前記処理命令実行部に出力されていないと判定された場合に、当該処理命令の前記優先度が最大になるように前記優先度を変更することを特徴とするデータ処理装置。
【請求項２】
前記優先度管理部は、前記優先度に基づいて決定される実行順番にしたがって、前記第２の処理を前記処理命令実行部に出力することを特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記優先度管理部は、前記優先度が予め設定された閾値以上の値である前記第２の処理命令を前記処理命令実行部に出力することを特徴とする請求項１に記載のデータ処理装置。
【請求項４】
前記データ処理装置は、
前記第２の処理命令の処理内容に対応する処理時間に関する情報を格納する処理コスト格納部と、
前記各第２の処理命令の処理コストを算出する処理コスト算出部と、を備え、
前記処理命令生成部は、前記各第２の処理命令の前記分析需要を算出し、
前記処理コスト算出部は、前記第２の処理命令を解析し、前記解析の結果に基づいて前記処理コスト格納部を参照することによって、前記各第２の処理命令の処理コストを算出し、
前記優先度管理部は、前記算出された分析需要と前記算出された処理コストとを取得することを特徴とする請求項１に記載のデータ処理装置。
【請求項５】
前記処理命令生成部は、
前記受信した第１の処理命令の処理結果を解析することによって、前記計算機から次に実行を要求される可能性がある処理命令を前記複数の第２の処理命令として生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項６】
前記データ処理装置は、前記処理対象のデータ間の関連性を定義した関連性定義情報を保持し、
前記処理命令生成部は、
前記受信した第１の処理命令を解析し、
前記解析の結果に基づいて前記関連性定義情報を参照することによって、前記第１の処理命令における前記処理対象のデータと関連する関連データを検索し、
前記検索された関連データを処理するための処理命令を前記複数の第２の処理命令として生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項７】
前記データ処理装置は、さらに、前記計算機から受信した第１の処理命令の履歴情報を格納する履歴情報格納部を備え、
前記処理命令生成部は、前記履歴情報格納部から二以上の前記第１の処理命令を読み出し、前記読み出された二以上の第１の処理命令を合成することによって、前記複数の第２の処理命令を生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項８】
前記第１の処理命令は、グラフ形式のデータを処理する処理内容を含み、
前記処理命令生成部は、前記グラフ形式のデータに含まれる所定の範囲のデータ領域について処理を実行するための処理命令を前記複数の第２の処理命令として生成することを特徴とする請求項１に記載のデータ処理装置。
【請求項９】
前記結果情報は、前記優先度が高い順に、前記第２の処理命令及び、前記第２の処理命令の処理結果を表示するための情報を含むことを特徴とする請求項１に記載のデータ処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースに格納されるデータに対して処理を実行するデータ処理装置に関する。
【背景技術】
【０００２】
データ処理装置を用いてデータベースに格納されるデータに対して処理を実行する場合、ユーザはデータ処理装置に命令を入力することによって目的の情報を取得する。ユーザは、データ処理装置が出力する結果に基づいて入力する命令を修正する。
【０００３】
ユーザは、目的の情報が取得されるまで前述した修正作業を繰り返し実行する必要がある。すなわち、目的の情報を取得するための命令を特定する作業が必要となる。
【０００４】
ユーザが具体的にどのような命令をデータ処理装置に入力すればよいか分からない場合には、ユーザは前述した修正作業を繰り返し実行することによって目的の情報を取得する。また、予め目的の情報が分からない場合についても、同様の作業が必要となる。
【０００５】
例えば、表計算ソフト又はデータマイニングツールなどを用いて、商品の売上げ履歴を分析して顧客の特性を把握したり、機器のログを分析して故障の原因又は予兆を調査したりする場合に、前述した修正作業がユーザによって実行される。
【０００６】
前述した修正作業は、扱われるデータが少ない場合には問題は発生しない。しかし、データベースに格納されるデータが大量にある場合に以下のような問題がある。
【０００７】
一つの問題は、目的の情報を取得するための処理時間が増大することである。また、他の問題は、データベースに格納される全てのデータ内容を把握することが困難であるため、目的の情報を取得するための命令を特定する修正作業の回数が増加することである。
【０００８】
前述した問題によって、短時間に効率よく目的の情報を取得することが困難であった。
【０００９】
分析処理による待ち時間を減らすことによって作業効率を高める方法として、サーバ装置が地図等の情報を予め保持し、ユーザの位置又は行動等を予測して、必要な情報を表示する方法も知られている（例えば、特許文献１、特許文献２及び特許文献３参照）。
【００１０】
ユーザが入力する情報を補助する手段として、データマイニングに関する知識が乏しいユーザのために、対話型データマイニングを用いる方法がある（例えば、特文献４参照）。特許文献４には、データの分析を効率的かつ容易にするためのＧＵＩを用いることが記載されている。また、異なる視点の処理結果を予め保持し、異なる視点の情報を生成するデータ分析方法が知られている（例えば、特許文献５参照）。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００３−２６３３４８号公報
【特許文献２】特開２００３−２４７８４３号公報
【特許文献３】特開２００７−２７１４０４号公報
【特許文献４】特開平１１−１５８９７号公報
【特許文献５】特開平９−３０５６１６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
大量のデータが格納されるデータベースにおけるデータ分析処理では、目的の情報がユーザ毎に多種多様あるため、ユーザの行動等を予測した情報を予め用意することは困難である。
【００１３】
例えば、特許文献１〜３の技術では、所定の地図データを表示することはできるが、気温の変動等のデータを表示するためには別途処理を実行する必要がある。また、気温の変動のデータが要求された場合に、例えば、ユーザの行動を予測して湿度変化のデータを取得する処理を実行することができない。
【００１４】
そのため、データ分析処理では、動的に、ユーザの行動等を予測した情報を取得するための分析処理を実行する必要である。
【００１５】
一方、特許文献４、５に記載の発明では、動的に、ユーザの行動等を予測した情報を取得するための分析処理の実行が可能であるが、以下のような問題がある。すなわち、データ処理装置がユーザの行動等を予測した情報を取得するために、複数の分析処理を実行する場合、当該分析処理の処理時間が考慮されていない。したがって、前述した修正作業、すなわち、ユーザの作業負担は減るが、所望するデータ取得までの待ち時間が考慮されていない。
【００１６】
従来技術では、ユーザの行動等にのみ基づいて分析処理が決定されている。そのため、分析処理の実行に要する時間が長く掛かるために必要な情報を取得できない場合がある。これによって、処理完了までに時間が掛かるため、ユーザの待ち時間を短縮することができない。
【００１７】
したがって、ユーザの行動等を予測した情報を取得するための分析処理を実行する場合に、当該分析処理の処理時間も考慮する必要がある。
【課題を解決するための手段】
【００１８】
本発明の代表的な一例を示せば、以下の通りである。すなわち、プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続される不揮発性記憶媒体と、前記プロセッサに接続され、他の装置と通信するためのネットワークインタフェースとを備えるデータ処理装置であって、前記データ処理装置は、処理対象となるデータを格納する対象データ格納部と、前記データ処理装置と接続される計算機から、前記対象データ格納部に格納されるデータに対する第１の処理命令を受信する命令受信部と、前記受信した第１の処理命令に基づいて、複数の第２の処理命令を生成する処理命令生成部と、前記生成された各第２の処理命令の実行を前記計算機が要求する確率を表す分析需要、及び前記生成された各第２の処理命令の処理時間に関する情報である処理コストを取得し、前記取得された分析需要及び前記取得された処理コストに基づいて、前記複数の第２の処理命令の実行順序を決定するための優先度を算出し、前記算出された優先度に基づいて、前記第２の処理命令を出力する優先度管理部と、前記受信した第１の処理命令、又は、前記優先度管理部から出力された前記第２の処理命令を実行し、前記第１の処理命令又は前記第２の処理命令の処理結果を出力する処理命令実行部と、前記出力された処理結果に基づいて、前記計算機に出力する結果情報を生成する出力情報生成部と、前記計算機における操作情報を取得する操作情報取得部と、を備え、前記操作情報取得部は、前記計算機から、前記複数の第２の処理命令に含まれる処理命令の実行を要求する前記操作情報を取得した場合に、前記優先度管理部に前記操作情報を出力し、前記優先度管理部は、前記複数の第２の処理命令に含まれる処理命令がすでに前記処理命令実行部に出力されているか否かを判定し、前記複数の第２の処理命令に含まれる処理命令が前記処理命令実行部に出力されていないと判定された場合に、当該処理命令の前記優先度が最大になるように前記優先度を変更することを特徴とする。
【発明の効果】
【００１９】
本発明によれば、処理有効度及び処理コストに基づいて算出された優先度に基づいて処理命令が実行されるため、ユーザが所望する処理結果を取得するための作業負担の低減及び待ち時間の減少を実現することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態の計算機システムの概要を示す説明図である。
【図２】本発明の第１の実施形態のユーザ操作端末のハードウェア構成を説明するブロック図である。
【図３】本発明の第１の実施形態の分析サーバのハードウェア構成を説明するブロック図である。
【図４】本発明の第１の実施形態のユーザ操作端末のソフトウェア構成を説明するブロック図である。
【図５】本発明の第１の実施形態の分析サーバのソフトウェア構成及び分析対象データベースの構成を説明するブロック図である。
【図６】本発明の第１の実施形態の合成分析命令生成部が生成する分析命令の一例を示す説明図である。
【図７】本発明の第１の実施形態のユーザ操作端末が実行する処理を説明するフローチャートである。
【図８Ａ】本発明の第１の実施形態の分析サーバが実行する処理を説明するフローチャートである。
【図８Ｂ】本発明の第１の実施形態の分析サーバが実行する処理を説明するフローチャートである。
【図８Ｃ】本発明の第１の実施形態の分析サーバが実行する処理を説明するフローチャートである。
【図９】本発明の第１の実施形態のグラフ変形則適用部が実行する処理を説明するフローチャートである。
【図１０】本発明の第１の実施形態におけるグラフ変形則の一例を示す説明図である。
【図１１】本発明の第１の実施形態におけるグラフ変形則の適用例を示す説明図である。
【図１２】本発明の第１の実施形態における分析結果をグラフとして表示した場合の一例を示す説明図である。
【図１３】本発明の第１の実施形態における分析結果をグラフとして表示した場合の一例を示す説明図である。
【図１４】本発明の第１の実施形態における分析結果をグラフとして表示した場合の一例を示す説明図である。
【図１５】本発明の第１の実施形態における分析結果をグラフとして表示した場合の一例を示す説明図である。
【図１６】本発明の第１の実施形態の関連分析命令生成部が実行する処理を説明するフローチャートである。
【図１７】本発明の第１の実施形態の分析処理コスト計算部が実行する処理を説明するフローチャートである。
【図１８】本発明の第１の実施形態の処理優先度管理部が実行する処理を説明するフローチャートである。
【図１９】本発明の第１の実施形態の分析結果表示部に表示されるインタフェースの一例を示す説明図である。
【図２０】本発明の第１の実施形態の分析結果表示部に表示されるインタフェースの一例を示す説明図である。
【図２１】本発明の第２の実施形態のユーザ操作端末のソフトウェア構成を説明するブロック図である。
【図２２】本発明の第２の実施形態の検索サーバのソフトウェア構成を説明するブロック図である。
【図２３】本発明の第２の実施形態の検索命令生成部のソフトウェア構成及び分析対象データベースの構成を説明するブロック図である。
【図２４】本発明の第２の実施形態のユーザ操作端末が実行する処理を説明するフローチャートである。
【図２５】本発明の第２の実施形態の検索サーバが実行する処理を説明するフローチャートである。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態について説明する。
【００２２】
［第１の実施形態］
第１の実施形態では、分析サーバを備える計算機システムについて説明する。
【００２３】
図１は、本発明の第１の実施形態の計算機システムの概要を示す説明図である。
【００２４】
計算機システムは、ユーザ操作端末１００、分析サーバ１１０及び分析対象データベース１２０から構成される。
【００２５】
ユーザ操作端末１００は、ユーザが操作する計算機である。ユーザ操作端末１００のハードウェア構成については、図２を用いて後述する。
【００２６】
分析サーバ１１０は、分析対象データベース１２０に格納された大量のベクトルデータ又は行列データ等に対して分析処理を実行し、分析結果を出力する。分析サーバ１１０のハードウェア構成については、図３を用いて後述する。
【００２７】
分析対象データベース１２０は、各種データを格納する。本実施形態では分析サーバ１１０が分析対象データベース１２０を備える。なお、分析対象データベース１２０は、複数のディスク装置を備えるストレージシステムを用いて実現してもよい。
【００２８】
ユーザ操作端末１００及び分析サーバ１１０は、例えば、ＬＡＮを介して接続される。また、ストレージシステムを用いて分析対象データベース１２０が実現される場合、分析サーバ１１０及びストレージシステムはＳＡＮを介して接続される。なお、各装置間の接続方法は、一例であって、どのような接続方法も用いてもよい。
【００２９】
第１の実施形態では、以下のような処理を想定する。
【００３０】
ユーザ操作端末１００は、分析対象データベース１２０に格納されるデータに対する分析処理を実行するための分析命令を分析サーバ１１０に送信する（ステップ１３０）。
【００３１】
分析サーバ１１０は、受信した分析命令にしたがって分析処理を実行し（ステップ１４０）、分析処理の実行結果である分析結果をユーザ操作端末１００に送信する（ステップ１５０）。
【００３２】
出力された分析結果は、ユーザ操作端末１００の入出力装置２０４（図２参照）に表示される。入出力装置２０４（図２参照）に表示される分析結果は、例えば、グラフ形式の情報が考えられる。
【００３３】
分析サーバ１１０は、受信した分析命令の履歴から、次にユーザが要求する分析処理を推定し、推定される分析処理を実行する（ステップ１６０）。また、分析サーバ１１０は、推定される分析処理に関する情報をユーザ操作端末１００に送信する。
【００３４】
以下、推定される分析処理を追加分析処理と記載する。また、追加分析処理を実行させるための命令を追加分析命令と記載する。
【００３５】
ユーザ操作端末１００には、入出力装置２０４（図２参照）を介して追加分析処理が表示される。
【００３６】
ユーザ操作端末１００は、出力された分析結果に基づいて、次の実行させる追加分析命令を送信する（ステップ１７０）。
【００３７】
なお、受信した追加分析命令は、ユーザが分析サーバ１１０から出力された分析結果に基づいて決定されたものである。例えば、ユーザ操作端末１００の入出力装置２０４（図２参照）に追加分析命令が表示されている場合、ユーザは、表示される追加分析命令を選択し、選択された追加分析命令を送信してもよい。
【００３８】
分析サーバ１１０は、受信した追加分析命令に基づいて、分析処理を実行するとともに、ユーザ操作端末１００に当該追加命令の分析結果を送信する（ステップ１８０）。
【００３９】
分析サーバ１１０は、Ｓ１７０において追加分析命令を受信した場合、当該追加分析命令に対応する追加分析処理はすでにステップ１６０において実行済みであるため、当該追加分析命令に対応する分析結果を高速に出力できる。
【００４０】
すなわち、分析サーバ１１０は、受信した分析命令の履歴に基づいて追加分析命令を推定し、当該追加分析命令の分析結果を予め保持することによって、高速に分析結果を出力することが可能となる。
【００４１】
以下、本実施形態における分析結果は、グラフとして表示されるものとする。
【００４２】
図２は、本発明の第１の実施形態のユーザ操作端末１００のハードウェア構成を説明するブロック図である。
【００４３】
ユーザ操作端末１００は、プロセッサ２０１、メモリ２０２、不揮発性記憶媒体２０３、入出力装置２０４及びネットワークインタフェース２０５を備える。
【００４４】
プロセッサ２０１は、メモリ２０２に格納されたプログラムを実行する。
【００４５】
メモリ２０２は、プロセッサ２０１によって実行されるプログラム及び当該プログラムを実行するために必要な情報を格納する。なお、メモリ２０２に格納されるプログラムについては、図４を用いて後述する。
【００４６】
不揮発性記憶媒体２０３は、ユーザ操作端末１００が必要とする各種情報を格納する。不揮発性記憶媒体２０３は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などが考えられる。
【００４７】
入出力装置２０４は、ユーザ操作端末１００に情報を入力又は分析結果等を表示する。入出力装置２０４には、キーボード、マウス、及びディスプレイ等が含まれる。
【００４８】
ネットワークインタフェース２０５は、ＬＡＮ等のネットワークを介して外部装置と接続するためのインタフェースである。
【００４９】
図３は、本発明の第１の実施形態の分析サーバ１１０のハードウェア構成を説明するブロック図である。
【００５０】
分析サーバ１１０は、プロセッサ３０１、メモリ３０２、不揮発性記憶媒体３０３及びネットワークインタフェース３０４を備える。
【００５１】
プロセッサ３０１は、メモリ３０２に格納されるプログラムを実行する。
【００５２】
メモリ３０２は、プロセッサ３０１によって実行されるプログラム及び当該プログラムを実行するために必要な情報を格納する。なお、メモリ３０２に格納されるプログラムについては、図５を用いて後述する。
【００５３】
不揮発性記憶媒体３０３は、分析処理を実行するために必要な情報を格納する。本実施形態では、不揮発性記憶媒体３０３を用いて分析対象データベース１２０が実現される。不揮発性記憶媒体３０３は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）又はＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）が考えられる。
【００５４】
なお、分析サーバ１１０は、複数の不揮発性記憶媒体３０３を備えてもよい。この場合、複数の不揮発性記憶媒体３０３を用いてＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）を構成してもよい。
【００５５】
ネットワークインタフェース３０４は、ＬＡＮ等のネットワークを介して外部装置と接続するためのインタフェースである。
【００５６】
なお、分析対象データベース１２０がストレージシステムによって実現されている場合、分析サーバ１１０は、ＳＡＮ等を介してストレージシステムと接続するためのＨＢＡ（Ｈｏｓｔ  Ｂｕｓ  Ａｄａｐｔｅｒ）を備えてもよい。
【００５７】
図４は、本発明の第１の実施形態のユーザ操作端末１００のソフトウェア構成を説明するブロック図である。
【００５８】
ユーザ操作端末１００は、分析命令入力部４０１、分析結果表示部４０２及び分析結果操作部４０３を備える。
【００５９】
分析命令入力部４０１は、ユーザが操作した内容を分析サーバ１１０に送信する。
【００６０】
分析結果表示部４０２は、分析サーバ１１０から出力された表示情報を表示する。分析結果表示部４０２は、グラフ又は表などの形式で表示情報を表示する。
【００６１】
分析結果操作部４０３は、分析結果表示部４０２に表示される情報に対する操作を実現する。分析結果表示部４０２に表示される情報に対する操作の内容は、分析サーバ１１０に送信される。
【００６２】
分析結果表示部４０２に表示される情報に対する操作は、例えば、追加分析命令の参照要求又は表示方式の変更などが考えられる。
【００６３】
図５は、本発明の第１の実施形態の分析サーバ１１０のソフトウェア構成及び分析対象データベース１２０の構成を説明するブロック図である。
【００６４】
分析サーバ１１０は、分析命令受付部５０５、分析命令実行部５０６、分析命令履歴記録部５０７、グラフ変形則適用部５０８、合成分析命令生成部５０９、関連分析命令生成部５１０、追加分析命令記録部５１３、分析処理コスト計算部５１４、分析処理コスト記録部５１５、処理優先度管理部５１６、ユーザ操作状況記録部５１７、入力受付部５１８及び表示情報出力部５１９を備える。
【００６５】
また、本実施形態では、分析サーバ１１０が分析対象データベース１２０を備える。分析対象データベース１２０は、分析対象データ記録部５１１及び関連性定義データ記録部５１２を備える。
【００６６】
分析対象データ記録部５１１は、分析処理の対象となるデータ（分析対象データ）を格納する。本実施形態では、データセンタなどの大規模な計算機システムに格納される大量の分析対象データを想定する。
【００６７】
関連性定義データ記録部５１２は、分析対象データベース１２０に格納される各種分析対象データの関連性について定義された情報である関連性定義データを格納する。関連性定義データは、分析対象データを構成する項目ごと格納される。
【００６８】
ここで、分析対象データの関連性とは、分析対象データを構成する項目同士の分析処理における概念的な近さを表す。項目の関連性が高い、種類の異なる分析対象データがある場合に、一方の分析対象データに対する分析命令が実行されると、他方の分析対象データに対する分析命令についてもが実行される可能性が高いと推定される。
【００６９】
例えば、温度を項目に含む分析対象データと湿度を項目に含む分析対象データとは、関連性が高い分析データとなる。
【００７０】
分析命令受付部５０５は、ユーザ操作端末１００の分析命令入力部４０１から送信される分析命令を受信する。また、分析命令受付部５０５は、受信した分析命令を分析命令実行部５０６、分析命令履歴記録部５０７及び関連分析命令生成部５１０のそれぞれに出力する。
【００７１】
分析命令実行部５０６は、分析対象データ記録部５１１から対象となるデータを読み出し、分析命令受付部５０５から入力された分析命令を実行する。また、分析命令実行部５０６は、当該分析命令の分析結果をグラフ変形則適用部５０８及び表示情報出力部５１９に出力する。
【００７２】
グラフ変形則適用部５０８は、グラフ変形則に基づいて、分析命令実行部５０６から入力された分析結果に基づいて、次に要求される可能性のある追加分析命令を生成する。さらに、グラフ変形則適用部５０８は、生成された追加分析命令の分析需要を算出する。ここで、分析需要とは、分析命令がユーザに要求される確率を表す値である。すなわち、分析命令が実行されることによって得られる分析結果の有効性を表す値である。
【００７３】
グラフ変形則適用部５０８は、生成された追加分析命令と算出された分析需要とを追加分析命令記録部５１３に出力する。
【００７４】
グラフ変形則適用部５０８が実行する処理の詳細については、図９を用いて後述する。
【００７５】
関連分析命令生成部５１０は、分析命令受付部５０５から入力された分析命令を解析し、当該分析命令の処理対象である分析対象データと関連性が高いデータを分析するための追加分析命令を生成する。また、関連分析命令生成部５１０は、生成された追加分析命令の分析需要を算出する。
【００７６】
関連分析命令生成部５１０は、生成された追加分析命令と算出された分析需要とを追加分析命令記録部５１３に出力する。なお、生成された分析命令の分析需要は、分析対象データの項目における関連性の大きさに比例する。
【００７７】
関連分析命令生成部５１０が実行する処理の詳細については、図１６を用いて後述する。
【００７８】
分析命令履歴記録部５０７は、分析命令受付部５０５から入力された分析命令を格納する。
【００７９】
合成分析命令生成部５０９は、分析命令履歴記録部５０７から２つ以上の分析命令を読み出し、予め設定された合成ルールに基づいて、読み出された２つ以上の分析命令を用いて追加分析命令を生成する。また、合成分析命令生成部５０９は、生成された追加分析命令の分析需要を算出する。
【００８０】
合成分析命令生成部５０９は、生成された追加分析命令と算出された分析需要とを追加分析命令記録部５１３に出力する。
【００８１】
ここで、合成分析命令生成部５０９が生成する追加分析命令の一例を説明する。
【００８２】
図６は、本発明の第１の実施形態の合成分析命令生成部５０９が生成する分析命令の一例を示す説明図である。
【００８３】
図６に示すように、年齢―人口のヒストグラムを生成する分析命令と、年収―人口のヒストグラムを生成する分析命令とからは、年齢×年収−人工のメッシュ図を生成するための追加分析命令が生成される。
【００８４】
また、生成された追加分析命令の分析需要は、分析命令履歴記録部５０７から読み出された２つ以上の分析命令の分析需要に依存する。例えば、分析命令履歴記録部５０７から読み出された２つ以上の分析命令の分析需要の平均値が、生成された追加分析命令の分析需要として算出される。
【００８５】
追加分析命令記録部５１３は、グラフ変形則適用部５０８、合成分析命令生成部５０９及び関連分析命令生成部５１０から入力された追加分析命令及び当該追加分析命令の分析需要を格納する。また、後述する処理コスト及び優先度についても対応する追加分析命令とともに格納される。
【００８６】
分析処理コスト計算部５１４は、分析処理コスト記録部５１５を参照して、追加分析命令記録部５１３に格納される追加分析命令の処理コストを算出する。算出された処理コストは、追加分析命令と対応づけられて追加分析命令記録部５１３に格納される。
【００８７】
ここで、処理コストとは、分析命令に対応する処理に必要となる処理時間に関する情報である。例えば、処理コストは、分析命令を実行するために必要となる時間、又は処理されるデータ量等が考えられる。
【００８８】
分析処理コスト計算部５１４が実行する処理の詳細については、図１７を用いて後述する。
【００８９】
分析処理コスト記録部５１５は、分析処理において用いられる関数又は処理の処理コストが格納される。本実施形態では、分析命令は複数の関数を組み合わせることによって生成され、分析処理コスト記録部５１５にはすべての関数の関数コストが一覧として格納される。
【００９０】
例えば、分析対象データがベクトル又は行列データである場合には、関数コストは所定の方法を用いることによって算出できる。関数コストを算出する方法については、公知であるため説明を省略する。
【００９１】
また、分析対象データがベクトル又は行列データ以外の場合も、処理時間、処理量などを関数コストとして用いることができる。
【００９２】
処理優先度管理部５１６は、追加分析命令記録部５１３から一以上の追加分析命令を読み出し、読み出された追加分析命令の優先度を算出する。また、処理優先度管理部５１６は、算出された優先度に基づいて、追加分析命令の実行順番を決定する。さらに、処理優先度管理部５１６は、決定された実行順番にしたがって追加分析命令を分析命令受付部５０５に出力する。
【００９３】
また、処理優先度管理部５１６は、読み出された追加分析命令を表示情報出力部５１９に出力する。
【００９４】
処理優先度管理部５１６は、読み出された追加分析命令の優先度を算出する場合に、ユーザ操作状況記録部５１７から履歴情報を読み出し、読み出された履歴情報と追加分析命令の処理コストとを用いて優先度を算出する。なお、履歴情報には、ユーザ操作端末１００における操作内容、及び分析結果表示部４０２の表示内容が含まれる。
【００９５】
また、処理優先度管理部５１６は、選択された追加分析命令を追加分析命令記録部５１３から消去する。
【００９６】
処理優先度管理部５１６が実行する処理の詳細については、図１８を用いて後述する。
【００９７】
ユーザ操作状況記録部５１７は、ユーザ操作端末１００の操作内容及び分析結果表示部４０２の表示内容を履歴情報として格納する。分析結果表示部４０２の表示内容は表示情報出力部５１９から入力される情報であり、ユーザ操作端末１００の操作内容は分析結果操作部４０３から入力される情報である。
【００９８】
履歴情報は、例えば、ある時点において分析結果表示部４０２に表示されるグラフ、ユーザ操作端末に入力された操作内容又は命令の履歴などが考えられる。
【００９９】
入力受付部５１８は、分析結果操作部４０３から、分析結果表示部４０２に対するユーザの操作内容を受信し、受信した操作内容に基づいて表示情報出力部５１９に追加分析命令の参照要求を出力し、又は、処理優先度管理部５１６に分析命令を受け付けた旨を通知する。また、入力受付部５１８は、全ての操作内容をユーザ操作端末１００における操作内容としてユーザ操作状況記録部５１７に出力する。
【０１００】
以下、追加分析命令の参照要求を、単に、参照要求とも記載する。
【０１０１】
表示情報出力部５１９は、分析命令実行部５０６から入力された分析結果と、処理優先度管理部５１６から入力された追加分析命令とに基づいて、分析結果表示部４０２に分析状況を表示するための表示情報を生成する。また、表示情報出力部５１９は、生成された表示情報を分析結果表示部４０２に送信する。また、表示情報出力部５１９は、入力受付部５１８から参照要求が入力された場合に、当該参照要求に対応する分析結果を表示するための表示情報を分析結果表示部４０２に出力する。なお、表示情報出力部５１９は、入力された分析結果を格納する。
【０１０２】
本実施形態では、分析命令受付部５０５に入力された分析命令から、複数の追加分析命令が生成される。具体的には、グラフ変形則適用部５０８が分析結果から推定される追加分析命令を生成し、合成分析命令生成部５０９が分析命令の組み合わせから追加分析命令を生成し、さらに、関連分析命令生成部５１０が分析命令における分析対象データとの関連性から追加分析命令を生成する。
【０１０３】
分析サーバ１１０は、生成された各追加分析命令の処理コストを算出し、各追加分析命令の分析需要と処理コストとから優先度を算出する。さらに、分析サーバ１１０は、優先度に基づいて追加分析命令の実行順番を決定し、決定された実行順番にしたがって追加分析命令を実行する。
【０１０４】
図７は、本発明の第１の実施形態のユーザ操作端末１００が実行する処理を説明するフローチャートである。
【０１０５】
ユーザ操作端末１００は、処理を開始すると（ステップ７０１）、ユーザが入出力装置２０４を用いて入力された分析命令を分析サーバ１１０に送信する（ステップ７０２）。
【０１０６】
具体的には、分析命令入力部４０１が分析命令受付部５０５に分析命令を送信する。
【０１０７】
分析命令を受信した分析サーバ１１０は、当該分析命令を実行し、分析結果が含まれる表示情報をユーザ操作端末１００に送信する。
【０１０８】
具体的には、表示情報出力部５１９から分析結果表示部４０２に表示情報が送信される。また、分析サーバ１１０は、後述するように、ステップ７０２において入力された分析命令に基づいて生成された追加分析命令を実行し、生成された追加分析命令の実行状態及び当該追加分析命令の分析結果が含まれる表示情報をユーザ操作端末１００に送信する。
【０１０９】
分析サーバ１１０は、受信した表示情報に基づいて、分析結果表示部４０２に分析結果を表示する（ステップ７０３）。なお、分析結果表示部４０２には、入力された分析命令の分析結果、当該分析命令に関連する追加分析命令の実行状況、及び追加分析命令の分析結果が表示される。
【０１１０】
ユーザ操作端末１００は、目的の結果が得られたか否かを判定する（ステップ７０４）。当該判定は、例えば、以下のような方法が考えられる。
【０１１１】
ユーザが分析結果表示部４０２に表示される分析結果を確認し、目的の結果が得られた場合には処理終了の命令をユーザ操作端末１００に入力する。ユーザ操作端末１００は、前述した処理終了の命令が入力された場合に、目的の結果が得られたと判定する。
【０１１２】
目的の結果が得られたと判定された場合には、ユーザ操作端末１００は処理を終了する（ステップ７０９）。
【０１１３】
目的の結果が得られなかったと判定された場合、ユーザ操作端末１００は、追加分析命令を実行するか否かを判定する（ステップ７０４）。
【０１１４】
例えば、ユーザが入出力装置２０４を用いて分析結果表示部４０２に表示される追加分析命令の実行を選択した場合に、追加分析命令を実行すると判定される。
【０１１５】
追加分析命令を実行しないと判定された場合、ユーザ操作端末１００は、分析サーバ１１０に新しい分析命令を送信し（ステップ７０８）、ステップ７０４に戻り同様の処理（ステップ７０４〜ステップ７０９）を実行する。
【０１１６】
すなわち、ユーザは、目的の分析結果を取得するために、分析結果表示部４０２に表示された追加分析処理以外の分析命令の実行を分析サーバ１１０に命令する。
【０１１７】
追加分析命令を実行すると判定された場合、ユーザ操作端末１００は、当該追加分析処理の分析結果を表示し（ステップ７０７）、ステップ７０４に戻り同様の処理（ステップ７０４〜ステップ７０９）を実行する。
【０１１８】
予め、ユーザから要求された追加分析命令が実行されている場合、ユーザ操作端末１００は、当該追加分析命令の分析結果を迅速に表示できる。これによって、ステップ７０８の処理を複数回実行することなく、短時間で目的の結果が得られる。すなわち、処理終了の待ち時間を短縮できる。
【０１１９】
図８Ａ〜図８Ｃは、本発明の第１の実施形態の分析サーバ１１０が実行する処理を説明するフローチャートである。
【０１２０】
まず、図８Ａについて説明する。
【０１２１】
分析サーバ１１０は、処理を開始すると（ステップ８０１）、ユーザ操作端末１００からの分析命令を受付ける（ステップ８０２）。
【０１２２】
分析サーバ１１０は、受付けた分析命令を実行する（ステップ８０３）。具体的には、分析命令実行部５０６が受付けた分析命令を実行する。
【０１２３】
分析サーバ１１０は、分析命令の分析結果を出力する（ステップ８０４）。具体的には、分析命令実行部５０６が、グラフ変形則適用部５０８及び表示情報出力部５１９に分析結果を出力する。
【０１２４】
分析サーバ１１０は、受付けた分析命令に基づいて、関連分析命令を生成する（ステップ８０５）。具体的には、関連分析命令生成部５１０が、関連分析命令を生成し、生成された関連分析命令の分析需要を算出する。関連分析命令生成部５１０が実行する処理の詳細については、図１６を用いて後述する。
【０１２５】
分析サーバ１１０は、受付けた分析命令に基づいて、合成分析命令を生成する（ステップ８０６）。具体的には、合成分析命令生成部５０９が、合成分析命令を生成し、生成された合成命令の分析需要を算出する。
【０１２６】
分析サーバ１１０は、生成された関連分析命令及び合成分析命令を、追加分析命令として追加分析命令記録部５１３に格納する。
【０１２７】
なお、分析サーバ１１０は、生成された関連分析命令と当該関連分析命令の分析需要とを対応づけ、また、生成された合成分析命令と当該合成分析命令の分析需要とを対応づけて追加分析命令記録部５１３に格納する。
【０１２８】
追加分析命令記録部５１３に格納される追加分析命令の中から実行される追加分析命令が選択される。
【０１２９】
ステップ８０３、ステップ８０５及びステップ８０６の処理は、並列処理として実行してもよい。
【０１３０】
分析サーバ１１０は、出力された分析結果に対してグラフ変形則を適用することによって分析命令を生成する（ステップ８０７）。具体的には、グラフ変形則適用部５０８が、分析命令を生成し、生成された分析命令の分析需要を算出する。
【０１３１】
なお、グラフ変形則適用部５０８が実行する処理の詳細については、図９を用いて後述する。
【０１３２】
分析サーバ１１０は、生成された分析命令を追加分析命令として追加分析命令記録部５１３に格納する。
【０１３３】
なお、分析サーバ１１０は、追加分析命令記録部５１３に格納される追加分析命令の分析処理コストを算出し、算出された分析処理コストを追加分析命令記録部５１３に格納する。具体的には、分析処理コスト計算部５１４が、分析処理コストを算出する。分析処理コスト計算部５１４が実行する処理の詳細については、図１７を用いて後述する。
【０１３４】
次に、分析サーバ１１０は、追加分析命令記録部５１３に格納される追加分析命令の優先度を算出する（ステップ８０８）。具体的には、処理優先度管理部５１６が、各追加分析命令の分析需要及び処理コストに基づいて、優先度を算出する。
【０１３５】
なお、処理優先度管理部５１６が実行する処理の詳細については、図１８を用いて後述する。
【０１３６】
分析サーバ１１０は、算出された優先度に基づいて、追加分析命令を実行する（ステップ８０９）。具体的には、分析命令実行部５０６が、追加分析命令を実行する。
【０１３７】
なお、ステップ８０９の処理の詳細については、図８Ｂを用いて後述する。
【０１３８】
また、分析サーバ１１０は、追加分析命令の実行状況及び当該追加分析命令の分析結果が含まれる表示情報を出力する（ステップ８１０）。
【０１３９】
なお、ステップ８１０の処理の詳細については、図８Ｃを用いて後述する。
【０１４０】
なお、分析サーバ１１０は、生成される分析命令に対応する分析需要が格納される記憶部を備えてもよく、この場合、ステップ８０４、ステップ８０５及びステップ８０６では、生成された各分析命令の分析需要が当該記憶部から読み出される。
【０１４１】
図８Ｂは、本発明の第１の実施形態のステップ８０９の追加分析命令の実行処理を説明するフローチャートである。
【０１４２】
分析サーバ１１０は、追加分析命令記録部５１３を参照して、優先度が最大である追加分析命令を選択し、選択された追加分析命令を実行する（ステップ８１２）。
【０１４３】
具体的には、まず、処理優先度管理部５１６が、選択された追加分析命令を分析命令受付部５０５に出力する。分析命令受付部５０５は、入力された追加分析命令を分析命令実行部５０６、分析命令履歴記録部５０７及び関連分析命令生成部５１０を出力する。分析命令実行部５０６は、入力された追加分析命令を実行する。
【０１４４】
分析サーバ１１０は、実行された追加分析命令の分析結果をグラフ変形則適用部５０８及び表示情報出力部５１９に出力する（ステップ８１３）。なお、表示情報出力部５１９は、入力された分析結果を格納する。
【０１４５】
分析サーバ１１０は、入力された追加分析命令の分析結果に基づいて、新たな追加分析命令を生成し、生成された追加分析命令を追加分析命令記録部５１３に格納する（ステップ８１４）。
【０１４６】
分析サーバ１１０は、分析命令履歴記録部５０７を参照して新たな合成分析命令を生成し、生成された合成分析命令を追加分析命令記録部５１３に格納する（ステップ８１５）。
【０１４７】
分析サーバ１１０は、追加分析命令に基づいて、新たな関連分析命令を生成し、生成された関連分析命令を追加分析命令記録部５１３に格納する（ステップ８１６）。
【０１４８】
なお、ステップ８１４〜ステップ８１６は、ステップ８０４〜ステップ８０６と同一の処理である。
【０１４９】
分析サーバ１１０は、追加分析命令の実行状況、及び、新たに生成された追加分析命令が含まれる表示情報をユーザ操作端末１００に送信する（ステップ８１７）。これによって、分析結果表示部４０２に表示される内容が更新される。
【０１５０】
分析サーバ１１０は、全ての追加分析命令が実行されたか否かを判定する（ステップ８１８）。
【０１５１】
具体的には、処理優先度管理部５１６は、追加分析命令記録部５１３を参照して、追加分析命令が格納されているか否かを判定する。処理優先度管理部５１６は、追加分析命令記録部５１３に追加分析命令が格納されていない場合、全ての追加分析命令が実行されたと判定する。
【０１５２】
全ての追加分析命令が実行されたと判定された場合、分析サーバ１１０は、処理を終了する（ステップ８１９）。
【０１５３】
全ての追加分析命令が実行されていないと判定された場合、分析サーバ１１０は、ステップ８１２に戻り同様の処理（ステップ８１２〜ステップ８１９）を実行する。
【０１５４】
図８Ｃは、本発明の第１の実施形態のステップ８１０の追加分析命令に関する情報の出力処理を説明するフローチャートである。
【０１５５】
分析サーバ１１０は、追加分析命令の実行状況及び当該追加分析命令の分析結果が含まれる表示情報を出力する（ステップ８２０）。出力された表示情報はユーザ操作端末１００に送信される。これによって、分析結果表示部４０２の表示内容が更新される。
【０１５６】
分析サーバ１１０は、追加分析命令の実行（ステップ８０９）が終了したか否かを判定する（ステップ８２５）。具体的には、ステップ８１９が実行されたか否かが判定される。
【０１５７】
分析サーバ１１０は、ユーザ操作端末１００から参照要求を受信したか否かを判定する（ステップ８２１）。具体的には、入力受付部５１８がユーザ操作端末１００から参照要求を受信したか否かを判定する。
【０１５８】
ユーザ操作端末１００から参照要求を受信していないと判定された場合、分析サーバ１１０は、ステップ８２０に戻り、ユーザ操作端末１００から追加分析命令の参照要求を受信するまで処理の実行を待ち続ける。
【０１５９】
ユーザ操作端末１００から追加分析命令の参照要求を受信したと判定された場合、分析サーバ１１０は、当該参照要求に対応する追加分析命令が実行済みであるか否かを判定する（ステップ８２２）。具体的には、以下のような処理が実行される。
【０１６０】
まず、入力受付部５１８は、受信した参照要求を表示情報出力部５１９に出力する。表示情報出力部５１９は、入力された参照要求に基づいて、当該参照要求に対応する追加分析命令の分析結果が格納されているか否かを判定する。受信した参照要求に対応する追加分析命令の分析結果が格納されている場合には、当該参照要求に対応する追加分析命令が実行済みであると判定される。
【０１６１】
追加分析命令の参照要求に対応する追加分析命令が実行済みであると判定された場合、分析サーバ１１０は、当該参照要求に対応する追加分析命令の分析結果を表示するための表示情報をユーザ操作端末１００に送信する（ステップ８２３）。その後、分析サーバ１１０は、ステップ８２０に戻り、同様の処理を実行する（ステップ８２０〜ステップ８２４）。
【０１６２】
ユーザ操作端末１００は、分析サーバ１１０から送信された表示情報を受信し、受信した表示情報に基づいて、参照要求に対応する追加分析命令の分析結果を分析結果表示部４０２に表示する。
【０１６３】
ステップ８２２において、追加分析命令の参照要求に対応する追加分析命令が実行されていないと判定された場合、分析サーバ１１０は、当該参照命令に対応する追加分析命令の優先度を変更する（ステップ８２４）。また、分析サーバ１１０は、参照要求に対応する追加分析命令が実行中である旨を示す表示情報を分析結果表示部４０２に送信する。
【０１６４】
その後、分析サーバ１１０は、ステップ８２０に戻り、同様の処理を実行する（ステップ８２０〜ステップ８２４）。
【０１６５】
なお、参照要求に対応する追加分析命令の優先度を算出する処理については、図１８を用いて後述する。
【０１６６】
ステップ８２４の処理によって、ユーザが要求する追加分析命令を優先的に実行することができる。
【０１６７】
分析結果表示部４０２におけるインタフェースについては、図１９及び図２０を用いて後述する。
【０１６８】
図９は、本発明の第１の実施形態のグラフ変形則適用部５０８が実行する処理を説明するフローチャートである。
【０１６９】
グラフ変形則適用部５０８は、処理を開始すると（ステップ９０１）、分析命令実行部５０６から分析結果が入力されるまで待ち続ける。なお、本実施形態では、分析結果はグラフ、又はグラフを作成するための数値データの形式で入力される。
【０１７０】
グラフ変形則適用部５０８は、分析命令実行部５０６から分析結果が入力されると（ステップ９０２）、入力された分析結果とグラフ変形則とに基づいて、入力された分析結果に適用可能なグラフ変規則があるか否かを判定する（ステップ９０３）。
【０１７１】
グラフ変形則は、例えば、次のようなものが考えられる。
【０１７２】
図１０は、本発明の第１の実施形態におけるグラフ変形則の一例を示す説明図である。図１１は、本発明の第１の実施形態におけるグラフ変形則の適用例を示す説明図である。
【０１７３】
図１０では、５つのグラフ変形則を示している。
【０１７４】
識別番号１０１０は、グラフ変形則を識別するための識別子である。変形則名称１０２０は、識別番号１０１０に対応するグラフ変形則の名称である。内容１０３０は、変形則名称１０２０に対応するグラフ変形則の具体的な内容である。分析需要算出方法１０４０は、変形則名称１０２０に対応するグラフ変形則に基づいて生成された分析命令の分析需要を算出する方法である。
【０１７５】
図１１は、グラフの種類と適用可能な変形則との対応関係を表す。
【０１７６】
グラフ種類１１１０は、分析結果のグラフ形式又はグラフを作成するための数値データにおけるグラフの種類である。データ形式１１２０は、グラフ種類１１１０に対応する分析結果のデータ形式である。適用可能なグラフ変形則１１３０は、グラフ種類１１１０に対して適用可能なグラフ変形則である。本実施形態では、５つのグラフ変形則の適用可否が格納される。
【０１７７】
本実施形態では、グラフ変形則適用部５０８が、図１１に示すようなグラフ変形則の定義情報を保持し、当該定義情報を用いて入力された分析結果に適用可能なグラフ変形則があるか否かが判定される。
【０１７８】
次に、生成される分析命令と当該分析命令の分析需要の算出方法の一例を図１２〜図１５を用いて説明する。
【０１７９】
図１２、図１３、図１４及び図１５は、本発明の第１の実施形態におけるグラフ変形則適用部５０８が生成した分析命令の分析需要の算出例を示す説明図である。
【０１８０】
識別番号１０１０が「１」の特徴点詳細化の変形則では、ヒストグラム又はメッシュ図の中に値が一カ所だけ大きい又は大きく変化する領域がある場合に、当該領域の詳細な値の変化についての情報をユーザが要求すると推定される。したがって、当該領域に処理範囲を絞って再分析するための分析命令が生成される。
【０１８１】
識別番号１０１０が「２」の集中領域拡大の変形則では、棒グラフ又は散布図などにおいて、図１２に示すようなグラフの表示値域１２０２の幅と、グラフに含まれるデータ点の分散１２０１とを比較し、分散が極端に小さい場合に、グラフに含まれるデータ点の平均値周辺の詳細に関する情報をユーザが要求すると推定される。したがって、表示値域をグラフに含まれるデータ点の平均周辺に変化させ、当該平均周辺について再分析するための分析命令が生成される。
【０１８２】
識別番号１０１０が「３」のスクロールの辺観測では、折れ線グラフ又は散布図などにおいて、グラフ領域の縁１２０３の見えない範囲に大きな変化又はデータ点の集合があると予測される場合に、ユーザがグラフ領域の縁１２０３へのスクロールを要求すると推定される。したがって、表示値域を一定量移動させ、移動された値域において再分析するための分析命令が生成される。
【０１８３】
また、各グラフ変形則を適用して生成される追加分析命令の分析需要は、以下のような数式を用いて算出される。
【０１８４】
特徴点詳細化の変形則では、式（１）を用いて生成された追加分析命令の分析需要が算出される。
【０１８５】
【数１】
0005515117.tif 000002
【０１８６】
式（１）は、ｘ−ｙの折れ線グラフの極大点における平均からの差分を算出する数式である。
【０１８７】
ここで、Ｃは定数、ｍはｙのグラフ表示範囲内における平均、σyはｙのグラフ表示範囲内における標準偏差、ｙmaxは極大点におけるｙの値を表す。なお、ｙの代わりにｙの微分値を用いてもよい。
【０１８８】
中央領域拡大の変形則では、式（２）を用いて生成された追加分析命令の分析需要が算出される。
【０１８９】
【数２】
0005515117.tif 000003
【０１９０】
式（２）は、散布図において、グラフ表示範囲とプロットの分散値との割合を算出する数式である。
【０１９１】
ここで、Ｃは定数である。また、図１３に示すように、σはグラフ表示範囲内におけるプロットの分散１３０１を表し、ｒはグラフ表示範囲の大きさ１３０２を表す（図１３参照）。
【０１９２】
スクロールの変形則では、式（３）を用いて生成された追加分析命令の分析需要が算出される。
【０１９３】
【数３】
0005515117.tif 000004
【０１９４】
式（３）は、散布図において、グラフ表示領域の端の領域におけるプロット数と、グラフ表示領域全体のプロット数との割合を算出する数式である。
【０１９５】
ここで、Ｃは定数である。また、図１４に示すように、Ｐallはグラフ表示領域内のプロット数１４０１を表し、Ｐinはグラフ表示領域の端近辺における領域内のプロット数１４０２を表す（図１４参照）。
【０１９６】
Ｐinの割合が大きい場合、グラフ表示領域の端方向へスクロールさせる可能性が大きいと評価される。
【０１９７】
変更補正の変形則では、式（４）を用いて生成された追加分析命令の分析需要が算出される。
【０１９８】
【数４】
0005515117.tif 000005
【０１９９】
式（４）は、散布図において、ｘ方向のプロットの偏差と、ｙ方向のプロットの偏差との割合を算出する数式である。
【０２００】
ここで、Ｃは定数、σxはｘのグラフ表示範囲内における偏差、σyはｙのグラフ表示範囲内における標準偏差を表す。式（４）では二つのσの割合の差が大きい時に、ユーザからの需要が大きいと評価される。
【０２０１】
外れ値対応の変形則では、式（５）を用いて生成された追加分析命令の分析需要が算出される。
【０２０２】
【数５】
0005515117.tif 000006
【０２０３】
式（５）は、折れ線グラフにおいて、グラフの全プロットのうち、グラフ表示領域から外れているプロットの割合を算出する数式である。
【０２０４】
ここで、Ｃは定数である。また、図１５に示すように、ｒはグラフ表示範囲全体の値域１５０１、ａi（図１５に示す例ではａ1及びａ2）はプロットが表示範囲から外れている箇所の値域１５０２、１５０３を表す（図１５参照）。
【０２０５】
前述のように、ユーザが要求すると推定される分析命令、すなわち、グラフ変形則適用部５０８が生成する分析命令は、分析対象データベース１２０が格納する全てのデータを処理するものではなく、図１２のようなグラフ表示範囲に表示されるデータのみを処理する。したがって、グラフ変形則適用部５０８によって生成される分析命令は、分析対象データベース１２０の規模の大きさに関係なく、処理対象とするデータ量が小さくできるため高速な処理を実現できる。
【０２０６】
図９の説明に戻る。
【０２０７】
ステップ９０３において、適用可能なグラフ変形則があると判定された場合、グラフ変形則適用部５０８は、適用可能なグラフ変形則に基づいて、分析命令を生成する（ステップ９０５）。
【０２０８】
また、グラフ変形則適用部５０８は、他に適用可能なグラフ変形則があるか否かを判定するためステップ９０３に戻り同様の処理（ステップ９０３〜９０６）を実行する。すなわち、一つの分析結果に対して、適用可能な全てのグラフ変形則について分析命令が生成される。
【０２０９】
ステップ９０３において、適用可能なグラフ変形則がないと判定された場合、グラフ変形則適用部５０８は、生成された分析命令及び当該分析命令の分析需要を追加分析命令記録部５１３に出力し（ステップ９０４）、処理を終了する（ステップ９０６）。
【０２１０】
図１６は、本発明の第１の実施形態の関連分析命令生成部５１０が実行する処理を説明するフローチャートである。
【０２１１】
関連分析命令生成部５１０は、処理を開始すると（ステップ１６０１）、分析命令受付部５０５から分析命令が入力されるまで待ち続ける。
【０２１２】
なお、本実施形態では、分析命令は、分析対象データｄと処理対象となる分析対象データｄの処理範囲ｒａｎｇｅとの関数ｆ（ｄ，ｒａｎｇｅ）の形式で入力される。
【０２１３】
関連分析命令生成部５１０は、分析命令受付部５０５から分析命令が入力されると（ステップ１６０２）、関連性定義データ記録部５１２から分析対象データｄに関連するデータｄ'を検索する（ステップ１６０３）。
【０２１４】
具体的には、以下のような処理が実行される。
【０２１５】
関連分析命令生成部５１０は、入力された分析命令に基づいて分析対象データｄ及び処理範囲ｒａｎｇｅを特定する。次に、関連分析命令生成部５１０は、特定された分析対象データｄの種類及び処理範囲ｒａｎｇｅに基づいて関連性定義データ記録部５１２を参照し、分析対象データｄと関連性のある関連データｄ'を検索する。さらに、関連分析命令生成部５１０は、分析対象データ記録部５１１から検索された関連データｄ'を読み出す。なお、複数の関連データｄ'がある場合には、全ての関連データｄ'が読み出される。
【０２１６】
次に、関連分析命令生成部５１０は、検索された関連データｄ'に基づいて、関連分析命令を生成し、さらに、生成された関連性分析命令の分析需要を算出する（ステップ１６０４）。
【０２１７】
具体的には、関連分析命令生成部５１０は、分析命令ｆ及び検索された関連データｄ'に基づいて関連分析命令ｆ'を生成する。また、関連分析命令生成部５１０は、分析対象データｄ及び関連データｄ'に基づいて、生成された関連分析命令ｆ'の分析需要ｒｅｌａｔｉｏｎ（ｄ，ｄ'）を算出する。
【０２１８】
生成される関連分析命令は、例えば、分析命令ｆ（ｄ，ｒａｎｇｅ）の変数ｄのみを変更した関連分析命令ｆ（ｄ'，ｒａｎｇｅ）を生成する方法が考えられる。また、平均を算出する分析命令ｆに対して、分散を算出する分析命令ｆ'を生成する方法が考えられる。なお、これらは一例であって、その他の方法を用いて関連分析命令が生成されてもよい。
【０２１９】
なお、ｒｅｌａｔｉｏｎは分析需要を算出するための関数であり、関連データｄ'対応づけられて関連性定義データ記録部５１２に格納される。
【０２２０】
生成された関連分析命令及び当該関連分析命令の分析需要は、追加分析命令記録部５１３に出力される。
【０２２１】
次に、関連分析命令生成部５１０は、全ての関連データｄ'について処理が実行されたか否かを判定する（ステップ１６０５）。
【０２２２】
全ての関連データｄ'について処理が実行されていないと判定された場合、関連分析命令生成部５１０は、ステップ１６０４に戻り、同様の処理を実行する（ステップ１６０４〜ステップ１６０６）。
【０２２３】
全ての関連データｄ'について処理が実行されたと判定された場合、関連分析命令生成部５１０は、処理を終了する（ステップ１６０６）。
【０２２４】
図１７は、本発明の第１の実施形態の分析処理コスト計算部５１４が実行する処理を説明するフローチャートである。
【０２２５】
分析処理コスト計算部５１４は、処理を開始すると（ステップ１７０１）、追加分析命令記録部５１３に格納される追加分析命令を読み出す（ステップ１７０２）。
【０２２６】
なお、分析処理コスト計算部５１４は、追加分析命令記録部５１３を監視し、追加分析命令記録部５１３に追加分析命令が格納されたことを検知した場合に処理を開始する。また、分析処理コスト計算部５１４は、周期的に処理を実行してもよい。
【０２２７】
読み出される追加分析命令は、分析対象データｄ及び処理範囲ｒａｎｇｅから構成される関数ｆ（ｄ，ｒａｎｇｅ）である。
【０２２８】
分析処理コスト計算部５１４は、読み出された追加分析命令の処理コストを算出する（ステップ１７０３）。
【０２２９】
具体的には、分析処理コスト計算部５１４は、読み出された分析命令に基づいて分析処理コスト記録部５１５を参照し、当該分析命令に対応する関数の関数コストを取得する。例えば、関数の種類に基づいて、対応する関数の関数コストが取得される。
【０２３０】
分析処理コスト計算部５１４は、読み出された追加分析命令に含まれる処理範囲ｒａｎｇｅ、及び取得された関数コストに基づいて、処理コストｃを算出する。例えば、処理範囲ｒａｎｇｅと関数コストとを乗算した値を処理コストｃとして算出することができる。
【０２３１】
分析処理コスト計算部５１４は、算出された処理コストｃを追加分析命令記録部５１３に出力し（ステップ１７０４）、処理を終了する（ステップ１７０５）。
【０２３２】
なお、処理コストｃは、追加分析命令と対応づけられて追加分析命令記録部５１３に格納される。
【０２３３】
図１８は、本発明の第１の実施形態の処理優先度管理部５１６が実行する処理を説明するフローチャートである。
【０２３４】
処理優先度管理部５１６は、追加分析命令記録部５１３を監視し、追加分析命令記録部５１３に優先度が算出されていない追加分析命令がある場合に処理を開始する。また、処理優先度管理部５１６は、入力受付部５１８から、参照要求を受信した旨の通知が入力された場合に処理を開始する。
【０２３５】
処理優先度管理部５１６は、処理を開始すると（ステップ１８０１）、参照要求を受信したか否かを判定する（ステップ１８０２）。
【０２３６】
例えば、処理優先度管理部５１６は、入力受付部５１８から参照要求を受信した旨の通知が入力された場合に、参照要求を受信したと判定する。
【０２３７】
参照要求を受信したと判定された場合、処理優先度管理部５１６は、当該参照要求に対応する追加分析命令を追加分析命令記録部５１３から読み出し、読み出された追加分析命令の優先度を最大に設定し（ステップ１８０３）、ステップ１８０４に進む。
【０２３８】
参照要求を受信していないと判定された場合、処理優先度管理部５１６は、追加分析命令記録部５１３から追加分析命令に関する情報を読み出し、また、ユーザ操作状況記録部５１７から履歴情報を読み出す（ステップ１８０４）。
【０２３９】
読み出される追加分析命令に関する情報には、追加分析命令、当該追加分析命令の分析需要、及び当該追加分析命令の処理コストが含まれる。また、読み出される履歴情報には、ユーザ操作端末１００の操作内容及び分析結果表示部４０２の表示内容が含まれる。
【０２４０】
処理優先度管理部５１６は、読み出された情報に基づいて優先度を算出する。優先度の算出方法としては、例えば次のような方法が考えられる。
【０２４１】
まず、処理優先度管理部５１６は、所定の条件に基づいて読み出された追加分析命令をグループ化することによって、分析命令セットを定義する（ステップ１８０５）。グループ化の条件としては、例えば、追加分析命令における処理範囲が同一である場合に一つのグループにまとめる方法が考えられる。
【０２４２】
ステップ１８０５の処理によって、一度に実行できる追加分析命令をまとめることができる。なお、ステップ１８０５の処理は実行しなくてもよい。
【０２４３】
処理優先度管理部５１６は、優先度を算出する（ステップ１８０６）。
【０２４４】
追加分析命令がグループ化されている場合は、当該分析命令セットの優先度が算出される。ステップ１８０３の処理が実行されなかった場合、一つの追加分析命令を分析命令セットと定義して、当該分析命令セットの優先度が算出される。
【０２４５】
以下、追加分析命令を｛ｆ1，ｆ2，…，ｆn｝と定義し、分析命令セットを｛ｇ1，ｇ2，…，ｇm｝と定義する。ｎは追加分析命令の数を表し、ｍは追加分析命令がグループ化された場合にはグループの数を表す。なお、追加分析命令がグループ化されていない場合にはｍはｎと一致する。
【０２４６】
また、追加分析命令ｆi（ｉは、１〜ｎ）の分析需要をｄiと定義し、処理コストをｃiと定義する。また、遷移数をｔiと定義する。
【０２４７】
ここで、遷移数ｔiは、分析結果表示部４０２に表示される追加分析命令に対する、生成された追加分析命令の遷移回数を表す。すなわち、生成された追加分析命令が、分析結果表示部４０２に表示される追加分析命令が生成されてから何回目の生成処理によって生成された追加分析命令であるかを表すものである。
【０２４８】
例えば、分析命令Ａから生成された追加分析命令Ｂ、追加分析命令Ｂから生成された追加分析命令Ｃについては、分析結果表示部４０２に分析命令Ａが表示されている場合に、Ｂの遷移数は「１」となり、Ｃの遷移数は「２」となる。またＡの遷移数は「０」となる。ｔiは、優先度を算出するときに分析結果表示部４０２の表示状態に基づいて算出される。なお、追加分析命令記録部５１３には、追加分析命令がどの分析命令から生成されたかを示す情報が格納される。
【０２４９】
前述した定義に基づいて、分析命令セットの優先度Ｄiは式（６）を用いて算出することができる。
【０２５０】
【数６】
0005515117.tif 000007
【０２５１】
集合σは、分析命令セットの部分集合に含まれる要素の添え字の集合を表す。すなわち、式（６）の和は、部分集合に含まれる追加分析命令ｆについて足し合わせることを意味する。集合σは、優先度Ｄiが最大になるように決定される。
【０２５２】
ここで、ｒはコスト軽減率を表し、１より小さい値である。コスト低減率ｒの値が小さい場合には、多くの追加分析命令が含まれる分析命令セットの部分集合が有利になる。分析対象データが大きいほどコスト低減率ｒの値は小さくなる。なお、コスト低減率ｒは、ユーザや環境に対応させて調整できる。
【０２５３】
また、ｓは遷移による需要減衰率を表し、１より小さい値である。遷移数ｔiが大きい追加分析命令であるほど、分析需要が低下する。
【０２５４】
コスト低減率ｒ及び需要減衰率ｓは、ユーザ操作状況記録部５１７に格納され、処理優先度管理部５１６が追加分析命令の優先度を算出するときに読み出す。コスト低減率ｒ及び需要減衰率ｓは、ユーザ環境に対応させて調整できる。例えば、需要減衰率ｓは優先度を算出するときに分析結果表示部４０２の表示状態に基づいて算出される。
【０２５５】
図１８の説明に戻る。
【０２５６】
処理優先度管理部５１６は、算出された優先度に基づいて追加分析命令の実行順番を決定し、決定された実行順番にしたがって追加分析命令を分析命令受付部５０５に出力し（ステップ１８０７）、処理を終了する（ステップ１８０８）。
【０２５７】
なお、ステップ１８０３において、受信した参照要求に対応する追加分析命令がすでに実行されている場合には、優先度を変更しなくてもよい。処理優先度管理部５１６は、追加分析命令記録部５１３に受信した参照要求に対応する追加分析命令が格納されていない場合に、受信した参照要求に対応する追加分析命令が実行されていると判定する。
【０２５８】
また、優先度が算出された追加分析命令が追加分析命令記録部５１３に格納される場合のステップ１８０３の処理は例えば以下のような方法が考えられる。
【０２５９】
第１の方法は、処理優先度管理部５１６が、参照要求に対応する追加分析命令の優先度が最大となるように、他の追加分析命令についても再度優先度を算出する方法である。第２の方法は、処理優先度管理部５１６が、追加分析命令記録部５１３を参照して、参照要求に対応する追加分析命令の優先度が最大になるように算出する方法である。
【０２６０】
第１の方法では、追加分析命令記録部５１３に格納される全ての追加分析命令について再度優先度を算出する方法である。第２の方法は、参照要求に対応する追加分析命令についてのみ優先度を算出する方法である。なお、第１の方法及び第２の方法は、一例であって、その他の方法を用いてもよい。
【０２６１】
なお、ステップ１８０７において、追加分析命令がグループ化されている場合には、分析命令セットが出力される。
【０２６２】
また、ステップ１８０７において、処理優先度管理部５１６は、優先度が大きいものから順に追加分析命令又は分析命令セットを出力する。このとき、処理優先度管理部５１６は、予め設定された閾値以上の優先度である追加分析命令又は分析命令セットのみを出力してもよい。
【０２６３】
図１９及び図２０は、本発明の第１の実施形態の分析結果表示部４０２に表示されるインタフェースの一例を示す説明図である。
【０２６４】
図１９は、分析結果表示部４０２に散布図として分析結果が表示されるインタフェース１９０１を示している。図２０は、分析結果表示部４０２にヒストグラムとして分析結果が表示されるインタフェース２００１を示している。
【０２６５】
インタフェース１９０１には、移動１９０２及び詳細１９０３が表示される。移動１９０２及び詳細１９０３は、分析結果操作部４０３によって実現される操作部であり、ユーザが要求すると予測される追加分析命令の候補である。ユーザが、移動１９０２又は詳細１９０３を操作することによって、操作された操作部に対応する追加分析命令の参照要求が分析サーバ１１０に送信される。
【０２６６】
図１９に示す例では、移動１９０２が操作された場合、操作された方向にグラフが移動（スクロール）する。また、詳細１９０３が操作された場合、対象部分１９０４が拡大して表示される。
【０２６７】
図１９に示す例では、詳細１９０３の操作部には「準備中」が表示されている。これは、詳細１９０３に対応する追加分析命令が実行中であることを示す。
【０２６８】
インタフェース２００１の表示（ａ）には、比率補正２００２が表示される。比率補正２００２は、分析結果操作部４０３によって実現される操作部であり、ユーザが要求すると予測される追加分析命令の候補を示す。ユーザが、比率補正２００２を操作することによって、操作された操作部に対応する追加分析命令の参照要求が分析サーバ１１０に送信される。
【０２６９】
インタフェース２００１の表示（ａ）において比率補正２００２が操作された場合、枠に囲まれた部分２００３が全体になるように、インタフェース２００１が表示（ｂ）に変更される。
【０２７０】
インタフェース２００１の表示（ｂ）には、詳細２００４が表示される。詳細２００４は、詳細１９０３と同様の操作部であり、詳細２００４が操作されると対象部分２００５が拡大して表示される。
【０２７１】
なお、第１の実施形態では、分析サーバ１１０の分析処理コスト計算部５１４が追加分析命令の処理コストｃを算出したが、分析処理コスト記録部５１５に予め格納されていてもよい。この場合、分析サーバ１１０は、分析処理コスト計算部５１４を備えていなくてもよい。
【０２７２】
第１の実施形態では、入力された分析命令に対して複数の分析命令が生成される場合に、分析サーバ１１０は、分析需要度及び処理コストに基づいて算出された優先度にしたがって当該分析命令を実行する。これによって、ユーザが所望する分析結果を予測するとともに、当該分析結果を出力するための処理が優先的に実行される。
【０２７３】
したがって、所望する分析結果を素早くかつ確実に取得できるため、ユーザの作業負担の低減、及び、ユーザの作業時間（待ち時間）の削減が可能となる。
【０２７４】
［第２の実施形態］
本発明の第２の実施形態では、テキスト、音声及び画像などの複数の異なる形式のデータが格納されたデータベースを備える計算機システムについて説明する。
【０２７５】
第２の実施形態の計算機システムは、検索サーバ２２００（図２２参照）とユーザ操作端末１００とから構成される。分析サーバ１１０が検索サーバ２１００である点が第１の実施形態と異なる。
【０２７６】
第２の実施形態では、以下のような処理を想定する。
【０２７７】
ユーザ操作端末１００から所定のデータを検索するための検索クエリが送信され、当該検索クエリを受信した検索サーバ２２００（図２２参照）が複数の検索命令を生成する。
【０２７８】
検索サーバ２２００（図２２参照）は、生成された検索命令の優先度を算出し、優先度が高いものから順に実行する。
【０２７９】
さらに、検索サーバ２２００（図２２参照）は、検索命令を実行後、当該検索命令の実行結果をユーザ操作端末１００に送信する。なお、検索サーバ２２００（図２２参照）は、一つの検索命令を実行する毎に、当該検索命令に対応する実行結果をユーザ操作端末１００に送信する。
【０２８０】
以下、第１の実施形態との差異を中心に第２の実施形態について説明する。
【０２８１】
ユーザ操作端末１００のハードウェア構成は、第１の実施形態と同一であるため説明を省略する。
【０２８２】
図２１は、本発明の第２の実施形態のユーザ操作端末１００のソフトウェア構成を説明するブロック図である。
【０２８３】
ユーザ操作端末１００は、検索クエリ入力部２１０１及び検索結果表示部２１０２を備える。
【０２８４】
検索クエリ入力部２１０１は、ユーザが入力した検索クエリを検索サーバ２２００に送信する。検索結果表示部２１０２は、検索サーバ２２００から出力された検索結果を表示する。
【０２８５】
なお、ユーザ操作端末１００は、検索結果に対するユーザの操作を受け付けるための検索結果操作部（図示省略）を備えていてもよい。
【０２８６】
検索サーバ２２００のハードウェア構成は、分析サーバ１１０のハードウェア構成と同一であるため説明を省略する。
【０２８７】
図２２は、本発明の第２の実施形態の検索サーバ２２００のソフトウェア構成を説明するブロック図である。
【０２８８】
検索クエリ受付部２２０１、検索命令生成部２２０２、検索命令記録部２２０３、検索処理コスト計算部２２０４、検索処理コスト記録部２２０５、処理優先度管理部２２０６、検索命令実行部２２０７及び表示情報出力部２２０８を備える。
【０２８９】
また、本実施形態では、検索サーバ２２００が分析対象データベース２２１０を備える。
【０２９０】
検索クエリ受付部２２０１は、ユーザ操作端末１００の検索クエリ入力部２１０１から送信される検索クエリを受信する。また、検索クエリ受付部２２０１は、受信した検索クエリを検索命令生成部２２０２に出力する。
【０２９１】
検索命令生成部２２０２は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、分析対象データベース２２１０に格納されるデータを用いて検索命令を生成し、生成された検索命令を出力する。
【０２９２】
検索命令生成部２２０２及び分析対象データベース２２１０の詳細については、図２３を用いて後述する。
【０２９３】
検索命令記録部２２０３は、検索命令生成部２２０２から入力された検索命令及び内容合致度を格納する。
【０２９４】
検索処理コスト計算部２２０４は、検索処理コスト記録部２２０５を参照して、検索命令記録部２２０３に格納される検索命令の検索処理コストを算出する。算出された検索処理コストは、検索命令と対応づけられて検索命令記録部２２０３に格納される。
【０２９５】
なお、検索処理コストは、データの形式やデータサイズなどから算出することができる。
【０２９６】
検索処理コスト記録部２２０５は、検索命令に用いられる関数又は処理の処理コストが格納される。
【０２９７】
処理優先度管理部２２０６は、検索命令記録部２２０３から一以上の検索命令を読み出し、読み出された検索命令の優先度を算出する。また、処理優先度管理部２２０６は、算出された優先度に基づいて、検索命令の実行順番を決定する。さらに、処理優先度管理部２２０６は、決定された実行順番にしたがって検索命令を検索命令実行部２２０７に出力する。
【０２９８】
処理優先度管理部２２０６は、出力された検索命令を検索命令記録部２２０３から消去する。
【０２９９】
検索命令実行部２２０７は、処理優先度管理部２２０６から入力された検索命令に対応する検索処理を実行する。また、検索命令実行部２２０７は、検索結果を表示情報出力部２２０８に出力する。
【０３００】
表示情報出力部２２０８は、検索命令実行部２２０７から入力された検索結果に基づいて、検索結果表示部２１０２に分析結果を表示するための表示情報を生成する。また、表示情報出力部２２０８は、生成された表示情報を検索結果表示部２１０２に出力する。
【０３０１】
第２の実施形態では、検索サーバ２２００が、入力された検索クエリに基づいて分析対象データベース２２１０に対する検索処理を実行し、また、当該検索クエリに関する情報を収集する。
【０３０２】
図２３は、本発明の第１の実施形態の検索命令生成部２２０２のソフトウェア構成及び分析対象データベース２２１０の構成を説明するブロック図である。
【０３０３】
分析対象データベース２２１０は、テキストＤＢメタデータ記録部２３０５、音声ＤＢメタデータ記録部２３０６、画像ＤＢメタデータ記録部２３０７及び動画ＤＢメタデータ記録部２３０８を備える。
【０３０４】
テキストＤＢメタデータ記録部２３０５は、検索対象となるテキストファイルの内容を表すタグ、及びファイルサイズなどのメタデータを格納する。
【０３０５】
音声ＤＢメタデータ記録部２３０６は、検索対象となる音声ファイルの内容を表すタグ、及びファイルサイズなどのメタデータを格納する。
【０３０６】
画像ＤＢメタデータ記録部２３０７は、検索対象となる画像ファイルの内容を表すタグ、及びファイルサイズなどのメタデータを格納する。
【０３０７】
動画ＤＢメタデータ記録部２３０８は、検索対象となる動画ファイルの内容を表すタグ、及びファイルサイズなどのメタデータを格納する。
【０３０８】
検索命令生成部２２０２は、テキストデータ検索命令生成部２３０１、音声データ検索命令生成部２３０２、画像データ検索命令生成部２３０３及び動画データ検索命令生成部２３０４を備える。
【０３０９】
テキストデータ検索命令生成部２３０１は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、テキストＤＢメタデータ記録部２３０５からメタデータを読み出す。さらに、テキストデータ検索命令生成部２３０１は、入力された検索クエリ及び読み出されたメタデータに基づいて、テキストデータに関する検索命令を生成する。なお、検索命令の生成方法については、周知技術を用いることによって生成可能であるため、説明を省略する。
【０３１０】
また、テキストデータ検索命令生成部２３０１は、生成された検索命令における検索対象のテキストデータと検索クエリに対応する検索対象データとの内容合致度を算出する。なお、内容合致度は、入力された検索クエリと、読み出されたメタデータに含まれるタグとの一致度を用いて算出することができる。
【０３１１】
テキストデータ検索命令生成部２３０１は、生成されたテキストデータに関する検索命令及び算出された内容合致度を検索命令記録部２２０３に出力する。
【０３１２】
音声データ検索命令生成部２３０２は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、音声ＤＢメタデータ記録部２３０６からメタデータを読み出す。さらに、音声データ検索命令生成部２３０２は、入力された検索クエリ及び読み出されたメタデータに基づいて、音声データに関する検索命令を生成する。なお、検索命令の生成方法については、周知技術を用いることによって生成可能であるため、説明を省略する。
【０３１３】
また、音声データ検索命令生成部２３０２は、生成された検索命令における検索対象の音声データと検索クエリに対応する検索対象データとの内容合致度を算出する。なお、内容合致度は、テキストデータ検索命令生成部２３０１と同様の方法を用いることができる。
【０３１４】
音声データ検索命令生成部２３０２は、生成された音声データに関する検索命令及び算出された内容合致度を検索命令記録部２２０３に出力する。
【０３１５】
画像データ検索命令生成部２３０３は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、画像ＤＢメタデータ記録部２３０７からメタデータを読み出す。さらに、画像データ検索命令生成部２３０３は、入力された検索クエリ及び読み出されたメタデータに基づいて、画像データに関する検索命令を生成する。なお、検索命令の生成方法については、周知技術を用いることによって生成可能であるため、説明を省略する。
【０３１６】
また、画像データ検索命令生成部２３０３は、生成された検索命令における検索対象の画像データと検索クエリに対応する検索対象データとの内容合致度を算出する。なお、内容合致度は、テキストデータ検索命令生成部２３０１と同様の方法を用いることができる。
【０３１７】
画像データ検索命令生成部２３０３は、生成された画像データに関する検索命令及び算出された内容合致度を検索命令記録部２２０３に出力する。
【０３１８】
動画データ検索命令生成部２３０４は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、動画ＤＢメタデータ記録部２３０８からメタデータを読み出す。さらに、動画データ検索命令生成部２３０４は、入力された検索クエリ及び読み出されたメタデータに基づいて、動画データに関する検索命令を生成する。なお、検索命令の生成方法については、周知技術を用いることによって生成可能であるため、説明を省略する。
【０３１９】
また、画像データ検索命令生成部２３０３は、生成された検索命令における検索対象の動画データと検索クエリに対応する検索対象データとの内容合致度を算出する。なお、内容合致度は、テキストデータ検索命令生成部２３０１と同様の方法を用いることができる。
【０３２０】
動画データ検索命令生成部２３０４は、生成された動画データに関する検索命令及び算出された内容合致度を検索命令記録部２２０３に出力する。
【０３２１】
図２４は、本発明の第２の実施形態のユーザ操作端末１００が実行する処理を説明するフローチャートである。
【０３２２】
ユーザ操作端末１００は、処理を開始すると（ステップ２４０１）、ユーザが入出力装置２０４を用いて入力した検索クエリを検索サーバ２２００に送信する（ステップ２４０２）。具体的には、検索クエリ入力部２１０１が検索クエリ受付部２２０１に検索クエリを送信する。
【０３２３】
検索クエリを受信した検索サーバ２２００は、優先度に基づいて検索命令を実行し、当該検索命令に対応する検索結果が含まれる表示情報をユーザ操作端末１００に送信する。本実施形態では、一つの検索命令が実行される毎に、一つの検索結果を含む表示情報が送信される。
【０３２４】
ユーザ操作端末１００は、受信した順に、検索結果を検索結果表示部２１０２に表示し（ステップ２４０３〜ステップ２４０５）、処理を終了する（ステップ２４０６）。
【０３２５】
図２４に示す例では、検索結果１、検索結果２及び検索結果３の順に検索結果が表示される。
【０３２６】
図２５は、本発明の第２の実施形態の検索サーバ２２００が実行する処理を説明するフローチャートである。
【０３２７】
検索サーバ２２００は、処理を開始すると（ステップ２５０１）、ユーザ操作端末１００から検索クエリを受付ける（ステップ２５０２）。
【０３２８】
検索サーバ２２００は、受付けた検索クエリに基づいて、各データ形式のデータに関する検索命令を生成し、検索クエリに対応する検索対象データと、生成された検索命令の検索対象であるデータとの内容合致度を算出する。さらに、検索サーバ２２００は、生成された検索命令及び算出された内容合致度を検索命令記録部２２０３に格納する。
【０３２９】
本実施形態では、４つのデータ形式について処理が実行される。具体的には以下の通りである。
【０３３０】
テキストデータ検索命令生成部２３０１は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、テキストデータに関する検索命令を生成し、検索クエリに対応する検索対象データと、生成された検索命令の検索対象であるテキストデータとの内容合致度を算出する（ステップ２５０３）。
【０３３１】
音声データ検索命令生成部２３０２は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、音声データに関する検索命令を生成し、検索クエリに対応する検索対象データと、生成された検索命令の検索対象である音声データとの内容合致度を算出する（ステップ２５０４）。
【０３３２】
画像データ検索命令生成部２３０３は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、画像データに関する検索命令を生成し、検索クエリに対応する検索対象データと、生成された検索命令の検索対象である画像データとの内容合致度を算出する（ステップ２５０５）。
【０３３３】
動画データ検索命令生成部２３０４は、検索クエリ受付部２２０１から入力された検索クエリに基づいて、動画データに関する検索命令を生成し、検索クエリに対応する検索対象データと、生成された検索命令の検索対象である動画データとの内容合致度を算出する（ステップ２５０６）。
【０３３４】
本実施形態では、ステップ２５０３〜ステップ２５０６の処理は、並列処理として実行されるが、各処理は直列処理として実行されてもよい。各処理が直列処理として実行される場合、いずれの処理から実行してもよい。
【０３３５】
また、検索処理コスト計算部２２０４は、検索処理コスト記録部２２０５を参照して、生成された検索命令の検索処理コストを算出し、算出された処理コストを検索命令と対応づけて検索命令記録部２２０３に格納する。なお、検索処理コスト計算部２２０４が実行する処理は、図１７と同様の処理となる。
【０３３６】
なお、前述した処理の実行契機は、検索処理コスト計算部２２０４が、検索命令記録部２２０３を監視しており、新たに検索命令が格納されたことを検知した場合に、前述した処理を実行する方法が考えられる。
【０３３７】
次に、検索サーバ２２００は、検索命令記録部２２０３から検索命令を読み出し、読み出された検索命令の優先度を算出する（ステップ２５０７）。
【０３３８】
具体的には、処理優先度管理部２２０６が、検索命令記録部２２０３から検索命令を読み出し、読み出された検索命令の内容合致度及び検索処理コストに基づいて、優先度を算出する。算出された優先度は、対応する検索命令と対応づけて検索命令記録部２２０３に格納される。
【０３３９】
検索サーバ２２００は、算出された優先度に基づいて、検索命令を実行する（ステップ２５０８）。
【０３４０】
具体的には、処理優先度管理部２２０６が、優先度が大きいものから順に検索命令を出力する。検索命令実行部２２０７は、入力された検索命令を実行し、当該検索命令の検索結果を表示情報出力部２２０８に出力する。
【０３４１】
なお、処理優先度管理部５１６は、予め設定された閾値以上の優先度である検索命令のみを出力してもよい。
【０３４２】
検索サーバ２２００は、入力された検索結果に基づいて、当該検索結果が含まれる表示情報を生成し、生成された表示情報をユーザ操作端末１００に送信する（ステップ２５０９）。
【０３４３】
検索サーバ２２００は、全ての検索命令が実行されたか否かを判定する（ステップ２５１０）。
【０３４４】
例えば、検索サーバ２２００は、検索命令記録部２２０３を参照し、当該検索命令記録部２２０３に検索命令が格納されていない場合、全ての検索命令が実行されたと判定する。
【０３４５】
全ての検索命令が実行されたと判定された場合、検索サーバ２２００は、処理を終了する（ステップ２５１１）。
【０３４６】
全ての検索命令が実行されていないと判定された場合、検索サーバ２２００は、ステップ２５０８に戻り同様の処理を実行する（ステップ２５０８〜ステップ２５１１）。
【０３４７】
第２の実施形態では、テキスト、音声及び画像などの複数の異なる形式のデータが格納されるデータベースに対する検索処理において、検索サーバ２２００は、内容合致度及び検索処理コストに基づいて算出された優先度にしたがって検索命令を実行する。これによって、ユーザが所望する検索結果を予測するとともに、当該検索結果を出力するための処理が優先的に実行される。
【０３４８】
したがって、所望する検索結果を取得するためのユーザの作業時間（待ち時間）を低減できる。
【符号の説明】
【０３４９】
１００    ユーザ操作端末
１１０    分析サーバ
１２０    分析対象データベース
２０１    プロセッサ
２０２    メモリ
２０３    不揮発性記憶媒体
２０４    入出力装置
２０５    ネットワークインタフェース
３０１    プロセッサ
３０２    メモリ
３０３    不揮発性記憶媒体
３０４    ネットワークインタフェース
４０１    分析命令入力部
４０２    分析結果表示部
４０３    分析結果操作部
５０５    分析命令受付部
５０６    分析命令実行部
５０７    分析命令履歴記録部
５０８    グラフ変形則適用部
５０９    合成分析命令生成部
５１０    関連分析命令生成部
５１１    分析対象データ記録部
５１２    関連性定義データ記録部
５１３    追加分析命令記録部
５１４    分析処理コスト計算部
５１５    分析処理コスト記録部
５１６    処理優先度管理部
５１７    ユーザ操作状況記録部
５１８    入力受付部
５１９    表示情報出力部
２１００    検索サーバ
２１０１    検索クエリ入力部
２１０２    検索結果表示部
２２００    検索サーバ
２２０１    検索クエリ受付部
２２０２    検索命令生成部
２２０３    検索命令記録部
２２０４    検索処理コスト計算部
２２０５    検索処理コスト記録部
２２０６    処理優先度管理部
２２０７    検索命令実行部
２２０８    表示情報出力部
２２１０    分析対象データベース
２３０１    テキストデータ検索命令生成部
２３０２    音声データ検索命令生成部
２３０３    画像データ検索命令生成部
２３０４    動画データ検索命令生成部
２３０５    テキストＤＢメタデータ記録部
２３０６    音声ＤＢメタデータ記録部
２３０７    画像ＤＢメタデータ記録部
２３０８    動画ＤＢメタデータ記録部
【図１】
0005515117.tif 000008
【図２】
0005515117.tif 000009
【図３】
0005515117.tif 000010
【図４】
0005515117.tif 000011
【図５】
0005515117.tif 000012
【図６】
0005515117.tif 000013
【図７】
0005515117.tif 000014
【図８Ａ】
0005515117.tif 000015
【図８Ｂ】
0005515117.tif 000016
【図８Ｃ】
0005515117.tif 000017
【図９】
0005515117.tif 000018
【図１０】
0005515117.tif 000019
【図１１】
0005515117.tif 000020
【図１２】
0005515117.tif 000021
【図１３】
0005515117.tif 000022
【図１４】
0005515117.tif 000023
【図１５】
0005515117.tif 000024
【図１６】
0005515117.tif 000025
【図１７】
0005515117.tif 000026
【図１８】
0005515117.tif 000027
【図１９】
0005515117.tif 000028
【図２０】
0005515117.tif 000029
【図２１】
0005515117.tif 000030
【図２２】
0005515117.tif 000031
【図２３】
0005515117.tif 000032
【図２４】
0005515117.tif 000033
【図２５】
0005515117.tif 000034