IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ドットデータ インコーポレイテッドの特許一覧

特許7015319データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム
<>
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図1
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図2
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図3
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図4
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図5
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図6
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図7
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図8
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図9
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図10
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図11
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図12
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図13
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図14
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図15
  • 特許-データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム 図16
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-25
(45)【発行日】2022-02-02
(54)【発明の名称】データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム
(51)【国際特許分類】
   G06F 16/28 20190101AFI20220126BHJP
【FI】
G06F16/28
【請求項の数】 11
(21)【出願番号】P 2019560025
(86)(22)【出願日】2018-07-26
(86)【国際出願番号】 JP2018028082
(87)【国際公開番号】W WO2019123703
(87)【国際公開日】2019-06-27
【審査請求日】2020-06-18
(31)【優先権主張番号】62/609,768
(32)【優先日】2017-12-22
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520052374
【氏名又は名称】ドットデータ インコーポレイテッド
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【弁理士】
【氏名又は名称】西島 孝喜
(74)【代理人】
【識別番号】100109335
【弁理士】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【弁理士】
【氏名又は名称】那須 威夫
(72)【発明者】
【氏名】藤巻 遼平
(72)【発明者】
【氏名】楠村 幸貴
(72)【発明者】
【氏名】村岡 優輔
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】米国特許出願公開第2002/0147599(US,A1)
【文献】米国特許出願公開第2005/0102303(US,A1)
【文献】特開2011-257812(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部と、
受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部と、
テーブルの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な前記分析プロセスを特定し、特定された分析プロセスの一覧を出力する分析プロセス探索部と、
出力された一覧から前記分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部とを備えた
ことを特徴とするデータ分析支援装置。
【請求項2】
スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換部を備え、
前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
前記データ型変換部は、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、
分析プロセス受付部は、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する
請求項1記載のデータ分析支援装置。
【請求項3】
データ型変換部は、データ型またはカラム名に応じた分析データ型への変換ルールに応じて、抽出したスキーマに含まれるデータ型を分析データ型に一括で変換する
請求項2記載のデータ分析支援装置。
【請求項4】
データ型変換部は、スキーマのカラムごとに分析データ型への変換指示を受け付け、抽出したスキーマに含まれるデータ型を受け付けた分析データ型に個別に変換する
請求項2または請求項3記載のデータ分析支援装置。
【請求項5】
分析データ型は、カテゴリ変数、数値変数、および、順序関係を有する時間軸上の一点を示すデータ型を表す時間変数を含む
請求項2から請求項4のうちのいずれか1項に記載のデータ分析支援装置。
【請求項6】
データ分析方法を実行するためのシステムであって、
実行可能な命令が記憶されたメモリと、
命令を実行するプロセッサとを備え、前記プロセッサはシステムに、
テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付けさせ
受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を、前記メモリに登録させ
テーブルと当該テーブルに適用されるスキーマとを関連付けた前記メモリ内の情報、および、ユーザから受け付けたテーブルの選択に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定させ
特定された分析プロセスの一覧を出力させ
出力された一覧から前記分析プロセスの選択を受け付けさせ
受け付けたテーブルに対して選択された分析プロセスを実行させる
よう構成されていることを特徴とするシステム
【請求項7】
前記プロセッサは、さらに、
スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換し、
前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
前記メモリに、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、
前記メモリに、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する
よう構成されている請求項6記載のシステム
【請求項8】
コンピュータに、
テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと当該分析プロセスを適用可能なスキーマとを関連付けた情報をスキーマ・分析プロセス記憶部に登録する分析プロセス受付処理、
テーブルの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な前記分析プロセスを特定し、特定された分析プロセスの一覧を出力する分析プロセス探索処理、および、
出力された一覧から前記分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行処理
を実行させるためのデータ分析支援プログラム。
【請求項9】
コンピュータに、
スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換処理を実行させ、
前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
前記データ型変換処理で、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録させ、
分析プロセス受付処理で、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録させる
請求項8記載のデータ分析支援プログラム。
【請求項10】
実行可能な命令を含むメモリ及び命令を実行するよう構成されたプロセッサを含むシステム上で実行される、コンピュータによって実施される方法であって、
テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスを受け付けること、
受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を登録すること、
テーブルと当該テーブルに適用されるスキーマとを関連付けた情報、および、ユーザから受け付けたテーブルの選択に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定すること、
特定された分析プロセスの一覧を出力すること、
出力された一覧から前記分析プロセスの選択を受け付けること、
受け付けたテーブルに対して選択された分析プロセスを実行すること
を含むことを特徴とする方法。
【請求項11】
請求項10に記載の、コンピュータによって実施される方法であって、さらに、
スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換すること、
前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
前記メモリに、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録すること、
前記メモリに、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録すること
を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、リレーショナルデータベースを用いたデータの分析を支援するデータ分析支援装置、データ分析支援方法およびデータ分析支援プログラムに関する。
【背景技術】
【0002】
既存のデータを用いて様々な分析が行われている。特に、データの管理にはリレーショナルデータベース(以下、RDBと記す。)が多く用いられており、RDBを用いた様々なデータ処理方法も提案されている。
【0003】
例えば、特許文献1には、RDBで管理されているデータから、機械学習処理に用いられる特徴量の候補を生成することが記載されている。特許文献1に記載された方法では、特徴量の候補を生成する処理を、Filter条件、map条件およびreduce条件の3つの条件の組合せにより定義することで、特徴量の候補を生成する分析者工数を削減する。
【先行技術文献】
【特許文献】
【0004】
【文献】国際公開第2017/090475号
【発明の概要】
【発明が解決しようとする課題】
【0005】
RDBでは、スキーマとテーブルとが一対一に対応し、各テーブルを対象としてデータの分析処理が記述される。言い換えると、同一の構造を有するテーブルが存在する場合、テーブルが異なれば、それぞれのテーブルに含まれるデータに対する分析処理は異なるものとして記述される。
【0006】
検索処理の性能の向上させる観点や、データを分散して管理する観点などから、同じ内容を表す情報が同一のスキーマで定義された複数のテーブルで管理される場合がある。このような環境では、同じ内容を表す情報に対して同じ分析処理を記述しようとしても、テーブルごとに異なる分析処理を記述しなければならないという問題がある。
【0007】
例えば、特許文献1に記載された方法では、分析の対象とするテーブルが異なると、記述する条件の内容や、生成する特徴量生成関数の内容もそれぞれ異なることになる。しかし、同じ内容を含む異なるテーブルに対して、それぞれ異なる分析処理を記述するのは煩雑である。そのため、あるテーブルのデータに対して定義される分析処理を、同様の構造を有する他のテーブルに対しても利用できることが好ましい。
【0008】
そこで、本発明は、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できるデータ分析支援装置、データ分析支援方法およびデータ分析支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本発明によるデータ分析支援装置は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部と、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部と、テーブルの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力する分析プロセス探索部と、出力された一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部とを備えたことを特徴とする。
【0010】
本発明によるデータ分析支援方法は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス記憶部に登録し、テーブルの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力し、出力された一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する
ことを特徴とする。
【0011】
本発明によるデータ分析支援プログラムは、コンピュータに、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスとその分析プロセスを適用可能なスキーマとを関連付けた情報をスキーマ・分析プロセス記憶部に登録する分析プロセス受付処理、テーブルの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力する分析プロセス探索処理、および、出力された一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行処理を実行させることを特徴とする。
【発明の効果】
【0012】
本発明によれば、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
【図面の簡単な説明】
【0013】
図1】本発明によるデータ分析支援装置の第1の実施形態の構成例を示すブロック図である。
図2】スキーマ付テーブルからスキーマを抽出する処理の例を示す説明図である。
図3】テーブル・スキーマ管理DB30が記憶する情報の例を示す説明図である。
図4】分析プロセスを作成する処理の例を示す説明図である。
図5】分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報の例を示す説明図である。
図6】分析プロセスを出力する処理の例を示す説明図である。
図7】分析プロセスを実行する処理の例を示す説明図である。
図8】テーブルを出力する処理の例を示す説明図である。
図9】第1の実施形態のデータ分析支援装置を用いて分析プロセスを実行する動作例を示すフローチャートである。
図10】第1の実施形態のデータ分析支援装置を用いて分析プロセスを実行する他の動作例を示すフローチャートである。
図11】スキーマを管理する動作例を示すフローチャートである。
図12】本発明によるデータ分析支援装置の第2の実施形態の構成例を示すブロック図である。
図13】列の内容に応じて分析データ型を設定した例を示す説明図である。
図14】分析スキーマを抽出する処理の例を示す説明図である。
図15】スキーマを管理する動作例を示すフローチャートである。
図16】本発明によるデータ分析支援装置の概要を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態を図面を参照して説明する。なお、以下の説明において、テーブルとは、表形式のデータセット(表型情報)を意味するものとし、スキーマと一体になったテーブル(すなわち、スキーマとテーブルとが関連付けられたもの)のことを、スキーマ付テーブルと記す。また、本発明においてスキーマとは、テーブルの属性(フィールド、列)を定義した情報であり、属性として、テーブルに含まれる列のカラム名、データ型、制約などが挙げられる。
【0015】
実施形態1.
図1は、本発明によるデータ分析支援装置の第1の実施形態の構成例を示すブロック図である。本実施形態のデータ分析支援装置100は、スキーマ付テーブル入力部10と、スキーマ抽出部20と、テーブル・スキーマ管理データベース30(以下、テーブル・スキーマ管理DB30と記す。)と、分析プロセス受付部40と、スキーマ・分析プロセス管理データベース50(以下、スキーマ・分析プロセス管理DB50と記す。)と、探索部60と、分析プロセス実行部70とを備えている。
【0016】
なお、テーブル・スキーマ管理DB30と、スキーマ・分析プロセス管理DB50とは、具体的には、磁気ディスク装置等に記憶される。
【0017】
スキーマ付テーブル入力部10は、スキーマ付テーブルを入力する。スキーマ付テーブル入力部10は、例えば、RDBが提供するインタフェースを介して、直接RDBからスキーマ付テーブルを入力してもよい。また、スキーマ付テーブル入力部10は、スキーマおよびテーブルの内容が関連付けられたファイルを読み込んでもよい。
【0018】
スキーマ抽出部20は、スキーマ付テーブルからスキーマを抽出し、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する。図2は、スキーマ付テーブルからスキーマを抽出する処理の例を示す説明図である。図2に例示するスキーマ付テーブルST1は、2016年1月の顧客リストを表すスキーマ付テーブルであり、スキーマSC1と表型情報であるテーブルTB1とを含む。
【0019】
スキーマ付テーブル入力部10が、図2に例示するスキーマ付テーブルST1を入力したとする。このとき、スキーマ抽出部20は、スキーマ付テーブルST1から、カラム名、データ型および制約を含むスキーマSC1を抽出する。ただし、スキーマ抽出部20が抽出するスキーマの情報は、図2に例示する情報に限定されない。スキーマ抽出部20は、表の属性を表す他の情報を含むスキーマを抽出してもよい。
【0020】
なお、テーブル・スキーマ管理DB30に登録する際、スキーマ抽出部20は、カラムの名称およびデータ型が一致するスキーマが登録されていない場合に、抽出されたスキーマを新たなスキーマとしてテーブル・スキーマ管理DB30に登録する。さらに、スキーマ抽出部20は、カラムの名称およびデータ型だけでなく、制約まで一致するスキーマが登録されていない場合に、抽出されたスキーマを新たなスキーマとしてテーブル・スキーマ管理DB30に登録してもよい。
【0021】
スキーマ抽出部20は、スキーマを識別する任意の識別子を設定する。図2に示す例では、連番としてスキーマSC1に識別子“001”が設定されている。なお、スキーマ識別子は、図2に例示する数値に限定されない。スキーマ抽出部20は、例えば、ユーザからスキーマ名の指定(例えば、「顧客リスト」など)を受け付け、その指定をスキーマ名として用いてもよい。
【0022】
テーブル・スキーマ管理DB30は、スキーマとテーブルとを関連付けて記憶する。テーブル・スキーマ管理DB30は、例えば、スキーマ名とテーブル名とを対応付けて記憶する。
【0023】
図3は、テーブル・スキーマ管理DB30が記憶する情報の例を示す説明図である。図3に示す例では、テーブル・スキーマ管理DB30がテーブル名とスキーマ名とを関連付けて記憶していることを示す。また、図3に示す例では、2016年1月の顧客リストテーブル(顧客リスト2016/1テーブル)のスキーマと、2016年2月の顧客リストテーブル(顧客リスト2016/2テーブル)のスキーマとに、それぞれ同一のスキーマ(スキーマ001)が適用されていることを示す。
【0024】
なお、スキーマ付テーブル入力部10、スキーマ抽出部20およびテーブル・スキーマ管理DB30によって、テーブルとスキーマとを分離して管理できることから、スキーマ付テーブル入力部10、スキーマ抽出部20およびテーブル・スキーマ管理DB30を含む装置99を、スキーマ管理装置と言うことが出来る。なお、本実施形態では、データ分析支援装置100が、スキーマ管理装置を含む場合を例示している。ただし、データ分析支援装置100は、スキーマ管理装置を含んでいなくてもよい。例えば、データ分析装置が外部に存在し、データ分析支援装置100が、外部に存在するデータ分析装置に接続されて各情報を取得するようにしてもよい。
【0025】
分析プロセス受付部40は、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。分析プロセスとは、テーブルのデータに対して行う一連の処理である。ただし、本実施形態では、テーブルとは切り離したスキーマをもとに分析プロセスが作成される。分析プロセス受付部40は、予め作成された分析プロセスを受け付けてもよく、分析プロセスを作成するための画面を表示し、ユーザの入力に基づいて作成された分析プロセスを受け付けてもよい。
【0026】
図4は、分析プロセスを作成する処理の例を示す説明図である。例えば、顧客リストの内容に基づいて、各顧客がランクアップするか否か判断する分析(以下、ランクアップ回帰分析)を行うための分析プロセスを作成するとする。また、図4に示す例では、図2に例示するスキーマSC1(スキーマ001)が適用されるテーブルのデータを用いて分析が行われるものとする。
【0027】
例えば、機械学習では、入力データを数値にする必要がある。図2に示す例では、性別のデータ型がvarchar型であり、データの内容がMまたはFで表されている。そこで、分析プロセス受付部40は、スキーマ001に含まれる性別のデータを変換する処理P1(例えば、Mを1に、Fを0に変換する処理)を作成してもよい。また、分析プロセス受付部40は、ユーザの属性からランクアップを判別するための回帰式(例えば、logit(ランクアップ)=年齢×3+性別+1、など)を用いた判別処理P2を作成してもよい。そして、分析プロセス受付部40は、作成した一連の処理を分析プロセスAP1として受け付ける。
【0028】
分析プロセス受付部40は、作成した分析プロセスをスキーマ・分析プロセス管理DB50に登録する。分析プロセス受付部40は、内容が把握できるような名称を分析プロセスに付与して、スキーマ・分析プロセス管理DB50に登録してもよい。例えば、図4に示す例では、分析プロセス受付部40は、「顧客リストに対するランクアップ回帰分析プロセス」のような名称を分析プロセスに付与して、スキーマ・分析プロセス管理DB50に登録してもよい。
【0029】
なお、後述する分析プロセス実行部70が処理を実行できる形式であれば、分析プロセスの表現方法は任意である。分析プロセスは、例えば、スクリプトの形式で表現されていてもよい。
【0030】
以上のように、分析プロセス受付部40が、テーブルの定義を含む分析プロセスではなく、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。そのため、分析対象のテーブルが異なっていてもスキーマが同一である場合には、同じ内容の分析プロセスを再利用できる。
【0031】
スキーマ・分析プロセス管理DB50は、分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶する。図5は、分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報の例を示す説明図である。例えば、図4に例示する分析プロセスは、スキーマ001を用いて定義されており、スキーマ001が適用されるプロセスと言える。そこで、スキーマ・分析プロセス管理DB50は、図5に例示する表の1行目に示すように、図4に例示する分析プロセスと、スキーマ001とを対応付けて記憶する。
【0032】
探索部60は、ユーザからの選択を受け付けて各種情報を探索し、出力する。探索部60は、分析プロセス探索部61と、テーブル探索部62とを含む。
【0033】
分析プロセス探索部61は、テーブルの選択をユーザから受け付ける。分析プロセス探索部61は、テーブル・スキーマ管理DB30が記憶する情報から、受け付けたテーブルに関連付けられているスキーマを抽出する。そして、分析プロセス探索部61は、スキーマ・分析プロセス管理DB50が記憶する情報から、抽出したスキーマに関連付けられている分析プロセスを特定し、出力する。
【0034】
テーブル探索部62は、分析プロセスの選択をユーザから受け付ける。テーブル探索部62は、スキーマ・分析プロセス管理DB50が記憶する情報から、受け付けた分析プロセスに関連付けられているスキーマを抽出する。そして、テーブル探索部62は、テーブル・スキーマ管理DB30が記憶する情報から、抽出したスキーマに関連付けられているテーブルを特定し、出力する。
【0035】
分析プロセス実行部70は、選択されたテーブルに対して分析プロセスを実行する。以下、分析プロセス実行部70が分析プロセスを実行する2つの方法を説明する。
【0036】
探索部60(具体的には、分析プロセス探索部61)は、テーブルの選択をユーザから受け付けた場合に、分析プロセスを出力する。この場合、分析プロセス実行部70は、出力された分析プロセスの一覧から、ユーザの所望する分析プロセスの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
【0037】
図6は、分析プロセスを出力する処理の例を示す説明図である。探索部60が2016年2月の顧客リストを表す図6に例示するスキーマ付テーブルST2の選択をユーザから受け付けると、分析プロセス探索部61は、図3に例示するテーブル・スキーマ管理DB30が記憶する情報から、受け付けたテーブルに関連付けられているスキーマ001を抽出する。そして、分析プロセス探索部61は、図5に例示するスキーマ・分析プロセス管理DB50が記憶する情報から、抽出したスキーマ001に関連付けられている分析プロセスを特定し、出力する。ここでは、「顧客リストに対するランクアップ回帰分析プロセス」と、「顧客リストに対する性別判別分析プロセス」の2つの分析プロセスが出力される。
【0038】
ここで、ユーザが「顧客リストに対するランクアップ回帰分析プロセス」を選択したとする。この場合、分析プロセス実行部70は、受け付けたスキーマ付テーブルST2に含まれるテーブルTB2に対して選択された分析プロセスを実行する。
【0039】
図7は、分析プロセスを実行する処理の例を示す説明図である。ここで、テーブルTB2に対して、上述する分析プロセスAP1が適用されるとする。この場合、分析プロセス実行部70は、テーブルTB2に含まれる性別のデータを変換する処理P1(Mを1に、Fを0に変換する処理)を行い、回帰式を用いた判別処理P2を実行する。その結果、図7に例示するランクアップ列の値が算出される。
【0040】
なお、図7に示す例では、ランクアップ列の値を算出するため、図6に例示するランクアップ列に値が設定されていない場合を例示した。ただし、分析プロセスに学習処理が定義されている場合、図6に例示する表の列には、実績データとして算出される値が設定されていてもよい。
【0041】
一方、探索部60(具体的には、テーブル探索部62)は、分析プロセスの選択をユーザから受け付けた場合に、テーブルを出力する。この場合、分析プロセス実行部70は、出力されたテーブルの一覧から、ユーザの所望するテーブルの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
【0042】
図8は、テーブルを出力する処理の例を示す説明図である。探索部60が分析プロセスとして「顧客リストに対するランクアップ回帰分析プロセス」の選択をユーザから受け付けると、テーブル探索部62は、図5に例示するスキーマ・分析プロセス管理DB50が記憶する情報から、受け付けた分析プロセスに関連付けられているスキーマ001を抽出する。そして、テーブル探索部62は、図3に例示するテーブル・スキーマ管理DB30が記憶する情報から、抽出したスキーマ001に関連付けられているテーブルを特定し、出力する。ここでは、2016年1月の顧客リストを含むテーブルと、2016年2月の顧客リストを含むテーブルとが出力される。
【0043】
ここで、ユーザが2016年2月の顧客リストを選択したとする。この場合、分析プロセス実行部70は、受け付けたテーブルTB2に対して選択された分析プロセスを実行する。分析プロセスを実行する処理は、図7に例示する内容と同様である。
【0044】
スキーマ付テーブル入力部10と、スキーマ抽出部20と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、プログラム(データ分析支援プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array ))によって実現される。
【0045】
上記プログラムは、例えば、記憶部(図示せず)に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、スキーマ付テーブル入力部10、スキーマ抽出部20、分析プロセス受付部40、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)および分析プロセス実行部70として動作してもよい。また、データ分析支援装置の機能がSaaS(Software as a Service )形式で提供されてもよい。
【0046】
スキーマ付テーブル入力部10と、スキーマ抽出部20と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
【0047】
また、データ分析支援装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【0048】
次に、本実施形態のデータ分析支援装置の動作を説明する。図9は、本実施形態のデータ分析支援装置を用いて分析プロセスを実行する動作例を示すフローチャートである。
【0049】
分析プロセス受付部40は、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付け(ステップS11)、スキーマ・分析プロセス管理DB50に、分析プロセスとスキーマとを関連付けた情報を登録する(ステップS12)。
【0050】
分析プロセス探索部61は、テーブルの選択をユーザから受け付けると(ステップS13)、テーブル・スキーマ管理DB30が記憶する情報およびスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定する(ステップS14)。そして、分析プロセス探索部61は、特定された分析プロセスの一覧を出力する(ステップS15)。
【0051】
分析プロセス実行部70は、ユーザより、出力された分析プロセスの一覧から分析プロセスの選択を受け付ける(ステップ16)。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する(ステップS17)。
【0052】
図10は、本実施形態のデータ分析支援装置を用いて分析プロセスを実行する他の動作例を示すフローチャートである。図10に例示するフローチャートは、図9に例示するフローチャートと比較して探索部60および分析プロセス実行部70の処理が異なる。分析プロセスとスキーマとを関連付けた情報を登録するステップS11からステップS12の処理は、図9に例示する処理と同様である。
【0053】
テーブル探索部62は、分析プロセスの選択をユーザから受け付けると(ステップS21)、テーブル・スキーマ管理DB30が記憶する情報およびスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定する(ステップS22)。そして、テーブル探索部62は、特定されたテーブルの一覧を出力する(ステップS23)。
【0054】
分析プロセス実行部70は、ユーザより、出力されたテーブルの一覧からテーブルの選択を受け付ける(ステップS24)。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する(ステップS25)。
【0055】
図11は、スキーマを管理する動作例を示すフローチャートである。スキーマ付テーブル入力部10が、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力すると(ステップS31)、スキーマ抽出部20は、スキーマ付テーブルから、スキーマを抽出する(ステップS32)。そして、スキーマ抽出部20は、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する(ステップS33)。その際、スキーマ抽出部20は、カラムの名称およびデータ型が一致するスキーマがテーブル・スキーマ管理DB30に登録されていない場合に、抽出されたスキーマを新たなスキーマとして登録する。
【0056】
以上のように、本実施形態では、分析プロセス受付部40が分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス管理DB50に登録する。その後、テーブルの選択をユーザから受け付けると、分析プロセス探索部61は、テーブル・スキーマ管理DB30が記憶する情報及びスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力する。そして、分析プロセス実行部70は、出力された分析プロセスの一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する。よって、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
【0057】
また、本実施形態では、分析プロセス受付部40が分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス管理DB50に登録する。その後、分析プロセスの選択をユーザから受け付けると、テーブル探索部62は、テーブル・スキーマ管理DB30が記憶する情報、および、スキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力する。そして、分析プロセス実行部70は、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する。よって、上述する方法と同様、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
【0058】
また、本実施形態では、スキーマ付テーブル入力部10がスキーマ付テーブルを入力し、スキーマ抽出部20がスキーマ付テーブルから、スキーマを抽出し、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する。その際、スキーマ抽出部20が、カラムの名称およびデータ型が一致するスキーマがテーブル・スキーマ管理DB30に登録されていない場合に、抽出されたスキーマを新たなスキーマとして登録する。よって、一般的なRDBで利用されるスキーマ付テーブルを、スキーマとテーブルとに分離して管理できる。その結果、スキーマに対して分析プロセスを定義することで、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
【0059】
実施形態2.
次に、本発明によるデータ分析支援装置の第2の実施形態を説明する。第1の実施形態では、スキーマ抽出部20が、カラムの名称およびデータ型が一致するスキーマが登録されていないときに、抽出されたスキーマをテーブル・スキーマ管理DB30に登録する場合について説明した。
【0060】
一方、RDBのバージョンの違いや、テーブルの設計変更などにより、同一の内容を示す列であっても、異なるデータ型が定義されているテーブルも存在する。また、同じ数値型や文字列型であっても、RDBのメモリ管理等の観点から複数種類のデータ型が定義されていることもある。
【0061】
しかし、データ分析の観点では、同一の内容を示す列は、同じデータ型として扱えることが好ましく、RDBが想定する種類のデータ型までは必要としない場合も少なくない。そこで、本実施形態では、データ型を抽象化したデータ型である分析データ型を用いて、分析プロセスを管理する方法を説明する。
【0062】
本実施形態において、分析データ型とは、分析処理のために便宜上定義される抽象化されたデータ型であり、実際にRDBで用いられるデータ型とは別に設けられる。具体的には、分析データ型には、同値判定が可能なデータ型を表すカテゴリ変数、連続値のデータ型を表す数値変数、および、順序関係を有し時間軸上の一点を表す情報を抽出可能なデータ型を表す時間変数が含まれる。
【0063】
具体的には、数値変数は、回帰分析等で用いられる実数値などの連続値を表すデータ型であり、例えば、四則演算などの演算を適用可能なデータ型である。ただし、分析データ型に含まれる内容は、上記内容に限定されない。例えば、経度および緯度で表現される地理的な一地点を示すデータ型を、分析データ型に含めてもよい。
【0064】
図12は、本発明によるデータ分析支援装置の第2の実施形態の構成例を示すブロック図である。本実施形態のデータ分析支援装置200は、スキーマ付テーブル入力部10と、分析スキーマ抽出部21と、テーブル・分析スキーマ管理データベース31(以下、テーブル・分析スキーマ管理DB31と記す。)と、分析プロセス受付部40と、分析スキーマ・分析プロセス管理データベース51(以下、分析スキーマ・分析プロセス管理DB51と記す。)と、探索部60と、分析プロセス実行部70とを備えている。
【0065】
なお、テーブル・分析スキーマ管理DB31と、分析スキーマ・分析プロセス管理DB51とは、具体的には、磁気ディスク装置等に記憶される。
【0066】
スキーマ付テーブル入力部10は、第1の実施形態と同様に、スキーマ付テーブルを入力する。
【0067】
分析スキーマ抽出部21は、第1の実施形態におけるスキーマ抽出部20と同様に、スキーマ付テーブルからスキーマを抽出する。さらに、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型を分析データ型に変換する。そして、分析スキーマ抽出部21は、データ型を変換したスキーマと、テーブルとを関連付けてテーブル・分析スキーマ管理DB31に登録する。以下の説明では、分析データ型にデータ型を変換したスキーマのことを、分析スキーマと記すこともある。
【0068】
具体的には、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型を、列の内容(具体的には、カラム名、データ型など)に応じて予め定めた分析データ型に変換してもよい。また、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型に対する分析データ型への変換指示をユーザから受け付けてもよい。このように、分析スキーマ抽出部21は、スキーマに含まれるカラムのデータ型を分析データ型へ変換することから、データ型変換部と言うことができる。
【0069】
図13は、列の内容に応じて分析データ型を設定した例を示す説明図である。図13に例示するように、分析目的に応じた分析データ型を予め設定しておいてもよい。分析スキーマ抽出部21は、カラムに対して予め分析データ型への変換ルールが設定されている場合、その設定に基づいてデータ型を分析データ型へ変換してもよい。
【0070】
また、分析スキーマ抽出部21は、上述する処理を組み合わせてもよい。例えば、データ型やカラム名に応じた分析データ型への変換ルールを予め設定して記憶部(図示せず)に記憶させておく。まず、分析スキーマ抽出部21は、この変換ルールに従い、抽出したスキーマに含まれるデータ型を分析データ型に一括で変換する。次に、分析スキーマ抽出部21は、変換後の分析データ型をカラム名とともに出力し、個別に分析データ型の変更を受け付ける。なお、分析スキーマ抽出部21は、全ての分析データ型への変更を個別に受け付けてもよい。具体的には、分析スキーマ抽出部21は、スキーマのカラムごとに分析データ型への変換指示を受け付け、抽出したスキーマに含まれるデータ型を受け付けた分析データ型に個別に変換してもよい。
【0071】
図14は、分析スキーマを抽出する処理の例を示す説明図である。図14に例示する2つのスキーマ付テーブルST3,ST4は、いずれも顧客リストを含むテーブルであるが、スキーマの内容(具体的には、データ型)が異なる。例えば、2016年の顧客リストテーブルST3の顧客IDは、数値で表されていることから、RDB上ではデータ型longで管理されている。一方、例えば、2001年の顧客リストテーブルST4の顧客IDも、数値で表されているが、バージョン等の違いにより、RDB上ではデータ型intで管理されている。
【0072】
一方、顧客IDは、数値計算の対象とされるよりも、同値(非同値)判定の対象とされることが多いと考えられる。そこで、図13に例示するように、分析スキーマ抽出部21は、顧客IDをカテゴリ値として分析できるように、分析データ型への変換を行う。
【0073】
まず、分析スキーマ抽出部21は、スキーマ付テーブルST3,ST4から、それぞれスキーマSC2,SC3を抽出する。そして、分析スキーマ抽出部21は、図13に例示する変換ルールに基づいて、各列のデータ型を分析データ型へ変換したスキーマSC4を作成する。
【0074】
テーブル・分析スキーマ管理DB31は、分析スキーマとテーブルとを関連付けて記憶する。テーブル・分析スキーマ管理DB31は、例えば、分析スキーマ名とテーブル名とを対応付けて記憶する。テーブル・分析スキーマ管理DB31が分析スキーマ名とテーブル名とを対応付けて記憶する態様は、第1の実施形態におけるテーブル・スキーマ管理DB30と同様である。
【0075】
分析プロセス受付部40は、第1の実施形態と同様、分析スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。そして、分析プロセス受付部40は、作成した分析プロセスを分析スキーマ・分析プロセス管理DB51に登録する。
【0076】
分析スキーマ・分析プロセス管理DB51は、分析プロセスと、その分析プロセスを適用可能な分析スキーマとを関連付けた情報を記憶する。分析スキーマ・分析プロセス管理DB51が分析プロセスと分析スキーマとを対応付けて記憶する態様は、第1の実施形態におけるスキーマ・分析プロセス管理DB50と同様である。
【0077】
探索部60は、第1の実施形態と同様、分析プロセス探索部61と、テーブル探索部62とを含む。分析プロセス探索部61は、テーブルの選択をユーザから受け付ける。分析プロセス探索部61は、テーブル・分析スキーマ管理DB31が記憶する情報から、受け付けたテーブルに関連付けられている分析スキーマを抽出する。そして、分析プロセス探索部61は、分析スキーマ・分析プロセス管理DB51が記憶する情報から、抽出した分析スキーマに関連付けられている分析プロセスを特定し、出力する。
【0078】
このとき、分析プロセス実行部70は、出力された分析プロセスの一覧から、ユーザの所望する分析プロセスの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
【0079】
また、テーブル探索部62は、分析プロセスの選択をユーザから受け付ける。テーブル探索部62は、分析スキーマ・分析プロセス管理DB51が記憶する情報から、受け付けた分析プロセスに関連付けられている分析スキーマを抽出する。そして、テーブル探索部62は、テーブル・分析スキーマ管理DB31が記憶する情報から、抽出した分析スキーマに関連付けられているテーブルを特定し、出力する。
【0080】
このとき、分析プロセス実行部70は、出力されたテーブルの一覧から、ユーザの所望するテーブルの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
【0081】
このように、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)および分析プロセス実行部70の動作は、スキーマが分析スキーマに変更された以外は、第1の実施形態と同様である。
【0082】
なお、スキーマ付テーブル入力部10と、分析スキーマ抽出部21と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、プログラム(データ分析支援プログラム)に従って動作するコンピュータのプロセッサによって実現される。また、第1の実施形態と同様に、スキーマ付テーブル入力部10、分析スキーマ抽出部21およびテーブル・分析スキーマ管理DB31を含む装置199を、スキーマ管理装置と言うことが出来る。なお、第1の実施形態と同様、本実施形態のデータ分析支援装置200が、スキーマ管理装置を含んでいなくてもよい。例えば、データ分析装置が外部に存在し、データ分析支援装置200が、外部に存在するデータ分析装置に接続されて各情報を取得するようにしてもよい。
【0083】
次に、本実施形態のデータ分析支援装置の動作を説明する。図15は、スキーマを管理する動作例を示すフローチャートである。なお、スキーマを抽出するまでの処理は、図11に例示するステップS31からステップS32までの処理と同様である。
【0084】
スキーマを抽出後、分析スキーマ抽出部21は、スキーマに含まれるカラムのデータ型を分析データ型へ変換する(ステップS41)。そして、分析スキーマ抽出部21は、分析スキーマとテーブルとを関連付けてテーブル・分析スキーマ管理DB31に登録する(ステップS42)。
【0085】
以上のように、本実施形態では、分析スキーマ抽出部21が、スキーマに含まれるカラムのデータ型を分析データ型へ変換し、分析データ型で定義されるスキーマとテーブルとを関連付けた情報をテーブル・分析スキーマ管理DB31に登録する。また、分析プロセス受付部40は、分析スキーマ・分析プロセス管理DB51)に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する。よって、第1の実施形態の効果に加え、データ型が異なるスキーマが定義されたテーブルに対しても、同じ分析プロセスを用いて同じ処理を実行することが可能になる。
【0086】
例えば、数値情報を含むカラムのデータに対して、繰り返し処理を行う状況を考える。繰り返し処理の一例として、「数値型の全てのカラムの対数を新しいカラムとして追加する」、「数値型の全てのカラムの一か月の平均値を新しいカラムとして追加する」などが挙げられる。
【0087】
例えば、需給、引出額および預入額は、一般に数値情報で表される。一方、RDBでは、需給がInt型、引出額がlong型、預入額がlong型で定義されているとする。この場合、引出額と預入額のデータ型は同一であるが、需給とデータ型が異なる。そのため、一般的に、それぞれのカラムのデータを考慮して個別に処理を記載する必要がある。
【0088】
一方、本実施形態では、数値情報を列に含むテーブルのスキーマのデータ型を分析データ型に変換する。このような変換を行うことで、分析に則したデータ型に応じた繰り返し処理を簡単に記述することが可能になる。したがって、定義されたデータ型が異なるカラムに対しても、同様の分析プロセスを実行することが可能になる。
【0089】
また、逆に、ATM(Automated Teller Machine)のID、引出額および預入額のデータ型がいずれもlong型に定義されているとする。一方、ATMのIDは、演算の対象とされる情報でない場合が一般的である。この場合、分析の観点では数値情報の意味が異なるため、やはり一般的には個別に処理を記述する必要がある。
【0090】
一方、本実施形態では、列の意味を考慮してスキーマのデータ型を分析データ型に変換する。このような変換を行うことで、定義されたデータ型が同じカラムに対しても、その意味に応じて分析プロセスを区別することが可能になる。
【0091】
次に、本発明の概要を説明する。図16は、本発明によるデータ分析支援装置の概要を示すブロック図である。本発明によるデータ分析支援装置180(例えば、データ分析支援装置100)は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部182(例えば、分析プロセス受付部40)と、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部183(例えば、スキーマ・分析プロセス管理DB50)と、テーブルの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部(例えば、テーブル・スキーマ管理DB30)が記憶する情報、および、スキーマ・分析プロセス記憶部183が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力する分析プロセス探索部184(例えば、分析プロセス探索部61)と、出力された一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部185(例えば、分析プロセス実行部70)とを備えている。
【0092】
そのような構成により、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
【0093】
また、データ分析支援装置180(例えば、データ分析支援装置200)は、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換部を備えていてもよい。ここで、分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含む。そして、データ型変換部は、テーブル・スキーマ記憶部(例えば、テーブル・分析スキーマ管理DB31)に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、分析プロセス受付部182は、スキーマ・分析プロセス記憶部183(例えば、分析スキーマ・分析プロセス管理DB51)に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録してもよい。
【0094】
そのような構成によれば、データ型が異なるスキーマが定義されたテーブルに対しても、同じ分析プロセスを用いて同じ処理を実行することが可能になる。
【0095】
このとき、データ型変換部は、データ型またはカラム名に応じた分析データ型への変換ルールに応じて、抽出したスキーマに含まれるデータ型を分析データ型に一括で変換してもよい。
【0096】
また、データ型変換部は、スキーマのカラムごとに分析データ型への変換指示を受け付け、抽出したスキーマに含まれるデータ型を受け付けた分析データ型に個別に変換してもよい。
【0097】
また、分析データ型は、カテゴリ変数、数値変数、および、順序関係を有する時間軸上の一点を示すデータ型を表す時間変数を含んでいてもよい。
【0098】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0099】
この出願は、2017年12月22日に出願された米国仮出願第62/609,768号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【0100】
10 スキーマ付テーブル入力部
20 スキーマ抽出部
21 分析スキーマ抽出部
30 テーブル・スキーマ管理DB
31 テーブル・分析スキーマ管理DB
40 分析プロセス受付部
50 スキーマ・分析プロセス管理DB
51 分析スキーマ・分析プロセス管理DB
60 探索部
61 分析プロセス探索部
62 テーブル探索部
70 分析プロセス実行部
99 スキーマ管理装置
100,200 データ分析支援装置
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16