説明

生成方法、検索支援方法、検索支援プログラムおよびシステム

【課題】データを選択するユーザの操作入力に応じた検索条件を作成すること。
【解決手段】ユーザは、ディスプレイ130に表示されたグラフ120を見ながら、集約データ121〜129の中から掘り下げて分析したい集約データを選択する。ここでは、マウス150の左クリックとキーボード140のコントロールキーを使用したユーザの操作入力により、集約データ121と集約データ125が直接指定されている。検索支援装置101は、集約データ121と集約データ125が直接指定された場合、集約データ121,125のそれぞれを詳細化して分析する際に使用するデータを、データベース110の中から検索する検索条件を作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データの検索を支援する生成方法、検索支援方法、検索支援プログラムおよびシステムに関する。
【背景技術】
【0002】
従来から、様々なデータを用いて傾向を分析する技術がある。例えば、データベースに蓄積されているデータを利用したデータ分析として、グラフや表などから選択された一つのデータを詳細化することで、対象を絞り込んで掘り下げていく手法(いわゆる、「ドリルダウン」)がある。
【0003】
関連する先行技術としては、例えば、データベースからのレポートを作成およびタイトル付けし、自然言語フレーズをメニューから作成および表示し、データベースに問合せ、ナビゲータ自体がタイトルとなるように、レポートにタイトルを付けるシステムがある。また、データをグラフィック表示し、かつ、ユーザによるデータのインタラクティブな探索を可能にするためのシステムがある。また、時間や座標などの次元軸における連続した領域での条件判定でタプルを集約する機能とその値をテーブルで管理する機能を、対話型のサーバシステムに装備するものがある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特表2003−503798号公報
【特許文献2】特開2003−216298号公報
【特許文献3】特開2002−007435号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来技術では、グラフ等の中から複数のデータを選択して、ドリルダウンなどのデータ分析を行うことが難しいという問題がある。例えば、ユーザがどのような意図で複数のデータを選択したかを判別することが難しく、データベースの中からデータ分析に使用するデータを検索することが難しい。
【0006】
一側面では、本発明は、データを選択するユーザの操作入力に応じた検索条件を作成することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一側面によれば、複数の表示要素が指定された場合に、前記複数の表示要素の指定方法に応じた演算子で、指定された前記複数の表示要素のそれぞれに対応する複数のデータを結合した検索条件を生成する生成方法が提案される。
【0008】
また、本発明の一側面によれば、複数の属性を有するデータ群のうち、前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表の中から、複数の集約データを選択する操作入力を受け付け、受け付けた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定し、判定した判定結果と前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する検索支援方法および検索支援プログラムが提案される。
【0009】
また、本発明の一側面によれば、複数の属性を有するデータ群を記憶する記憶部と、前記データ群のうち前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表を表示する表示部と、前記表示部に表示された前記図表の中から複数の集約データを選択する操作入力を受け付ける受付部と、前記受付部によって受け付けられた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定する判定部と、前記判定部によって判定された判定結果と、前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する生成部と、を含むシステムが提案される。
【発明の効果】
【0010】
本発明の一態様によれば、データを選択するユーザの操作入力に応じた検索条件を作成することができる。
【図面の簡単な説明】
【0011】
【図1】図1は、実施の形態にかかる検索支援方法の一実施例を示す説明図(その1)である。
【図2】図2は、実施の形態にかかる検索支援方法の一実施例を示す説明図(その2)である。
【図3】図3は、実施の形態にかかる情報提供システム300のシステム構成例を示す説明図である。
【図4】図4は、実施の形態にかかるコンピュータのハードウェア構成例を示すブロック図である。
【図5】図5は、データベース110の記憶内容の一例を示す説明図である。
【図6】図6は、実施の形態にかかるクライアント装置302の機能的構成例を示すブロック図である。
【図7】図7は、実施の形態にかかる情報提供装置301の機能的構成例を示すブロック図である。
【図8】図8は、ドリルダウンの一例を示す説明図(その1)である。
【図9】図9は、ドリルダウンの一例を示す説明図(その2)である。
【図10】図10は、ドリルダウンの一例を示す説明図(その3)である。
【図11】図11は、ドリルダウンの一例を示す説明図(その4)である。
【図12】図12は、クライアント装置302の図表表示処理手順の一例を示すフローチャートである。
【図13】図13は、情報提供装置301の情報提供処理手順の一例を示すフローチャートである。
【図14】図14は、第1の生成処理の具体的処理手順の一例を示すフローチャートである。
【図15】図15は、第2の生成処理の具体的処理手順の一例を示すフローチャート(その1)である。
【図16】図16は、第2の生成処理の具体的処理手順の一例を示すフローチャート(その2)である。
【図17】図17は、データ加工処理の具体的処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下に添付図面を参照して、この発明にかかる生成方法、検索支援方法、検索支援プログラムおよびシステムの実施の形態を詳細に説明する。
【0013】
(検索支援方法の一実施例)
図1は、実施の形態にかかる検索支援方法の一実施例を示す説明図(その1)である。図2は、実施の形態にかかる検索支援方法の一実施例を示す説明図(その2)である。図1および図2において、検索支援装置101は、データベース110の中から分析対象となるデータを検索する検索条件を作成する機能を有するコンピュータである。
【0014】
ここで、データベース110は、複数の属性を有するデータ群を記憶している。データベース110は、複数の属性に含まれる各々の属性の属性値の組合せに対応するデータをそれぞれ記憶している。データベース110は、例えば、対象とする属性を次々に切り替えながらデータを検索・集計できる多次元データベースである。
【0015】
データは、例えば、企業の売上、商品の販売数、製品の生産高、人口などの数値情報である。データは、例えば、定期的または不定期に収集されてデータベース110に蓄積される。また、分析対象となるデータとは、ドリルダウンやドリルアップといったデータ分析に用いるデータである。
【0016】
以下、データベース110に記憶されている複数の属性を有するデータ群を「データ群d1〜dn」と表記する(n:2以上の自然数)。また、図1および図2において、各データd1〜dnは、人口を表す数値情報であり、属性として「地域」、「就労種別」および「性別」を有している場合を例に挙げて説明する。なお、データベース110の記憶内容については、図5を用いて後述する。
【0017】
図1において、グラフ120は、各地域の就労種別ごとの人口を表す棒グラフである。具体的には、グラフ120は、データ群d1〜dnのうち、属性「地域」および「就労種別」の属性値の組合せが同一となるデータを集約した集約データ121〜129を、属性「地域」および「就労種別」の属性値の組合せと対応付けて表す図表である。
【0018】
ここで、集約データ121は、地域「関東」の就労種別「学生」の人口「100」を表している。集約データ122は、地域「関東」の就労種別「労働者」の人口「70」を表している。集約データ123は、地域「関東」の就労種別「無職」の人口「60」を表している。
【0019】
また、集約データ124は、地域「関西」の就労種別「学生」の人口「100」を表している。集約データ125は、地域「関西」の就労種別「労働者」の人口「90」を表している。集約データ126は、地域「関西」の就労種別「無職」の人口「30」を表している。
【0020】
また、集約データ127は、地域「九州」の就労種別「学生」の人口「50」を表している。集約データ128は、地域「九州」の就労種別「労働者」の人口「40」を表している。集約データ129は、地域「九州」の就労種別「無職」の人口「60」を表している。
【0021】
ユーザは、例えば、ディスプレイ130に表示されたグラフ120を見ながら、集約データ121〜129の中から掘り下げて分析したい集約データを選択する。図1の例では、マウス150の左クリックとキーボード140のコントロールキーを使用したユーザの操作入力により、集約データ121と集約データ125が直接指定されている。
【0022】
このような、ディスプレイ130に表示されている集約データ121と集約データ125とを直接指定する操作入力は、ユーザが、集約データ121と集約データ125とをピンポイントで詳細化して分析したい場合に行われることが多い。
【0023】
そこで、検索支援装置101は、集約データ121,125のそれぞれを詳細化して分析する際に使用するデータを、データベース110の中から検索する検索条件を作成する。具体的には、例えば、検索支援装置101は、属性「地域」および「就労種別」の属性値の組合せが、集約データ121,125のうちのいずれかの集約データと同一となるデータを検索する検索条件を生成する。
【0024】
より具体的には、集約データ121に対応する属性「地域」および「就労種別」の属性値の組合せは、「地域:関東、就労種別:学生」である。また、集約データ125に対応する属性「地域」および「就労種別」の属性値の組合せは、「地域:関西、就労種別:労働者」である。このため、検索条件としては、例えば、下記条件式1が生成される。
【0025】
条件式1:(「地域=関東」AND「就労種別=学生」)
OR(「地域=関西」AND「就労種別=労働者」)
【0026】
すなわち、上記条件式1を満たすデータは、属性「地域」の属性値が「関東」かつ属性「就労種別」の属性値が「学生」のデータ、または、属性「地域」の属性値が「関西」かつ属性「就労種別」の属性値が「労働者」のデータである。上記条件式1を満たすデータをデータベース110の中から検索することにより、集約データ121,125のそれぞれを詳細化して分析する際に必要となるデータを得ることができる。
【0027】
一方、図2の例では、マウス150のドラッグ&ドロップ操作を使用したユーザの操作入力により、ディスプレイ130に表示されている集約データ121,122,124,125を含む範囲201が指定されている。
【0028】
このような、ディスプレイ130に表示されている集約データ121,122,124,125を含む範囲201を指定する操作入力は、ユーザが、集約データ121,122,124,125を包括的に分析したい場合に行われることが多い。
【0029】
そこで、検索支援装置101は、データベース110の中から、集約データ121,122,124,125の属性「地域」の属性値、または「就労種別」の属性値に対応するデータを網羅的に検索する検索条件を作成する。具体的には、例えば、検索支援装置101は、属性「地域」および「就労種別」の各々の属性の属性値が、集約データ121,122,124,125のうちのいずれかの集約データに対応する属性値と同一となるデータを検索する検索条件を生成する。
【0030】
より具体的には、集約データ121,122,124,125のうちのいずれかの集約データに対応する属性「地域」の属性値は、「関東」または「関西」である。また、集約データ121,122,124,125のうちのいずれかの集約データに対応する属性「就労種別」の属性値は、「学生」または「労働者」である。このため、検索条件としては、例えば、下記条件式2が生成される。
【0031】
条件式2:(「地域=関東」OR「地域=関西」)
AND(「就労種別=学生」OR「就労種別=労働者」)
【0032】
すなわち、上記条件式2を満たすデータは、属性「地域」の属性値が「関東」または「関西」、かつ、属性「就労種別」の属性値が「学生」または「労働者」のデータである。上記条件式2を満たすデータをデータベース110の中から検索することにより、集約データ121,122,124,125を包括的に分析する際に必要となるデータを得ることができる。
【0033】
以上説明した本検索支援方法によれば、ドリルダウンといったデータ分析を行う目的で、ディスプレイ130に表示された図表から複数の集約データを選択するユーザの操作入力に応じて、データ分析に使用するデータを検索する検索条件を生成することができる。
【0034】
具体的には、ディスプレイ130に表示されている各々の集約データを直接指定する操作入力が行われた場合は、各々の集約データをピンポイントで詳細化して分析する際に必要となるデータを検索する検索条件を生成することができる。一方、ディスプレイ130に表示されている複数の集約データを含む範囲を指定する操作入力が行われた場合は、複数の集約データを包括的に分析する際に必要となるデータを検索する検索条件を生成することができる。
【0035】
このように、本検索支援方法によれば、ディスプレイ130に表示された図表の中から、掘り下げて分析したい複数の集約データを選択する操作入力が、直接指定か範囲指定かによってユーザの選択意図を判断することができる。そして、ユーザが期待する図表を作成できるデータを検索する条件式を生成することができる。
【0036】
(情報提供システム300のシステム構成例)
つぎに、実施の形態にかかる情報提供システム300について説明する。以下、図1および図2に示した検索支援装置101を、情報提供システム300の情報提供装置301に適用した場合について説明する。
【0037】
図3は、実施の形態にかかる情報提供システム300のシステム構成例を示す説明図である。図3において、情報提供システム300は、情報提供装置301と、クライアント装置302と、を含む。情報提供システム300において、情報提供装置301およびクライアント装置302は、有線または無線のネットワーク310を介して接続されている。ネットワーク310は、例えば、LAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどである。
【0038】
ここで、情報提供装置301は、データベース110を備え、クライアント装置302に図表を表す図表情報を提供するコンピュータである。図表は、例えば、棒グラフ、折れ線グラフ、円グラフ、テーブルなどである。具体的には、例えば、図表は、複数の属性を有するデータ群d1〜dnのうち、複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、2以上の属性の属性値の組合せと対応付けて表すものである。より具体的には、例えば、図表は、図1および図2に示したグラフ120である。
【0039】
クライアント装置302は、情報提供システム300のユーザが使用するコンピュータである。クライアント装置302は、情報提供装置301から提供される図表情報を、後述の図4に示すディスプレイ409に表示する機能を有する。
【0040】
具体的には、例えば、クライアント装置302は、図表の表示要求を情報提供装置301に送信する。ここで、図表の表示要求とは、例えば、表示対象となる図表を表す図表情報を要求するものである。表示対象となる図表は、例えば、予め設定されていてもよく、また、複数の図表の中からユーザが選択したものであってもよい。
【0041】
情報提供装置301は、クライアント装置302から図表の表示要求を受信すると、表示対象となる図表を表す図表情報を作成する。情報提供装置301は、作成した図表情報をクライアント装置302に送信する。クライアント装置302は、情報提供装置301からの図表情報を受信してディスプレイ409に表示する。
【0042】
ユーザは、例えば、クライアント装置302のディスプレイ409に表示される図表を見ながら、何らかの傾向を判断したり、ある現象の原因を調べるためにドリルアップやドリルダウンといったデータ分析を行うことができる。
【0043】
(コンピュータのハードウェア構成例)
つぎに、図3に示したコンピュータ(情報提供装置301、クライアント装置302)のハードウェア構成について説明する。
【0044】
図4は、実施の形態にかかるコンピュータのハードウェア構成例を示すブロック図である。図4において、コンピュータは、CPU(Central Processing Unit)401と、ROM(Read‐Only Memory)402と、RAM(Random Access Memory)403と、磁気ディスクドライブ404と、磁気ディスク405と、光ディスクドライブ406と、光ディスク407と、I/F(Interface)408と、ディスプレイ409と、キーボード410と、マウス411と、を備えている。また、各構成部はバス400によってそれぞれ接続されている。
【0045】
ここで、CPU401は、コンピュータの全体の制御を司る。ROM402は、ブートプログラムなどのプログラムを記憶している。RAM403は、CPU401のワークエリアとして使用される。磁気ディスクドライブ404は、CPU401の制御にしたがって磁気ディスク405に対するデータのリード/ライトを制御する。磁気ディスク405は、磁気ディスクドライブ404の制御で書き込まれたデータを記憶する。
【0046】
光ディスクドライブ406は、CPU401の制御にしたがって光ディスク407に対するデータのリード/ライトを制御する。光ディスク407は、光ディスクドライブ406の制御で書き込まれたデータを記憶したり、光ディスク407に記憶されたデータをコンピュータに読み取らせたりする。
【0047】
I/F408は、通信回線を通じてネットワーク310に接続され、ネットワーク310を介して他の装置に接続される。そして、I/F408は、ネットワーク310と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F408には、例えば、モデムやLANアダプタなどを採用することができる。
【0048】
ディスプレイ409は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。ディスプレイ409は、例えば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。図1に示したディスプレイ130は、例えば、このディスプレイ409に相当する。
【0049】
キーボード410は、文字、数字、各種指示などの入力のためのキーを備え、データの入力を行う。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス411は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などを行う。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。図1に示したキーボード140、マウス150は、例えば、このキーボード410およびマウス411に相当する。
【0050】
なお、情報提供装置301は、上述した構成部のうち、例えば、光ディスクドライブ406、光ディスク407、ディスプレイ409、キーボード410およびマウス411などを備えていなくてもよい。また、クライアント装置302は、例えば、スキャナやプリンタなどを備えていてもよい。
【0051】
(データベース110の記憶内容)
ここで、情報提供装置301が備えるデータベース110の記憶内容について説明する。データベース110は、例えば、図4に示した情報提供装置301のRAM403、磁気ディスク405、光ディスク407などの記憶装置により実現される。
【0052】
図5は、データベース110の記憶内容の一例を示す説明図である。図5において、データベース110は、属性フィールドおよびデータフィールドを有し、各フィールドに情報を設定することで、属性フィールドに設定されている各々の属性の属性値の組合せごとのデータd1〜dnをレコードとして記憶している。
【0053】
ここで、属性フィールドは、各データを特徴付ける属性を設定するフィールドである。ここでは、属性として、地域、就労種別、性別および日時が示されている。属性「地域」の属性値としては、例えば、「関東」、「関西」、「九州」がある。属性「就労種別」の属性値としては、例えば、「学生」、「労働者」、「無職」がある。属性「性別」の属性値としては、例えば、「男性」、「女性」がある。属性「日時」の属性値としては、例えば、「2/1 00:00:00(2月1日 00時00分00秒)」、「2/1 12:00:00」などがある。
【0054】
また、各属性には、各属性の種類を表す型が設定されている。属性の型としては、例えば、属性の属性値が連続している連続値型と、属性の属性値が連続していない離散値型とがある。例えば、属性「地域」の型は、属性「地域」の属性値が連続していない離散値型である。属性「就労種別」の型は、属性「就労種別」の属性値が連続していない離散値型である。
【0055】
属性「性別」の型は、属性「性別」の属性値が連続していない離散値型である。属性「日時」の型は、属性「日時」の属性値が連続している連続値型である。各属性の型を識別する型情報は、例えば、データベース110の属性フィールドに設定されている属性と関連付けて、情報提供装置301のRAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されている。
【0056】
データフィールドは、各データの本体となる情報を設定するフィールドである。各データの本体となる情報は、例えば、統計値、集計値、計測値などを表す数値情報である。ここでは、データの本体となる情報として、人口が示されている。
【0057】
例えば、データd1は、地域「関東」の就労種別「学生」の性別「男性」の日時「2/1 00:00:00」での人口「60」を示している。また、データd2は、地域「関東」の就労種別「学生」の性別「女性」の日時「2/1 00:00:00」での人口「30」を示している。
【0058】
(クライアント装置302の機能的構成例)
つぎに、クライアント装置302の機能的構成例について説明する。図6は、実施の形態にかかるクライアント装置302の機能的構成例を示すブロック図である。図6において、クライアント装置302は、受信部601と、表示部602と、受付部603と、送信部604と、を含む構成である。この制御部となる機能(受信部601〜送信部604)は、具体的には、例えば、図4に示したクライアント装置302のROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されたプログラムをCPU401に実行させることにより、または、I/F408により、その機能を実現する。また、各機能部の処理結果は、例えば、クライアント装置302のRAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
【0059】
受信部601は、情報提供装置301から図表を表す図表情報を受信する機能を有する。ここで、図表とは、上述したように、データ群d1〜dnのうち、複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、2以上の属性の属性値の組合せと対応付けて表すものである。図表には、複数の属性から選ばれた2以上の属性の属性値の組合せごとの集約データの一部または全部が含まれている。
【0060】
ここで、図5に示したデータベース110の記憶内容を例に挙げて、集約データの具体例について説明する。ここでは、複数の属性「地域」、「就労種別」、「性別」および「日時」から選ばれた2以上の属性を「地域」、「就労種別」および「日時」とする。この場合、データ群d1〜dnのうち、属性「地域」、「就労種別」および「日時」の属性値の組合せが同一となるデータは、例えば、データd1,d2である。
【0061】
このため、データd1,d2を集約した集約データは、地域「関東」の就労種別「学生」の日時「2/1 00:00:00」での人口「90」を示すデータとなる。この人口「90」は、データd1が表す人口「60」とデータd2が表す人口「30」とを集計した値である。
【0062】
表示部602は、受信された図表情報が表す図表を、図4に示したディスプレイ409に表示する機能を有する。具体的には、例えば、表示部602が、図表情報が表す棒グラフ、折れ線グラフ、円グラフ、テーブルなどをディスプレイ409に表示する。
【0063】
受付部603は、ディスプレイ409に表示された図表の中から集約データを選択するユーザの操作入力を受け付ける機能を有する。ユーザの操作入力としては、例えば、図表の中から集約データを直接指定して集約データを選択する操作入力(以下、「第1の操作入力」という)がある。また、ユーザの操作入力としては、例えば、ディスプレイ409の図表を含む表示領域上の範囲を指定して、図表の中から集約データを選択する操作入力(以下、「第2の操作入力」という)がある。
【0064】
具体的には、例えば、受付部603が、マウス411の左クリックとキーボード410のコントロールキーとを使用して、図表の中から複数の集約データを選択する第1の操作入力を受け付ける(例えば、図1参照)。また、例えば、受付部603が、マウス411のドラッグ&ドロップ操作を使用して、図表を含む表示領域上の範囲を指定することにより、図表の中から複数の集約データを選択する第2の操作入力を受け付ける(例えば、図2参照)。
【0065】
送信部604は、受け付けた受付結果を情報提供装置301に送信する機能を有する。ここで、受付結果は、例えば、ディスプレイ409に表示された図表の識別情報および図表の中から選択された集約データの識別情報を含む。また、受付結果は、例えば、図表の中から集約データを選択したユーザの操作入力が、第1の操作入力か第2の操作入力かを識別する操作情報を含む。
【0066】
(情報提供装置301の機能的構成例)
つぎに、情報提供装置301の機能的構成例について説明する。図7は、実施の形態にかかる情報提供装置301の機能的構成例を示すブロック図である。図7において、情報提供装置301は、受信部701と、判定部702と、生成部703と、検索部704と、算出部705と、作成部706と、送信部707と、を含む構成である。この制御部となる機能(受信部701〜送信部707)は、具体的には、例えば、図4に示した情報提供装置301のROM402、RAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶されたプログラムをCPU401に実行させることにより、または、I/F408により、その機能を実現する。また、各機能部の処理結果は、例えば、情報提供装置301のRAM403、磁気ディスク405、光ディスク407などの記憶装置に記憶される。
【0067】
受信部701は、クライアント装置302から受付結果を受信する機能を有する。受付結果は、上述したように、例えば、図表の識別情報および図表の中から選択された集約データの識別情報を含む。また、受付結果は、例えば、図表の中から集約データを選択したユーザの操作入力が、第1の操作入力か第2の操作入力かを表す操作情報を含む。
【0068】
以下の説明では、受付結果から特定される図表の中から選択された集約データを「集約データD1〜Dm」と表記する(m:1以上の自然数)。また、集約データD1〜Dmのうち任意の集約データを「集約データDj」と表記する(m=1,2,…,m)。また、データ群d1〜dnが有する複数の属性から選ばれた2以上の属性を「属性A1〜AK」と表記する(K:2以上の自然数)。また、属性A1〜AKのうち任意の属性を「属性Ak」と表記する(k=1,2,…,K)。また、集約データDjに対応する属性Akの属性値を「属性値Vjk」と表記する。
【0069】
判定部702は、受信された受付結果に基づいて、集約データD1〜Dmを選択する操作入力が、第1の操作入力か第2の操作入力かを判定する機能を有する。具体的には、例えば、判定部702が、受付結果に含まれている操作情報に基づいて、第1の操作入力か第2の操作入力かを判定する。
【0070】
また、判定部702は、属性Akの種類が離散値型か連続値型かを判定する機能を有する。具体的には、例えば、判定部702が、属性Akの型情報を参照して、属性Akの種類が離散値型か連続値型かを判定する。
【0071】
生成部703は、判定された判定結果と、各集約データDjに対応する属性A1〜AKの属性値の組合せとに基づいて、データ群d1〜dnの中から分析対象となるデータを検索する検索条件を生成する機能を有する。
【0072】
以下、集約データD1〜Dmを選択する操作入力が、第1の操作入力の場合と第2の操作入力の場合とに分けて、生成部703の具体的な処理内容の一例について説明する。
【0073】
・第1の操作入力の場合
まず、集約データD1〜Dmを選択する操作入力が、第1の操作入力の場合について説明する。この場合、生成部703が、データ群d1〜dnの中から、属性A1〜AKの属性値の組合せが、集約データD1〜Dmのうちのいずれかの集約データDjと同一となるデータを検索する検索条件を生成する。
【0074】
具体的には、例えば、生成部703が、下記式(1)のように、属性Akごとの属性値が、集約データDjに対応する属性Akの属性値Vjkとなる条件式の論理積をとって、集約データDjごとの条件式Ejを生成する。なお、ANDは論理積を表している。
【0075】
Ej=「A1=Vj1」AND「A2=Vj2」AND…AND「AK=VjK」
・・・(1)
【0076】
そして、生成部703が、下記式(2)のように、集約データDjごとの条件式Ejの論理和をとって、データ群d1〜dnの中から分析対象となるデータを検索する検索条件となる条件式Eを生成する。なお、ORは論理和を表している。
【0077】
E=「E1」OR「E2」OR…OR「Em」 ・・・(2)
【0078】
・第2の操作入力の場合
つぎに、集約データD1〜Dmを選択する操作入力が、第2の操作入力の場合について説明する。この場合、まず、生成部703が、属性Akの種類が離散値型か連続値型かの判定結果に基づいて、属性Akごとの条件式Ekを生成する。そして、生成部703が、下記式(3)のように、属性Akごとの条件式Ekの論理積をとって、データ群d1〜dnの中から分析対象となるデータを検索する検索条件となる条件式Eを生成する。
【0079】
E=「E1」AND「E2」AND…AND「EK」 ・・・(3)
【0080】
ここで、属性Akごとの条件式Ekを生成する具体的な処理内容について説明する。まず、属性Akの種類が離散値型の場合について説明する。この場合、生成部703が、データ群d1〜dnの中から、属性Akの属性値が、集約データD1〜Dmのうちのいずれかの集約データDjに対応する属性Akの属性値と同一となるデータを検索する条件式Ekを生成する。
【0081】
より具体的には、例えば、生成部703が、下記式(4)のように、属性Akの属性値が、集約データD1〜Dmのうちのいずれかの集約データDjに対応する属性Akの属性値と同一となる条件式の論理和をとって、属性Akの条件式Ekを生成する。
【0082】
Ek=「Ak=V1k」OR「Ak=V2k」OR…OR「Ak=Vmk」
・・・(4)
【0083】
つぎに、属性Akの種類が連続値型の場合について説明する。この場合、生成部703が、データ群d1〜dnの中から、属性Akの属性値が、集約データD1〜Dmに対応する属性Akの属性値V1k〜Vmkのうちの最小値Vkminから最大値Vkmaxまでの範囲に含まれるデータを検索する検索式Ekを生成する。
【0084】
例えば、属性Akが日時などの時間を表している場合、最小値Vkminは属性値V1k〜Vmkのうちの最古の属性値を表し、最大値Vkmaxは属性値V1k〜Vmkのうちの最新の属性値を表す。具体的には、例えば、生成部703が、下記式(5)のように、属性Akの属性値が、最小値Vkmin以上となる条件式と最大値Vkmax以下となる条件式との論理積をとって、属性Akの条件式Ekを生成する。
【0085】
Ek=「Vkmin≦Ak」AND「Ak≦Vkmax」 ・・・(5)
【0086】
検索部704は、生成された検索条件に基づいて、データ群d1〜dnの中から分析対象となるデータを検索する機能を有する。具体的には、例えば、検索部704が、データベース110に記憶されているデータ群d1〜dnの中から、生成された条件式Eを満たすデータを検索する。
【0087】
算出部705は、属性A1〜AKのうち連続値型の属性Akの属性値の単位間隔を算出する機能を有する。連続値型の属性Akの属性値の単位間隔とは、分析対象となるデータの連続値型の属性Akの属性値の単位間隔となるものである。以下、連続値型の属性Akの属性値の単位間隔を「属性Akの粒度」という。
【0088】
ここで、ユーザは、ディスプレイ409に表示されている図表から、どのような詳細を見たいか考える。このため、連続値型の属性Akの場合は、例えば、ディスプレイ409に表示されているデータ間隔を基準にすることで、ユーザの期待する詳細が何かを判断することができる。そこで、属性Akの粒度を求めて、ユーザがどのようにドリルダウンしたいのかを判断する。
【0089】
まず、集約データD1〜Dmを選択する操作入力が第1の操作入力の場合について説明する。この場合、算出部705が、例えば、図表に含まれる各々の集約データの連続値型の属性Akの属性値のうち、連続する異なる属性値間の間隔に基づいて、連続値型の属性Akの粒度を算出する。
【0090】
例えば、連続値型の属性Akを属性「日時」として、連続する異なる属性値間の時間間隔をそれぞれ12時間とする(例えば、後述する図10参照)。この場合、算出部705が、連続する異なる属性値間の時間間隔の平均値h1(ここでは、12時間)より小さいいずれかの単位時間(例えば、1時間、1分、1秒など)を、連続値型の属性Akの粒度として算出することにしてもよい。
【0091】
この際、算出部705が、上記平均値h1より小さい単位時間、かつ、集約データD1〜Dmの連続値型の属性Akの属性値V1k〜Vmkのうち連続する異なる属性値間の時間間隔の平均値h2に近い単位時間を、属性Akの粒度として算出することにしてもよい。例えば、上記平均値h1を12時間とし、上記平均値h2を1日とすると、算出部705が、上記平均値h1より小さい単位時間かつ上記平均値h2に近い1時間を、属性Akの粒度として算出する。
【0092】
つぎに、集約データD1〜Dmを選択する操作入力が第2の操作入力の場合について説明する。この場合、算出部705が、例えば、第1の間隔と第2の間隔とに基づいて、連続値型の属性Akの粒度を算出する。ここで、第1の間隔は、図表に含まれる各々の集約データに対応する連続値型の属性Akの属性値のうちの最小値と最大値との間隔である。第2の間隔は、集約データD1〜Dmに対応する連続値型の属性Akの属性値のうちの最小値Vkminと最大値Vkmaxとの間隔である。
【0093】
より具体的には、例えば、算出部705が、第2の間隔が、第1の間隔の2分の1以下の場合、第2の間隔より小さいいずれかの単位間隔を、連続値型の属性Akの粒度として算出することにしてもよい。また、算出部705が、第2の間隔が、第1の間隔の2分の1より大きい場合、第2の間隔と同じ単位間隔、または、第2の間隔より大きいいずれかの単位間隔を、連続値型の属性Akの粒度として算出することにしてもよい。
【0094】
例えば、第1の間隔を3日とし、第2の間隔を1日とする。この場合、第2の間隔が、第1の間隔の2分の1以下のため、算出部705が、例えば、第2の間隔「1日」より小さい最大の単位時間「1時間」を、連続値型の属性Akの粒度として算出する。また、例えば、第1の間隔を3日とし、第2の間隔を2日とする。この場合、第2の間隔が、第1の間隔の2分の1より大きいため、算出部705が、例えば、第2の間隔「2日」より大きい最小の単位時間「1月」を、連続値型の属性Akの粒度として算出する。
【0095】
また、検索部704は、生成された検索条件と、算出された連続値型の属性Akの粒度とに基づいて、データ群d1〜dnの中から分析対象となるデータを検索することにしてもよい。より具体的には、例えば、生成部703が、条件式Eに含まれる連続値型の属性Akについての属性値を、算出された属性Akの粒度に合わせて変更する。
【0096】
例えば、連続値型の属性Akを属性「日時」として、属性「日時」の粒度を「1時間」とする。また、集約データDjの属性「日時」の属性値を「2/1 12:00:00」とする。この場合、生成部703が、集約データDjの属性「日時」の属性値「2/1 12:00:00」のうち粒度「1時間」以下の部分を切り捨てることにより、属性「日時」の属性値を「2/1 12時」に変更する。
【0097】
すなわち、生成部703が、属性Akの粒度に合わせて、集約データDjを加工する。この結果、属性Akの属性値が、属性Akの粒度に合わせて変更された加工後の集約データDjに基づく条件式Eが生成される。そして、検索部704が、データベース110に記憶されているデータ群d1〜dnの中から、加工後の集約データDjに基づく条件式Eを満たすデータを検索する。この結果、連続値型の属性Akについて、属性Akの粒度のデータが検索される。
【0098】
作成部706は、検索された分析対象となるデータのうち、属性A1〜AKおよび属性ALの属性値の組合せが同一となるデータを集約した集約データを、属性A1〜AKおよび属性ALの属性値の組合せと対応付けて表す図表を作成する機能を有する。ここで、属性ALは、各データd1〜dnが有する複数の属性のうち、属性A1〜AKとは異なる他の属性である。
【0099】
すなわち、作成部706は、図表に表す属性を新たに追加して、集約データD1〜Dmについて、より詳細化した図表を作成する(ドリルダウン)。属性ALは、例えば、集約データD1〜Dmを選択するユーザの操作入力に応じて、属性A1〜AKに対して予め設定されている。
【0100】
具体的には、例えば、作成部706が、ユーザの操作入力が第1の操作入力の場合に、属性A1〜AKに対して予め設定されている属性ALを追加して図表を作成することにしてもよい。すなわち、各々の集約データを直接指定する第1の操作入力が行われた場合に、集約データD1〜Dmをより詳細化するために新たな属性ALを追加する。
【0101】
なお、新たに追加する属性ALは、例えば、作成部706による図表の作成に先立って、クライアント装置302のユーザの操作入力により、複数の属性のうちの属性A1〜AKを除く属性の中から選ばれたものであってもよい。また、属性ALは、複数個であってもよい。
【0102】
また、作成部706は、属性A1〜AKの中からいずれかの属性Akを除外して図表を作成することにしてもよい。属性A1〜AKの中から除外する属性Akは任意に設定可能である。すなわち、作成部706は、属性A1〜AKに新たな属性を追加したり、属性A1〜AKの中からいずれかの属性Akを除外したりして図表を作成することができる。
【0103】
具体的には、例えば、作成部706が、ユーザの操作入力が第2の操作入力の場合、属性A1〜AKのうちのいずれかの属性Akを属性ALに変更して図表を作成する。すなわち、集約データD1〜Dmを含む範囲を指定する第2の操作入力が行われた場合に、集約データD1〜Dmを包括的に分析するために、属性A1〜AKの中からいずれかの属性Akを他の属性に切り替えて表す図表を作成する。
【0104】
送信部707は、作成された図表を表す図表情報をクライアント装置302に送信する機能を有する。この結果、ユーザにより選択された集約データD1〜Dmについて、より詳細化した図表がクライアント装置302のディスプレイ409に表示されることになる。
【0105】
なお、上述した説明では、ユーザが使用するコンピュータとして情報提供装置301とは異なるクライアント装置302を設けることにしたが、これに限らない。例えば、ユーザが、情報提供装置301を直接操作して図表の閲覧、集約データの選択等を行うことにしてもよい。この場合、情報提供装置301が、ディスプレイ409に表示された図表の中から集約データを選択するユーザの操作入力を受け付けることになる。
【0106】
また、情報提供装置301は、生成部703によって生成された検索条件を、データベース110にアクセス可能な他のコンピュータに出力することにしてもよい。これにより、他のコンピュータにより、分析対象となるデータを検索することができる。
【0107】
また、情報提供装置301は、検索部704によって検索された分析対象となるデータを他のコンピュータに出力することにしてもよい。これにより、他のコンピュータにより、ユーザにより選択された集約データD1〜Dmについて、より詳細化した図表を作成することができる。
【0108】
(ドリルダウンの一例)
つぎに、図8〜図11を用いて、情報提供装置301を用いたドリルダウンの一例について説明する。図8は、ドリルダウンの一例を示す説明図(その1)である。図8において、グラフ810は、ある日時(または、期間)における各地域の就労種別ごとの人口を表す棒グラフである。グラフ810は、例えば、クライアント装置302のディスプレイ409に表示される。なお、グラフ810は、図1に示したグラフ120と同様のため、ここでは詳細な説明を省略する。
【0109】
ユーザは、ディスプレイ409に表示されたグラフ810を見ながら、集約データ811〜819の中から掘り下げて分析したい集約データを選択する。図8の例では、マウス411の左クリックとキーボード410のコントロールキーを使用した第1の操作入力により、集約データ811と集約データ815が直接指定されている。
【0110】
この場合、受信部701により、グラフ810の識別情報と、グラフ810の中から選択された集約データ811,815の識別情報と、ユーザの操作入力が第1の操作入力であることを表す操作情報とを含む受付結果がクライアント装置302から受信される。
【0111】
ここでは、ユーザの操作入力が第1の操作入力である。このため、生成部703により、属性「地域」および「就労種別」の属性値の組合せが、集約データ811,815のうちのいずれかの集約データと同一となるデータを検索する条件式Eaが生成される。
【0112】
Ea=(「地域=関東」AND「就労種別=学生」)
OR(「地域=関西」AND「就労種別=労働者」)
【0113】
つぎに、検索部704により、例えば、データベース110に記憶されているデータ群d1〜dnの中から、生成された条件式Eaを満たすデータ(分析対象データ)が検索される。なお、ここでは、データベース110に記憶されているデータ群d1〜dnのうち、ある日時(または、期間)のデータのみに着目した場合を想定する。
【0114】
ここで、集約データ811,815について、より詳細化した図表を作成するために新たに追加される属性として、属性「性別」が設定されている場合を想定する。すなわち、属性「地域」および「就労種別」に新たな属性「性別」を追加して、集約データ811,815についてのドリルダウンを実施する。
【0115】
この場合、作成部706により、グラフ820が作成される。グラフ820は、ある日時(または、期間)における各地域の就労種別ごとの男女別人口を表す棒グラフである。具体的には、グラフ820は、分析対象データのうち、属性「地域」、「就労種別」および「性別」の属性値の組合せが同一となるデータを集約した集約データ821〜824を、該属性値の組合せと対応付けて表す図表である。
【0116】
ここで、集約データ821は、地域「関東」の就労種別「学生」の性別「男性」の人口「60」を表している。集約データ822は、地域「関東」の就労種別「学生」の性別「女性」の人口「40」を表している。集約データ823は、地域「関西」の就労種別「労働者」の性別「男性」の人口「50」を表している。集約データ824は、地域「関西」の就労種別「労働者」の性別「女性」の人口「40」を表している。
【0117】
そして、送信部707により、作成されたグラフ820をクライアント装置302に送信する。この結果、グラフ820がクライアント装置302のディスプレイ409に表示される。これにより、ユーザは、ある日時(または、期間)における各地域の就労種別ごとの男女別人口を把握することができる。
【0118】
図9は、ドリルダウンの一例を示す説明図(その2)である。図9において、グラフ810は、ある日時(または、期間)における各地域の就労種別ごとの人口を表す棒グラフである。グラフ810は、例えば、クライアント装置302のディスプレイ409に表示される。
【0119】
ユーザは、ディスプレイ409に表示されたグラフ810を見ながら、集約データ811〜819の中から掘り下げて分析したい集約データを選択する。図9の例では、マウス411のドラッグ&ドロップ操作を使用したユーザの操作入力により、ディスプレイ409に表示されている集約データ811,812,814,815を含む範囲901が指定されている。
【0120】
この場合、受信部701により、グラフ810の識別情報と、選択された集約データ811,812,814,815の識別情報と、ユーザの操作入力が第2の操作入力であることを表す操作情報とを含む受付結果がクライアント装置302から受信される。
【0121】
ここでは、ユーザの操作入力が第2の操作入力である。このため、生成部703により、属性「地域」および「就労種別」の各々の属性の属性値が、集約データ811,812,814,815のうちのいずれかの集約データに対応する属性値と同一となるデータを検索する条件式Ebが生成される。
【0122】
Eb=(「地域=関東」OR「地域=関西」)
AND(「就労種別=学生」OR「就労種別=労働者」)
【0123】
つぎに、検索部704により、例えば、データベース110に記憶されているデータ群d1〜dnの中から、生成された条件式Ebを満たす分析対象データが検索される。なお、ここでは、データベース110に記憶されているデータ群d1〜dnのうち、ある日時(または、期間)のデータのみに着目した場合を想定する。
【0124】
ここで、集約データ811,812,814,815を包括的に分析する際に、より詳細化した図表を作成するために新たに追加される属性として、属性「性別」が設定されている場合を想定する。すなわち、属性「地域」および「就労種別」に新たな属性「性別」を追加して、ドリルダウンを実施する。
【0125】
この場合、作成部706により、グラフ920が作成される。グラフ920は、ある日時(または、期間)における各地域の男女別人口(就労種別:学生、労働者)を表す棒グラフである。具体的には、グラフ920は、分析対象データのうち、属性「地域」および「性別」の属性値の組合せが同一となるデータを集約した集約データ921〜924を、該属性値の組合せと対応付けて表す図表である。
【0126】
ここで、集約データ921は、地域「関東」の就労種別「学生または労働者」の性別「男性」の人口「110」を表している。集約データ922は、地域「関東」の就労種別「学生または労働者」の性別「女性」の人口「60」を表している。集約データ923は、地域「関西」の就労種別「学生または労働者」の性別「男性」の人口「100」を表している。集約データ924は、地域「関西」の就労種別「学生または労働者」の性別「女性」の人口「90」を表している。
【0127】
そして、送信部707により、作成されたグラフ920をクライアント装置302に送信する。この結果、グラフ920がクライアント装置302のディスプレイ409に表示される。これにより、ユーザは、ある日時(または、期間)における各地域の男女別人口(就労種別:学生、労働者)を把握することができる。
【0128】
図10は、ドリルダウンの一例を示す説明図(その3)である。図10において、グラフ1000は、各日時における就労種別ごとの人口を表すチャートである。グラフ1000は、例えば、クライアント装置302のディスプレイ409に表示される。
【0129】
グラフ1000は、各日時における就労種別「学生」の人口を表すグラフ1010と、各日時における就労種別「労働者」の人口を表すグラフ1020と、各日時における就労種別「無職」の人口を表すグラフ1030と、を含む。グラフ1010は、集約データ1011〜1017を含む。また、グラフ1020は、集約データ1021〜1027を含む。また、グラフ1030は、集約データ1031〜1037を含む。
【0130】
ここで、グラフ1010を例に挙げると、集約データ1011は、日時「2/1 00:00:00」における就労種別「学生」の人口「90」を表している。集約データ1012は、日時「2/1 12:00:00」における就労種別「学生」の人口「120」を表している。集約データ1013は、日時「2/2 00:00:00」における就労種別「学生」の人口「30」を表している。
【0131】
集約データ1014は、日時「2/2 12:00:00」における就労種別「学生」の人口「20」を表している。集約データ1015は、日時「2/3 00:00:00」における就労種別「学生」の人口「30」を表している。集約データ1016は、日時「2/3 12:00:00」における就労種別「学生」の人口「10」を表している。集約データ1017は、日時「2/4 00:00:00」における就労種別「学生」の人口「10」を表している。
【0132】
ユーザは、ディスプレイ409に表示されたグラフ1000を見ながら、集約データ1011〜1017,1021〜1027,1031〜1037の中から掘り下げて分析したい集約データを選択する。図10の例では、マウス411の左クリックとキーボード410のコントロールキーを使用した第1の操作入力により、集約データ1022と集約データ1034が直接指定されている。
【0133】
この場合、受信部701により、グラフ1000の識別情報と、グラフ1000の中から選択された集約データ1022,1034の識別情報と、ユーザの操作入力が第1の操作入力であることを表す操作情報とを含む受付結果がクライアント装置302から受信される。
【0134】
ここでは、ユーザの操作入力が第1の操作入力である。また、属性「日時」の種類は、連続値型である。また、属性「日時」の粒度は、グラフ1000上でのプロット間隔「12時間(上述した平均値h1)」より小さい単位時間、かつ、集約データ1022,1034間での属性「日時」の時間間隔「1日(上述した平均値h2)」に近い単位時間「1時間」となる。
【0135】
このため、生成部703により、属性「就労種別」および「日時」の属性値の組合せが、集約データ1022,1034のうちのいずれかの集約データと同一となるデータを検索する条件式Ecが生成される。
【0136】
Ec=(「就労種別=労働者」AND「日時=2/1 12時」)
OR(「就労種別=無職」AND「日時=2/2 12時」)
【0137】
つぎに、検索部704により、例えば、データベース110に記憶されているデータ群d1〜dnの中から、生成された条件式Ecを満たす分析対象データが検索される。ここで、属性「日時」の粒度は、1時間である。この場合、作成部706により、グラフ1040,1050が作成される。なお、図面では、グラフ1040,1050の一部を抜粋して表示している。
【0138】
グラフ1040は、各日時(単位時間:1時間)における就労種別「労働者」の人口を表すチャートである。グラフ1050は、各日時(単位時間:1時間)における就労種別「無職」の人口を表すチャートである。すなわち、単位時間(1時間)ごとの各就労種別の人口を表示することにより、集約データ1022,1034が詳細化されている。
【0139】
例えば、グラフ1040において、集約データ1041は、日時「2/1 12:00:00」における就労種別「労働者」の人口「210」を表している。また、集約データ1042は、日時「2/1 13:00:00」における就労種別「労働者」の人口「50」を表している。
【0140】
例えば、グラフ1050において、集約データ1051は、日時「2/2 12:00:00」における就労種別「労働者」の人口「160」を表している。また、集約データ1052は、日時「2/2 13:00:00」における就労種別「労働者」の人口「160」を表している。
【0141】
そして、送信部707により、作成されたグラフ1040,1050をクライアント装置302に送信する。この結果、グラフ1040,1050がクライアント装置302のディスプレイ409に表示される。これにより、ユーザは、2月1日(12時〜)における1時間ごとの就労種別「労働者」の人口の推移を把握することができる。また、ユーザは、2月2日(12時〜)における1時間ごとの就労種別「無職」の人口の推移を把握することができる。
【0142】
図11は、ドリルダウンの一例を示す説明図(その4)である。図11において、グラフ1000は、各日時における就労種別ごとの人口を表すチャートである。グラフ1000は、例えば、クライアント装置302のディスプレイ409に表示される。
【0143】
ユーザは、ディスプレイ409に表示されたグラフ1000を見ながら、集約データ1011〜1017,1021〜1027,1031〜1037の中から掘り下げて分析したい集約データを選択する。図11の例では、マウス411のドラッグ&ドロップ操作を使用したユーザの操作入力により、ディスプレイ409に表示されている集約データ1011〜1014,1031〜1034を含む範囲1100が指定されている。
【0144】
この場合、受信部701により、グラフ1000の識別情報と、グラフ1000の中から選択された集約データ1011〜1014,1031〜1034の識別情報と、ユーザの操作入力が第2の操作入力であることを表す操作情報とを含む受付結果が受信される。
【0145】
ここでは、ユーザの操作入力が第2の操作入力である。また、属性「日時」の種類は、連続値型である。また、属性「日時」の粒度は、グラフ1000上での選択範囲(上述した第2の間隔)が、表示範囲(上述した第1の間隔)の2分の1以下のため「1時間」となる。
【0146】
このため、生成部703により、属性「就労種別」および「日時」それぞれの条件式の論理積をとって条件式Edが生成される。
【0147】
Ed=(「2/1 0時≦日時」AND「日時≦2/2 12時」)
AND(「就労種別=学生」OR「就労種別=無職」)
【0148】
つぎに、検索部704により、例えば、データベース110に記憶されているデータ群d1〜dnの中から、生成された条件式Edを満たす分析対象データが検索される。ここで、属性「日時」の粒度は、1時間である。この場合、作成部706により、グラフ1110,1120が作成される。なお、図面では、グラフ1110,1120の一部を抜粋して表示している。
【0149】
グラフ1110は、各日時(単位時間:1時間)における就労種別「学生」の人口を表すチャートである。グラフ1120は、各日時(単位時間:1時間)における就労種別「無職」の人口を表すチャートである。すなわち、集約データ1011〜1014,1031〜1034を包括的に分析する際に、単位時間(1時間)ごとの各就労種別の人口を表示することにより詳細化されている。
【0150】
例えば、グラフ1110において、集約データ1111は、日時「2/1 00:00:00」における就労種別「学生」の人口「210」を表している。また、集約データ1112は、日時「2/1 01:00:00」における就労種別「学生」の人口「50」を表している。
【0151】
例えば、グラフ1120において、集約データ1121は、日時「2/1 00:00:00」における就労種別「無職」の人口「160」を表している。また、集約データ1122は、日時「2/1 01:00:00」における就労種別「無職」の人口「160」を表している。
【0152】
そして、送信部707により、作成されたグラフ1110,1120をクライアント装置302に送信する。この結果、グラフ1110,1120がクライアント装置302のディスプレイ409に表示される。これにより、ユーザは、2月1日(0時〜)における1時間ごとの就労種別「学生」の人口の推移を把握することができる。また、ユーザは、2月1日(0時〜)における1時間ごとの就労種別「無職」の人口の推移を把握することができる。
【0153】
(クライアント装置302の図表表示処理手順)
つぎに、クライアント装置302の図表表示処理手順について説明する。図12は、クライアント装置302の図表表示処理手順の一例を示すフローチャートである。図12のフローチャートにおいて、まず、表示部602により、図表をディスプレイ409に表示する(ステップS1201)。この図表は、情報提供装置301からの図表情報が表す図表である。
【0154】
つぎに、受付部603により、ディスプレイ409に表示された図表の中から集約データを選択するユーザの操作入力を受け付けたか否かを判断する(ステップS1202)。ここで、受付部603により、ユーザの操作入力を受け付けるのを待つ(ステップS1202:No)。
【0155】
そして、受付部603により、ユーザの操作入力を受け付けた場合(ステップS1202:Yes)、送信部604により、受け付けられた受付結果を情報提供装置301に送信する(ステップS1203)。つぎに、受信部601により、情報提供装置301から図表情報を受信したか否かを判断する(ステップS1204)。
【0156】
ここで、受信部601により、情報提供装置301から図表情報を受信するのを待つ(ステップS1204:No)。そして、受信部601により、図表情報を受信した場合(ステップS1204:Yes)、表示部602により、受信された図表情報が表す図表をディスプレイ409に表示して(ステップS1205)、本フローチャートによる一連の処理を終了する。
【0157】
これにより、情報提供装置301から提供される図表情報が表す図表をディスプレイ409に表示することができる。また、ディスプレイ409に表示された図表の中から集約データを選択するユーザの操作入力を受け付けた場合に、その受付結果を情報提供装置301に通知することができる。
【0158】
(情報提供装置301の情報提供処理手順)
つぎに、情報提供装置301の情報提供処理手順について説明する。図13は、情報提供装置301の情報提供処理手順の一例を示すフローチャートである。図13のフローチャートにおいて、まず、受信部701により、クライアント装置302から受付結果を受信したか否かを判断する(ステップS1301)。
【0159】
ここで、受信部701により、クライアント装置302から受付結果を受信するのを待つ(ステップS1301:No)。そして、受信部701により、受付結果を受信した場合(ステップS1301:Yes)、判定部702により、受信された受付結果に基づいて、集約データD1〜Dmを選択する操作入力が、第1の操作入力か第2の操作入力かを判定する(ステップS1302)。
【0160】
ここで、第1の操作入力の場合(ステップS1302:第1の操作入力)、生成部703により、データ群d1〜dnの中から分析対象データを検索する条件式Eを生成する第1の生成処理を実行して(ステップS1303)、ステップS1305に移行する。
【0161】
一方、第2の操作入力の場合(ステップS1302:第2の操作入力)、生成部703により、データ群d1〜dnの中から分析対象データを検索する条件式Eを生成する第2の生成処理を実行する(ステップS1304)。そして、検索部704により、生成された検索条件に基づいて、データベース110内のデータ群d1〜dnの中から分析対象データを検索する(ステップS1305)。
【0162】
つぎに、作成部706により、検索された分析対象データに基づいて、新たな図表を表す図表情報を作成する(ステップS1306)。そして、送信部707により、作成された図表情報をクライアント装置302に送信して(ステップS1307)、本フローチャートによる一連の処理を終了する。
【0163】
これにより、ディスプレイ409に表示された図表の中から集約データD1〜Dmを選択するユーザの操作入力に応じた図表を作成してクライアント装置302に提供することができる。
【0164】
<第1の生成処理手順>
つぎに、図13に示したステップS1303の第1の生成処理の具体的な処理手順について説明する。図14は、第1の生成処理の具体的処理手順の一例を示すフローチャートである。図14のフローチャートにおいて、まず、生成部703により、集約データDjの「j」を「j=1」として(ステップS1401)、集約データD1〜Dmの中から集約データDjを選択する(ステップS1402)。
【0165】
そして、生成部703により、選択した集約データDjを加工するデータ加工処理を実行する(ステップS1403)。つぎに、生成部703により、属性Akの「k」を「k=1」として(ステップS1404)、属性A1〜AKの中から属性Akを選択する(ステップS1405)。
【0166】
そして、生成部703により、集約データDjについての属性Akの条件式Ejkを生成する(ステップS1406)。条件式Ejkは、「Ejk:Ak=Vjk」である。つぎに、生成部703により、集約データDjについての条件式Ejがあるか否かを判断する(ステップS1407)。
【0167】
ここで、条件式Ejがない場合(ステップS1407:No)、生成した条件式Ejkを条件式Ejとして(ステップS1408)、ステップS1410に移行する。一方、条件式Ejがある場合(ステップS1407:Yes)、生成部703により、条件式Ejに生成した条件式EjkをAND条件で結合する(ステップS1409)。
【0168】
そして、生成部703により、属性Akの「k」をインクリメントして(ステップS1410)、「k」が「K」より大きくなったか否かを判断する(ステップS1411)。ここで、「k」が「K」以下の場合(ステップS1411:No)、ステップS1405に戻る。
【0169】
一方、「k」が「K」より大きい場合(ステップS1411:Yes)、生成部703により、集約データDjの「j」をインクリメントして(ステップS1412)、「j」が「m」より大きくなったか否かを判断する(ステップS1413)。
【0170】
ここで、「j」が「m」以下の場合(ステップS1413:No)、ステップS1402に戻る。一方、「j」が「m」より大きい場合(ステップS1413:Yes)、生成部703により、各集約データD1〜Dmの条件式E1〜EmをOR条件で結合して条件式Eを生成し(ステップS1414)、図13に示したステップS1305に移行する。
【0171】
これにより、データ群d1〜dnの中から、属性A1〜AKの属性値の組合せが、集約データD1〜Dmのうちのいずれかの集約データDjと同一となるデータを検索する条件式Eを生成することができる。
【0172】
<第2の生成処理手順>
つぎに、図13に示したステップS1304の第2の生成処理の具体的な処理手順について説明する。図15および図16は、第2の生成処理の具体的処理手順の一例を示すフローチャートである。
【0173】
図15のフローチャートにおいて、まず、生成部703により、集約データDjの「j」を「j=1」として(ステップS1501)、集約データD1〜Dmの中から集約データDjを選択する(ステップS1502)。
【0174】
そして、生成部703により、選択した集約データDjを加工するデータ加工処理を実行する(ステップS1503)。つぎに、生成部703により、属性Akの「k」を「k=1」として(ステップS1504)、属性A1〜AKの中から属性Akを選択する(ステップS1505)。
【0175】
そして、判定部702により、属性Akの種類が離散値型か連続値型かを判定する(ステップS1506)。ここで、属性Akの種類が連続値型の場合(ステップS1506:連続値型)、図16に示すステップS1601に移行する。
【0176】
一方、属性Akの種類が離散値型の場合(ステップS1506:離散値型)、生成部703により、属性Akの条件式Ekjを生成する(ステップS1507)。条件式Ekjは、「Ekj:Ak=Vjk」である。つぎに、生成部703により、属性Akについての条件式Ekがあるか否かを判断する(ステップS1508)。
【0177】
ここで、条件式Ekがない場合(ステップS1508:No)、生成した条件式Ekjを条件式Ekとして(ステップS1509)、ステップS1511に移行する。一方、条件式Ekがある場合(ステップS1508:Yes)、生成部703により、条件式Ekに生成した条件式EkjをOR条件で結合する(ステップS1510)。
【0178】
そして、生成部703により、属性Akの「k」をインクリメントして(ステップS1511)、「k」が「K」より大きくなったか否かを判断する(ステップS1512)。ここで、「k」が「K」以下の場合(ステップS1512:No)、ステップS1505に戻る。
【0179】
一方、「k」が「K」より大きい場合(ステップS1512:Yes)、生成部703により、集約データDjの「j」をインクリメントして(ステップS1513)、「j」が「m」より大きくなったか否かを判断する(ステップS1514)。
【0180】
ここで、「j」が「m」以下の場合(ステップS1514:No)、ステップS1502に戻る。一方、「j」が「m」より大きい場合(ステップS1514:Yes)、生成部703により、各属性A1〜Amの条件式E1〜EKをAND条件で結合して条件式Eを生成し(ステップS1515)、図13に示したステップS1305に移行する。
【0181】
図16のフローチャートにおいて、まず、生成部703により、集約データDjの属性Akの属性値Vjkは、左辺値か右辺値かそれ以外かを判定する(ステップS1601)。左辺値とは、属性値V1k〜Vmkのうちディスプレイ409上で最も左側に表示されている値であり、属性値V1k〜Vmkのうちの最小値を表している。右辺値とは、属性値V1k〜Vmkのうちディスプレイ409上で最も右側に表示されている値であり、属性値V1k〜Vmkのうちの最大値を表している。
【0182】
ここで、属性値Vjkが左辺値の場合(ステップS1601:左辺値)、生成部703により、属性Akの条件式Ekminを生成して(ステップS1602)、ステップS1604に移行する。条件式Ekminは、「条件式Ekmin:Vjk≦Ak」である。
【0183】
また、ステップS1601において、属性値Vjkが右辺値の場合(ステップS1601:右辺値)、生成部703により、属性Akの条件式Ekmaxを生成する(ステップS1603)。条件式Ekmaxは、「条件式Ekmax:Ak≦Vjk」である。
【0184】
そして、生成部703により、属性Akについての条件式Ekがあるか否かを判断する(ステップS1604)。ここで、条件式Ekがない場合(ステップS1604:No)、生成した条件式Ekminまたは条件式Ekmaxを条件式Ekとして(ステップS1605)、図15に示したステップS1511に移行する。
【0185】
一方、条件式Ekがある場合(ステップS1604:Yes)、生成部703により、条件式Ekに生成した条件式Ekminまたは条件式EkmaxをAND条件で結合して(ステップS1606)、図15に示したステップS1511に移行する。また、ステップS1601において、属性値Vjkがそれ以外の場合(ステップS1601:それ以外)、図15に示したステップS1511に移行する。
【0186】
これにより、データ群d1〜dnの中から、離散値型の属性Akの属性値が、集約データD1〜Dmのうちのいずれかの集約データDjに対応する属性Akの属性値と同一となるデータを検索する条件式Ekを生成することができる。また、データ群d1〜dnの中から、連続値型の属性Akの属性値が、集約データD1〜Dmに対応する属性Akの属性値V1k〜Vmkのうちの最小値Vkminから最大値Vkmaxまでの範囲に含まれるデータを検索する検索式Ekを生成することができる。そして、属性Akごとの条件式Ekの論理積をとって、データ群d1〜dnの中から分析対象となるデータを検索する検索条件となる条件式Eを生成することができる。
【0187】
<データ加工処理手順>
つぎに、図14に示したステップS1403および図15に示したステップS1503のデータ加工処理の具体的な処理手順について説明する。ここでは、図14に示したステップS1403のデータ加工処理を例に挙げて説明する。
【0188】
図17は、データ加工処理の具体的処理手順の一例を示すフローチャートである。図17のフローチャートにおいて、まず、生成部703により、属性Akの「k」を「k=1」として(ステップS1701)、属性A1〜AKの中から属性Akを選択する(ステップS1702)。そして、判定部702により、属性Akの種類が離散値型か連続値型かを判定する(ステップS1703)。
【0189】
ここで、属性Akの種類が離散値型の場合(ステップS1703:離散値型)、ステップS1709に移行する。一方、属性Akの種類が連続値型の場合(ステップS1703:連続値型)、算出部705により、集約データD1〜Dmを選択する操作入力が、第1の操作入力か第2の操作入力かを判定する(ステップS1704)。
【0190】
ここで、第1の操作入力の場合(ステップS1704:第1の操作入力)、算出部705により、図表を表す図表情報に基づいて、属性値間の間隔の平均値h1を算出する(ステップS1705)。この図表は、クライアント装置302のディスプレイ409に表示されている図表である。また、平均値h1は、図表に含まれる各々の集約データの連続値型の属性Akの属性値のうち、連続する異なる属性値間の間隔の平均値(例えば、プロット間隔)である。
【0191】
つぎに、算出部705により、図表を表す図表情報に基づいて、属性値間の時間間隔の平均値h2を算出する(ステップS1706)。平均値h2は、集約データD1〜Dmの連続値型の属性Akの属性値V1k〜Vmkのうち連続する異なる属性値間の時間間隔の平均値(例えば、選択間隔)である。
【0192】
そして、算出部705により、平均値h1より小さい単位間隔、かつ、平均値h2に近い単位間隔を、属性Akの粒度として算出する(ステップS1707)。つぎに、生成部703により、集約データDjの属性Akの属性値Vjkのうち属性Akの粒度以下を切り捨てて、集約データDjを加工する(ステップS1708)。
【0193】
そして、生成部703により、属性Akの「k」をインクリメントして(ステップS1709)、「k」が「K」より大きくなったか否かを判断する(ステップS1710)。ここで、「k」が「K」以下の場合(ステップS1710:No)、ステップS1702に戻る。一方、「k」が「K」より大きい場合(ステップS1710:Yes)、図14に示したステップS1404に移行する。
【0194】
また、ステップS1704において、第2の操作入力の場合(ステップS1704:第2の操作入力)、算出部705により、図表を表す図表情報に基づいて、第1の間隔を算出する(ステップS1711)。第1の間隔は、図表に含まれる各々の集約データに対応する連続値型の属性Akの属性値のうちの最小値と最大値との間隔(例えば、表示範囲)である。
【0195】
つぎに、算出部705により、図表を表す図表情報に基づいて、第2の間隔を算出する(ステップS1712)。第2の間隔は、集約データD1〜Dmに対応する連続値型の属性Akの属性値のうちの最小値Vkminと最大値Vkmaxとの間隔である(例えば、選択範囲)。
【0196】
そして、算出部705により、第2の間隔が第1の間隔の2分の1以下か否かを判断する(ステップS1713)。ここで、2分の1以下の場合(ステップS1713:Yes)、算出部705により、第2の間隔より小さい最大の単位間隔を、連続値型の属性Akの粒度として算出して(ステップS1714)、ステップS1708に移行する。
【0197】
一方、2分の1より大きい場合(ステップS1713:No)、算出部705により、第2の間隔より大きい最小の単位間隔を、連続値型の属性Akの粒度として算出して(ステップS1715)、ステップS1708に移行する。これにより、集約データDjを連続値型の属性Akの粒度に合わせて加工することができる。
【0198】
以上説明したように、実施の形態にかかる情報提供装置301によれば、ディスプレイ409に表示された図表の中から、掘り下げて分析したい集約データD1〜Dmを選択するユーザの操作入力に応じて、分析対象データを検索する検索条件を生成することができる。具体的には、情報提供装置301によれば、ユーザの操作入力が、ディスプレイ409上の各々の集約データを直接指定する第1の操作入力か、ディスプレイ409上の集約データD1〜Dmを含む範囲を指定する第2の操作入力かを判定することができる。そして、情報提供装置301によれば、判定した判定結果と各々の集約データに対応する属性A1〜AKの属性値の組合せとに基づいて、データ群d1〜dnの中から分析対象データを検索する条件式Eを生成することができる。
【0199】
すなわち、情報提供装置301によれば、第1の操作入力の場合、データ群d1〜dnから、属性A1〜AKの属性値の組合せが、集約データD1〜Dmのうちのいずれかの集約データDjと同一となるデータを検索する条件式Eを生成することができる。
【0200】
また、情報提供装置301によれば、第2の操作入力の場合、データ群d1〜dnから、属性A1〜AKに含まれる各々の属性の属性値が、集約データD1〜Dmのうちのいずれかの集約データDjと同一となるデータを検索する条件式Eを生成することができる。より詳細に説明すると、データ群d1〜dnの中から、離散値型の属性Akの属性値が、集約データD1〜Dmのうちのいずれかの集約データDjに対応する属性Akの属性値と同一となるデータを検索する条件式Ekを生成することができる。また、データ群d1〜dnの中から、連続値型の属性Akの属性値が、集約データD1〜Dmに対応する属性Akの属性値V1k〜Vmkのうちの最小値Vkminから最大値Vkmaxまでの範囲に含まれるデータを検索する検索式Ekを生成することができる。そして、属性Akごとの条件式Ekの論理積をとって、データ群d1〜dnの中から分析対象となるデータを検索する検索条件となる条件式Eを生成することができる。
【0201】
これらのことから、ディスプレイ409に表示された図表の中から、掘り下げて分析したい集約データD1〜Dmを選択するユーザの操作入力に応じて、集約データD1〜Dmを選択したユーザの選択意図を判断することができる。この結果、選択された集約データ間での各属性A1〜AKの属性値のAND条件やOR条件や大小条件を判断して、ユーザが期待する図表を作成できる分析対象データを検索することができる。
【0202】
また、情報提供装置301によれば、生成した条件式Eを用いてデータ群d1〜dnの中から検索された分析対象データに基づいて、新たな図表を作成することができる。例えば、新たな属性ALを追加して、検索した分析対象データのうち、属性A1〜AKおよび属性ALの属性値の組合せが同一となるデータを集約した集約データを表す図表を作成することができる。
【0203】
具体的には、例えば、情報提供装置301によれば、ユーザの操作入力が第1の操作入力の場合、属性A1〜AKに対して予め設定されている属性ALを追加して図表を作成することができる。これにより、集約データD1〜Dmをより詳細化して表す図表を作成することができる。
【0204】
また、例えば、情報提供装置301によれば、ユーザの操作入力が第2の操作入力の場合、属性A1〜AKのうちのいずれかの属性Akを属性ALに変更して図表を作成することができる。これにより、集約データD1〜Dmを包括的に分析するために、属性A1〜AKの中からいずれかの属性Akを他の属性に切り替えて表す図表を作成することができる。
【0205】
また、情報提供装置301によれば、第1の操作入力の場合、図表に含まれる各々の集約データに対応する連続値型の属性Akの属性値のうち連続する異なる属性値間の間隔に基づいて、連続値型の属性Akの粒度を算出することができる。
【0206】
また、情報提供装置301によれば、第2の操作入力の場合、第1の間隔と第2の間隔とに基づいて、連続値型の属性Akの粒度を算出することができる。第1の間隔は、図表に含まれる各々の集約データに対応する連続値型の属性Akの属性値のうちの最小値と最大値との間隔である。第2の間隔は、集約データD1〜Dmに対応する連続値型の属性Akの属性値のうちの最小値Vkminと最大値Vkmaxとの間隔である。
【0207】
このように、連続値型の属性Akについて、ユーザの操作入力に応じて属性Akの粒度を算出することにより、ユーザがどのようにドリルダウンしたいのか、すなわち、どのようなデータ間隔で表示したいかを判断することができる。この結果、例えば、連続値型の属性Akについて、属性Akの粒度(例えば、1時間単位)のデータを表示することができる。
【0208】
なお、本実施の形態で説明した生成方法および検索支援方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本生成プログラムおよび本検索支援プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本生成プログラムおよび本検索支援プログラムは、インターネット等のネットワークを介して配布してもよい。
【0209】
上述した実施の形態に関し、さらに以下の付記を開示する。
【0210】
(付記1)コンピュータが、
複数の属性を有するデータ群のうち、前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表の中から、複数の集約データを選択する操作入力を受け付け、
受け付けた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定し、
判定した判定結果と前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する、
処理を実行することを特徴とする検索支援方法。
【0211】
(付記2)前記検索条件を生成する処理は、
前記操作入力が前記第1の操作入力の場合、前記データ群の中から、前記2以上の属性の属性値の組合せが、前記複数の集約データのうちのいずれかの集約データに対応する前記2以上の属性の属性値の組合せと同一となるデータを検索する検索条件を生成することを特徴とする付記1に記載の検索支援方法。
【0212】
(付記3)前記検索条件を生成する処理は、
前記操作入力が前記第2の操作入力の場合、前記データ群の中から、前記2以上の属性に含まれる各々の属性の属性値が、前記複数の集約データのうちのいずれかの集約データに対応する前記各々の属性の属性値と同一となるデータを検索する検索条件を生成することを特徴とする付記1または2に記載の検索支援方法。
【0213】
(付記4)前記コンピュータが、
前記各々の属性の種類が離散値型か連続値型かを判定し、
前記検索条件を生成する処理は、
前記操作入力が前記第2の操作入力の場合、前記データ群の中から、前記2以上の属性のうち離散値型の属性の属性値が、前記各々の集約データに対応する前記離散値型の属性のいずれかの属性値となり、かつ、前記2以上の属性のうち連続値型の属性の属性値が、前記各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値から最大値までの範囲に含まれるデータを検索する検索条件を生成することを特徴とする付記1〜3のいずれか一つに記載の検索支援方法。
【0214】
(付記5)前記コンピュータが、
生成した前記検索条件に基づいて、前記データ群の中から前記分析対象となるデータを検索し、
検索した前記分析対象となるデータを出力する、
処理を実行することを特徴とする付記1〜4のいずれか一つに記載の検索支援方法。
【0215】
(付記6)前記コンピュータが、
前記操作入力が前記第1の操作入力の場合、前記図表に含まれる各々の集約データに対応する前記連続値型の属性の属性値のうち連続する異なる属性値間の間隔に基づいて、前記連続値型の属性の属性値の単位間隔を算出し、
前記分析対象となるデータを検索する処理は、
生成した前記検索条件と、算出した前記単位間隔とに基づいて、前記データ群の中から前記分析対象となるデータを検索することを特徴とする付記5に記載の検索支援方法。
【0216】
(付記7)前記単位間隔を算出する処理は、
前記操作入力が前記第2の操作入力の場合、前記図表に含まれる各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値と最大値との間隔と、前記複数の集約データに含まれる各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値と最大値との間隔とに基づいて、前記連続値型の属性の属性値の単位間隔を算出することを特徴とする付記6に記載の検索支援方法。
【0217】
(付記8)前記コンピュータが、
検索した前記分析対象となるデータのうち、前記2以上の属性および前記複数の属性のうち前記2以上の属性とは異なる他の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性および前記他の属性の属性値の組合せと対応付けて表示する図表を作成し、
作成した前記図表を出力する、
処理を実行することを特徴とする付記5〜7のいずれか一つに記載の検索支援方法。
【0218】
(付記9)コンピュータに、
複数の属性を有するデータ群のうち、前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表の中から、複数の集約データを選択する操作入力を受け付け、
受け付けた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定し、
判定した判定結果と前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する、
処理を実行させることを特徴とする検索支援プログラム。
【0219】
(付記10)複数の属性を有するデータ群を記憶する記憶部と、
前記データ群のうち前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表を表示する表示部と、
前記表示部に表示された前記図表の中から複数の集約データを選択する操作入力を受け付ける受付部と、
前記受付部によって受け付けられた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定する判定部と、
前記判定部によって判定された判定結果と、前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する生成部と、
を含むことを特徴とするシステム。
【0220】
(付記11)前記生成部によって生成された前記検索条件に基づいて、前記データ群の中から前記分析対象となるデータを検索する検索部と、
前記検索部によって検索された前記分析対象となるデータのうち、前記2以上の属性および前記複数の属性のうち前記2以上の属性とは異なる他の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性および前記他の属性の属性値の組合せと対応付けて表示する図表を作成する作成部と、
前記作成部によって作成された前記図表を出力する出力部と、
を含むことを特徴とする付記10に記載のシステム。
【0221】
(付記12)指定された表示要素に対応するデータを含む検索条件を生成するコンピュータに、
複数の表示要素が指定された場合に、前記複数の表示要素の指定方法に応じた演算子で、指定された前記複数の表示要素のそれぞれに対応する複数のデータを結合した検索条件を生成する、
ことを実行させることを特徴とする生成方法。
【0222】
(付記13)前記コンピュータは、
前記複数の表示要素を表示画面の範囲指定により指定した場合に、前記複数のデータ間をOR演算子で結合した検索条件を生成し、
前記複数の表示要素のそれぞれを指定することにより前記複数の表示要素を指定した場合に、前記複数のデータ間をAND演算子で結合した検索条件を生成する、
ことを特徴とする付記12に記載の生成方法。
【符号の説明】
【0223】
101 検索支援装置
300 情報提供システム
301 情報提供装置
302 クライアント装置
601,701 受信部
602 表示部
603 受付部
604,707 送信部
702 判定部
703 生成部
704 検索部
705 算出部
706 作成部

