JP4346158B2 - データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 - Google Patents
データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 Download PDFInfo
- Publication number
- JP4346158B2 JP4346158B2 JP18187399A JP18187399A JP4346158B2 JP 4346158 B2 JP4346158 B2 JP 4346158B2 JP 18187399 A JP18187399 A JP 18187399A JP 18187399 A JP18187399 A JP 18187399A JP 4346158 B2 JP4346158 B2 JP 4346158B2
- Authority
- JP
- Japan
- Prior art keywords
- item
- viewpoint
- condition
- time
- combination
- 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.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、業務管理や業務上の意思決定を支援するための装置であり、RDB(Relational DataBase)に蓄積されたデータに対する比較、相関関係の抽出、現象の推測等のようなデータ分析を支援するデータ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体に関する。
【0002】
【従来の技術】
例えば事務処理や予約管理、販売管理等を行うアプリケーションソフトウェアによって形成されるデータベースに蓄積されたデータを分析する代表的な技術として、OLAP(Online Analytical Processing)や、データマイニング技術がある。
【0003】
OLAPは、ユーザに問題点や解決策を提供し、意思決定をサポートするための技術であり、データを抽出して仮説に基づく分析を行う。
【0004】
このOLAPにより、ユーザは分析用の次元を変えてデータを多角的に比較、分析、グラフ表示することが可能である。例えばOLAPにより「盗難クレジットカードによる1日平均の購買額は、通常の平均値と比べてどうか?」を分析する場合、分析用の次元に利用される項目の例として時間、種別、売上金額等がある。ユーザはこのような分析に有効とみられる項目を推測し、次元としてデータベースに予め与えることが必要である。OLAPは、ユーザによって有効と推測された項目を次元とし、該当するレコードを抽出してユーザに提供する。
【0005】
OLAPによるデータ分析のためのデータ構造として、データをCubeとして持つ多次元データベースがある。多次元データベースは、例えば3次元の構造の場合には、X、Y、Z軸に月別、商品別、担当別、テリトリー別などのうちの任意の項目(フィールド)を配備する。
【0006】
すなわち、多次元データベースは、ユーザが要求する分析形態に応じて設計可能であり、RDBがフラットな2次元の表として設計するのに対して、多次元データベースはCube構造のデータ設計が可能である。
【0007】
しかしながら、このような多次元データベースの構築には、各軸の次元を予め決めておく必要があり、例えば3次元の場合にはX、Y、Z軸に相当する次元を予め決めておく必要がある。
【0008】
データ分析のためのもう一方の技術であるデータマイニング技術は、遺伝的アルゴリズムやニューラルネットワークなどの機械学習の手法に基づいて、「クレジットカード詐欺につながる購買パターンは?」、「ダイレクトメールで効率よく契約ができる客層は?」などの経営やマーケティングに役立つ傾向、関係、特色、パターンを帰納的に導出する技術である。
【0009】
すなわち、このデータマイニング技術は、データベースに蓄積された生データから帰納的に傾向を発見する技術であり、有効なデータ分析のためには、蓄積された生データの質や量が重要となる。
【0010】
【発明が解決しようとする課題】
上記に述べた従来のOLAPや多次元データベースにおいては、次元を予め与えることにより、該当するレコードを抽出し、Cubeなどのデータ構造として、取り出し、加工、編集、比較を可能にする。
【0011】
しかしながら、このOLAPや多次元データベースを使って業務上の意思決定の判断材料となりうるデータ分析を行うためには、意味のある次元の組合せを選択する必要がある。すなわち、どのような観点でデータを抽出し、加工し、比較するのかという観点を明確にする必要がある。
【0012】
データ分析ではこのような次元や観点を具体的にどのように与えるかが重要であるにもかかわらず、従来においては予めこれらの情報を具体的に与える必要があり、従来のOLAPや多次元データベースは次元や観点が与えられたならば様々なデータの取り扱いができるツールやデータの入れ物といった役割のものしか存在していない。
【0013】
以上のように、従来のOLAPや多次元データベースは、次元や観点が与えられた場合にこの次元や観点に応じてデータを取り扱うものであり、分析の発想や視点そのものをデータベースから作り出すのもではない。
【0014】
一方、従来のデータマイニング技術において有効なデータ分析を行うためには、蓄積された生データの質や量が重要である。
【0015】
データ分析においては、たとえ十分な量や質の生データが蓄積されていなくても分析者の経験的知識やノウハウを活用して分析を進める必要のある場合がある。
【0016】
また、データの蓄積状況がどのようであっても、均質的な一定レベルの分析を行う必要がある。
【0017】
しかしながら、従来のデータマイニング技術では、データベースの生データの蓄積状況によって分析結果のレベルにばらつきが発生し、また均質的なデータ分析の視点や発想を提供することが困難である。
【0018】
本発明は、以上のような実情に鑑みてなされたもので、分析の視点に用いる項目の決定を支援し、この視点によって取り扱われるデータを提供可能とするデータ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体を提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明の骨子は、3つの次元を構成する第1の軸(視点)をデータベース内のテーブルの識別情報とし、第2の軸(視点)をユーザの指定した条件を満たす時間とし、第3の軸(視点)をユーザの指定した条件を満たすデータベース内のテーブルにおける任意の項目の取り得る項目値の組合せとする多層入れ子テーブルを生成する点にある。
【0020】
以下、本発明を実現するにあたって講じた具体的手段について説明する。
【0021】
第1の発明は、少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、少なくとも一つのテーブルの識別情報を第1の視点とし、時間に関する条件を満たす時間を第2の視点とし、項目値条件を満たす項目値の組合せを第3の視点とし、第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納されている多層入れ子テーブルを生成する多層入れ子テーブル生成手段と、少なくとも一つのテーブルの中から第1乃至第3の視点に該当するレコードを抽出して多層入れ子テーブルに格納する格納手段とを具備したデータ生成装置である。
【0022】
この第1の発明のデータ生成装置は、データベースに蓄積された2次元の表形式のデータを「データベース内のテーブル(表)の識別情報(名称)」、「時間」、「項目(種別やID等)の取り得る項目値の組合せ」の3つの視点により再構成し、新たに1つの入れ子構造のデータを生成する。
【0023】
生成されたデータにおいて「項目値の組合せ」は、データ分析(比較、相関関係、推測)のための視点を決定する際に参考にすることができる。
【0024】
また、データ分析の際には、決定した分析の視点に基づいて時間単位毎、テーブルの種類毎に該当データを取り出し、データ比較、相関関係の抽出、現象の推測を行うことができる。
【0026】
また、第2の発明は、少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、時間に関する条件を満たす具体的な時間と項目値条件を満たす具体的な項目値とを求める条件処理手段と、条件処理手段によって求められた具体的な項目値に基づいて、この具体的な項目値の組合せを求める組合せ生成手段と、少なくとも一つのテーブルの識別情報を第1の視点とし、条件処理手段によって求められた具体的な時間を第2の視点とし、組合せ生成手段によって求められた具体的な項目値の組合せを第3の視点とし、第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納するための多層入れ子テーブルを生成する多層入れ子テーブル生成手段と、データベースの内容を読み込んで、多層入れ子テーブルに格納すべきレコードを抽出する抽出手段と、抽出手段によって抽出されたレコードを多層入れ子テーブルの該当位置に格納する格納手段とを具備したデータ生成装置である。
【0027】
第1及び第2の発明のデータ生成装置では、データ分析を行う際の視点となりうる3つの要素を軸として、データベース内に蓄積されているデータを再構成する。
【0028】
第1の視点はデータベース内の全てのテーブルの識別情報(名称)であり、第2の視点は時間であり、第3の視点はデータベース内のテーブルで利用されている任意の項目(Viewともいう。例えば利用者における購入量分類(ランク)、性別等がある)の取りうる項目値(Valueともいう。例えば具体的な購入量分類のAランク、Bランク、Cランク、具体的な性別の男、女等)の各種組合せである。
【0029】
第1及び第2の発明のデータ生成装置は、データベースの内容を読み込んでテーブルの名称を特定し、分析に用いる時間を特定し、分析に用いる項目の取りうる項目値の組合せを特定し、データ分析のための視点を具体的に提供する。
【0030】
そして、データベースに蓄積された少なくとも一つの2次元の表形式のデータを「テーブルの名称」、「時間」、「分析に用いる項目の取りうる項目値の組合せ」の3つの視点により再構成して多層入れ子テーブルとし、データベース内の2次元の表形式データをこの多層入れ子テーブルに配置する。
【0031】
多層入れ子テーブルは、データ分析のための視点からなる次元を備えており、データベースからその次元毎にテーブルを抽出したデータ集合である。
【0032】
このように第1及び第2の発明のデータ生成装置では、データ分析のための具体的な視点及びその視点に基づいてレコードを抽出、分類、生成し、その視点に基づいてデータを蓄積する。
【0033】
例えば、ユーザは、多層入れ子テーブルの第3の視点を参照した結果、購入量がAランク又はBランクであり性別が男の利用者に関する販売状況に関心を持つことができる。
【0034】
また、第1の視点を参照して販売状況の分析に適したテーブルを選択することができる。
【0035】
そして、第2の視点を参照して販売状況の分析に適したテーブルによる時間毎の変化を調べることができる。
【0036】
このように、第1及び第2の発明のデータ生成装置においては、データ分析の発想や視点と、このデータ分析の源となるデータをデータベースの内容から作成することができる。また、データベースのデータ量に関係なく、均質的にデータ分析の視点や発想を提供することができる。
【0038】
また、第3の発明は、コンピュータに、少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、少なくとも一つのテーブルの識別情報を第1の視点とし、時間に関する条件を満たす時間を第2の視点とし、項目値条件を満たす項目値の組合せを第3の視点とし、第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納されている多層入れ子テーブルを生成させる多層入れ子テーブル生成機能と、少なくとも一つのテーブルの中から第1乃至第3の視点に該当するレコードを抽出して多層入れ子テーブルに格納させる格納機能とを実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0039】
また、第4の発明は、コンピュータに、少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、時間に関する条件を満たす具体的な時間と項目値条件を満たす具体的な項目値とを求めさせる条件処理機能と、条件処理機能によって求められた具体的な項目値に基づいて、この具体的な項目値の組合せを求めさせる組合せ生成機能と、少なくとも一つのテーブルの識別情報を第1の視点とし、条件処理機能によって求められた具体的な時間を第2の視点とし、組合せ生成機能によって求められた具体的な項目値の組合せを第3の視点とし、第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納するための多層入れ子テーブルを生成させる多層入れ子テーブル生成機能と、データベースの内容を読み込んで、多層入れ子テーブルに格納すべきレコードを抽出させる抽出機能と、抽出機能によって抽出されたレコードを多層入れ子テーブルの該当位置に格納させる格納機能とを実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0040】
第3及び第4の発明は、それぞれ第1及び第2の発明で説明したデータ生成装置の機能をコンピュータにより実現するためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0041】
このようなプログラムを記憶した記憶媒体を用いることによって、上述した機能を有していない計算機やデータベースシステムに対しても、簡単に上述した機能を付加することができる。
【0044】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態について説明する。
【0045】
(第1の実施の形態)
本実施の形態においては、テーブルの名称を第1の視点とし、時間を第2の視点とし、ユーザの要求する項目の取り得る項目値の全ての組合せを第3の軸とする多層入れ子テーブルを生成するデータ生成装置について説明する。
【0046】
図1は、本実施の形態に係るデータ生成装置の構成を示すブロック図である。
【0047】
データベース1は、通常の業務系システム、基幹系システムによって得られたデータを蓄えているRDBである。このデータベース1のテーブルM1〜M4、T1〜T3に蓄えられているデータが分析の対象となる。
【0048】
時間に関する条件(以下、「時間条件」という)2とは、データ分析を行う際にどのような期間で、またどのような時間の間隔でデータを再構成するかを示す分析の条件であり、ユーザが設定する。
【0049】
項目と項目値に関する条件(以下、「項目値条件」という)3とは、データベース1内のどのテーブルにおけるどの項目(View)の項目値(Value)を、どのように組合せるかを示す分析の条件であり、ユーザが設定する。
【0050】
ここで、項目とは、例えば利用者ID、種別、購入量の分類、性別等のようなデータベース1内のテーブルM1〜M4、T1〜T3に利用されているデータ項目のことを指す。また、項目値とは項目の持つ値を示し、例えば性別の項目値には「男」、「女」があり、購入量の分類の項目値には大量を示す「Aランク」、少量を示す「Bランク」等がある。
【0051】
本実施の形態に係るデータ生成装置4は、データベース1に蓄積された2次元の表形式データと、時間条件2と、項目値条件3とを入力する。すると、2次元の表形式データを「データベース1の持つ全てのテーブルM1〜M4、T1〜T3の名称」、「時間」、「テーブルM1〜M4、T1〜T3における任意の項目の取りうる項目値の組合せ」の3つの視点により再構成し、多層入れ子テーブル5を生成する。
【0052】
このデータ生成装置4は、条件処理部6、組合せ生成部7、多層入れ子テーブル生成部8により再構成後のデータ構造(スキーマ)を求める。そして、抽出部9、格納部10により再構成後のデータ構造を実現するデータを格納する。
【0053】
条件処理部6は、時間条件2と項目値条件3とを入力して認識し、またデータベース1の内容を読み込んで各条件2、3のデータへの変換・展開を行うことにより、時間条件2を満たす具体的な時間と項目値条件3を満たす具体的な項目値とを求める。
【0054】
例えば、1990年から1992年までのデータを1年毎に整理する旨の時間条件が指定されている場合には、この条件処理部6は具体的な時間として「1990」、「1991」、「1992」を求める。また、例えば項目として「購入量の分類」と「性別」とが項目値条件3で指定されている場合には、条件処理部6は、具体的な項目値として「購入量の分類」の項目値である「Aランク」、「Bランク」を求め、さらに「性別」の項目値である「男」、「女」を求める。
【0055】
組合せ生成部7は、項目内組合せ生成部7a及び項目間組合せ生成部7bとから構成される。
【0056】
項目内組合せ生成部7aは、条件処理部6で処理された項目値条件3に基づいて求められた具体的な項目値を、各項目内で組み合わせる。
【0057】
この項目内組合せ生成部7aは、例えば、項目「購入量の分類」に関する項目値「A」、「B」を、「AランクでもBランクでもない」、「Aランク」、「Bランク」、「Aランク又はBランク」と組み合わせる。また、項目「性別」に関する項目値「男」、「女」を、「男でも女でもない場合(性別が指定されていない場合)」、「男」、「女」、「男又は女」と組み合わせる。
【0058】
続いて、項目間組合せ生成部7bは、項目内組合せ生成部7aで組み合わされた各項目毎の項目値の組合せをさらに各項目間で組み合わせる。
【0059】
この項目間組合せ生成部7bにより、例えば「AランクでもBランクでも男でも女でもない」、…、「Bランクであり男」、…、「Aランクであり男又は女」、…、「Aランク又はBランクであり男又は女」というような、各項目の取りうる項目値の組合せが求められる。
【0060】
多層入れ子テーブル生成部8は、データベース1に蓄積されたテーブルM1〜M4、T1〜T3の名称を第1の視点とし、条件処理部6で処理をした時間条件3を満たす時間1990〜1992を第2の視点とし、組合せ処理部7で生成した項目値条件に基づく項目値の組合せを第3の視点とする多層入れ子テーブル5のスキーマを生成する。
【0061】
抽出部9は、データベース1の内容を読み込み、多層入れ子テーブル5のデータを生成する際に必要となるレコードを抽出する。すなわち、この抽出部9は、3つの視点に該当するレコードをデータベース1内のテーブルM1〜M4、T1〜T3の中から抽出する。
【0062】
例えば、テーブルT1において1998年に「Bランクの男」に該当するデータベース1内の全てのレコードは、多層入れ子テーブル5において第1の視点が「テーブルT1」であり、第2の視点が「1998年」であり、第3の視点が「Bランクの男」となる位置用の集合データ11として抽出される。
【0063】
格納部10は、抽出部9によって抽出されたレコードを、多層入れ子テーブル生成部8によって生成された多層入れ子テーブル5のスキーマにおける該当位置に配置、登録する。
【0064】
このような構成を有するデータ生成装置4によって生成される多層入れ子テーブル5は、データ分析用のデータを蓄積するテーブルである。この多層入れ子テーブル5は、データベース1の持つテーブルの名称、時間、任意の項目の取り得る項目値の組合せからなる3つの視点による軸を持つ。そして、多層入れ子テーブル5の3つの軸からそれぞれ値を選択した時の交点位置には、所定の時間に該当し、所定のテーブルに保持されており、所定の分析観点に該当するレコードが抽出されたものである2次元のテーブルが存在する。
【0065】
多層入れ子テーブル5は、条件に合致する全ての時間の観点、及び条件に合致する項目値の組合せの観点から、データベース内の全てのテーブルに対して再構成を実行したデータ集合である。
【0066】
この多層入れ子テーブル5を利用することで、「テーブルの名称」、「時間」、「項目値の組合せ」からなる3つの視点の任意の組合せ(一つを選択し、他の2つの組合せを考えて得られる)によって、データをまとめたり、並べて比較することが可能であり、そのために多層入れ子テーブル5は複数の層をなしている。また、多層入れ子テーブル5の中にはさらに3つの視点に該当するレコードの集合テーブルが入れ子状態に格納されている。
【0067】
上記のような構成を有するデータ生成装置4における動作について以下に説明する。
【0068】
図2は、本実施の形態に係るデータ生成装置4の動作を示すフロー図である。
【0069】
例えば事務処理や予約管理ソフトウェアや販売管理ソフトウェア等のようなアプリケーションソフトウェアによってデータベース1にデータが蓄積されているとする。
【0070】
ユーザが時間条件2と項目値条件3とをデータ生成装置4に入力すると、条件処理部6によってデータベース1の内容が読み込まれ、入力された各条件3、4が認識され具体的なデータに変換・展開される(s1)。
【0071】
次に、この条件処理部6による項目値条件3の展開で得られたデータを用いて各項目毎の項目値の組合せが項目内組合せ生成部7aによって生成される(s2)。
【0072】
次に、この項目内組合せ生成部7aによって生成された項目毎の項目値の組合せが、項目間組合せ生成部7bによって各項目間でさらに組み合わされる(s3)。
【0073】
次に、多層入れ子テーブル生成部8によってデータベース1の内容が読み込まれ、読み込んだデータベース1内の各テーブルM1〜M4、T1〜T3の名称を第1の視点とし、先の条件処理部6の処理によって得られた時間を第2の視点とし、先の項目間組合せ生成部7aの処理によって得られた各項目間の項目値の組合せを第3の視点とする多層入れ子テーブル5のスキーマが生成される(s4)。
【0074】
次に、抽出部9によってデータベース1の内容が読み込まれ、多層入れ子テーブル5のデータ生成に必要となるレコードが抽出される(s5)。
【0075】
そして、抽出部9による処理で得られたレコードが、格納部10によって多層入れ子テーブル5の該当位置に配置される(s6)。
【0076】
一般的に、事務処理や予約管理、販売管理等を行うアプリケーションソフトウェアによって蓄積されたデータを分析する際には、所定の時間毎のデータの変化・推移を観察する傾向があり、また様々な項目値を視点として分析を行う傾向がある。
【0077】
このような実情を考慮し、本実施の形態に係るデータ生成装置4においては、時間、テーブル種類、分析視点となりうる項目値の組合せによりデータベース1内のデータを再構成し、多層入れ子テーブル5を生成する。
【0078】
生成された多層入れ子テーブル5には、分析の視点となりうる項目値の組合せが列挙されているため、ユーザはこの多層入れ子テーブル5を用いてデータ分析(比較、相関関係、推測)のための視点とその視点に基づくテーブルの候補を取得することができる。
【0079】
また、この多層入れ子テーブル5にレコードを格納することで、データ分析のための対象データの保管場所と取得方法を統一することができる。
【0080】
また、この多層入れ子テーブル5にレコードを格納することで、事務処理システム等のデータベースにおけるデータ分析のための対象データのソース(源)を提供することができる。
【0081】
また、データ分析のためのプログラム(データの検索、抽出、分類、数え上げ、集計等の計算)を予め作成していなくても、この多層入れ子テーブル5を利用することで容易にデータ分析を実行することができる。
【0082】
また、データベース1内のデータの量や質に影響されず均質的な分析を実行することができる。
【0083】
(第2の実施の形態)
本実施の形態においては、上記第1の実施の形態で説明したデータ生成装置4に関して、具体的な例を挙げてさらに詳細に説明する。
【0084】
本実施の形態において述べるデータ生成装置は図1に示すデータ生成装置4と同様の装置であるため、図1と同一の要素には同一の符号を付して説明する。
【0085】
まず、本実施の形態におけるデータベース1の状態について説明する。
【0086】
図3は、本実施の形態においてデータベース1に蓄積されているテーブルとこの各テーブル間の関係を例示する概念図であり、各テーブルは施設の予約管理システムによって蓄積されるデータを保持する。ここで、テーブルM1〜M4はマスタテーブルであり、予約管理の基本となる情報を有する。一方、テーブルT1〜T3はトランザクションテーブルであり予約がなされる度に適宜設けられる。
【0087】
利用者情報テーブルM1は、施設の使用を申し込む利用者に関する情報を保持するマスタテーブルであり、登録日付、利用者ID、利用者名、性別、ランク、連絡先を項目として有する利用者情報を記憶する。
【0088】
スタッフ情報テーブルM2は、施設の管理スタッフに関する情報を保持するマスタテーブルであり、登録日付、スタッフID、スタッフ名、性別、職種、所属を項目として有するスタッフ情報を記憶する。
【0089】
施設情報テーブルM3は、予約することが可能な施設に関する情報を保持するマスタテーブルであり、登録日付、施設ID、施設名、利用料金を項目として有する施設情報を記憶する。
【0090】
備品情報テーブルM4は、利用申し込み可能な備品に関する情報を保持するマスタテーブルであり、登録日付、備品ID、備品名、利用料金を項目として有する備品情報を記憶する。
【0091】
予約情報テーブルT1は、施設が予約された場合のこの予約の内容に関する情報を保持するトランザクションテーブルである。この予約情報テーブルT1は、登録日付、予約番号、予約開始日(利用開始日)、予約終了日(利用終了日)、予約種別、利用者ID、予約を受け付けたスタッフID、イベント情報、見積料金を項目として有する予約情報を記憶する。
【0092】
予約施設情報テーブルT2は、施設が予約された場合の当該予約された施設に関する情報を保持するトランザクションテーブルであり、登録日付、予約番号、施設分類番号、予約日付(施設を利用する日付)、予約開始時間(施設の利用開始時間)、予約終了時間(施設の利用終了時間)、予約施設ID、料金を項目として有する予約施設情報を記憶する。
【0093】
予約備品情報テーブルT3は、施設が予約された場合に共に予約された備品に関する情報を保持するトランザクションテーブルであり、登録日付、予約番号、備品分類番号、予約日付、予約開始時間、予約終了時間、予約備品ID、料金を項目として有する予約備品情報を記憶する。
【0094】
この図3に示す各テーブル間の関係は、直線又は折れ線、端点「・」、端点「◇」によって表されている。
【0095】
直線又は折れ線は、結合されているテーブル間で所定の関係がある旨を示している。
【0096】
端点「・」は、テーブル間においてこの端点「・」側のテーブルの多重度が1以上である旨を示している。
【0097】
例えば、利用者は複数の予約を行う場合があるため、利用者情報テーブルM1の1件の利用者情報は、予約情報テーブルT1の複数の予約情報に対応する場合がある。同様に、ある予約において複数の施設が予約される場合があるため、予約情報テーブルT1の1件の予約情報は、予約施設情報テーブルT2の複数の予約施設情報に対応する場合がある。端点「・」に関して他の場合も同様である。
【0098】
端点「◇」は、テーブル間においてこの端点「◇」側のテーブルが他方の側のテーブルから参照される旨を示している。
【0099】
例えば、予約情報の要素である利用者IDをキーとして利用者情報テーブルM1の利用者情報を参照することで、施設を予約した利用者に関する利用者情報を特定することができ、これにより予約した利用者の性別やランク等を調べることができる。同様に、予約施設情報の要素である予約施設IDをキーとして施設情報テーブルM3の施設情報を参照することで、予約された施設に関する施設情報を特定することができ、これにより予約された施設の利用料金や施設名を得ることができる。他の端点「◇」も同様である。
【0100】
表1は、上記図3の利用者情報テーブルM1の記憶内容の例であり、マスタテーブルであるこの利用者情報テーブルM1には先に述べたように「登録日付」、「利用者ID」、「利用者名」、「性別」、「ランク」、「連絡先」の項目からなる利用者情報が集められている。
【0101】
【表1】
【0102】
この利用者情報テーブルM1の各行は1件のレコードを示している。例えば1行目のレコードは、利用者名「鈴木太郎」の登録日付は「1998/12/25」であり、性別は「男」であり、ランクは「A」であり、連絡先は「府中市」であり、登録時に予約管理システムのアプリケーションによって利用者ID「R001」が自動的に発番されて付されている。その他の利用者情報も同様である。
【0103】
表2は、上記図3のスタッフ情報テーブルM2の記憶内容の例であり、マスタテーブルであるこのスタッフ情報テーブルM2には先に述べたように「登録日付」、「スタッフID」、「スタッフ名」、「性別」、「職種」、「所属」の項目からなるスタッフ情報が集められている。
【0104】
【表2】
【0105】
このスタッフ情報テーブルM2の各行は1件のレコードを示している。例えば1行目のレコードは、スタッフ名「山田一郎」の登録日付は「1998/12/25」であり、性別は「男」であり、職種は「スタッフ」であり、所属は「管理部」であり、登録時に予約管理システムのアプリケーションによってスタッフID「S001」が自動的に発番されて付されている。その他のスタッフ情報も同様である。
【0106】
表3は、上記図3の施設情報テーブルM3の記憶内容の例であり、マスタテーブルであるこの施設情報テーブルM3には先に述べたように「登録日付」、「施設ID」、「施設名」、「利用料金」の項目からなる施設情報が集められている。
【0107】
【表3】
【0108】
この施設情報テーブルM3の各行は1件のレコードを示している。例えば1行目のレコードは、施設名「大会議室」の登録日付は「1998/12/01」であり、利用料金は「300000」であり、登録時に予約管理システムのアプリケーションによって施設ID「F0001」が自動的に発番されて付されている。その他の施設情報も同様である。
【0109】
表4は、上記図3の備品情報テーブルM4の記憶内容の例であり、マスタテーブルであるこの備品情報テーブルM4には先に述べたように「登録日付」、「備品ID」、「備品名」、「利用料金」の項目からなる備品情報が集められている。
【0110】
【表4】
【0111】
この備品情報テーブルM4の各行は1件のレコードを示している。例えば1行目のレコードは、備品名「音響装置A」の登録日付は「1998/12/01」であり、「利用料金」は「100000」であり、登録時に予約管理システムのアプリケーションによって備品ID「E0001」が自動的に発番されて付されている。その他の備品情報も同様である。
【0112】
表5は、上記図3の予約情報テーブルT1の記憶内容の例であり、トランザクションテーブルであるこの予約情報テーブルT1には先に述べたように「登録日付」、「予約番号」、「予約開始日」、「予約終了日」、「予約種別」、「利用者ID」、「スタッフID」、「イベント情報」、「見積料金」の項目からなる予約情報が集められている。
【0113】
【表5】
【0114】
この予約情報テーブルT1の各行は、予約管理システムのアプリケーションによって管理される予約の内容を1件のレコードとして示している。例えば、1行目のレコードは、登録日付「1998/12/07」、予約開始日「1999/01/20」、予約終了日「1999/01/21」、予約種別「会議」、利用者ID「R001」、スタッフID「S001」、イベント情報「ソフトウェア工学国際会議」、見積料金「650000」であり、登録時に予約管理システムのアプリケーションによって予約ID「Y000001」が自動的に発番された予約情報を示している。他の予約情報も同様である。
【0115】
表6は、上記図3の予約施設情報テーブルT2の記憶内容の例であり、トランザクションテーブルであるこの予約施設情報テーブルT2には先に述べたように「登録日付」、「予約番号」、「施設分類番号」、「予約日付」、「予約開始時間」、「予約終了時間」、「予約施設ID」、「料金」の項目からなる予約施設情報が集められている。
【0116】
【表6】
【0117】
この予約施設情報テーブルT2の各行は、予約された施設の内容を1件のレコードとして示している。例えば、1行目のレコードは、予約番号「Y000001」の予約において利用される施設には予約施設ID「F0001」の施設があり、登録日付「1998/12/07」、施設分類番号「1」、予約日付「1998/01/20」、予約開始時間「9:00」、予約終了時間「12:00」、料金「300000」である旨を示す予約施設情報である。その他の予約施設情報も同様であり、例えば2行目のレコードは予約番号「Y000001」の予約において利用される施設に予約施設ID「F0002」がある旨を示している。
【0118】
表7は、上記図3の予約備品情報テーブルT3の記憶内容の例であり、トランザクションテーブルであるこの予約備品情報テーブルT3には先に述べたように「登録日付」、「予約番号」、「備品分類番号」、「予約日付」、「予約開始時間」、「予約終了時間」、「予約備品ID」、「料金」の項目からなる予約備品情報が集められている。
【0119】
【表7】
【0120】
この予約備品情報テーブルT3の各行は、予約された備品の内容を1件のレコードとして示している。例えば、1行目のレコードは、予約番号「Y000001」の予約において利用される備品には予約備品ID「E0001」の備品があり、登録日付「1998/12/07」、備品分類番号「1」、予約日付「1998/01/20」、予約開始時間「9:00」、予約終了時間「12:00」、料金「100000」である旨を示す予約備品情報である。その他の予約備品情報も同様であり、例えば2行目のレコードは予約番号「Y000001」の予約において利用される備品に予約備品ID「E0002」がある旨を示している。
【0121】
次に、本実施の形態における時間条件2について説明する。
【0122】
本実施の形態において時間条件2は、第1の時間条件12と第2の時間条件13とからなる。
【0123】
図4は、本実施の形態における第1の時間条件12の記述形式を示す概念図である。
【0124】
この第1の時間条件12は、各テーブルの名称(label)とこのテーブルにおいて日付を示す項目の全てのリスト(L)とによりサブリストを構成し、さらにこの各テーブル(label)毎のサブリストによりリストを構成した記述形式である。この記述形式により、データベース1内の各テーブルのデータ項目のうち、時間に関係するデータ項目が列挙されて記述される。
【0125】
図5は、この第1の時間条件12の記述形式にしたがって記述された条件の具体例を示す概念図である。
【0126】
第1の時間条件12の記述形式にしたがって記述されたこの条件14は、各テーブルM1〜M4、T1〜T3とこの各テーブルM1〜M4、T1〜T3の日付を示す全ての項目のリストとを関係付けてサブリストを構成しており、さらにサブリスト全体でリストを構成した記述となっており、これによりテーブルM1〜M4、T1〜T3における時間に関係するデータの項目を列挙している。
【0127】
図6は、本実施の形態における第2の時間条件13の記述形式を示す概念図である。
【0128】
この第2の時間条件13では、データベース1のデータ再構成を行う場合の時間軸の開始時点及び終了時点、さらにその開始時点から終了時点までの間をプロットする時間間隔を設定するために、開始、終了、粒度とが記述される。
【0129】
図7は、第2の時間条件13の記述形式にしたがって記述された条件の具体例を示す概念図である。
【0130】
この条件15では、1998年12月から1999年6月までの期間を、月毎に区切って時間軸を生成する旨が記述されている。
【0131】
次に、本実施の形態における項目値条件3について説明する。
【0132】
図8は、本実施の形態における項目値条件3を設定するための記述形式を示す概念図である。この項目値条件3は、3つのサブリストL1〜L3から構成されるリストLにより記述することを厳密に定義している。
【0133】
第1のサブリストL1は、データベース1内のデータを再構成するために用いるテーブルの名称(label)とその項目とを関係付けて構成されるリストである。すなわち、この第1のサブリストL1はViewに相当するデータの項目を列挙したリストである。
【0134】
第2のサブリストL2は、第1のサブリストL1で記述されている各項目の順番にあわせて、各項目の取り得る項目値(Value)のリストか、あるいは項目値が予め定義されていない場合にどのように取り扱うかを識別するための文字列であるラベルを列挙したリストである。このラベルの例としては、アプリケーションにより自動的に付される各種のID番号等があり、この場合ラベルとして「自動発番」が記述される。
【0135】
なお、第1のサブリストL1で列挙した各項目の順番にあわせて、この各項目の取り得る項目値のリスト又はラベルが列挙される点に関しては、第2のサブリストL2の記述L21で示されている。
【0136】
第3のサブリストL3は、第1のサブリストL1で記述されている各項目の順番にあわせて、各項目の取り得る項目値の組合せの生成方法を記述したリストである。
【0137】
組合せの生成方法は、それぞれC(1)〜C(k)で記述される。すなわち、この組合せの生成方法C(1)〜C(k)はViewに対するValueの組合せをどのように生成するか識別させるための記述である。
【0138】
例えばC(1)は、Viewが取り得るm個のValueのうち、1個をとる組合せ(m通り)を生成する旨を示す。すなわち、このC(1)は、その項目の取り得る項目値に関して2つ以上の要素からなる組合せを生成しない旨を示す。
【0139】
また、C(k)はViewが取り得るm個のValueのうち、重複を許さず0個以上m個をとる組合せを生成する旨を示す。すなわち、このC(k)はその項目の取り得る項目値に関する全ての組合せを生成する旨を示す。このC(1)〜C(k)の説明は、記述31で述べている。
【0140】
その他にも、この組合せの生成方法として、その項目の取り得る項目値に関する任意の2つの要素による組合せのみを生成する方法を指定可能としてもよい。また、その項目の取り得る各項目値1つと、その項目の取り得る各項目値の全ての結合とを生成する方法を指定可能としてもよい。このように、組合せの生成方法には様々なものが利用できる。
【0141】
なお、第1のサブリストL1で列挙した各項目の順番にあわせて、第2のサブリストL2の要素である各項目の取り得る項目値のリスト又はラベルを列挙しており、さらに第1のサブリストL1で列挙した各項目の順番にあわせて、各項目に対応する組合せの生成方法を列挙する点に関しては、第3のサブリストL3の記述L32で示されている。
【0142】
図9は、上記図8のような本実施の形態における項目値条件3の記述形式にしたがって記述された条件の具体例を示す概念図である。
【0143】
この条件16では、第1のサブリストL1において、「テーブルM1の利用者ID」、「テーブルM1の性別」、「テーブルM1のランク」、「テーブルT1の予約番号」からなる項目によりデータの再構成を実行する旨が記述されている。
【0144】
また、第1のサブリストL1に記述した「テーブルM1の利用者ID」の項目値は利用者が追加される毎に発番する番号であり、データ分析時のデータベース1のレコードの登録状態から抽出可能なため、「自動発番」というラベルが第2のサブリストL2に記述されている。さらに、「テーブルM1の性別」の項目値は「男」または「女」であり、「テーブルM1のランク」の項目値は「A」または「B」または「C」である旨が第2のサブリストL2に記述されている。さらに、「テーブルT1の予約番号」の項目値も予約情報が追加される毎に発番する番号であるため「自動発番」というラベルが第2のサブリストL2に記述されている。この項目値又はラベルの記述順序は第1のサブリストL1における項目の記述順序に対応している。
【0145】
さらに、第1のサブリストL1に記述した「テーブルM1の利用者ID」の「自動発番」の組合せ生成方法は「C(1)(項目値1個以下の組合せ)」であり、「テーブルM1の性別」の項目値「男、女」の組合せ生成方法は「C(k)(項目値0以上全ての組合せ)」であり、「テーブルM1のランク」の項目値「A、B、C」の組合せ生成方法は「C(k)」であり、「テーブルT1の予約番号」の「自動発番」の組合せ生成方法は「C(1)」である旨が第3のサブリストL3に記述されている。この組合せ生成方法の記述順序は第1のサブリストL1における項目の記述順序に対応している。
【0146】
次に、本実施の形態に係るデータ生成装置4によって生成された多層入れ子テーブル5について説明する。
【0147】
図10は、本実施の形態に係るデータ生成装置4によって生成された多層入れ子テーブル5の例を示す概念図である。
【0148】
ここでは、このデータ生成装置4に上記図5及び図7で示す第1及び第2の時間条件14,15が入力され、また項目値条件3として[[(M1,性別)],[男,女],[C(k)]]が入力され、さらに上記図3に示すデータベース1が読み込まれて生成された多層入れ子テーブル5を示している。
【0149】
また、ここでは、いずれかのテーブルが日付を示す項目を複数持つ場合に、日付を示す項目を列挙したリスト内で先頭に記述されている項目を用いてデータの再構成を実現する。しかしながら、これに限定されるものではなく、例えば日付を示す複数の項目の全てを用いてデータの再構成を実現するとしてもよい。
【0150】
この多層入れ子テーブルは、1998年12月を開始年月とし、1999年6月を終了年月とし、時間間隔を年月とした時間条件15に基づいて、1998年12月分から1999年6月分までの7層の入れ子テーブル51〜57が生成される。
【0151】
ここで、時間軸が1998年12月の入れ子テーブル51を見ると、この入れ子テーブル51は、テーブルの名称M1〜M4、T1〜T3毎に列を形成している。また、この入れ子テーブル51は、項目値条件3である[[(M1,性別)],[男,女],[C(k)]]に基づき、「男」、「女」、「男又は女」、「男でも女でもない(性別が指定されていない)」の4態様毎の行を形成している。
【0152】
この入れ子テーブル51の行と列の交点もまたテーブルを表している。
例えば、入れ子テーブル51のテーブルM1の列において項目値の組合せが「男」の位置には、テーブルM1−1が配置されている。このテーブルM1−1は、テーブルM1のレコードから性別が「男」に該当するレコードのみを抽出して構成されており、具体的には利用者名「鈴木太郎」及び「田中太郎」に関するレコードが抽出・配置されている。
【0153】
また、例えば入れ子テーブル51のテーブルM1の列において項目値の組合せが「男又は女」の位置には、テーブルM1−3が配置されている。このテーブルM1−1は、テーブルM1のレコードのうち性別が「男又は女」に該当するレコードを抽出して構成されており、具体的にはテーブルM1と同一のテーブルが配置されることになる。
【0154】
次に、本実施の形態に係るデータ生成装置4によって実行される処理で扱われるデータについて説明する。なお、以下においては、データ生成装置4に上記図5及び図7で示す時間条件14、15が入力され、また項目値条件3として図9で示す条件16が入力され、データベース1にはテーブルM1〜M4、T1〜T3が記憶されてる場合を具体例として説明する。
【0155】
まず、図1に示すデータ生成装置4の条件処理部6にデータベース1の内容と、時間条件14、15と、項目値条件16とが入力されると、この条件処理部によって入力された時間条件と項目値条件が認識され、条件の変換、展開が行われる。
【0156】
図11は、条件処理部6によって項目値条件が認識・変換・展開された状態を示す概念図であり、項目値条件で記述されているラベル「自動発番」が認識され、データベース1のレコードの登録状況から該当する具体的な番号が抽出されたリスト17を示している。これにより、利用者IDに対応するラベル「自動発番」が、利用者IDの具体的な項目値のリストである[R001,R002,R003,R004]に展開される。また、予約番号に対応するラベル「自動発番」が、予約番号の具体的な項目値のリストである[Y000001,Y000002,Y000003,Y000004]に展開される。
【0157】
続いて、図1に示すデータ生成装置4の項目内組合せ生成部7aによって、先の条件処理部6で展開されたリスト17に基づく項目内の項目値の組合せが生成される。なお、項目内の項目値の組合せの生成手法として、1つのViewに対するValueを表すリスト(要素数n個とする)の要素の0個又は1個の組合せを生成する方法C(1)か、あるいは重複を許さず0個以上n個以下の組合せを生成する方法C(k)がリスト17において指定されている。
【0158】
図11において第1のサブリストL1の要素18〜21は、それぞれ第2のサブリストL2の要素22〜25、第3のサブリストL3の要素26〜29の対応している。例えば(M1,利用者ID)は、項目値[R001,R002,R003,R004]を持ち、組合せ生成方法はC(1)である。
【0159】
図12は、項目内組合せ生成部7aによって生成される項目内の項目値の組合せを示すリストの概念図である。
【0160】
項目内組合せ生成部7aによって生成されたリスト30内のサブリスト31は、利用者IDの項目値リストである[R001,R002,R003,R004]を組合せ生成方法C(1)により組み合わせて生成された結果である。すなわち、このサブリスト31は、利用者IDの項目値リストの要素の中から、0個かまたは1個の要素を組合せて得られるリストである。
【0161】
サブリスト32は、性別の項目リスト[男,女]の2要素を組合せ生成方法C(k)により組み合わせて生成される。すなわち、このサブリスト32は、性別の項目値リストの要素の中から、0個以上2個以下の要素を組合せて得られるリストである。
【0162】
サブリスト33は、ランクの項目リスト[A,B,C]の3要素を組合せ生成方法C(k)により組み合わせて生成される。すなわち、このサブリスト33は、ランクの項目値リストの要素の中から、0個以上3個以下の要素を組合せて得られるリストである。
【0163】
サブリスト34は、予約番号の項目値リストである[Y000001,Y000002,Y000003,Y000004]を組合せ生成方法C(1)により組み合わせて生成される。すなわち、このサブリスト34は、予約番号の項目値リストの要素の中から、0個かまたは1個の要素を組合せて得られるリストである。
【0164】
続いて、図1に示すデータ生成装置4の項目間組合せ生成部7bによって、先の項目内組合せ生成部7aで生成された項目値の項目毎の組合せがさらに項目間で組み合わされる。この項目間での組合せは、項目毎に生成された項目値の組合せのリストからそれぞれ1個の要素が選択され組み合わさせて生成される。
【0165】
図13は、項目間組合せ生成部7bによって生成される項目値の組合せの具体例を示す概念図であり、先の図12に示す項目内の組合せリストに基づいて項目間組合せ生成部7bが生成する組合せリスト35を示している。
【0166】
項目内の組合せを示す各サブリスト31〜34の要素数は、それぞれ5、4、8、5個である。項目間組合せ生成部7bでは、項目内の組合せを示す各サブリスト31〜34から1つずつの要素を選択して組合せるため、得られる項目間の組合せのリスト数は、5×4×8×5=800通りとなる。
【0167】
また、図14は、この図13における項目値の組合せの表記方法を説明するための概念図である。e(m,n)は、リスト30内のm番目のサブリストのn番目の要素を表す。
【0168】
同様に、図15は、e(m,n)と先の図12に示す項目内の組合せリスト30の各要素との関係を示す概念図である。
【0169】
先の図12における項目内の組合せリスト30には、4つのサブリスト31〜34があるため、mは1以上4以下となる。
【0170】
また、利用者IDに関するサブリスト31内には、5つの要素があるため、m=1のときにはnは1以上5以下である。同様に、性別に関するサブリスト32には、4つの要素があるため、m=2のときにはnは1以上4以下である。また、ランクに関するサブリスト33には、5つの要素があるため、m=3のときにはnは1以上5以下である。さらに、予約番号に関するサブリスト34には、5つの要素があるため、m=4のときにはnは1以上5以下である。
【0171】
例えば、e(1,1)は、項目内の組合せリストにおける1番目のサブリストの1番目の要素であるため、[](空リスト)を表している。e(1,2)は、1番目のサブリストの2番目の要素であるため、[R001]を表している。同様に、e(1,3)及びe(1,4)は、1番目のサブリストの3番目及び4番目の要素であるため、[R003]、[R004]を表している。
【0172】
このように、項目間組合せ生成部7bは、各項目毎に項目値の組合せを要素として持つデータを入力すると、各項目から任意の要素をそれぞれ1つ選択して組合せを行い、これにより項目値条件16を満たすあらゆる項目値の組合せを生成する。
【0173】
続いて、図1に示すデータ生成装置4の多層入れ子テーブル生成部8によって、条件処理部6による時間条件14、15の処理結果、組合せ生成部7によって生成された項目値の組合せ、データベース1に蓄積されているテーブルの名称の観点で多層入れ子テーブル5のスキーマが生成される。
【0174】
多層入れ子テーブル5のスキーマとは、3つの軸の交点にテーブルを設定していない状態の多層入れ子テーブル5の枠を指す。
【0175】
なお、本実施の形態においては、テーブルT1に日付に関する項目が3つあるが、この日付に関する各項目を用いて再構成を行うために、登録日付により再構成するためのテーブルT11、利用開始日により再構成するためのテーブルT12、利用終了日により再構成するためのテーブルT13とを用意し、テーブル名称の軸に設ける。
【0176】
同様に、テーブルT2にも、日付に関する項目が2つあるが、この各項目を用いて再構成するために、登録日付により再構成するためのテーブルT21、予約日付により再構成するためのテーブルT22を用意し、テーブル名称の軸に設ける。
【0177】
さらに、テーブルT3にも日付に関する項目が2つあるが、この各項目を用いて再構成するために、登録日付により再構成するためのテーブルT31、予約日付により再構成するためのテーブルT32を用意し、テーブル名称の軸に設ける。
【0178】
続いて、図1に示すデータ生成装置4の抽出部9によって、データベース1からデータが読み込まれ、多層入れ子テーブル生成部8で生成された多層入れ子テーブル5のスキーマに対する各交点のテーブルを生成するために必要なレコードが抽出される。データベース1からレコードを抽出する際には、3つの軸の値(時間、項目値の組合せ、テーブルの名称)に基づき、テーブルの名称で設定されたテーブルから時間の軸の値、項目値の組合せの値を検索キーとしてレコードの抽出が行われる。
【0179】
続いて、図1に示すデータ生成装置4の格納部10によって、抽出部9で抽出されたデータが多層入れ子テーブル5の3つの軸の値(時間、項目値の組合せ、テーブルの名称)の該当場所に分配・登録される。
【0180】
図16は、格納部10によってデータの登録された多層入れ子テーブル5を示す概要図であり、1998年12月〜1999年6月までの入れ子テーブル36〜42が生成されている。ここでは1998年12月の入れ子テーブル36を詳細に示しているが、他の子テーブル37〜42に関しても同様である。
【0181】
この1998年12月の入れ子テーブル36における行の観点は、項目値の組合せ(区分とその区分値)であり、項目間組合せ生成部7bによって800通りの組合せが生成されたため、項目値の組合せによる行数は800行となる。
【0182】
一方、列の観点は、データベース1の持つテーブルの名称とこのテーブルにおける日付を示す項目との組合せで決定する。この日付を示す項目は、先に述べた第1の時間条件14により記述されており、テーブルが時間に関する項目を複数持つ場合にどの項目を基準にして時間軸に配置しているかを示す。
【0183】
例えば、予約情報テーブルT1には時間に関するデータ項目として「登録日付」、「予約開始日」、「予約終了日」の3つの項目を備えている。なお、時間条件2において第1の時間条件を指定する理由は、それぞれのデータ項目の観点で、時間の変化に伴ったレコードの変化などを分析する旨の要求に備え、時間に関する全てのデータ項目に基づいて、レコードを抽出することが重要なためである。第1の時間条件の指定の方法は、先の図4及び図5に記載している。
【0184】
表8乃至表31は、1998年12月の入れ子テーブル36に登録されているテーブルの例を示す。
【0185】
表8は、テーブルの名称が「利用者情報テーブルM1」であって日付を示す項目が「登録日付」の場合の列と、項目値の組合せが全て空の要素からなる場合の行との交点位置に登録されているテーブルM1−1である。
【0186】
なお、本実施の形態に係るデータ生成装置4において、項目値の組合せが全て空の要素からなる場合には、テーブル名称の軸の示すテーブル内のレコードのうち時間軸の条件を満たす全てのレコードを入れ子テーブル36に登録する。これは、何の項目値も指定されていない場合にはユーザが分析に利用する項目値を絞り切れていないとして取り扱うためである。しかしながら、このような取り扱いに限定されるものではなく、例えば項目値の組合せが全て空の要素からなる場合には該当するレコードがないとしてもよい。
【0187】
【表8】
【0188】
同様に、表9から表19も、テーブルの名称が「利用者情報テーブルM1」であって日付を示す項目が「登録日付」の場合の列に登録されているテーブルM1−2からテーブルM1−800を表している。例えば、表13に示すテーブルM1−6は、利用者情報テーブルM1内のレコードであって登録日付が1998年12月であり、項目「ランク」が項目値「A」のレコードが登録されている。
【0189】
【表9】
【0190】
【表10】
【0191】
【表11】
【0192】
【表12】
【0193】
【表13】
【0194】
【表14】
【0195】
【表15】
【0196】
【表16】
【0197】
【表17】
【0198】
【表18】
【0199】
【表19】
【0200】
表20は、テーブルの名称が「予約情報テーブルT11」であって日付を示す項目が「登録日付」の場合の列と、項目値の組合せが全て空の要素からなる場合の行との交点位置に登録されているテーブルT11−1である。
【0201】
なお、ここでも項目値の組合せが全て空の要素からなる場合に、テーブル名称の軸の示すテーブル内のレコードのうち時間軸の条件を満たす全てのレコードを入れ子テーブル36に登録する。
【0202】
【表20】
【0203】
同様に、表21から表31も、テーブルの名称が「予約情報テーブルT11」であって日付を示す項目が「登録日付」の場合の列に登録されているテーブルT11−2からテーブルT1−800を表している。例えば、表25に示すテーブルT11−6は、予約情報テーブルT1内のレコードであって登録日付が1998年12月であり、項目「ランク」が項目値「A」のレコードが登録されている。なお、ここでは、予約情報テーブルT1における任意のレコードの項目「利用者ID」に基づいて利用者情報が参照され、この参照された利用者情報の項目「ランク」が「A」であれば、この任意のレコードが入れ子テーブル36のテーブル11−6に登録される。
【0204】
【表21】
【0205】
【表22】
【0206】
【表23】
【0207】
【表24】
【0208】
【表25】
【0209】
【表26】
【0210】
【表27】
【0211】
【表28】
【0212】
【表29】
【0213】
【表30】
【0214】
【表31】
【0215】
表32乃至表43は、1999年1月の入れ子テーブル37に登録されているテーブルの例を示す。
【0216】
表32は、テーブルの名称が「予約情報テーブルT12」であって日付を示す項目が「予約開始日」の場合の列と、項目値の組合せが全て空の要素からなる場合の行との交点位置に登録されているテーブルT12−1である。
【0217】
なお、ここでも項目値の組合せが全て空の要素からなる場合に、テーブル名称の軸の示すテーブル内のレコードのうち時間軸の条件を満たす全てのレコードを入れ子テーブル37に登録する。ここでは、予約情報テーブルT1のレコードのうち、項目「予約開始日」が「1999年1月」に該当するものは予約番号「Y000001」のみである。
【0218】
【表32】
【0219】
同様に、表33から表43も、テーブルの名称が「予約情報テーブルT12」であって日付を示す項目が「予約開始日」の場合の列に登録されているテーブルT12−2からテーブルT12−800を表している。例えば、表38に示すテーブルT11−6は、予約情報テーブルT1内のレコードであって予約開始日が1999年1月であり、項目「ランク」が項目値「A」のレコードが登録されている。ここでは、予約情報テーブルT1における任意のレコードの項目「利用者ID」に基づいて利用者情報が参照され、この参照された利用者情報の項目「ランク」が「A」であれば、この任意のレコードが入れ子テーブル37のテーブル12−6に登録される。
【0220】
【表33】
【0221】
【表34】
【0222】
【表35】
【0223】
【表36】
【0224】
【表37】
【0225】
【表38】
【0226】
【表39】
【0227】
【表40】
【0228】
【表41】
【0229】
【表42】
【0230】
【表43】
【0231】
以上説明したように、本実施の形態に係るデータ生成装置4を動作させることにより、データ分析のために「時間」、「データベースの持つテーブルの名称」、「項目値の組合せ」の3つの視点をユーザに提供することができる。
【0232】
この3つの視点のうち、「時間」は事務処理等に対する分析に有効な要素であり、「データベースの持つテーブルの名称」はどのテーブルが分析に有効であるかを調べるのに有効な要素である。そして、「項目値の組合せ」を全て生成して視点とすることで、ユーザにデータ分析のための具体的な視点を与えることができる。
【0233】
また、本実施の形態においては、データベース1に蓄積された2次元の表形式のデータを、「時間」、「データベースの持つテーブルの名称」、「項目値の組合せ」の3つの視点により再構成し、新たに一つの多層入れ子テーブル5にデータを蓄積して提供する。この多層入れ子テーブル5に蓄積されたデータは、入力となったデータベース1の持つ全データを含み、あらゆるデータ分析のソースとなる。したがって、ユーザは、この多層入れ子テーブル5に蓄積されたデータにより、データ分析のための視点とその視点に基づく全テーブルのデータの候補を取得することができる。
【0234】
さらに、本実施の形態においては、分析の観点とその観点毎のデータが多層入れ子テーブル5として1元管理されているため、データ分析のための手続が単純化され、ユーザは分析そのものに注力しやすい。
【0235】
さらに、本実施の形態で得られる多層入れ子テーブル5においては、分析のための視点や発想が多層化されて配置されるため、この多層化された視点や発想を組み合わせたり、絞り込んだりすることにより、ユーザは新たな分析の観点を発見することが容易となる。
【0236】
さらに、本実施の形態により得られる多層入れ子テーブルを提供すれば、データ分析のための対象データの構造と検索方法とを統一することができる。
【0237】
なお、上記各実施の形態に係るデータ生成装置4は、同様の作用・機能を実現可能であれば各構成要素の配置を変更させてもよく、また各構成要素を自由に組み合わせてもよい。
【0238】
また、上記第1及び第2の実施の形態に係るデータ生成装置4の各機能、各要素は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク(フロッピーディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリなどの記憶媒体に書き込んで適用したり、通信媒体により伝送して計算機あるいは計算機システムに適用することも可能である。上記各機能を実現するコンピュータは、記憶媒体に記憶されたプログラムを読み込み、プログラムによって動作が制御されることにより、上述した処理を実行する。
【0239】
【発明の効果】
以上詳記したように本発明においては、所定単位の時間、データベース内のテーブルの識別情報、データベース内のテーブルにおける項目のうちの任意の項目の取り得る項目値の組合せの3要素のより、データベースの内容が再構成される。
【0240】
この再構成により得られる多層入れ子テーブルを用いることで、ユーザはデータ分析のための視点とその視点に基づく全テーブルのデータの候補を取得することができる。
【0241】
また、多層入れ子テーブルを生成することにより、データ分析のための対象データの保存場所と取得方法を統一することができる。
【0242】
また、多層入れ子テーブルを生成することにより、例えば事務処理システム等のようなデータ分析のための対象データとなるデータのソースを提供することができる。
【0243】
また、多層入れ子テーブルを生成することにより、データ分析(データの検索、抽出、分類、数え上げ、集計等)のためのプログラムをはじめから作成しなくても、適切にデータを管理することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るデータ生成装置の構成を示すブロック図。
【図2】同実施の形態に係るデータ生成装置の動作を示すフロー図。
【図3】本発明の第2の実施の形態においてデータベースに蓄積されているテーブル間の関係を例示する概念図。
【図4】同実施の形態における第1の時間条件の記述形式を示す概念図。
【図5】同実施の形態における第1の時間条件の記述形式にしたがって記述された条件の具体例を示す概念図。
【図6】同実施の形態における第2の時間条件の記述形式を示す概念図。
【図7】同実施の形態における第2の時間条件の記述形式にしたがって記述された条件の具体例を示す概念図。
【図8】同実施の形態における項目値条件を設定するための記述形式を示す概念図。
【図9】同実施の形態における項目値条件の記述形式にしたがって記述された条件の具体例を示す概念図。
【図10】同実施の形態に係るデータ生成装置によって生成された多層入れ子テーブルの例を示す概念図。
【図11】同実施の形態において条件処理部によって項目値条件が認識・変換・展開された状態を示す概念図。
【図12】同実施の形態において項目内組合せ生成部によって生成される項目内の項目値の組合せを示すリストの概念図。
【図13】同実施の形態において項目間組合せ生成部によって生成される項目値の組合せの具体例を示す概念図。
【図14】項目値の組合せの表記方法を説明するための概念図。
【図15】 e(m,n)と項目内の組合せリストの要素との関係を示す概念図。
【図16】本実施の形態において格納部によってデータの登録された多層入れ子テーブルを示す概要図。
【符号の説明】
1…データベース
2…時間に関する条件
3…項目と項目値に関する条件
4…データ生成装置
5…多層入れ子テーブル
6…条件処理部
7…組合せ処理部
8…多層入れ子テーブル生成部
9…抽出部
10…格納部
11…集合データ
Claims (4)
- 少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、前記少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、前記少なくとも一つのテーブルの識別情報を第1の視点とし、前記時間に関する条件を満たす時間を第2の視点とし、前記項目値条件を満たす項目値の組合せを第3の視点とし、前記第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納されている多層入れ子テーブルを生成する多層入れ子テーブル生成手段と、
前記少なくとも一つのテーブルの中から前記第1乃至第3の視点に該当するレコードを抽出して前記多層入れ子テーブルに格納する格納手段と
を具備したことを特徴とするデータ生成装置。 - 少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、前記少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、前記時間に関する条件を満たす具体的な時間と前記項目値条件を満たす具体的な項目値とを求める条件処理手段と、
前記条件処理手段によって求められた具体的な項目値に基づいて、この具体的な項目値の組合せを求める組合せ生成手段と、
前記少なくとも一つのテーブルの識別情報を第1の視点とし、前記条件処理手段によって求められた具体的な時間を第2の視点とし、前記組合せ生成手段によって求められた具体的な項目値の組合せを第3の視点とし、前記第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納するための多層入れ子テーブルを生成する多層入れ子テーブル生成手段と、
前記データベースの内容を読み込んで、前記多層入れ子テーブルに格納すべきレコードを抽出する抽出手段と、
前記抽出手段によって抽出されたレコードを前記多層入れ子テーブルの該当位置に格納する格納手段と
を具備したことを特徴とするデータ生成装置。 - コンピュータに、
少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、前記少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、前記少なくとも一つのテーブルの識別情報を第1の視点とし、前記時間に関する条件を満たす時間を第2の視点とし、前記項目値条件を満たす項目値の組合せを第3の視点とし、前記第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納されている多層入れ子テーブルを生成させる多層入れ子テーブル生成機能と、
前記少なくとも一つのテーブルの中から前記第1乃至第3の視点に該当するレコードを抽出して前記多層入れ子テーブルに格納させる格納機能と
を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。 - コンピュータに、
少なくとも一つのテーブルを含むデータベースの内容と、時間に関する条件と、前記少なくとも一つのテーブルにおける項目のうちの少なくとも一つの項目の取り得る項目値に関する項目値条件とに基づいて、前記時間に関する条件を満たす具体的な時間と前記項目値条件を満たす具体的な項目値とを求めさせる条件処理機能と、
前記条件処理機能によって求められた具体的な項目値に基づいて、この具体的な項目値の組合せを求めさせる組合せ生成機能と、
前記少なくとも一つのテーブルの識別情報を第1の視点とし、前記条件処理機能によって求められた具体的な時間を第2の視点とし、前記組合せ生成機能によって求められた具体的な項目値の組合せを第3の視点とし、前記第2の視点で層を形成し、3つの視点に該当するレコードの集合テーブルが入れ子状態に格納するための多層入れ子テーブルを生成させる多層入れ子テーブル生成機能と、
前記データベースの内容を読み込んで、前記多層入れ子テーブルに格納すべきレコードを抽出させる抽出機能と、
前記抽出機能によって抽出されたレコードを前記多層入れ子テーブルの該当位置に格納させる格納機能と
を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18187399A JP4346158B2 (ja) | 1999-06-28 | 1999-06-28 | データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18187399A JP4346158B2 (ja) | 1999-06-28 | 1999-06-28 | データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001014320A JP2001014320A (ja) | 2001-01-19 |
JP4346158B2 true JP4346158B2 (ja) | 2009-10-21 |
Family
ID=16108358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18187399A Expired - Fee Related JP4346158B2 (ja) | 1999-06-28 | 1999-06-28 | データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4346158B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003165622A (ja) * | 2001-12-03 | 2003-06-10 | Seerex Kk | 宴会場備品管理システム |
US7260513B2 (en) | 2002-07-19 | 2007-08-21 | Microsoft Corporation | System and method for analytically modeling data from different measure groups onto a single cube |
US7433886B2 (en) * | 2003-10-24 | 2008-10-07 | Microsoft Corporation | SQL language extensions for modifying collection-valued and scalar valued columns in a single statement |
JP2018101414A (ja) * | 2017-11-30 | 2018-06-28 | Fdcグローバル株式会社 | 情報処理装置、端末及びプログラム |
-
1999
- 1999-06-28 JP JP18187399A patent/JP4346158B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001014320A (ja) | 2001-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Costin | The use of ethnoarchaeology for the archaeological study of ceramic production | |
PJ et al. | Service quality and customer satisfaction in hospitality, leisure, sport and tourism: an assessment of research in Web of Science | |
DE102004022481A1 (de) | Datenverwaltungssystem, das einen Datenthesaurus zur Abbildung zwischen mehreren Datenschemata oder zwischen mehreren Domänen innerhalb eines Datenschemas bereitstellt | |
Hamzei et al. | Place facets: a systematic literature review | |
CN110532309B (zh) | 一种高校图书馆用户画像系统的生成方法 | |
Halkiopoulos et al. | An expert system for recommendation tourist destinations: An innovative approach of digital marketing and decision-making process | |
Höpken et al. | Tourism knowledge destination | |
JP5535062B2 (ja) | ウェブログの時系列分析のためのデータ格納および照会方法及びその方法を実行するシステム | |
Li et al. | Warehouse vis: A visual analytics approach to facilitating warehouse location selection for business districts | |
Kayser et al. | Data collection map: A canvas for shared data awareness in data-driven innovation projects | |
Coyle | Interior library GIS | |
JP4346158B2 (ja) | データ生成装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体 | |
CN107408229A (zh) | 用于优化诸如旅游设施等的未充分使用的多个物理设施的使用的系统和方法 | |
Usman et al. | A data mining approach to knowledge discovery from multidimensional cube structures | |
JP2017182391A (ja) | 産学連携に利用可能な研究情報を収集して提示する研究情報提示装置、研究情報提示システム、及び、研究情報提示方法 | |
Chasupa et al. | The framework of extracting unstructured usage for big data platform | |
Partha et al. | Data Center Data Warehouse Development at Z Bali Clinic Using the Kimball Nine-Step Method | |
Berkhout et al. | Software ecosystem health of cryptocurrencies | |
Antonelli et al. | Introducing collaborative practices in small medium enterprises | |
US8706686B2 (en) | Method, computer system, computer program and computer program product for storage and retrieval of data files in a data storage means | |
Padberg | Big Data and Business Intelligence: a data-driven strategy for e-commerce organizations in the hotel industry | |
Dissanayake et al. | Association Mining Approach for Customer Behavior Analytics | |
Bell et al. | Measuring art, counting pixels? The collaboration of art history and computer vision oscillates between quantitative and hermeneutic methods | |
JP2004302694A (ja) | 事業機会発見支援方法、事業機会発見支援プログラムおよび事業機会発見支援装置 | |
Ranjith et al. | A survey on recent recommendation systems for the tourism industry |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060307 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090310 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090511 |
|
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: 20090623 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090714 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120724 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |