(57)【要約】      （修正有）【課題】スター構造の多次元データベースを自動的に生成し、データ分析の効率を向上させるシステム及び方法を提供する。【解決手段】データ多次元モデル生成システムは、予め記憶されたデータベースから、分析主題に基づいて目標主テーブル及び目標主テーブルに関係する目標副テーブルを選択するテーブル選択部と、目標主テーブルにおいて分析に必要な複数のデータ列を選択し、複数のデータ列を、それぞれ多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分するデータ型判断部と、多次元データテーブルを生成するために必要な次元とメトリックに対応する多種のデータ型のデータ列及び目標副テーブルに対し変換集約を行い、ファクトテーブルと次元テーブルを生成することにより、スター構造の多次元データテーブルを生成する多次元モデル生成部と、を含む。【選択図】図１
2018116706.tif 000002
【特許請求の範囲】
【請求項１】
予め記憶されたデータベースに基づいて多次元データテーブルを生成するデータ多次元モデル生成システムであって、
予め記憶された前記データベースから、分析主題に基づいて目標主テーブル及び前記目標主テーブルに関係する目標副テーブルを選択するテーブル選択部と、
前記目標主テーブルにおいて分析に必要な複数のデータ列を選択し、前記複数のデータ列を、それぞれ前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分するデータ型判断部と、
前記多次元データテーブルを生成するために必要な次元とメトリックに対応する前記多種のデータ型のデータ列及び前記目標副テーブルに対し変換集約を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する多次元モデル生成部と、
を含むことを特徴とするデータ多次元モデル生成システム。
【請求項２】
前記テーブル選択部は分析主題に基づいて、データベースに予め記憶された、取引又は事務から生成された取引テーブルから、前記目標主テーブルを選択すると共に、データベースに予め記憶された、対象を説明するための対象定義テーブルから、選択された前記取引テーブルに関係する前記目標副テーブルを選択することを特徴とする請求項１に記載のデータ多次元モデル生成システム。
【請求項３】
前記データ型判断部は、
前記目標主テーブルの構造定義を取得する構造定義取得部と、
前記構造定義に基づいて、前記目標主テーブルの前記複数のデータ列を、前記構造定義に直接対応する多種の基本データ型に区分する基本データ型区分部と、
前記多次元データテーブルを生成するために必要な次元又はメトリックに基づいて、前記多種の基本データ型をさらに、前記データ型として、前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分するサブデータ型区分部と、
を含むことを特徴とする請求項１に記載のデータ多次元モデル生成システム。
【請求項４】
前記基本データ型は整数型を含み、
前記サブデータ型区分部は整数型データ型判断部をさらに含み、
前記整数型データ型判断部はまず、整数型データ列における各データ項目が唯一且つ等差であるか否かを判断し、各データ項目が唯一且つ等差である整数型データ列のサブデータ型がＩＤ、即ち識別子であると判断し、
さらに、前記整数型データ型判断部は、ＩＤではない整数型データ列に対し、各データ項目が前記目標副テーブルに含まれているか否かを判断し、各データ項目が何れも前記目標副テーブルに含まれている整数型データ列のサブデータ型が整数型次元であると判断し、前記目標副テーブルに含まれていないデータ項目がある整数型データ列のサブデータ型が整数型メトリックであると判断することを特徴とする請求項３に記載のデータ多次元モデル生成システム。
【請求項５】
前記基本データ型は浮動小数点数型をさらに含み、
前記サブデータ型区分部は浮動小数点数型データ型判断部をさらに含み、
前記浮動小数点数型データ型判断部は、列名が経緯度情報を示す浮動小数点数型データ列のサブデータ型が地理情報次元であると判断し、列名が経緯度情報を示さない浮動小数点数型データ列のサブデータ型が浮動小数点数型メトリックであると判断することを特徴とする請求項４に記載のデータ多次元モデル生成システム。
【請求項６】
前記基本データ型は文字型及び日付時間型をさらに含み、
前記サブデータ型区分部は文字型データ型判断部と日付時間型データ型判断部とをさらに含み、
前記文字型データ型判断部は文字型データ列のサブデータ型が文字次元であると判断し、前記日付時間型データ型判断部は日付時間型データ列のサブデータ型が時間次元であると判断することを特徴とする請求項５に記載のデータ多次元モデル生成システム。
【請求項７】
前記多次元モデル生成部は次元に対応するデータ型のデータ列に基づいて、次元に対応する次元テーブルを生成し、新たに生成された次元テーブルにおける次元に基づいてメトリックを集約計算し、メトリックに対応するデータ列を生成することにより、ファクトテーブルを生成することを特徴とする請求項１から６のいずれか１項に記載のデータ多次元モデル生成システム。
【請求項８】
前記データ型判断部により区分された前記データ型に、メトリックに対応するデータ型及び次元に対応する複数のデータ型が含まれている場合に、前記多次元モデル生成部は、各次元の最小単位からなる複数の組合せ毎に、各組合せのメトリックを集約することにより、ファクトテーブルにおけるメトリックに対応するデータ列として、各々の組合せの集約後のメトリックをデータ項目とするデータ列を生成することを特徴とする請求項７に記載のデータ多次元モデル生成システム。
【請求項９】
前記データ型に、地理情報次元と時間次元が含まれている場合に、前記多次元モデル生成部は、生成された地理情報次元テーブルにおける最小地理単位と時間次元テーブルにおける最小時間単位からなる複数の組合せ毎に、各組合せのメトリックを集約することを特徴とする請求項８に記載のデータ多次元モデル生成システム。
【請求項１０】
予め記憶されたデータベースに基づいて多次元データテーブルを生成するデータ多次元モデル生成方法であって、
予め記憶された前記データベースから、分析主題に基づいて目標主テーブル及び前記目標主テーブルに関係する目標副テーブルを選択するテーブル選択ステップと、
前記目標主テーブルにおいて分析に必要な複数のデータ列を選択し、前記複数のデータ列を、それぞれ前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分するデータ型判断ステップと、
前記多次元データテーブルを生成するために必要な次元とメトリックに対応する前記多種のデータ型のデータ列及び前記目標副テーブルに対し変換集合を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する多次元モデル生成ステップと、
を含むことを特徴とするデータ多次元モデル生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ多次元モデル生成システム及びデータ多次元モデル生成方法に関し、特にインテリジェント分析分野における、多次元モデルを自動的に生成する多次元モデル生成システム及びデータ多次元モデル生成方法に関する。
【背景技術】
【０００２】
Ｉ（Ｂｕｓｉｎｅｓｓ  Ｉｎｔｅｌｌｉｇｅｎｃｅ、ビジネスインテリジェンス）などのインテリジェント分析分野において、多次元分析Ｃｕｂｅ（データキューブ）は、実行に移して効果があり、且つ広く用いられている多次元分析用具である。且つ、性能、権限、業務区分などの原因により、大量の多次元分析Ｃｕｂｅを生成する必要がよくある。
【０００３】
例えば、ＯＬＡＰ（オンライン分析処理）分野において、Ｃｕｂｅはデータキューブとして、商業分析又はデータ可視化を目的として、多次元データベースにおける一連のマッピングによって得られるロジスティックモデルである。Ｃｕｂｅを生成する前に、例えば取引データベースにおける伝統的なＥ−Ｒ（実体−関連）関係の二次元テーブルをスター構造の多次元モデルに変換してデータベースに格納することが要求される。これはＣｕｂｅを生成する基礎であり、現存ＯＬＡＰエンジンの先決条件でもある。
【０００４】
しかしながら、従来技術において、例えば取引データベースに基づいて多次元モデルを自動的に生成するデータ多次元モデル生成技術が欠如している。例えば、特許文献１（ＣＮ１０２５４１６５６）には、リソース割当ての角度から、どのようにＣｕｂｅを生成するかの過程が説明されているが、Ｃｕｂｅを生成する基礎であるスター構造の多次元モデルをどのように生成するかが開示されていない。その結果、従来技術では多次元モデルを人工的に生成する必要がよくあるため、インテリジェント分析の生産コストの上昇とデータ処理のハードルの向上をもたらし、ビジネスインテリジェンス分析などのインテリジェント分析の効率と実用性に深く影響している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＣＮ１０２５４１６５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、従来技術における上述の技術課題における少なくとも１つを解決するために、以下の技術案を用いる。
【課題を解決するための手段】
【０００７】
本発明は、予め記憶されたデータベースに基づいて多次元データテーブルを生成するデータ多次元モデル生成システムであって、予め記憶された前記データベースから、分析主題に基づいて目標主テーブル及び前記目標主テーブルに関係する目標副テーブルを選択するテーブル選択部と、前記目標主テーブルにおいて分析に必要な複数のデータ列を選択し、前記複数のデータ列を、それぞれ前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分するデータ型判断部と、前記多次元データテーブルを生成するために必要な次元とメトリックに対応する前記多種のデータ型のデータ列及び前記目標副テーブルに対し変換集約を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する多次元モデル生成部と、を含むことを特徴とするデータ多次元モデル生成システムを提供している。
【０００８】
本発明のデータ多次元モデル生成システムによれば、機械学習の方式によって多次元モデル生成の過程を自動化させ、例えば取引データベースのデータベースにおける二次元データテーブルに対し、「テーブル選択」、「データ型判断」、及び「多次元モデル生成」の処理によって、例えばＯＬＡＰエンジンに汎用されるためのスター構造の多次元データベースを自動的に生成し、データ分析の効率を向上している。それにおいて、ユーザにデータベース操作と多次元モデル生成の知識背景を有する必要がなく、ユーザにそれ自身の分野の分析に集中させることが可能となり、インテリジェント分析の生産コストとデータ処理のハードルを低減している。
【０００９】
上述のデータ多次元モデル生成システムにおいて、前記テーブル選択部は分析主題に基づいて、データベースに予め記憶された、取引又は事務から生成された取引テーブルから、前記目標主テーブルを選択すると共に、データベースに予め記憶された、対象を説明するための対象定義テーブルから、選択された前記取引テーブルに関係する前記目標副テーブルを選択してもよい。
【００１０】
これにより、分析主題に基づいて多次元データテーブルを生成するための目標主テーブルと対象定義テーブルを適切に特定することができる。
【００１１】
上述のデータ多次元モデル生成システムにおいて、前記データ型判断部は、前記目標主テーブルの構造定義を取得する構造定義取得部と、前記構造定義に基づいて、前記目標主テーブルの前記複数のデータ列を、前記構造定義に直接対応する多種の基本データ型に区分する基本データ型区分部と、前記多次元データテーブルを生成するために必要な次元又はメトリックに基づいて、前記多種の基本データ型をさらに、前記データ型として、前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分するサブデータ型区分部と、を含んでもよい。
【００１２】
これにより、まず目標主テーブルの各データ列のデータ型を、構造定義に対応する基本データ型に区分し、さらに基本データ型を、多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分することにより、目標主テーブルの各データ列がどのような次元又はメトリックに対応するかを合理的且つ正確に特定することができる。
【００１３】
上述のデータ多次元モデル生成システムにおいて、前記基本データ型は整数型を含み、前記サブデータ型区分部は整数型データ型判断部をさらに含み、前記整数型データ型判断部はまず、整数型データ列における各データ項目が唯一且つ等差であるか否かを判断し、各データ項目が唯一且つ等差である整数型データ列のサブデータ型がＩＤ、即ち識別子であると判断し、さらに、前記整数型データ型判断部は、ＩＤではない整数型データ列に対し、各データ項目が前記目標副テーブルに含まれているか否かを判断し、各データ項目が何れも前記目標副テーブルに含まれている整数型データ列のサブデータ型が整数型次元であると判断し、前記目標副テーブルに含まれていないデータ項目がある整数型データ列のサブデータ型が整数型メトリックであると判断してもよい。
【００１４】
これにより、基本データ型が整数型であるデータ列について、目標主テーブルにおけるＩＤが唯一、インクリメント、等差であるという特性、及び整数型次元が全て関連する目標副テーブルに含まれているはずであるという特性に基づいて、サブデータ型を正確に判断することができる。
【００１５】
上述のデータ多次元モデル生成システムにおいて、前記基本データ型は浮動小数点数型をさらに含み、前記サブデータ型区分部は浮動小数点数型データ型判断部をさらに含み、前記浮動小数点数型データ型判断部は、列名が経緯度情報を示す浮動小数点数型データ列のサブデータ型が地理情報次元であると判断し、列名が経緯度情報を示さない浮動小数点数型データ列のサブデータ型が浮動小数点数型メトリックであると判断してもよい。
【００１６】
これにより、基本データ型が浮動小数点数型であるデータ列について、列名の判断が経緯度情報であるか否かに基づいて、サブデータ型を正確に判断することができる。
【００１７】
上述のデータ多次元モデル生成システムにおいて、前記基本データ型は文字型及び日付時間型をさらに含み、前記サブデータ型区分部は文字型データ型判断部と日付時間型データ型判断部とをさらに含み、前記文字型データ型判断部は文字型データ列のサブデータ型が文字次元であると判断し、前記日付時間型データ型判断部は日付時間型データ列のサブデータ型が時間次元であると判断してもよい。
【００１８】
これにより、基本データ型が文字型又は日付時間型であるデータ列について、そのサブデータ型が文字次元又は時間次元であると正確に判断することができる。
【００１９】
上述のデータ多次元モデル生成システムにおいて、前記多次元モデル生成部は次元に対応するデータ型のデータ列に基づいて、次元に対応する次元テーブルを生成し、新たに生成された次元テーブルにおける次元に基づいてメトリックを集約計算し、メトリックに対応するデータ列を生成することにより、ファクトテーブルを生成してもよい。
【００２０】
これにより、スター構造の多次元データテーブルに必要な次元テーブルとファクトテーブルを効率よく生成することができる。
【００２１】
上述のデータ多次元モデル生成システムにおいて、前記データ型判断部により区分された前記データ型に、メトリックに対応するデータ型及び次元に対応する複数のデータ型が含まれている場合に、前記多次元モデル生成部は、各次元の最小単位からなる複数の組合せ毎に、各組合せのメトリックを集約することにより、ファクトテーブルにおけるメトリックに対応するデータ列として、各々の組合せの集約後のメトリックをデータ項目とするデータ列を生成してもよい。
【００２２】
これにより、各々の次元の最小単位の組合せに対応してメトリックを集約することにより、実現可能な最小単位でのメトリック値を得ることで、より緻密なインテリジェント分析を図ることができる。
【００２３】
上述のデータ多次元モデル生成システムにおいて、前記データ型に、地理情報次元と時間次元が含まれている場合に、前記多次元モデル生成部は、生成された地理情報次元テーブルにおける最小地理単位と時間次元テーブルにおける最小時間単位からなる複数の組合せ毎に、各組合せのメトリックを集約してもよい。
【００２４】
これにより、地理と時間の組合せの最小単位でのメトリック値を得ることで、位置、時間がより精確なインテリジェント分析を図ることができる。
【００２５】
本発明は、予め記憶されたデータベースに基づいて多次元データテーブルを生成するデータ多次元モデル生成方法であって、予め記憶された前記データベースから、分析主題に基づいて目標主テーブル及び前記目標主テーブルに関係する目標副テーブルを選択するテーブル選択ステップと、前記目標主テーブルにおいて分析に必要な複数のデータ列を選択し、前記複数のデータ列を、それぞれ前記多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分するデータ型判断ステップと、前記多次元データテーブルを生成するために必要な次元とメトリックに対応する前記多種のデータ型のデータ列及び前記目標副テーブルに対し変換集合を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する多次元モデル生成ステップと、を含むことを特徴とするデータ多次元モデル生成方法をさらに提供している。
【００２６】
本発明は、データ多次元モデル生成装置、又はコンピュータにデータ多次元モデル生成方法を実行可能なデータ多次元モデル生成プログラム、又は該プログラムが記録された記録媒体などによって実現することもできる。また、本発明のデータ多次元モデル生成システムの上述の多種の方式は、本発明のデータ多次元モデル生成方法、データ多次元モデル生成装置、データ多次元モデル生成プログラム又は記録媒体に適用されて同様な技術効果を得ることも可能である。
【図面の簡単な説明】
【００２７】
【図１】図１は、本発明の第１実施形態のデータ多次元モデル生成システムの構造を示すブロック図である。
【図２】図２は、本発明の第１実施形態のデータ型判断部の１つの具体例の構造を示すブロック図である。
【図３】図３は、本発明の第１実施形態のデータ多次元モデル生成方法を示すフローチャートである。
【図４】図４は、本発明の第１実施形態のデータ型判断ステップの１つの具体例を示すフローチャートである。
【図５】図５は、目標主テーブルの構造定義の一例を示す表である。
【図６】図６は、本発明の第１実施形態における整数型データ型判断処理の１つの具体例を示すフローチャートである。
【図７】図７は、本発明の第１実施形態における多次元モデル生成処理の１つの具体例を示すフローチャートである。
【図８】図８は、本発明の第１実施例において目標主テーブルと目標副テーブルを取得することを模式的に示す図である。
【図９】図９は、本発明の第１実施例においてデータ型を区分することを模式的に示す図である。
【図１０】図１０は、本発明の第１実施例における整数型次元テーブルを模式的に示す図である。
【図１１】図１１は、本発明の第１実施例において地理情報次元テーブルを生成して、目標主テーブルにおける経緯度を置換することを模式的に示す図である。
【図１２】図１２は、本発明の第１実施例において時間次元テーブルを生成して、目標主テーブルにおける時間を置換することを模式的に示す図である。
【図１３】図１３は、本発明の第１実施例において生成されたファクトテーブルを模式的に示す図である。
【図１４】図１４は、本発明の第１実施例において生成されたスター構造の多次元データテーブルを模式的に示す図である。
【発明を実施するための形態】
【００２８】
以下では、図面及び実施形態を組み合わせて本発明をより詳細に説明する。また、図面では、同一の又は対応する部分に同じ図面符号を付けて、繰り返した説明を省略する。
【００２９】
（第１実施形態）
まず、図１を組み合わせて本発明の第１実施形態のデータ多次元モデル生成システム１の構造を説明する。図１は、本発明の第１実施形態のデータ多次元モデル生成システムの構造を示すブロック図である。図１に示すように、データ多次元モデル生成システム１は、予め記憶されたデータベース２に基づいて、例えばＯＬＡＰ（オンライン分析処理）エンジン３に使用されるための多次元データテーブルを生成する。データ多次元モデル生成システム１は、テーブル選択部１０と、データ型判断部２０と、多次元モデル生成部３０と、を含む。上述の各部は、データ多次元モデル生成システム１に有するプロセッサがメモリに記憶されているソフトウェアプログラムを実行することによって実現されてもよく、専用の集積回路などのハードウェアによって実現されてもよい。また、データ多次元モデル生成システム１はデータ多次元モデル生成装置として実現されてもよい。
【００３０】
テーブル選択部１０は、予め記憶されたデータベース２から、分析主題に基づいて目標主テーブル及び目標主テーブルに関係する目標副テーブルを選択する。データベース２は、図１に示すように、ビジネスインテリジェンス分野に用いられている取引データベースであってもよいが、それに限らず、他の分野に用いられているデータベースであってもよい。
【００３１】
データベース２が取引データベースである場合に、テーブル選択部１０は分析主題に基づいて、データベース２に予め記憶された、取引又は事務から生成された取引テーブルから、目標主テーブルを選択すると共に、データベース２に予め記憶された、対象を説明するための対象定義テーブルから、選択された取引テーブルに関係する目標副テーブルを選択する。これにより、分析主題に基づいて多次元データテーブルを生成するための目標主テーブルと対象定義テーブルを適切に特定することができる。例えば、分析主題が特定されている前提で、語義分析などの手段によって、取引データベースにおいて、目標主テーブル（取引テーブル）Ｍ、及び目標主テーブル（取引テーブル）に関係する少なくとも１つの目標副テーブル（対象定義テーブル）Ｌ１、Ｌ２、Ｌ３、……を特定することができる。
【００３２】
データ型判断部２０は、目標主テーブルにおいて分析に必要な複数のデータ列を選択し、複数のデータ列を、それぞれ多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分する。即ち、テーブル選択部１０によって目標主テーブル及び目標副テーブルを特定した後、目標主テーブルにおいて、分析に必要なデータ列を次元又はメトリックとして選択すると共に、後続処理の相違に応じて次元とメトリックを異なるデータ型に区分する。
【００３３】
以下では、図面を組み合わせて本発明の第１実施形態のデータ型判断部２０の１つの具体例をより説明する。それにおいて、該具体例はデータ型判断部２０の一例に過ぎず、データ型判断部２０に対して如何なる限定にもならない。図２は、本発明の第１実施形態のデータ型判断部の１つの具体例の構造を示すブロック図である。図２に示すように、データ型判断部２０は、構造定義取得部２１と、基本データ型区分部２２と、サブデータ型区分部２３と、を含む。
【００３４】
それにおいて、構造定義取得部２１は、目標主テーブルの構造定義を取得する。該構造定義には、目標主テーブルにおける各データ型と本実施形態における目標主テーブルの各データ列の基本データ型との間の対応関係が含まれている。
【００３５】
基本データ型区分部２２は、構造定義に基づいて、目標主テーブルの複数のデータ列を、構造定義に直接対応する多種の基本データ型に区分する。それにおいて、本具体例において、基本データ型は整数型と、浮動小数点数型と、文字型と、日付時間型との４種の類型に区分されているが、それらに限らず、基本データ型は、整数型、浮動小数点数型、文字型及び日付時間型のうちの少なくとも１つを含んでもよいが、他の類型をさらに含んでもよい。
【００３６】
サブデータ型区分部２３は、多次元データテーブルを生成するために必要な次元又はメトリックに基づいて、多種の基本データ型をさらに、データ型として、多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分する。それにおいて、本具体例において、サブデータ型はＩＤと、整数型次元と、整数型メトリックと、地理情報次元と、浮動小数点数型メトリックと、文字次元と、時間次元との７種の類型に区分されており、サブデータ型区分部２３は、整数型データ型判断部２３１と、浮動小数点数型データ型判断部２３２と、文字型データ型判断部２３３と、日付時間型データ型判断部２３４と、をさらに含んでいる。
【００３７】
それにおいて、整数型データ型判断部２３１は、基本データ型における整数型について、ＩＤ、整数型次元、又は整数型メトリックにさらに区分する。浮動小数点数型データ型判断部２３２は、基本データ型における浮動小数点数型について、地理情報次元又は浮動小数点数型メトリックにさらに区分する。文字型データ型判断部２３３は、基本データ型における文字型について、文字次元にさらに区分する。日付時間型データ型判断部２３４は、基本データ型における日付時間型について、時間次元にさらに区分する。
【００３８】
しかし、本例はこれに限らず、サブデータ型はＩＤ、整数型次元、整数型メトリック、地理情報次元、浮動小数点数型メトリック、文字次元、時間次元のうちの少なくとも１つを含んでもよいが、他の類型をさらに含んでもよく、サブデータ型区分部２３に含まれている各部も、状況に応じて増やしたり減らしたりしてもよい。
【００３９】
これにより、まず目標主テーブルの各データ列のデータ型を、構造定義に対応する基本データ型に区分し、さらに基本データ型を、多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分することにより、目標主テーブルの各データ列がどのような次元又はメトリックに対応するかを合理的且つ正確に特定することができる。
【００４０】
図１に戻って引き続き説明する。多次元モデル生成部３０は、多次元データテーブルを生成するために必要な次元とメトリックに対応する多種のデータ型のデータ列及び目標副テーブルに対し変換集約を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する。それにおいて、ファクトテーブルはデータウェアハウス構造における中央テーブルであり、ファクトと次元テーブルとを関連させる数字メトリック値とキーを含んでいる。ファクトテーブルは、業務内の特定のイベントを説明するデータを含んでいる。次元は次元属性の集合であり、データを観察する特定の角度であり、問題を考慮する場合の１種類の属性である。属性の集合は１つの次元となる。多次元モデル生成部３０により生成されたスター構造の多次元データテーブルは図１に示すようにＯＬＡＰエンジンに用いられてもよいが、それに限らず、他のインテリジェント分析に用いられてもよい。
【００４１】
本実施形態のデータ多次元モデル生成システム１によれば、機械学習の方式によって多次元モデル生成の過程を自動化させ、例えば取引データベースのデータベースにおける二次元データテーブルに対し、「テーブル選択」、「データ型判断」、及び「多次元モデル生成」の処理によって、例えばＯＬＡＰエンジンに汎用されるためのスター構造の多次元データベースを自動的に生成し、データ分析の効率を向上している。それにおいて、ユーザにデータベース操作と多次元モデル生成の知識背景を有する必要がなく、ユーザにそれ自身の分野の分析に集中させることが可能となり、インテリジェント分析の生産コストとデータ処理のハードルを低減している。
【００４２】
以下では、本発明の第１実施形態のデータ多次元モデル生成システム１が実行するデータ多次元モデル生成方法を説明する。図３は、本発明の第１実施形態のデータ多次元モデル生成方法を示すフローチャートである。図３に示すように、データ多次元モデル生成方法は、テーブル選択ステップＳ１０と、データ型判断ステップＳ２０と、多次元モデル生成ステップＳ３０と、を含む。以下では、それぞれ具体的に説明する。テーブル選択ステップＳ１０において、データ多次元モデル生成システム１のテーブル選択部１０は、予め記憶されたデータベースから、分析主題に基づいて目標主テーブル及び目標主テーブルに関係する少なくとも１つの目標副テーブルを選択する。
【００４３】
データ型判断ステップＳ２０において、データ型判断部２０は、目標主テーブルにおいて分析に必要な複数のデータ列を選択し、複数のデータ列を、それぞれ多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のデータ型に区分する。以下では、データ型判断ステップＳ２０の１つの具体例を説明する。図４は、本発明の第１実施形態のデータ型判断ステップの１つの具体例を示すフローチャートである。図４に示すように、データ型判断ステップＳ２０は、構造定義取得ステップＳ２１と、基本データ型区分ステップＳ２２と、サブデータ型区分ステップＳ２３と、を含んでよい。
【００４４】
構造定義取得ステップＳ２１において、構造定義取得部２１は例えばＳＱＬ文によって目標主テーブルの構造定義を取得する。図５は、目標主テーブルの構造定義の一例を示す表である。図５において、左側には、例えば目標主テーブルに対してｄｅｓｃｒｉｂｅ文を用いて得られたＭｙＳＱＬデータ型リストが例示されており、右側には、左側のＭｙＳＱＬデータ型にそれぞれ対応する基本データ型が例示されている。
【００４５】
基本データ型区分ステップＳ２２において、基本データ型区分部２２は、構造定義取得ステップＳ２１において取得された構造定義に基づいて、目標主テーブルの複数のデータ列を、構造定義に直接対応する多種の基本データ型に区分する。例えば、図５に示すように、目標主テーブルの構造定義に基づいて、目標主テーブルの各データ列をそれぞれ、整数型（Ｉ１、Ｉ２、……）と、浮動小数点数型（Ｆ１、Ｆ２、……）と、文字型（Ｓ１、Ｓ２、……）と、日付時間型（Ｔ１、Ｔ２、……）との４種の基本データ型のいずれか１種にマッピングする。
【００４６】
サブデータ型区分ステップＳ２３において、サブデータ型区分部２３は、多次元データテーブルを生成するために必要な次元又はメトリックに基づいて、多種の基本データ型をさらに、データ型として、多次元データテーブルを生成するために必要な次元又はメトリックに対応する多種のサブデータ型に区分する。
【００４７】
まず、整数型データ型判断処理を説明する。図６は、本発明の第１実施形態における整数型データ型判断処理の１つの具体例を示すフローチャートである。図６に示すように、整数型データ型判断部２３１は、例えば目標主テーブルにおける全ての整数型データ列（Ｉ１、Ｉ２、……）に亘って、データ列における各データ項目が唯一であるか否かを判断する（ステップＳ２３１１）。例えば、各整数型データ列におけるデータ項目の数と該整数型データ列において重複データ項目を削除した後のデータ項目の数とが一致するか否かを比較することにより、各整数型データ列における各データ項目が唯一であるか否かを判断することができる。データ列における各データ項目が唯一であると判断した場合（ステップＳ２３１１ではＹｅｓ）、該データ列を順位付けし（ステップＳ２３１２）、順位付けした後のデータ列における各隣接するデータ項目の間が等差であるか否か、例えば差が１であるか否かをさらに判断する（ステップＳ２３１３）。順位付けした後のデータ列における各隣接するデータ項目が等差であると判断した場合（ステップＳ２３１３ではＹｅｓ）、該データ列のサブデータ型がＩＤであると判断する（ステップＳ２３１４）。データ列における各データ項目が唯一ではないと判断した場合（ステップＳ２３１１ではＮｏ）、或いは順位付けした後のデータ列における各隣接するデータ項目が等差ではないと判断した場合（ステップＳ２３１３ではＮｏ）、該データ列のサブデータ型がＩＤではないと判断する（ステップＳ２３１５）。即ち、整数型データ型判断部２３１はまず、整数型データ列における各データ項目が唯一且つ等差であるか否かを判断し、各データ項目が唯一且つ等差である整数型データ列のサブデータ型がＩＤ、即ち識別子であると判断する。
【００４８】
次に、整数型データ型判断部２３１は、例えば目標主テーブルにおけるＩＤではないデータ列に亘って、該データ列における各データ項目が目標副テーブルに含まれているか否かを判断する（ステップＳ２３１６）。例えば、主テーブルと副テーブルとの外部キーの関連に基づいて、目標副テーブル（Ｌ１、Ｌ２、Ｌ３、……）において、ＩＤではない各データ列に含まれている全てのデータ項目に対応可能なデータ列をそれぞれ検索する。目標副テーブルにこのようなデータ列が存在する場合（ステップＳ２３１６ではＹｅｓ）、該データ列のサブデータ型が整数型次元ＤＩであると判断する（ステップＳ２３１７）。さもなければ、該データ列のサブデータ型が整数型メトリックＭＩであると判断する（ステップＳ２３１８）。即ち、整数型データ型判断部２３１は、ＩＤではない整数型データ列に対し、各データ項目が目標副テーブルに含まれているか否かを判断し、各データ項目が何れも目標副テーブルに含まれている整数型データ列のサブデータ型が整数型次元であると判断し、目標副テーブルに含まれていないデータ項目がある整数型データ列のサブデータ型が整数型メトリックであると判断する。
【００４９】
これにより、基本データ型が整数型であるデータ列について、目標主テーブルにおけるＩＤが唯一、インクリメント、等差であるという特性、及び整数型次元が全て関連する目標副テーブルに含まれているはずであるという特性に基づいて、サブデータ型を正確に判断することができる。
【００５０】
次に、浮動小数点数型データ型判断処理を説明する。浮動小数点数型データ型判断部２３２は、例えば目標主テーブルにおける全ての浮動小数点数型データ列（Ｆ１、Ｆ２、……）に亘って、列名が経緯度情報を示す浮動小数点数型データ列のサブデータ型が地理情報次元ＤＧであると判断し、列名が経緯度情報を示さない浮動小数点数型データ列のサブデータ型が浮動小数点数型メトリックＭＦであると判断する。これにより、基本データ型が浮動小数点数型であるデータ列について、列名の判断が経緯度情報であるか否かに基づいて、サブデータ型を正確に判断することができる。
【００５１】
また、文字型データ型判断部２３３は、例えば目標主テーブルにおける全ての文字型データ列（Ｓ１、Ｓ２、……）に亘って、文字型データ列のサブデータ型が文字次元ＤＳであると判断する。日付時間型データ型判断部２３４は、例えば目標主テーブルにおける全ての日付時間型データ列（Ｔ１、Ｔ２、……）に亘って、日付時間型データ列のサブデータ型が時間次元ＤＴであると判断する。これにより、基本データ型が文字型又は日付時間型であるデータ列について、そのサブデータ型が文字次元と時間次元であると正確に判断することができる。
【００５２】
多次元モデル生成ステップＳ３０において、多次元モデル生成部３０は、多次元データテーブルを生成するために必要な次元とメトリックに対応する多種のデータ型のデータ列及び目標副テーブルに対し変換集約を行い、ファクトテーブルと次元テーブルを生成することにより、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元データテーブルを生成する。図７は、本発明の第１実施形態における多次元モデル生成処理の１つの具体例を示すフローチャートである。図７に示すように、本具体例において、多次元モデル生成部３０はデータ型判断ステップＳ２０において生成された次元とメトリックに対し後続処理を行い、テーブル選択ステップＳ１０において選択された目標主テーブルと目標副テーブルＬ１、Ｌ２、Ｌ３……を、ファクトテーブルを中心として次元テーブルをブランチとするスター構造モデルに変換する。
【００５３】
まず、多次元モデル生成部３０はデータ型が次元である各データ列に対し、そのデータ型がどのような次元であるかを判断する（ステップＳ３０１）。図７には、目標主テーブルのデータ列が整数型次元と、地理情報次元と、時間次元とを含むものが示されているが、これに限らず、必要に応じて増やしたり減らしたりしてもよい。
【００５４】
整数型次元ＤＩの場合に、目標副テーブルに関連する外部キーとして、直接に次元として用いることができる（ステップＳ３０２）。それにおいて、対応する目標副テーブルは該次元における次元テーブルとして、階層関係は例えばテーブルにおけるデータ列の間の親子関係に従う。
【００５５】
地理情報次元ＤＧの場合に、経緯度情報として、地理情報解析の方法によって、対応する行政区画データを得ることができ、その内容は例えば街道、県（鎮）、市、省及び国などの区画を含み、次元テーブルと階層構造も相応に生成される（ステップＳ３０３）。次に、目標主テーブルにおける地理情報次元を、地理情報次元テーブルの最小粒度（最小単位であり、例えば街道）に置き換え（ステップＳ３０４）、地理情報次元テーブルと目標主テーブルとは地理情報次元テーブルの最小粒度の外部キーによって関連することにより、地理情報次元テーブルを目標主テーブルにおける該データ列に関連する次元テーブルとしてマークする（ステップＳ３０５）。
【００５６】
時間次元ＤＴの場合に、即ち類型がタイムスタンプのデータ列であり、例えばＳＱＬの時間関数によって、それをタイムスタンプに整理し、時間、日付、月及び年を階層構造とする時間次元テーブルを生成することができる（ステップＳ３０６）。次に、目標主テーブルにおける時間次元を、時間次元テーブルにおける最小粒度（最小単位であり、例えば日付）に置き換え（ステップＳ３０７）、時間次元テーブルと目標主テーブルとは時間次元テーブルの最小粒度の外部キーによって関連することにより、時間次元テーブルを目標主テーブルにおける該データ列に関連する次元テーブルとしてマークする（ステップＳ３０８）。
【００５７】
また、図示されていないが、目標主テーブルにおけるＩＤについては、分析データベースの特性により、多次元モデルにおいて後続のデータ集約のパラメータとする。文字型次元ＤＳについては、例えば主題に対する語義分析によって、関係する文字型次元を得て次元として目標主テーブルに保留すると共に、関係しない文字型次元を無視する。
【００５８】
これにより、目標主テーブルにおける全ての次元を処理し、新たな次元テーブルを生成すると共に、目標主テーブルに関連付けている。これに基づき、メトリックを集約し、例えば集約関数を作成することにより、目標主テーブルを新たな次元の最小粒度（最小単位）とそれを基に生成されるメトリックの集合に変換し、これで得られた新たな目標主テーブルはファクトテーブルである（ステップＳ３０９）。また、上述のように、次元テーブルは外部キーによって新たな目標主テーブルに関連し、スター構造の生成が終了する。
【００５９】
上述のように、多次元モデル生成ステップＳ３０において、多次元モデル生成部３０は次元に対応するデータ型のデータ列に基づいて、次元に対応する次元テーブルを生成し、新たに生成された次元テーブルにおける次元に基づいてメトリックを集約計算し、メトリックに対応するデータ列を生成することにより、ファクトテーブルを生成する。このように、スター構造の多次元データテーブルに必要な次元テーブルとファクトテーブルを効率よく生成することができる。
【００６０】
データ型判断部２０により区分されたデータ型に、メトリックに対応するデータ型及び次元に対応する複数のデータ型（例えば、整数型次元、地理情報次元及び時間次元）が含まれている場合に、多次元モデル生成ステップＳ３０において、多次元モデル生成部３０は、各次元の最小単位（最小粒度）からなる複数の組合せ毎に、各組合せのメトリックを集約することにより、ファクトテーブルにおけるメトリックに対応するデータ列として、各々の組合せの集約後のメトリックをデータ項目とするデータ列を生成する。これにより、各々の次元の最小単位の組合せに対応してメトリックを集約することにより、実現可能な最小単位でのメトリック値を得ることで、より緻密なインテリジェント分析を図ることができる。
【００６１】
それにおいて、データ型に、地理情報次元と時間次元が含まれている場合に、多次元モデル生成ステップＳ３０において、多次元モデル生成部３０は、生成された地理情報次元テーブルにおける最小地理単位と時間次元テーブルにおける最小時間単位からなる複数の組合せ毎に、各組合せのメトリックを集約する。これにより、地理と時間の組合せの最小単位でのメトリック値を得ることで、位置、時間がより精確なインテリジェント分析を図ることができる。
【００６２】
（第１実施例）
以上では本発明の１つの実施形態を説明したが、次は該実施形態に対応する１つの具体的な実施例を具体的に説明する。本実施例は本発明の実施形態を容易に理解するために挙げた例に過ぎず、本発明の実施形態に対して限定にはならない。
【００６３】
本実施例は、「車両警報」分析に関する例である。図８は、本発明の第１実施例において目標主テーブルと目標副テーブルを取得することを模式的に示す図である。図８に示すように、データベース（取引データベース）２には、取引又は事務から生成された複数の取引テーブル、及び対象定義テーブルが格納されている。テーブル選択部１０は、ユーザが入力した分析主題である「警報分析」に基づいて、語義分析によって、データベース（取引データベース）２において目標主テーブルＭとして「警報履歴」テーブルを選択すると共に、目標副テーブルＬとして「警報類型」テーブルを選択する。
【００６４】
図９は、本発明の第１実施例においてデータ型を区分することを模式的に示す図である。図９に示すように、データ型判断部２０は目標主テーブルＭの構造定義に基づいて、目標主テーブルＭにおけるデータ列を基本データ型に区分する。例えば、警報番号と類別は整数型に区分され、経度と緯度は浮動小数点数型に区分され、時間は日付時間型に区分されている。さらに、データ型判断部２０は基本データ型をさらにサブデータ型に区分する。例えば、警報番号はＩＤに区分され、類別は整数型次元に区分され、経度と緯度は地理情報次元に区分され、時間は時間次元に区分されている。
【００６５】
次に、多次元モデル生成部３０は一部の特殊な次元の属性に基づいて、次元テーブルを生成するか、或いは取引データベースにおける対応する次元テーブルを探し出す。図１０は、本発明の第１実施例における整数型次元テーブルを模式的に示す図である。上述のように、多次元モデル生成部３０は、図１０に示す目標副テーブルＬ（対象定義テーブル）を直接に整数型次元テーブルとして用いると共に、目標主テーブルＭにおける整数型次元データ列と関連付ける。
【００６６】
図１１は、本発明の第１実施例において地理情報次元テーブルを生成して、目標主テーブルにおける経緯度を置換することを模式的に示す図である。図１１に示すように、多次元モデル生成部３０は経緯度情報に基づいて、Ｇｅｏ  Ｃｏｄｉｎｇなどの技術を用いて、地理情報次元テーブルを生成する。それにおいて、生成された地理情報次元テーブルの最小粒度（最小単位）は街道である。次に、目標主テーブルＭにおける経緯度を、生成された地理情報次元テーブルの最小粒度（街道）に置き換える。
【００６７】
図１２は、本発明の第１実施例において時間次元テーブルを生成して、目標主テーブルにおける時間を置換することを模式的に示す図である。図１２に示すように、多次元モデル生成部３０はタイムスタンプに基づいて、時間次元テーブルを生成する。それにおいて、生成された時間次元テーブルの最小粒度（最小単位）は日付である。次に、目標主テーブルＭにおける時間を、生成された時間次元テーブルの最小粒度（日付）に置き換える。
【００６８】
次に、多次元モデル生成部３０は、新たに生成された次元とメトリックとの集約によって、ファクトテーブルを生成する。図１３は、本発明の第１実施例において生成されたファクトテーブルを模式的に示す図である。図１３に示すように、多次元モデル生成部３０は目標主テーブルＭにおけるＩＤデータ列を排除して、新たに導入された次元に基づいてメトリックを集約計算し、新たなメトリック列（回数）を生成する。図１３において、各整数型次元（類別）、地理情報次元（位置）の最小粒度（街道）、時間次元（時間）の最小粒度（日付）に従って、警報が発生した合計回数をカウント（集約）することにより、最右側のメトリック列を生成する。
【００６９】
次に、多次元モデル生成部３０は、ファクトテーブルを中心として次元テーブルをブランチとするスター構造の多次元モデルのデータベーステーブルを生成して、データベースに格納し、モデル生成過程を完成する。図１４は、本発明の第１実施例において生成されたスター構造の多次元データテーブルを模式的に示す図である。図１４に示すように、ファクトテーブルにおける各次元（類別、位置、時間）はそれぞれ各自の次元テーブルと関連付けられることにより、スター構造の多次元モデルを構成する。
【００７０】
以上では、図面を参照しながら本発明の実施形態と具体的な実施例を説明した。それにおいて、以上で説明した実施形態と実施例は本発明の具体的な例で、本発明を理解するためのものに過ぎず、本発明の範囲を限定するためのものではない。当業者は本発明の技術思想に基づいて各実施形態と実施例に対し各種の変形、組合せ及び要素の合理的省略を行うことができ、得られる形態も本発明の範囲内に含まれる。
【符号の説明】
【００７１】
１      データ多次元モデル生成システム
２      データベース
３      ＯＬＡＰエンジン
１０    テーブル選択部
２０    データ型判断部
３０    多次元モデル生成部
２１    構造定義取得部
２２    基本データ型区分部
２３    サブデータ型区分部
２３１  整数型データ型判断部
２３２  浮動小数点数型データ型判断部
２３３  文字型データ型判断部
２３４  日付時間型データ型判断部
【図１】
2018116706.tif 000003
【図２】
2018116706.tif 000004
【図３】
2018116706.tif 000005
【図４】
2018116706.tif 000006
【図５】
2018116706.tif 000007
【図６】
2018116706.tif 000008
【図７】
2018116706.tif 000009
【図８】
2018116706.tif 000010
【図９】
2018116706.tif 000011
【図１０】
2018116706.tif 000012
【図１１】
2018116706.tif 000013
【図１２】
2018116706.tif 000014
【図１３】
2018116706.tif 000015
【図１４】
2018116706.tif 000016