JP7015320B2 - データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム - Google Patents

データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム Download PDF

Info

Publication number
JP7015320B2
JP7015320B2 JP2019560026A JP2019560026A JP7015320B2 JP 7015320 B2 JP7015320 B2 JP 7015320B2 JP 2019560026 A JP2019560026 A JP 2019560026A JP 2019560026 A JP2019560026 A JP 2019560026A JP 7015320 B2 JP7015320 B2 JP 7015320B2
Authority
JP
Japan
Prior art keywords
schema
analysis
analysis process
data type
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019560026A
Other languages
English (en)
Other versions
JPWO2019123704A1 (ja
Inventor
遼平 藤巻
幸貴 楠村
優輔 村岡
Original Assignee
ドットデータ インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ドットデータ インコーポレイテッド filed Critical ドットデータ インコーポレイテッド
Publication of JPWO2019123704A1 publication Critical patent/JPWO2019123704A1/ja
Application granted granted Critical
Publication of JP7015320B2 publication Critical patent/JP7015320B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Description

本発明は、リレーショナルデータベースを用いたデータの分析を支援するデータ分析支援装置、データ分析支援方法およびデータ分析支援プログラムに関する。
既存のデータを用いて様々な分析が行われている。特に、データの管理にはリレーショナルデータベース(以下、RDBと記す。)が多く用いられており、RDBを用いた様々なデータ処理方法も提案されている。
例えば、特許文献1には、RDBで管理されているデータから、機械学習処理に用いられる特徴量の候補を生成することが記載されている。特許文献1に記載された方法では、特徴量の候補を生成する処理を、Filter条件、map条件およびreduce条件の3つの条件の組合せにより定義することで、特徴量の候補を生成する分析者工数を削減する。
国際公開第2017/090475号
RDBでは、スキーマとテーブルとが一対一に対応し、各テーブルを対象としてデータの分析処理が記述される。言い換えると、同一の構造を有するテーブルが存在する場合、テーブルが異なれば、それぞれのテーブルに含まれるデータに対する分析処理は異なるものとして記述される。
検索処理の性能の向上させる観点や、データを分散して管理する観点などから、同じ内容を表す情報が同一のスキーマで定義された複数のテーブルで管理される場合がある。このような環境では、同じ内容を表す情報に対して同じ分析処理を記述しようとしても、テーブルごとに異なる分析処理を記述しなければならないという問題がある。
例えば、特許文献1に記載された方法では、分析の対象とするテーブルが異なると、記述する条件の内容や、生成する特徴量生成関数の内容もそれぞれ異なることになる。しかし、同じ内容を含む異なるテーブルに対して、それぞれ異なる分析処理を記述するのは煩雑である。そのため、あるテーブルのデータに対して定義される分析処理を、同様の構造を有する他のテーブルに対しても利用できることが好ましい。
そこで、本発明は、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できるデータ分析支援装置、データ分析支援方法およびデータ分析支援プログラムを提供することを目的とする。
本発明によるデータ分析支援装置は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部と、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部と、分析プロセスの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索部と、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部とを備えたことを特徴とする。
本発明によるスキーマ管理装置は、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力する入力部と、スキーマ付テーブルから、スキーマを抽出するスキーマ抽出部と、抽出されたスキーマと、テーブルとを関連付けて記憶部に登録する登録部とを備え、登録部が、カラムの名称およびデータ型が一致するスキーマが記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして記憶部に登録することを特徴とする。
本発明によるデータ分析支援方法は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス記憶部に登録し、分析プロセスの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力し、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行することを特徴とする。
本発明によるスキーマ管理方法は、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力し、スキーマ付テーブルから、スキーマを抽出し、抽出されたスキーマと、テーブルとを関連付けて記憶部に登録し、登録の際、カラムの名称およびデータ型が一致するスキーマが記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして記憶部に登録することを特徴とする。
本発明によるデータ分析支援プログラムは、コンピュータに、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスとその分析プロセスを適用可能なスキーマとを関連付けた情報をスキーマ・分析プロセス記憶部に登録する分析プロセス受付処理、分析プロセスの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する情報、および、スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索処理、および、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行処理を実行させることを特徴とする。
本発明によるスキーマ管理プログラムは、コンピュータに、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力する入力処理、スキーマ付テーブルから、スキーマを抽出するスキーマ抽出処理、および、抽出されたスキーマと、テーブルとを関連付けて記憶部に登録する登録処理を実行させ、登録処理で、カラムの名称およびデータ型が一致するスキーマが記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして記憶部に登録させることを特徴とする。
本発明によれば、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
本発明によるデータ分析支援装置の第1の実施形態の構成例を示すブロック図である。 スキーマ付テーブルからスキーマを抽出する処理の例を示す説明図である。 テーブル・スキーマ管理DB30が記憶する情報の例を示す説明図である。 分析プロセスを作成する処理の例を示す説明図である。 分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報の例を示す説明図である。 分析プロセスを出力する処理の例を示す説明図である。 分析プロセスを実行する処理の例を示す説明図である。 テーブルを出力する処理の例を示す説明図である。 第1の実施形態のデータ分析支援装置を用いて分析プロセスを実行する動作例を示すフローチャートである。 第1の実施形態のデータ分析支援装置を用いて分析プロセスを実行する他の動作例を示すフローチャートである。 スキーマを管理する動作例を示すフローチャートである。 本発明によるデータ分析支援装置の第2の実施形態の構成例を示すブロック図である。 列の内容に応じて分析データ型を設定した例を示す説明図である。 分析スキーマを抽出する処理の例を示す説明図である。 スキーマを管理する動作例を示すフローチャートである。 本発明によるデータ分析支援装置の概要を示すブロック図である。 本発明によるスキーマ管理装置の概要を示すブロック図である。
以下、本発明の実施形態を図面を参照して説明する。なお、以下の説明において、テーブルとは、表形式のデータセット(表型情報)を意味するものとし、スキーマと一体になったテーブル(すなわち、スキーマとテーブルとが関連付けられたもの)のことを、スキーマ付テーブルと記す。また、本発明においてスキーマとは、テーブルの属性(フィールド、列)を定義した情報であり、属性として、テーブルに含まれる列のカラム名、データ型、制約などが挙げられる。
実施形態1.
図1は、本発明によるデータ分析支援装置の第1の実施形態の構成例を示すブロック図である。本実施形態のデータ分析支援装置100は、スキーマ付テーブル入力部10と、スキーマ抽出部20と、テーブル・スキーマ管理データベース30(以下、テーブル・スキーマ管理DB30と記す。)と、分析プロセス受付部40と、スキーマ・分析プロセス管理データベース50(以下、スキーマ・分析プロセス管理DB50と記す。)と、探索部60と、分析プロセス実行部70とを備えている。
なお、テーブル・スキーマ管理DB30と、スキーマ・分析プロセス管理DB50とは、具体的には、磁気ディスク装置等に記憶される。
スキーマ付テーブル入力部10は、スキーマ付テーブルを入力する。スキーマ付テーブル入力部10は、例えば、RDBが提供するインタフェースを介して、直接RDBからスキーマ付テーブルを入力してもよい。また、スキーマ付テーブル入力部10は、スキーマおよびテーブルの内容が関連付けられたファイルを読み込んでもよい。
スキーマ抽出部20は、スキーマ付テーブルからスキーマを抽出し、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する。図2は、スキーマ付テーブルからスキーマを抽出する処理の例を示す説明図である。図2に例示するスキーマ付テーブルST1は、2016年1月の顧客リストを表すスキーマ付テーブルであり、スキーマSC1と表型情報であるテーブルTB1とを含む。
スキーマ付テーブル入力部10が、図2に例示するスキーマ付テーブルST1を入力したとする。このとき、スキーマ抽出部20は、スキーマ付テーブルST1から、カラム名、データ型および制約を含むスキーマSC1を抽出する。ただし、スキーマ抽出部20が抽出するスキーマの情報は、図2に例示する情報に限定されない。スキーマ抽出部20は、表の属性を表す他の情報を含むスキーマを抽出してもよい。
なお、テーブル・スキーマ管理DB30に登録する際、スキーマ抽出部20は、カラムの名称およびデータ型が一致するスキーマが登録されていない場合に、抽出されたスキーマを新たなスキーマとしてテーブル・スキーマ管理DB30に登録する。さらに、スキーマ抽出部20は、カラムの名称およびデータ型だけでなく、制約まで一致するスキーマが登録されていない場合に、抽出されたスキーマを新たなスキーマとしてテーブル・スキーマ管理DB30に登録してもよい。
スキーマ抽出部20は、スキーマを識別する任意の識別子を設定する。図2に示す例では、連番としてスキーマSC1に識別子“001”が設定されている。なお、スキーマ識別子は、図2に例示する数値に限定されない。スキーマ抽出部20は、例えば、ユーザからスキーマ名の指定(例えば、「顧客リスト」など)を受け付け、その指定をスキーマ名として用いてもよい。
テーブル・スキーマ管理DB30は、スキーマとテーブルとを関連付けて記憶する。テーブル・スキーマ管理DB30は、例えば、スキーマ名とテーブル名とを対応付けて記憶する。
図3は、テーブル・スキーマ管理DB30が記憶する情報の例を示す説明図である。図3に示す例では、テーブル・スキーマ管理DB30がテーブル名とスキーマ名とを関連付けて記憶していることを示す。また、図3に示す例では、2016年1月の顧客リストテーブル(顧客リスト2016/1テーブル)のスキーマと、2016年2月の顧客リストテーブル(顧客リスト2016/2テーブル)のスキーマとに、それぞれ同一のスキーマ(スキーマ001)が適用されていることを示す。
なお、スキーマ付テーブル入力部10、スキーマ抽出部20およびテーブル・スキーマ管理DB30によって、テーブルとスキーマとを分離して管理できることから、スキーマ付テーブル入力部10、スキーマ抽出部20およびテーブル・スキーマ管理DB30を含む装置99を、スキーマ管理装置と言うことが出来る。なお、本実施形態では、データ分析支援装置100が、スキーマ管理装置を含む場合を例示している。ただし、データ分析支援装置100は、スキーマ管理装置を含んでいなくてもよい。例えば、データ分析装置が外部に存在し、データ分析支援装置100が、外部に存在するデータ分析装置に接続されて各情報を取得するようにしてもよい。
分析プロセス受付部40は、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。分析プロセスとは、テーブルのデータに対して行う一連の処理である。ただし、本実施形態では、テーブルとは切り離したスキーマをもとに分析プロセスが作成される。分析プロセス受付部40は、予め作成された分析プロセスを受け付けてもよく、分析プロセスを作成するための画面を表示し、ユーザの入力に基づいて作成された分析プロセスを受け付けてもよい。
図4は、分析プロセスを作成する処理の例を示す説明図である。例えば、顧客リストの内容に基づいて、各顧客がランクアップするか否か判断する分析(以下、ランクアップ回帰分析)を行うための分析プロセスを作成するとする。また、図4に示す例では、図2に例示するスキーマSC1(スキーマ001)が適用されるテーブルのデータを用いて分析が行われるものとする。
例えば、機械学習では、入力データを数値にする必要がある。図2に示す例では、性別のデータ型がvarchar型であり、データの内容がMまたはFで表されている。そこで、分析プロセス受付部40は、スキーマ001に含まれる性別のデータを変換する処理P1(例えば、Mを1に、Fを0に変換する処理)を作成してもよい。また、分析プロセス受付部40は、ユーザの属性からランクアップを判別するための回帰式(例えば、logit(ランクアップ)=年齢×3+性別+1、など)を用いた判別処理P2を作成してもよい。そして、分析プロセス受付部40は、作成した一連の処理を分析プロセスAP1として受け付ける。
分析プロセス受付部40は、作成した分析プロセスをスキーマ・分析プロセス管理DB50に登録する。分析プロセス受付部40は、内容が把握できるような名称を分析プロセスに付与して、スキーマ・分析プロセス管理DB50に登録してもよい。例えば、図4に示す例では、分析プロセス受付部40は、「顧客リストに対するランクアップ回帰分析プロセス」のような名称を分析プロセスに付与して、スキーマ・分析プロセス管理DB50に登録してもよい。
なお、後述する分析プロセス実行部70が処理を実行できる形式であれば、分析プロセスの表現方法は任意である。分析プロセスは、例えば、スクリプトの形式で表現されていてもよい。
以上のように、分析プロセス受付部40が、テーブルの定義を含む分析プロセスではなく、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。そのため、分析対象のテーブルが異なっていてもスキーマが同一である場合には、同じ内容の分析プロセスを再利用できる。
スキーマ・分析プロセス管理DB50は、分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶する。図5は、分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報の例を示す説明図である。例えば、図4に例示する分析プロセスは、スキーマ001を用いて定義されており、スキーマ001が適用されるプロセスと言える。そこで、スキーマ・分析プロセス管理DB50は、図5に例示する表の1行目に示すように、図4に例示する分析プロセスと、スキーマ001とを対応付けて記憶する。
探索部60は、ユーザからの選択を受け付けて各種情報を探索し、出力する。探索部60は、分析プロセス探索部61と、テーブル探索部62とを含む。
分析プロセス探索部61は、テーブルの選択をユーザから受け付ける。分析プロセス探索部61は、テーブル・スキーマ管理DB30が記憶する情報から、受け付けたテーブルに関連付けられているスキーマを抽出する。そして、分析プロセス探索部61は、スキーマ・分析プロセス管理DB50が記憶する情報から、抽出したスキーマに関連付けられている分析プロセスを特定し、出力する。
テーブル探索部62は、分析プロセスの選択をユーザから受け付ける。テーブル探索部62は、スキーマ・分析プロセス管理DB50が記憶する情報から、受け付けた分析プロセスに関連付けられているスキーマを抽出する。そして、テーブル探索部62は、テーブル・スキーマ管理DB30が記憶する情報から、抽出したスキーマに関連付けられているテーブルを特定し、出力する。
分析プロセス実行部70は、選択されたテーブルに対して分析プロセスを実行する。以下、分析プロセス実行部70が分析プロセスを実行する2つの方法を説明する。
探索部60(具体的には、分析プロセス探索部61)は、テーブルの選択をユーザから受け付けた場合に、分析プロセスを出力する。この場合、分析プロセス実行部70は、出力された分析プロセスの一覧から、ユーザの所望する分析プロセスの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
図6は、分析プロセスを出力する処理の例を示す説明図である。探索部60が2016年2月の顧客リストを表す図6に例示するスキーマ付テーブルST2の選択をユーザから受け付けると、分析プロセス探索部61は、図3に例示するテーブル・スキーマ管理DB30が記憶する情報から、受け付けたテーブルに関連付けられているスキーマ001を抽出する。そして、分析プロセス探索部61は、図5に例示するスキーマ・分析プロセス管理DB50が記憶する情報から、抽出したスキーマ001に関連付けられている分析プロセスを特定し、出力する。ここでは、「顧客リストに対するランクアップ回帰分析プロセス」と、「顧客リストに対する性別判別分析プロセス」の2つの分析プロセスが出力される。
ここで、ユーザが「顧客リストに対するランクアップ回帰分析プロセス」を選択したとする。この場合、分析プロセス実行部70は、受け付けたスキーマ付テーブルST2に含まれるテーブルTB2に対して選択された分析プロセスを実行する。
図7は、分析プロセスを実行する処理の例を示す説明図である。ここで、テーブルTB2に対して、上述する分析プロセスAP1が適用されるとする。この場合、分析プロセス実行部70は、テーブルTB2に含まれる性別のデータを変換する処理P1(Mを1に、Fを0に変換する処理)を行い、回帰式を用いた判別処理P2を実行する。その結果、図7に例示するランクアップ列の値が算出される。
なお、図7に示す例では、ランクアップ列の値を算出するため、図6に例示するランクアップ列に値が設定されていない場合を例示した。ただし、分析プロセスに学習処理が定義されている場合、図6に例示する表の列には、実績データとして算出される値が設定されていてもよい。
一方、探索部60(具体的には、テーブル探索部62)は、分析プロセスの選択をユーザから受け付けた場合に、テーブルを出力する。この場合、分析プロセス実行部70は、出力されたテーブルの一覧から、ユーザの所望するテーブルの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
図8は、テーブルを出力する処理の例を示す説明図である。探索部60が分析プロセスとして「顧客リストに対するランクアップ回帰分析プロセス」の選択をユーザから受け付けると、テーブル探索部62は、図5に例示するスキーマ・分析プロセス管理DB50が記憶する情報から、受け付けた分析プロセスに関連付けられているスキーマ001を抽出する。そして、テーブル探索部62は、図3に例示するテーブル・スキーマ管理DB30が記憶する情報から、抽出したスキーマ001に関連付けられているテーブルを特定し、出力する。ここでは、2016年1月の顧客リストを含むテーブルと、2016年2月の顧客リストを含むテーブルとが出力される。
ここで、ユーザが2016年2月の顧客リストを選択したとする。この場合、分析プロセス実行部70は、受け付けたテーブルTB2に対して選択された分析プロセスを実行する。分析プロセスを実行する処理は、図7に例示する内容と同様である。
スキーマ付テーブル入力部10と、スキーマ抽出部20と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、プログラム(データ分析支援プログラム)に従って動作するコンピュータのプロセッサ(例えば、CPU(Central Processing Unit )、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array ))によって実現される。
上記プログラムは、例えば、記憶部(図示せず)に記憶され、プロセッサは、そのプログラムを読み込み、プログラムに従って、スキーマ付テーブル入力部10、スキーマ抽出部20、分析プロセス受付部40、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)および分析プロセス実行部70として動作してもよい。また、データ分析支援装置の機能がSaaS(Software as a Service )形式で提供されてもよい。
スキーマ付テーブル入力部10と、スキーマ抽出部20と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、それぞれが専用のハードウェアで実現されていてもよい。また、各装置の各構成要素の一部又は全部は、汎用または専用の回路(circuitry )、プロセッサ等やこれらの組合せによって実現されもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部又は全部は、上述した回路等とプログラムとの組合せによって実現されてもよい。
また、データ分析支援装置の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
次に、本実施形態のデータ分析支援装置の動作を説明する。図9は、本実施形態のデータ分析支援装置を用いて分析プロセスを実行する動作例を示すフローチャートである。
分析プロセス受付部40は、スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付け(ステップS11)、スキーマ・分析プロセス管理DB50に、分析プロセスとスキーマとを関連付けた情報を登録する(ステップS12)。
分析プロセス探索部61は、テーブルの選択をユーザから受け付けると(ステップS13)、テーブル・スキーマ管理DB30が記憶する情報およびスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定する(ステップS14)。そして、分析プロセス探索部61は、特定された分析プロセスの一覧を出力する(ステップS15)。
分析プロセス実行部70は、ユーザより、出力された分析プロセスの一覧から分析プロセスの選択を受け付ける(ステップ16)。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する(ステップS17)。
図10は、本実施形態のデータ分析支援装置を用いて分析プロセスを実行する他の動作例を示すフローチャートである。図10に例示するフローチャートは、図9に例示するフローチャートと比較して探索部60および分析プロセス実行部70の処理が異なる。分析プロセスとスキーマとを関連付けた情報を登録するステップS11からステップS12の処理は、図9に例示する処理と同様である。
テーブル探索部62は、分析プロセスの選択をユーザから受け付けると(ステップS21)、テーブル・スキーマ管理DB30が記憶する情報およびスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定する(ステップS22)。そして、テーブル探索部62は、特定されたテーブルの一覧を出力する(ステップS23)。
分析プロセス実行部70は、ユーザより、出力されたテーブルの一覧からテーブルの選択を受け付ける(ステップS24)。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する(ステップS25)。
図11は、スキーマを管理する動作例を示すフローチャートである。スキーマ付テーブル入力部10が、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力すると(ステップS31)、スキーマ抽出部20は、スキーマ付テーブルから、スキーマを抽出する(ステップS32)。そして、スキーマ抽出部20は、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する(ステップS33)。その際、スキーマ抽出部20は、カラムの名称およびデータ型が一致するスキーマがテーブル・スキーマ管理DB30に登録されていない場合に、抽出されたスキーマを新たなスキーマとして登録する。
以上のように、本実施形態では、分析プロセス受付部40が分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス管理DB50に登録する。その後、テーブルの選択をユーザから受け付けると、分析プロセス探索部61は、テーブル・スキーマ管理DB30が記憶する情報及びスキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けたテーブルに対して適用可能な分析プロセスを特定し、特定された分析プロセスの一覧を出力する。そして、分析プロセス実行部70は、出力された分析プロセスの一覧から分析プロセスの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する。よって、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
また、本実施形態では、分析プロセス受付部40が分析プロセスの作成を受け付け、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス管理DB50に登録する。その後、分析プロセスの選択をユーザから受け付けると、テーブル探索部62は、テーブル・スキーマ管理DB30が記憶する情報、および、スキーマ・分析プロセス管理DB50が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力する。そして、分析プロセス実行部70は、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する。よって、上述する方法と同様、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
また、本実施形態では、スキーマ付テーブル入力部10がスキーマ付テーブルを入力し、スキーマ抽出部20がスキーマ付テーブルから、スキーマを抽出し、抽出されたスキーマと、テーブルとを関連付けてテーブル・スキーマ管理DB30に登録する。その際、スキーマ抽出部20が、カラムの名称およびデータ型が一致するスキーマがテーブル・スキーマ管理DB30に登録されていない場合に、抽出されたスキーマを新たなスキーマとして登録する。よって、一般的なRDBで利用されるスキーマ付テーブルを、スキーマとテーブルとに分離して管理できる。その結果、スキーマに対して分析プロセスを定義することで、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
実施形態2.
次に、本発明によるデータ分析支援装置の第2の実施形態を説明する。第1の実施形態では、スキーマ抽出部20が、カラムの名称およびデータ型が一致するスキーマが登録されていないときに、抽出されたスキーマをテーブル・スキーマ管理DB30に登録する場合について説明した。
一方、RDBのバージョンの違いや、テーブルの設計変更などにより、同一の内容を示す列であっても、異なるデータ型が定義されているテーブルも存在する。また、同じ数値型や文字列型であっても、RDBのメモリ管理等の観点から複数種類のデータ型が定義されていることもある。
しかし、データ分析の観点では、同一の内容を示す列は、同じデータ型として扱えることが好ましく、RDBが想定する種類のデータ型までは必要としない場合も少なくない。そこで、本実施形態では、データ型を抽象化したデータ型である分析データ型を用いて、分析プロセスを管理する方法を説明する。
本実施形態において、分析データ型とは、分析処理のために便宜上定義される抽象化されたデータ型であり、実際にRDBで用いられるデータ型とは別に設けられる。具体的には、分析データ型には、同値判定が可能なデータ型を表すカテゴリ変数、連続値のデータ型を表す数値変数、および、順序関係を有し時間軸上の一点を表す情報を抽出可能なデータ型を表す時間変数が含まれる。
具体的には、数値変数は、回帰分析等で用いられる実数値などの連続値を表すデータ型であり、例えば、四則演算などの演算を適用可能なデータ型である。ただし、分析データ型に含まれる内容は、上記内容に限定されない。例えば、経度および緯度で表現される地理的な一地点を示すデータ型を、分析データ型に含めてもよい。
図12は、本発明によるデータ分析支援装置の第2の実施形態の構成例を示すブロック図である。本実施形態のデータ分析支援装置200は、スキーマ付テーブル入力部10と、分析スキーマ抽出部21と、テーブル・分析スキーマ管理データベース31(以下、テーブル・分析スキーマ管理DB31と記す。)と、分析プロセス受付部40と、分析スキーマ・分析プロセス管理データベース51(以下、分析スキーマ・分析プロセス管理DB51と記す。)と、探索部60と、分析プロセス実行部70とを備えている。
なお、テーブル・分析スキーマ管理DB31と、分析スキーマ・分析プロセス管理DB51とは、具体的には、磁気ディスク装置等に記憶される。
スキーマ付テーブル入力部10は、第1の実施形態と同様に、スキーマ付テーブルを入力する。
分析スキーマ抽出部21は、第1の実施形態におけるスキーマ抽出部20と同様に、スキーマ付テーブルからスキーマを抽出する。さらに、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型を分析データ型に変換する。そして、分析スキーマ抽出部21は、データ型を変換したスキーマと、テーブルとを関連付けてテーブル・分析スキーマ管理DB31に登録する。以下の説明では、分析データ型にデータ型を変換したスキーマのことを、分析スキーマと記すこともある。
具体的には、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型を、列の内容(具体的には、カラム名、データ型など)に応じて予め定めた分析データ型に変換してもよい。また、分析スキーマ抽出部21は、抽出したスキーマに含まれるデータ型に対する分析データ型への変換指示をユーザから受け付けてもよい。このように、分析スキーマ抽出部21は、スキーマに含まれるカラムのデータ型を分析データ型へ変換することから、データ型変換部と言うことができる。
図13は、列の内容に応じて分析データ型を設定した例を示す説明図である。図13に例示するように、分析目的に応じた分析データ型を予め設定しておいてもよい。分析スキーマ抽出部21は、カラムに対して予め分析データ型への変換ルールが設定されている場合、その設定に基づいてデータ型を分析データ型へ変換してもよい。
また、分析スキーマ抽出部21は、上述する処理を組み合わせてもよい。例えば、データ型やカラム名に応じた分析データ型への変換ルールを予め設定して記憶部(図示せず)に記憶させておく。まず、分析スキーマ抽出部21は、この変換ルールに従い、抽出したスキーマに含まれるデータ型を分析データ型に一括で変換する。次に、分析スキーマ抽出部21は、変換後の分析データ型をカラム名とともに出力し、個別に分析データ型の変更を受け付ける。なお、分析スキーマ抽出部21は、全ての分析データ型への変更を個別に受け付けてもよい。具体的には、分析スキーマ抽出部21は、スキーマのカラムごとに分析データ型への変換指示を受け付け、抽出したスキーマに含まれるデータ型を受け付けた分析データ型に個別に変換してもよい。
図14は、分析スキーマを抽出する処理の例を示す説明図である。図14に例示する2つのスキーマ付テーブルST3,ST4は、いずれも顧客リストを含むテーブルであるが、スキーマの内容(具体的には、データ型)が異なる。例えば、2016年の顧客リストテーブルST3の顧客IDは、数値で表されていることから、RDB上ではデータ型longで管理されている。一方、例えば、2001年の顧客リストテーブルST4の顧客IDも、数値で表されているが、バージョン等の違いにより、RDB上ではデータ型intで管理されている。
一方、顧客IDは、数値計算の対象とされるよりも、同値(非同値)判定の対象とされることが多いと考えられる。そこで、図13に例示するように、分析スキーマ抽出部21は、顧客IDをカテゴリ値として分析できるように、分析データ型への変換を行う。
まず、分析スキーマ抽出部21は、スキーマ付テーブルST3,ST4から、それぞれスキーマSC2,SC3を抽出する。そして、分析スキーマ抽出部21は、図13に例示する変換ルールに基づいて、各列のデータ型を分析データ型へ変換したスキーマSC4を作成する。
テーブル・分析スキーマ管理DB31は、分析スキーマとテーブルとを関連付けて記憶する。テーブル・分析スキーマ管理DB31は、例えば、分析スキーマ名とテーブル名とを対応付けて記憶する。テーブル・分析スキーマ管理DB31が分析スキーマ名とテーブル名とを対応付けて記憶する態様は、第1の実施形態におけるテーブル・スキーマ管理DB30と同様である。
分析プロセス受付部40は、第1の実施形態と同様、分析スキーマで定義されているカラム名を用いた分析プロセスの作成を受け付ける。そして、分析プロセス受付部40は、作成した分析プロセスを分析スキーマ・分析プロセス管理DB51に登録する。
分析スキーマ・分析プロセス管理DB51は、分析プロセスと、その分析プロセスを適用可能な分析スキーマとを関連付けた情報を記憶する。分析スキーマ・分析プロセス管理DB51が分析プロセスと分析スキーマとを対応付けて記憶する態様は、第1の実施形態におけるスキーマ・分析プロセス管理DB50と同様である。
探索部60は、第1の実施形態と同様、分析プロセス探索部61と、テーブル探索部62とを含む。分析プロセス探索部61は、テーブルの選択をユーザから受け付ける。分析プロセス探索部61は、テーブル・分析スキーマ管理DB31が記憶する情報から、受け付けたテーブルに関連付けられている分析スキーマを抽出する。そして、分析プロセス探索部61は、分析スキーマ・分析プロセス管理DB51が記憶する情報から、抽出した分析スキーマに関連付けられている分析プロセスを特定し、出力する。
このとき、分析プロセス実行部70は、出力された分析プロセスの一覧から、ユーザの所望する分析プロセスの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
また、テーブル探索部62は、分析プロセスの選択をユーザから受け付ける。テーブル探索部62は、分析スキーマ・分析プロセス管理DB51が記憶する情報から、受け付けた分析プロセスに関連付けられている分析スキーマを抽出する。そして、テーブル探索部62は、テーブル・分析スキーマ管理DB31が記憶する情報から、抽出した分析スキーマに関連付けられているテーブルを特定し、出力する。
このとき、分析プロセス実行部70は、出力されたテーブルの一覧から、ユーザの所望するテーブルの選択を受け付ける。そして、分析プロセス実行部70は、受け付けたテーブルに対して選択された分析プロセスを実行する。
このように、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)および分析プロセス実行部70の動作は、スキーマが分析スキーマに変更された以外は、第1の実施形態と同様である。
なお、スキーマ付テーブル入力部10と、分析スキーマ抽出部21と、分析プロセス受付部40と、探索部60(より具体的には、分析プロセス探索部61と、テーブル探索部62)と、分析プロセス実行部70とは、プログラム(データ分析支援プログラム)に従って動作するコンピュータのプロセッサによって実現される。また、第1の実施形態と同様に、スキーマ付テーブル入力部10、分析スキーマ抽出部21およびテーブル・分析スキーマ管理DB31を含む装置199を、スキーマ管理装置と言うことが出来る。なお、第1の実施形態と同様、本実施形態のデータ分析支援装置200が、スキーマ管理装置を含んでいなくてもよい。例えば、データ分析装置が外部に存在し、データ分析支援装置200が、外部に存在するデータ分析装置に接続されて各情報を取得するようにしてもよい。
次に、本実施形態のデータ分析支援装置の動作を説明する。図15は、スキーマを管理する動作例を示すフローチャートである。なお、スキーマを抽出するまでの処理は、図11に例示するステップS31からステップS32までの処理と同様である。
スキーマを抽出後、分析スキーマ抽出部21は、スキーマに含まれるカラムのデータ型を分析データ型へ変換する(ステップS41)。そして、分析スキーマ抽出部21は、分析スキーマとテーブルとを関連付けてテーブル・分析スキーマ管理DB31に登録する(ステップS42)。
以上のように、本実施形態では、分析スキーマ抽出部21が、スキーマに含まれるカラムのデータ型を分析データ型へ変換し、分析データ型で定義されるスキーマとテーブルとを関連付けた情報をテーブル・分析スキーマ管理DB31に登録する。また、分析プロセス受付部40は、分析スキーマ・分析プロセス管理DB51)に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する。よって、第1の実施形態の効果に加え、データ型が異なるスキーマが定義されたテーブルに対しても、同じ分析プロセスを用いて同じ処理を実行することが可能になる。
例えば、数値情報を含むカラムのデータに対して、繰り返し処理を行う状況を考える。繰り返し処理の一例として、「数値型の全てのカラムの対数を新しいカラムとして追加する」、「数値型の全てのカラムの一か月の平均値を新しいカラムとして追加する」などが挙げられる。
例えば、需給、引出額および預入額は、一般に数値情報で表される。一方、RDBでは、需給がInt型、引出額がlong型、預入額がlong型で定義されているとする。この場合、引出額と預入額のデータ型は同一であるが、需給とデータ型が異なる。そのため、一般的に、それぞれのカラムのデータを考慮して個別に処理を記載する必要がある。
一方、本実施形態では、数値情報を列に含むテーブルのスキーマのデータ型を分析データ型に変換する。このような変換を行うことで、分析に則したデータ型に応じた繰り返し処理を簡単に記述することが可能になる。したがって、定義されたデータ型が異なるカラムに対しても、同様の分析プロセスを実行することが可能になる。
また、逆に、ATM(Automated Teller Machine)のID、引出額および預入額のデータ型がいずれもlong型に定義されているとする。一方、ATMのIDは、演算の対象とされる情報でない場合が一般的である。この場合、分析の観点では数値情報の意味が異なるため、やはり一般的には個別に処理を記述する必要がある。
一方、本実施形態では、列の意味を考慮してスキーマのデータ型を分析データ型に変換する。このような変換を行うことで、定義されたデータ型が同じカラムに対しても、その意味に応じて分析プロセスを区別することが可能になる。
次に、本発明の概要を説明する。図16は、本発明によるデータ分析支援装置の概要を示すブロック図である。本発明によるデータ分析支援装置280(例えば、データ分析支援装置100)は、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部282(例えば、分析プロセス受付部40)と、受け付けた分析プロセスと、その分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部283(例えば、スキーマ・分析プロセス管理DB50)と、分析プロセスの選択をユーザから受け付けると、テーブルとそのテーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部(例えば、テーブル・スキーマ管理DB30)が記憶する情報、および、スキーマ・分析プロセス記憶部283が記憶する情報に基づいて、受け付けた分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索部284(例えば、テーブル探索部62)と、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部285(例えば、分析プロセス実行部70)とを備えている。
そのような構成により、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
また、データ分析支援装置280(例えば、データ分析支援装置200)は、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換部を備えていてもよい。ここで、分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含む。そして、データ型変換部は、テーブル・スキーマ記憶部(例えば、テーブル・分析スキーマ管理DB31)に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、分析プロセス受付部282は、スキーマ・分析プロセス記憶部283(例えば、分析スキーマ・分析プロセス管理DB51)に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録してもよい。
そのような構成によれば、データ型が異なるスキーマが定義されたテーブルに対しても、同じ分析プロセスを用いて同じ処理を実行することが可能になる。
図17は、本発明によるスキーマ管理装置の概要を示すブロック図である。本発明によるスキーマ管理装置290(例えば、スキーマ管理装置99)は、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力する入力部291(例えば、スキーマ付テーブル入力部10)と、スキーマ付テーブルから、スキーマを抽出するスキーマ抽出部292(例えば、スキーマ抽出部20)と、抽出されたスキーマと、テーブルとを関連付けて記憶部(例えば、テーブル・スキーマ管理DB30)に登録する登録部293(例えば、スキーマ抽出部20)とを備えている。
登録部293は、カラムの名称およびデータ型が一致するスキーマが記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして記憶部に登録する。
そのような構成により、一般的なRDBで利用されるスキーマ付テーブルを、スキーマとテーブルとを分離して管理できる。その結果、スキーマに対して分析プロセスを定義することで、一のテーブルに対して定義された分析処理を異なるテーブルに対しても実行できる。
また、スキーマ抽出部292(例えば、分析スキーマ抽出部21)は、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換してもよい。ここで、分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、数値変数を含む。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部と、受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部と、前記分析プロセスの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索部と、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部とを備えたことを特徴とするデータ分析支援装置。
(付記2)スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換部を備え、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、前記データ型変換部は、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、分析プロセス受付部は、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する付記1記載のデータ分析支援装置。
(付記3)スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力する入力部と、前記スキーマ付テーブルから、スキーマを抽出するスキーマ抽出部と、抽出されたスキーマと、前記テーブルとを関連付けて記憶部に登録する登録部とを備え、前記登録部は、カラムの名称およびデータ型が一致するスキーマが前記記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして前記記憶部に登録することを特徴とするスキーマ管理装置。
(付記4)スキーマ抽出部は、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換し、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含む付記3記載のスキーマ管理装置。
(付記5)テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を、スキーマ・分析プロセス記憶部に登録し、前記分析プロセスの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力し、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行することを特徴とするデータ分析支援方法。
(付記6)スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換し、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する付記5記載のデータ分析支援方法。
(付記7)スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力し、前記スキーマ付テーブルから、スキーマを抽出し、抽出されたスキーマと、前記テーブルとを関連付けて記憶部に登録し、前記登録の際、カラムの名称およびデータ型が一致するスキーマが前記記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして前記記憶部に登録することを特徴とするスキーマ管理方法。
(付記8)スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換し、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含む付記7記載のスキーマ管理方法。
(付記9)コンピュータに、テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと当該分析プロセスを適用可能なスキーマとを関連付けた情報をスキーマ・分析プロセス記憶部に登録する分析プロセス受付処理、前記分析プロセスの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索処理、および、出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行処理を実行させるためのデータ分析支援プログラム。
(付記10)コンピュータに、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換処理を実行させ、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、前記データ型変換処理で、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録させ、分析プロセス受付処理で、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録させる付記9記載のデータ分析支援プログラム。
(付記11)コンピュータに、スキーマとテーブルとが関連付けられたスキーマ付テーブルを入力する入力処理、前記スキーマ付テーブルから、スキーマを抽出するスキーマ抽出処理、および、抽出されたスキーマと、前記テーブルとを関連付けて記憶部に登録する登録処理を実行させ、前記登録処理で、カラムの名称およびデータ型が一致するスキーマが前記記憶部に登録されていない場合に、抽出されたスキーマを新たなスキーマとして前記記憶部に登録させるためのスキーマ管理プログラム。
(付記12)コンピュータに、スキーマ抽出処理で、スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換させ、前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含む付記11記載のスキーマ管理プログラム。
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2017年12月22日に出願された米国仮出願第62/609,654号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
10 スキーマ付テーブル入力部
20 スキーマ抽出部
21 分析スキーマ抽出部
30 テーブル・スキーマ管理DB
31 テーブル・分析スキーマ管理DB
40 分析プロセス受付部
50 スキーマ・分析プロセス管理DB
51 分析スキーマ・分析プロセス管理DB
60 探索部
61 分析プロセス探索部
62 テーブル探索部
70 分析プロセス実行部
99 スキーマ管理装置
100,200 データ分析支援装置