【特許請求の範囲】
【請求項1】
指定された表示要素に対応するデータを含む検索条件を生成するコンピュータに、
複数の表示要素が指定された場合に、前記複数の表示要素の指定方法に応じた演算子で、指定された前記複数の表示要素のそれぞれに対応する複数のデータを結合した検索条件を生成する、
ことを実行させることを特徴とする生成方法。
【請求項2】
前記コンピュータは、
前記複数の表示要素を表示画面の範囲指定により指定した場合に、前記複数のデータ間をOR演算子で結合した検索条件を生成し、
前記複数の表示要素のそれぞれを指定することにより前記複数の表示要素を指定した場合に、前記複数のデータ間をAND演算子で結合した検索条件を生成する、
ことを特徴とする請求項1に記載の生成方法。
【請求項3】
コンピュータが、
複数の属性を有するデータ群のうち、前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表の中から、複数の集約データを選択する操作入力を受け付け、
受け付けた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定し、
判定した判定結果と前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する、
処理を実行することを特徴とする検索支援方法。
【請求項4】
前記検索条件を生成する処理は、
前記操作入力が前記第1の操作入力の場合、前記データ群の中から、前記2以上の属性の属性値の組合せが、前記複数の集約データのうちのいずれかの集約データに対応する前記2以上の属性の属性値の組合せと同一となるデータを検索する検索条件を生成することを特徴とする請求項3に記載の検索支援方法。
【請求項5】
前記検索条件を生成する処理は、
前記操作入力が前記第2の操作入力の場合、前記データ群の中から、前記2以上の属性に含まれる各々の属性の属性値が、前記複数の集約データのうちのいずれかの集約データに対応する前記各々の属性の属性値と同一となるデータを検索する検索条件を生成することを特徴とする請求項3または4に記載の検索支援方法。
【請求項6】
前記コンピュータが、
前記各々の属性の種類が離散値型か連続値型かを判定し、
前記検索条件を生成する処理は、
前記操作入力が前記第2の操作入力の場合、前記データ群の中から、前記2以上の属性のうち離散値型の属性の属性値が、前記各々の集約データに対応する前記離散値型の属性のいずれかの属性値となり、かつ、前記2以上の属性のうち連続値型の属性の属性値が、前記各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値から最大値までの範囲に含まれるデータを検索する検索条件を生成することを特徴とする請求項3〜5のいずれか一つに記載の検索支援方法。
【請求項7】
前記コンピュータが、
生成した前記検索条件に基づいて、前記データ群の中から前記分析対象となるデータを検索し、
検索した前記分析対象となるデータを出力する、
処理を実行することを特徴とする請求項3〜6のいずれか一つに記載の検索支援方法。
【請求項8】
前記コンピュータが、
前記操作入力が前記第1の操作入力の場合、前記図表に含まれる各々の集約データに対応する前記連続値型の属性の属性値のうち連続する異なる属性値間の間隔に基づいて、前記連続値型の属性の属性値の単位間隔を算出し、
前記分析対象となるデータを検索する処理は、
生成した前記検索条件と、算出した前記単位間隔とに基づいて、前記データ群の中から前記分析対象となるデータを検索することを特徴とする請求項7に記載の検索支援方法。
【請求項9】
前記単位間隔を算出する処理は、
前記操作入力が前記第2の操作入力の場合、前記図表に含まれる各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値と最大値との間隔と、前記複数の集約データに含まれる各々の集約データに対応する前記連続値型の属性の属性値のうちの最小値と最大値との間隔とに基づいて、前記連続値型の属性の属性値の単位間隔を算出することを特徴とする請求項8に記載の検索支援方法。
【請求項10】
前記コンピュータが、
検索した前記分析対象となるデータのうち、前記2以上の属性および前記複数の属性のうち前記2以上の属性とは異なる他の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性および前記他の属性の属性値の組合せと対応付けて表示する図表を作成し、
作成した前記図表を出力する、
処理を実行することを特徴とする請求項7〜9のいずれか一つに記載の検索支援方法。
【請求項11】
コンピュータに、
複数の属性を有するデータ群のうち、前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表の中から、複数の集約データを選択する操作入力を受け付け、
受け付けた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定し、
判定した判定結果と前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する、
処理を実行させることを特徴とする検索支援プログラム。
【請求項12】
複数の属性を有するデータ群を記憶する記憶部と、
前記データ群のうち前記複数の属性から選ばれた2以上の属性の属性値の組合せが同一となるデータを集約した集約データを、前記2以上の属性の属性値の組合せと対応付けて表す図表を表示する表示部と、
前記表示部に表示された前記図表の中から複数の集約データを選択する操作入力を受け付ける受付部と、
前記受付部によって受け付けられた前記操作入力が、画面上に表示されている各々の集約データを直接指定する第1の操作入力か、前記画面上に表示されている前記複数の集約データを含む範囲を指定する第2の操作入力かを判定する判定部と、
前記判定部によって判定された判定結果と、前記各々の集約データに対応する前記2以上の属性の属性値の組合せとに基づいて、前記データ群の中から分析対象となるデータを検索する検索条件を生成する生成部と、
を含むことを特徴とするシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2013−97576(P2013−97576A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−239783(P2011−239783)
【出願日】平成23年10月31日(2011.10.31)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】