Claims (8)

  1. テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付ける分析プロセス受付部と、
    受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を記憶するスキーマ・分析プロセス記憶部と、
    前記分析プロセスの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索部と、
    出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行部とを備えた
    ことを特徴とするデータ分析支援装置。
  2. スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換部を備え、
    前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
    前記データ型変換部は、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録し、
    分析プロセス受付部は、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録する
    請求項1記載のデータ分析支援装置。
  3. データ分析方法を実行するためのシステムであって、
    実行可能な命令が記憶されたメモリと、
    命令を実行するプロセッサとを備え、前記プロセッサはシステムに、
    テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスを受け付けさせ
    受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を、前記メモリに登録させ
    テーブルと当該テーブルに適用されるスキーマとを関連付けた前記メモリ内の情報、および、ユーザから受け付けた前記メモリに記憶された情報であってユーザによる分析プロセスの選択を示す情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定させ
    特定されたテーブルの一覧を出力させ
    出力されたテーブルの一覧からテーブルの選択を受け付けさせ
    受け付けたテーブルに対して選択された分析プロセスを実行させる
    よう構成されていることを特徴とするシステム
  4. 前記プロセッサは、さらに、
    スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換し、
    前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
    分析データ型で定義されるスキーマとテーブルとを関連付けた情報を前記メモリに登録し、
    分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を前記メモリに登録する
    よう構成されている請求項3記載のデータ分析支援方法。
  5. コンピュータに、
    テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスの作成を受け付け、受け付けた分析プロセスと当該分析プロセスを適用可能なスキーマとを関連付けた情報をスキーマ・分析プロセス記憶部に登録する分析プロセス受付処理、
    前記分析プロセスの選択をユーザから受け付けると、テーブルと当該テーブルに適用されるスキーマとを関連付けた情報を記憶するテーブル・スキーマ記憶部が記憶する当該情報、および、前記スキーマ・分析プロセス記憶部が記憶する情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定し、特定されたテーブルの一覧を出力するテーブル探索処理、および、
    出力されたテーブルの一覧からテーブルの選択を受け付け、受け付けたテーブルに対して選択された分析プロセスを実行する分析プロセス実行処理
    を実行させるためのデータ分析支援プログラム。
  6. コンピュータに、
    スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換するデータ型変換処理を実行させ、
    前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
    前記データ型変換処理で、テーブル・スキーマ記憶部に、分析データ型で定義されるスキーマとテーブルとを関連付けた情報を登録させ、
    分析プロセス受付処理で、スキーマ・分析プロセス記憶部に、分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を登録させる
    請求項5記載のデータ分析支援プログラム。
  7. 実行可能な命令を含むメモリ及び命令を実行するよう構成されたプロセッサを含むシステム上で実行される、コンピュータによって実施される方法であって、
    テーブルに適用されるスキーマで定義されているカラム名を用いた、データ分析のための一連の処理である分析プロセスを受け付けること、
    受け付けた分析プロセスと、当該分析プロセスを適用可能なスキーマとを関連付けた情報を、前記メモリに登録すること、
    テーブルと当該テーブルに適用されるスキーマとを関連付けた前記メモリ内の情報、および、ユーザから受け付けた前記メモリに記憶された情報であってユーザによる分析プロセスの選択を示す情報に基づいて、受け付けた前記分析プロセスで用いるテーブルを特定すること、
    特定されたテーブルの一覧を出力すること、
    出力されたテーブルの一覧からテーブルの選択を受け付けること、
    受け付けたテーブルに対して選択された分析プロセスを実行すること
    を含むことを特徴とする方法。
  8. 請求項7に記載のコンピュータによって実施される方法であって、さらに、
    スキーマに含まれるカラムのデータ型を、分析処理に用いられるデータ型として定義された分析データ型へ変換すること、
    前記分析データ型は、少なくとも同値判定が可能なデータ型を表すカテゴリ変数、および、数値変数を含み、
    分析データ型で定義されるスキーマとテーブルとを関連付けた情報を前記メモリに登録すること、
    分析プロセスと、分析データ型で定義されるスキーマとを関連付けた情報を前記メモリに登録すること
    を含む方法。
JP2019560026A 2017-12-22 2018-07-26 データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム Active JP7015320B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762609654P 2017-12-22 2017-12-22
US62/609,654 2017-12-22
PCT/JP2018/028083 WO2019123704A1 (ja) 2017-12-22 2018-07-26 データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム

Publications (2)

Publication Number Publication Date
JPWO2019123704A1 JPWO2019123704A1 (ja) 2020-12-03
JP7015320B2 true JP7015320B2 (ja) 2022-02-02

Family

ID=66994662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019560026A Active JP7015320B2 (ja) 2017-12-22 2018-07-26 データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム

Country Status (3)

Country Link
US (1) US20210357372A1 (ja)
JP (1) JP7015320B2 (ja)
WO (1) WO2019123704A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018180970A1 (ja) 2017-03-30 2018-10-04 日本電気株式会社 情報処理システム、特徴量説明方法および特徴量説明プログラム
JPWO2019069507A1 (ja) 2017-10-05 2020-11-05 ドットデータ インコーポレイテッド 特徴量生成装置、特徴量生成方法および特徴量生成プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147599A1 (en) 2001-04-05 2002-10-10 International Business Machines Corporation Method and system for simplifying the use of data mining in domain-specific analytic applications by packaging predefined data mining models
US20050102303A1 (en) 2003-11-12 2005-05-12 International Business Machines Corporation Computer-implemented method, system and program product for mapping a user data schema to a mining model schema
JP2008102736A (ja) 2006-10-19 2008-05-01 Toshiba Corp 検索装置および検索方法
JP2011257812A (ja) 2010-06-04 2011-12-22 Fujitsu Ltd スキーマ定義生成装置、スキーマ定義生成方法およびスキーマ定義生成プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020147599A1 (en) 2001-04-05 2002-10-10 International Business Machines Corporation Method and system for simplifying the use of data mining in domain-specific analytic applications by packaging predefined data mining models
US20050102303A1 (en) 2003-11-12 2005-05-12 International Business Machines Corporation Computer-implemented method, system and program product for mapping a user data schema to a mining model schema
JP2008102736A (ja) 2006-10-19 2008-05-01 Toshiba Corp 検索装置および検索方法
JP2011257812A (ja) 2010-06-04 2011-12-22 Fujitsu Ltd スキーマ定義生成装置、スキーマ定義生成方法およびスキーマ定義生成プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
中村 史朗,データ・ウエアハウスを構築するための実践手法,日経コンピュータ,日本,日経BP社,1997年09月15日,p.237-249

Also Published As

Publication number Publication date
JPWO2019123704A1 (ja) 2020-12-03
US20210357372A1 (en) 2021-11-18
WO2019123704A1 (ja) 2019-06-27

Similar Documents

Publication Publication Date Title
JP7015319B2 (ja) データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム
US8983895B2 (en) Representation of multiplicities for Docflow reporting
US20190251471A1 (en) Machine learning device
US10572822B2 (en) Modular memoization, tracking and train-data management of feature extraction
US20170060931A1 (en) Intelligent data munging
US20200387664A1 (en) Information processing system, feature description method and feature description program
US9892187B2 (en) Data analysis method, data analysis device, and storage medium storing processing program for same
CN111177231A (zh) 报表生成方法和报表生成装置
US20120166319A1 (en) Method and system for language-independent search within scanned documents
US20160004757A1 (en) Data management method, data management device and storage medium
US20150213066A1 (en) System and method for creating data models from complex raw log files
US20140298286A1 (en) Systems and Methods for Automatically Associating Software Elements and Automatic Gantt Chart Creation
US10339035B2 (en) Test DB data generation apparatus
JP7015320B2 (ja) データ分析支援装置、データ分析支援方法およびデータ分析支援プログラム
US11010393B2 (en) Library search apparatus, library search system, and library search method
KR102243794B1 (ko) 데이터 통합 장치 및 데이터 통합 방법
US10545984B2 (en) Abstract default column type in tables
US20160004968A1 (en) Correlation rule analysis apparatus and correlation rule analysis method
US10417234B2 (en) Data flow modeling and execution
JP4992301B2 (ja) 検索処理方法及び装置
CN111061733A (zh) 数据处理方法、装置、电子设备和计算机可读存储介质
JP6646699B2 (ja) 検索装置及び検索方法
WO2016013157A1 (ja) テキスト処理システム、テキスト処理方法およびテキスト処理プログラム
CN109542986B (zh) 网络数据的要素归一化方法、装置、设备及存储介质
JP6204923B2 (ja) アセスメント装置、アセスメントシステム、アセスメント方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210714

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20211013

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220121