JP2001167098A - 大量データの分散並列分析方法 - Google Patents
大量データの分散並列分析方法Info
- Publication number
- JP2001167098A JP2001167098A JP34702699A JP34702699A JP2001167098A JP 2001167098 A JP2001167098 A JP 2001167098A JP 34702699 A JP34702699 A JP 34702699A JP 34702699 A JP34702699 A JP 34702699A JP 2001167098 A JP2001167098 A JP 2001167098A
- Authority
- JP
- Japan
- Prior art keywords
- data
- analysis
- processing
- analysis result
- analyzed
- 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.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 68
- 238000007405 data analysis Methods 0.000 claims abstract description 45
- 238000013500 data storage Methods 0.000 claims abstract description 42
- 238000000034 method Methods 0.000 claims description 89
- 238000000540 analysis of variance Methods 0.000 claims 1
- 238000004590 computer program Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 70
- 238000007418 data mining Methods 0.000 abstract description 6
- 238000003672 processing method Methods 0.000 abstract description 6
- 238000007781 pre-processing Methods 0.000 abstract description 3
- 238000011156 evaluation Methods 0.000 description 23
- 230000005540 biological transmission Effects 0.000 description 17
- 239000000872 buffer Substances 0.000 description 16
- 230000006854 communication Effects 0.000 description 16
- 238000004891 communication Methods 0.000 description 16
- 238000002360 preparation method Methods 0.000 description 14
- 238000013523 data management Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 5
- 238000005065 mining Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】大量のデータから知識を発見するデータマイニ
ングの並列分散処理方法に関しては、従来、データを分
割して複数の処理装置に分配するので、処理装置間で分
析対象データの転送が必要となったり、並列分散処理方
法を実行するためには、前処理としてデータベースから
各処理装置へデータを分配する必要があるという問題が
ある。また、処理装置に大容量の主記憶が必要であると
いう問題がある。 【解決手段】単数、または複数のデータ格納手段、分析
結果集計手段、複数のデータ分析手段を用いる。データ
格納手段は分析対象データを一回送信し、複数のデータ
分析手段がこれを受信する。各々のデータ分析手段は受
信したデータを対象として分析を行い、その後、それぞ
れのデータ分析手段において得られた分析結果を分析結
果集計手段が集計し、全体の分析結果とする。
ングの並列分散処理方法に関しては、従来、データを分
割して複数の処理装置に分配するので、処理装置間で分
析対象データの転送が必要となったり、並列分散処理方
法を実行するためには、前処理としてデータベースから
各処理装置へデータを分配する必要があるという問題が
ある。また、処理装置に大容量の主記憶が必要であると
いう問題がある。 【解決手段】単数、または複数のデータ格納手段、分析
結果集計手段、複数のデータ分析手段を用いる。データ
格納手段は分析対象データを一回送信し、複数のデータ
分析手段がこれを受信する。各々のデータ分析手段は受
信したデータを対象として分析を行い、その後、それぞ
れのデータ分析手段において得られた分析結果を分析結
果集計手段が集計し、全体の分析結果とする。
Description
【0001】
【発明の属する技術分野】本発明は、大量のデータを対
象とするデータ分析技術に関する。
象とするデータ分析技術に関する。
【0002】
【従来の技術】大量のデータから知識を発見する技術は
データマイニングと呼ばれている。発見される知識の具
体例として、相関ルール(Association Rule)がよく知
られている。相関ルールの基本的概念は文献「Mining A
ssociation Rules between Setof Items in Large Data
bases」(proceeding of ACM SIGMOD、1993)に説明さ
れている。それによれば、 I_1 から I_m までの m 個
の二値属性(アイテムと呼ばれ、0 か 1 の一方の値を
持つ)と、アイテムに対応する m 個の要素からなる二
値ベクトル(トランザクションと呼ばれる)と、このト
ランザクションの集合 T を考えた時、相関ルールは「X
→ I_j」と記述される。ここで、X は I_1から I_m ま
での m 個のアイテムのうちのいくつかからなるアイテ
ムの集合(アイテムセットと呼ばれる)、 I_j は X に
含まれない単一のアイテムである。1つのトランザクシ
ョン t と、1つのアイテム i を考えた時、 t の要素
のうち、i に対応するものの値が 1 であれば、トラン
ザクション t は アイテム i を満足すると言い、 t が
アイテムセット X に含まれる全てのアイテムを満足す
る時、トランザクション t はアイテムセット X を満足
すると言う。トランザクション集合 T において、アイ
テムセット X を満足するトランザクションの数を K、
アイテムセット X を満足し、かつアイテム I_j をも満
足するトランザクションの数を J とした時、割合 J/K
を相関ルール「X → I_j」の「コンフィデンス」と呼
ぶ。また、トランザクション集合 T の全体に対する上
記 J の割合を相関ルール「X → I_j」の「サポート」
と呼ぶ。また、トランザクション集合 T の全体に対す
る上記 K の割合をアイテムセット X の「サポート」と
呼ぶ。
データマイニングと呼ばれている。発見される知識の具
体例として、相関ルール(Association Rule)がよく知
られている。相関ルールの基本的概念は文献「Mining A
ssociation Rules between Setof Items in Large Data
bases」(proceeding of ACM SIGMOD、1993)に説明さ
れている。それによれば、 I_1 から I_m までの m 個
の二値属性(アイテムと呼ばれ、0 か 1 の一方の値を
持つ)と、アイテムに対応する m 個の要素からなる二
値ベクトル(トランザクションと呼ばれる)と、このト
ランザクションの集合 T を考えた時、相関ルールは「X
→ I_j」と記述される。ここで、X は I_1から I_m ま
での m 個のアイテムのうちのいくつかからなるアイテ
ムの集合(アイテムセットと呼ばれる)、 I_j は X に
含まれない単一のアイテムである。1つのトランザクシ
ョン t と、1つのアイテム i を考えた時、 t の要素
のうち、i に対応するものの値が 1 であれば、トラン
ザクション t は アイテム i を満足すると言い、 t が
アイテムセット X に含まれる全てのアイテムを満足す
る時、トランザクション t はアイテムセット X を満足
すると言う。トランザクション集合 T において、アイ
テムセット X を満足するトランザクションの数を K、
アイテムセット X を満足し、かつアイテム I_j をも満
足するトランザクションの数を J とした時、割合 J/K
を相関ルール「X → I_j」の「コンフィデンス」と呼
ぶ。また、トランザクション集合 T の全体に対する上
記 J の割合を相関ルール「X → I_j」の「サポート」
と呼ぶ。また、トランザクション集合 T の全体に対す
る上記 K の割合をアイテムセット X の「サポート」と
呼ぶ。
【0003】アイテムセット X、アイテム I_j の組合
せは多数ある得るが、その中から、与えられた最小コン
フィデンス c、および最小サポート s 以上のコンフィ
デンスとサポートを持つ相関ルールを発見するための基
本的な手法について文献「Fast Algorithms for Mining
Association Rules」(Proceedings of VLDB、1994)
に述べられている。この文献では、 n 個のアイテムか
らなるアイテムセットのうち、最小サポート s 以上の
サポートを持つものの集合をラージアイテム集合 L_n
と呼び、 L_(k-1) を元に L_k を得る処理を1つのパス
とし、 k の値を1 ずつ増加させながら、新たなラージ
アイテム集合が得られなくなるまでパスを繰り返すこと
によって最小サポート s を満たすアイテムセットの集
合を求める。
せは多数ある得るが、その中から、与えられた最小コン
フィデンス c、および最小サポート s 以上のコンフィ
デンスとサポートを持つ相関ルールを発見するための基
本的な手法について文献「Fast Algorithms for Mining
Association Rules」(Proceedings of VLDB、1994)
に述べられている。この文献では、 n 個のアイテムか
らなるアイテムセットのうち、最小サポート s 以上の
サポートを持つものの集合をラージアイテム集合 L_n
と呼び、 L_(k-1) を元に L_k を得る処理を1つのパス
とし、 k の値を1 ずつ増加させながら、新たなラージ
アイテム集合が得られなくなるまでパスを繰り返すこと
によって最小サポート s を満たすアイテムセットの集
合を求める。
【0004】L_(k-1) を元に L_k を得るには、まず、
L_(k-1) に含まれるうちの k 個のアイテムからなる可
能な全てのアイテムセットを作成し、これらアイテムセ
ットの集合を候補アイテム集合 C_k とし、次にトラン
ザクション集合 T を走査し、C_k のそれぞれのアイテ
ムセットについてアイテムセットを満足するトランザク
ションの数を数え上げ、それによってサポートの値を算
出する。候補アイテム集合 C_k のうちで s 以上のサポ
ートを持つアイテムセットの集合を新たなラージアイテ
ム集合 L_k とする。この処理を、新たなラージアイテ
ム集合が得られなくなるまでパスを繰り返す。ラージア
イテム集合が得られた後、これに含まれるアイテムセッ
トのそれぞれにおいて、含まれるアイテムを用いて作成
可能な相関ルールについてそのコンフィデンスを算出
し、最小コンフィデンス c を満たす相関ルールを選び
出す。こうして得られた相関ルールが最終的な結果とな
る。
L_(k-1) に含まれるうちの k 個のアイテムからなる可
能な全てのアイテムセットを作成し、これらアイテムセ
ットの集合を候補アイテム集合 C_k とし、次にトラン
ザクション集合 T を走査し、C_k のそれぞれのアイテ
ムセットについてアイテムセットを満足するトランザク
ションの数を数え上げ、それによってサポートの値を算
出する。候補アイテム集合 C_k のうちで s 以上のサポ
ートを持つアイテムセットの集合を新たなラージアイテ
ム集合 L_k とする。この処理を、新たなラージアイテ
ム集合が得られなくなるまでパスを繰り返す。ラージア
イテム集合が得られた後、これに含まれるアイテムセッ
トのそれぞれにおいて、含まれるアイテムを用いて作成
可能な相関ルールについてそのコンフィデンスを算出
し、最小コンフィデンス c を満たす相関ルールを選び
出す。こうして得られた相関ルールが最終的な結果とな
る。
【0005】上記の基本的アルゴリズムを計算機で実行
する際には、トランザクションの集合を2次記憶に保持
し、候補アイテム集合を満たすトランザクションの数を
数え上げるカウンタを主記憶に保持することになる。こ
の時、2つの問題点がある。1つは、1回のパスを実行
するごとにトランザクション集合全体を走査するため、
2次記憶からのデータの読み出しに多くの処理時間を費
やしてしまうという点である。もう1つは、与えられた
トランザクション集合に現れるアイテムの数によって
は、候補アイテム集合が非常に大きくなり、カウンタを
保持するために大容量の主記憶が必要となる点である。
これらの問題を解決するための並列分散処理方法が文献
「Parallel Mining of Association Rules」(IEEE Tra
nsactions on Knowledge and Data Engineering、199
6)に述べられている。この文献には3つの並列アルゴ
リズムが説明されている。これら3つのアルゴリズムは
いずれも、複数の処理装置を有し、トランザクション集
合は分割されて各処理装置に局所的な2次記憶に分配さ
れて保持されることを前提としている。第1の並列アル
ゴリズムは「Count Distribution」と呼ばれ、候補アイ
テム集合のサポートの算出の際のトランザクション集合
の走査を複数の処理装置で並列に行うことによってデー
タの読み出しに要する時間を短縮することが可能であ
る。(しかし、候補アイテム集合のサポートを算出する
際のカウンタを各々の処理装置で全て保持するので、大
容量の主記憶が要求されると言う点は解決されない。)
第2の並列アルゴリズムは「Data Distribution」と呼
ばれ、カウンタを複数の処理装置に分配して保持するこ
とによって、各処理装置において必要となる主記憶量を
削減することが可能である。(しかし、各処理装置に分
配されたトランザクションを処理装置間で転送する必要
があるという別の問題が生じる。)また、 Count Distr
ibution、Data Distribution ともに、各々の処理装置
で得られた候補アイテム集合のサポートを1回のパスご
とに集計するので、処理装置ごとの処理時間に差がある
場合、1回のパスごとに最も遅い処理装置の終了を待た
ねばならず、処理時間の無駄が生じるという問題もあ
る。第3の並列アルゴリズムは「Candidate Distributi
on」と呼ばれ、この問題を解決することを目的としてい
る。あるアイテムセットを満たすトランザクションの集
合をサポートトランザクション集合と呼ぶことにする。
する際には、トランザクションの集合を2次記憶に保持
し、候補アイテム集合を満たすトランザクションの数を
数え上げるカウンタを主記憶に保持することになる。こ
の時、2つの問題点がある。1つは、1回のパスを実行
するごとにトランザクション集合全体を走査するため、
2次記憶からのデータの読み出しに多くの処理時間を費
やしてしまうという点である。もう1つは、与えられた
トランザクション集合に現れるアイテムの数によって
は、候補アイテム集合が非常に大きくなり、カウンタを
保持するために大容量の主記憶が必要となる点である。
これらの問題を解決するための並列分散処理方法が文献
「Parallel Mining of Association Rules」(IEEE Tra
nsactions on Knowledge and Data Engineering、199
6)に述べられている。この文献には3つの並列アルゴ
リズムが説明されている。これら3つのアルゴリズムは
いずれも、複数の処理装置を有し、トランザクション集
合は分割されて各処理装置に局所的な2次記憶に分配さ
れて保持されることを前提としている。第1の並列アル
ゴリズムは「Count Distribution」と呼ばれ、候補アイ
テム集合のサポートの算出の際のトランザクション集合
の走査を複数の処理装置で並列に行うことによってデー
タの読み出しに要する時間を短縮することが可能であ
る。(しかし、候補アイテム集合のサポートを算出する
際のカウンタを各々の処理装置で全て保持するので、大
容量の主記憶が要求されると言う点は解決されない。)
第2の並列アルゴリズムは「Data Distribution」と呼
ばれ、カウンタを複数の処理装置に分配して保持するこ
とによって、各処理装置において必要となる主記憶量を
削減することが可能である。(しかし、各処理装置に分
配されたトランザクションを処理装置間で転送する必要
があるという別の問題が生じる。)また、 Count Distr
ibution、Data Distribution ともに、各々の処理装置
で得られた候補アイテム集合のサポートを1回のパスご
とに集計するので、処理装置ごとの処理時間に差がある
場合、1回のパスごとに最も遅い処理装置の終了を待た
ねばならず、処理時間の無駄が生じるという問題もあ
る。第3の並列アルゴリズムは「Candidate Distributi
on」と呼ばれ、この問題を解決することを目的としてい
る。あるアイテムセットを満たすトランザクションの集
合をサポートトランザクション集合と呼ぶことにする。
【0006】Candidate Distribution アルゴリズムで
は途中のパスm(m はヒューリスティックに決定する)
において、候補アイテム集合 C_m に含まれるアイテム
セットをグループ分けする。この時、異なるグループに
属するアイテムセットの間でサポートトランザクション
集合がなるべく重ならないようにする。このグループ分
けにしたがって候補アイテム集合と、そのサポートトラ
ンザクション集合を複数の処理装置へ分配し直す。これ
により、各々の処理装置へ分配されたトランザクション
のみの走査で以降のパスにおけるラージアイテム集合を
得ることができ、全ての処理装置がパスごとに同期を取
る必要がなくなる。
は途中のパスm(m はヒューリスティックに決定する)
において、候補アイテム集合 C_m に含まれるアイテム
セットをグループ分けする。この時、異なるグループに
属するアイテムセットの間でサポートトランザクション
集合がなるべく重ならないようにする。このグループ分
けにしたがって候補アイテム集合と、そのサポートトラ
ンザクション集合を複数の処理装置へ分配し直す。これ
により、各々の処理装置へ分配されたトランザクション
のみの走査で以降のパスにおけるラージアイテム集合を
得ることができ、全ての処理装置がパスごとに同期を取
る必要がなくなる。
【0007】相関ルール以外のデータマイニング手法と
して、特徴ルール(CharacteristicRule)と、その発見
法が文献「Characteristic Rule Induction Algorithm
forData Mining」(proceedings of PAKDD、1998)に述
べられている。この文献では、複数のフィールドからな
るレコードの集合を分析対象データとしている。特徴ル
ールは「if A then B」と記述される。 A は1個以上の
条件の組合せ、B は単一の条件である。ここで言う「条
件」とは、フィールドとその値の組であり、例えば、
「X_i」をフィールド、「v_ij」を値とすれば、これら
を組にした物は条件であり、「X_i = v_ij」と記述され
る。また、分析対象のレコードにおいて、フィールド X
_i に値 v_ij を持つ場合、そのレコードは条件「X_i =
v_ij」を満足すると言う。また、特徴ルールは評価値
を持ち、特徴ルール「if A thenB」の評価値は
して、特徴ルール(CharacteristicRule)と、その発見
法が文献「Characteristic Rule Induction Algorithm
forData Mining」(proceedings of PAKDD、1998)に述
べられている。この文献では、複数のフィールドからな
るレコードの集合を分析対象データとしている。特徴ル
ールは「if A then B」と記述される。 A は1個以上の
条件の組合せ、B は単一の条件である。ここで言う「条
件」とは、フィールドとその値の組であり、例えば、
「X_i」をフィールド、「v_ij」を値とすれば、これら
を組にした物は条件であり、「X_i = v_ij」と記述され
る。また、分析対象のレコードにおいて、フィールド X
_i に値 v_ij を持つ場合、そのレコードは条件「X_i =
v_ij」を満足すると言う。また、特徴ルールは評価値
を持ち、特徴ルール「if A thenB」の評価値は
【0008】
【数1】P(A)^a log{P(B|A)/P(B)} と定義される。ここで、P(A)、P(B) はそれぞれ、分析
対象レコード全体のうちで条件 A および条件 B を満足
するレコードの割合であり、 P(B|A) は条件 Aを満足す
るレコードのうち、条件 A と 条件 B の両方を満足す
るレコードの割合である。また、指数 a はヒューリス
ティックに定められる正の定数である。
対象レコード全体のうちで条件 A および条件 B を満足
するレコードの割合であり、 P(B|A) は条件 Aを満足す
るレコードのうち、条件 A と 条件 B の両方を満足す
るレコードの割合である。また、指数 a はヒューリス
ティックに定められる正の定数である。
【0009】この文献で述べられている特徴ルールの発
見法は、分析対象データと then 部の条件、if 部に含
まれる条件数の上限、ルール数 M が与えられた時に、
特徴ルールの生成と評価値の算出を繰り返し、評価値の
最も大きい M 個の特徴ルールを発見する方法である。
見法は、分析対象データと then 部の条件、if 部に含
まれる条件数の上限、ルール数 M が与えられた時に、
特徴ルールの生成と評価値の算出を繰り返し、評価値の
最も大きい M 個の特徴ルールを発見する方法である。
【0010】上記の文献に述べられている特徴ルール発
見法では、1つの特徴ルールを生成し、その評価値を算
出するごとに分析対象データの全体、または一部を走査
する必要があり、相関ルールの場合と同じように、2次
記憶からのデータの読み出しに時間がかかるという問題
がある。これを解決するために、分析対象データの走査
を一回のみ行う方法が特開平11−3360号「大規模データ
分析方法」である。この方法は、可能な全ての条件につ
いて、これを満足するレコードの数を数え上げるための
カウンタを用意し、一回のデータ走査で全ての条件につ
いてのレコードの数え上げを行うというものである。こ
れによれば、データの読み出しにかかる時間を削減する
ことができる。しかし一方、カウンタを保持するために
大容量の主記憶が必要になるという問題がある。
見法では、1つの特徴ルールを生成し、その評価値を算
出するごとに分析対象データの全体、または一部を走査
する必要があり、相関ルールの場合と同じように、2次
記憶からのデータの読み出しに時間がかかるという問題
がある。これを解決するために、分析対象データの走査
を一回のみ行う方法が特開平11−3360号「大規模データ
分析方法」である。この方法は、可能な全ての条件につ
いて、これを満足するレコードの数を数え上げるための
カウンタを用意し、一回のデータ走査で全ての条件につ
いてのレコードの数え上げを行うというものである。こ
れによれば、データの読み出しにかかる時間を削減する
ことができる。しかし一方、カウンタを保持するために
大容量の主記憶が必要になるという問題がある。
【0011】
【発明が解決しようとする課題】相関ルール、特徴ルー
ルのいずれの場合も、基本的な発見方法においては、分
析対象データの走査にかかる処理時間とカウンタ保持に
必要な主記憶の容量の問題があり、一方を小さくしよう
とすると、他方が大きくなるという問題がある。これを
解決するための並列分散処理方法がいくつかあるが、相
関ルール発見の並列分散処理方法に関しては、データを
分割して複数の処理装置に分配するので、分析対象デー
タの走査にかかる処理時間は小さくできるものの、処理
装置間で分析対象データの転送が必要となったり、カウ
ンタを保持するために、依然として各々の処理装置にお
いて大容量の主記憶が必要となる。また、データマイニ
ング機能を持たない通常のデータベースシステムに分析
対象データが保持されている場合、並列分散処理方法を
実行するためには、前処理としてデータベースから各処
理装置へデータを分配する必要があり、このための処理
時間が余計にかかるという問題がある。
ルのいずれの場合も、基本的な発見方法においては、分
析対象データの走査にかかる処理時間とカウンタ保持に
必要な主記憶の容量の問題があり、一方を小さくしよう
とすると、他方が大きくなるという問題がある。これを
解決するための並列分散処理方法がいくつかあるが、相
関ルール発見の並列分散処理方法に関しては、データを
分割して複数の処理装置に分配するので、分析対象デー
タの走査にかかる処理時間は小さくできるものの、処理
装置間で分析対象データの転送が必要となったり、カウ
ンタを保持するために、依然として各々の処理装置にお
いて大容量の主記憶が必要となる。また、データマイニ
ング機能を持たない通常のデータベースシステムに分析
対象データが保持されている場合、並列分散処理方法を
実行するためには、前処理としてデータベースから各処
理装置へデータを分配する必要があり、このための処理
時間が余計にかかるという問題がある。
【0012】本発明の目的は、複数の処理装置を用いた
並列分散処理において、分析対象データの転送量、転送
回数を少なく抑え、かつ、各々の処理装置において必要
となる主記憶の量を少なく抑え、かつ、通常のデータベ
ースシステムに接続して実行可能なデータマイニングの
方法を提供することである。
並列分散処理において、分析対象データの転送量、転送
回数を少なく抑え、かつ、各々の処理装置において必要
となる主記憶の量を少なく抑え、かつ、通常のデータベ
ースシステムに接続して実行可能なデータマイニングの
方法を提供することである。
【0013】
【課題を解決するための手段】本発明の並列分散分析方
法では、単数、または複数のデータ格納手段と複数のデ
ータ分析手段を用いる。単数のデータ格納手段を用いる
場合、全ての分析対象データは単数のデータ格納手段に
格納される。複数のデータ格納手段を用いる場合、分析
対象データは分割され、複数のデータ格納手段に分配さ
れて格納される。
法では、単数、または複数のデータ格納手段と複数のデ
ータ分析手段を用いる。単数のデータ格納手段を用いる
場合、全ての分析対象データは単数のデータ格納手段に
格納される。複数のデータ格納手段を用いる場合、分析
対象データは分割され、複数のデータ格納手段に分配さ
れて格納される。
【0014】データ格納手段は分析対象データを複数の
データ分析手段に対して送信する。複数のデータ分析手
段は同一のデータを受信し、受信したデータを対象とし
てそれぞれのデータ分析手段において分析を行う。その
後、それぞれのデータ分析手段において得られた分析結
果をまとめて、全体の分析結果とする。
データ分析手段に対して送信する。複数のデータ分析手
段は同一のデータを受信し、受信したデータを対象とし
てそれぞれのデータ分析手段において分析を行う。その
後、それぞれのデータ分析手段において得られた分析結
果をまとめて、全体の分析結果とする。
【0015】データ格納手段は分析対象データを複数の
データ分析手段に対してまとめて一回送信し、複数のデ
ータ分析手段はこれを共有する。すなわち、データ格納
手段は複数のデータ分析手段の各々に対して個別に分析
対象データを送信することはしない。
データ分析手段に対してまとめて一回送信し、複数のデ
ータ分析手段はこれを共有する。すなわち、データ格納
手段は複数のデータ分析手段の各々に対して個別に分析
対象データを送信することはしない。
【0016】また、本発明の並列分散分析方法では、複
数のデータ分析手段が共有する共有記憶手段を用いる場
合がある。複数のデータ分析手段は、それぞれの分析結
果を共有記憶手段上に保持する。したがって、共有記憶
手段に保持された分析結果を読み出すことによって全体
の分析結果を得ることができる。
数のデータ分析手段が共有する共有記憶手段を用いる場
合がある。複数のデータ分析手段は、それぞれの分析結
果を共有記憶手段上に保持する。したがって、共有記憶
手段に保持された分析結果を読み出すことによって全体
の分析結果を得ることができる。
【0017】
【発明の実施の形態】本発明の第一の実施の形態を説明
する。図1に本実施形態の構成を示す。本実施形態は、
データ格納装置101、複数のデータ分析装置102、
分析結果集計装置103がバス型通信路104によって
接続されている。分析対象データはデータ格納装置に格
納されている。
する。図1に本実施形態の構成を示す。本実施形態は、
データ格納装置101、複数のデータ分析装置102、
分析結果集計装置103がバス型通信路104によって
接続されている。分析対象データはデータ格納装置に格
納されている。
【0018】図2にデータ分析の手順をしめす。データ
分析装置の準備処理201では、データ分析装置のそれ
ぞれにおいてデータ分析の準備を行い、分析対象データ
を受信する準備が完了したら、準備完了の信号をデータ
格納装置へ送信する。データ格納装置では、全てのデー
タ分析装置からの準備完了信号を受信するのを待つ(処
理202)。全てのデータ分析装置からの準備完了信号
を受信後、処理203において、データ格納装置は分析
対象データを走査し、まだ送信していないデータが残っ
ている場合は処理204へ、残っていない場合(全ての
分析対象データを送信し終わった場合)は処理206へ
進む。レコード送信処理204では、データ格納装置
は、まだ送信していないデータのうちの1レコードを送
信する。
分析装置の準備処理201では、データ分析装置のそれ
ぞれにおいてデータ分析の準備を行い、分析対象データ
を受信する準備が完了したら、準備完了の信号をデータ
格納装置へ送信する。データ格納装置では、全てのデー
タ分析装置からの準備完了信号を受信するのを待つ(処
理202)。全てのデータ分析装置からの準備完了信号
を受信後、処理203において、データ格納装置は分析
対象データを走査し、まだ送信していないデータが残っ
ている場合は処理204へ、残っていない場合(全ての
分析対象データを送信し終わった場合)は処理206へ
進む。レコード送信処理204では、データ格納装置
は、まだ送信していないデータのうちの1レコードを送
信する。
【0019】一度送信されたレコードは送信済みとして
扱われる。送信されたレコードはバス型通信路を介して
複数のデータ分析装置へ伝送される。通信路がバス型で
あるため、レコードはデータ格納装置からの1回の送信
で、通信路に接続された全てのデータ分析装置へ伝送さ
れる。データ受信、分析処理205では、データ格納装
置から送信されたレコードをそれぞれのデータ分析装置
において受信する。レコードの受信後、データ分析装置
では次のレコードを受信する準備を行い、受信準備が完
了したら、準備完了の信号をデータ格納装置へ送信す
る。また、既に受信済みのレコードとともに受信したレ
コードを対象としてデータ分析を行う。データ受信、分
析処理205の後は処理202へ戻る。分析結果集計処
理206では、分析結果集計装置はデータ分析装置から
分析結果を受け取り、これを集計して全体の分析結果を
得る。以上が、分析方法の概要である。このように、複
数の装置が互いに協調しながら、データ分析を行う。以
下に、特徴ルールの発見を例にとり、各装置において行
われる処理を詳細に説明する。
扱われる。送信されたレコードはバス型通信路を介して
複数のデータ分析装置へ伝送される。通信路がバス型で
あるため、レコードはデータ格納装置からの1回の送信
で、通信路に接続された全てのデータ分析装置へ伝送さ
れる。データ受信、分析処理205では、データ格納装
置から送信されたレコードをそれぞれのデータ分析装置
において受信する。レコードの受信後、データ分析装置
では次のレコードを受信する準備を行い、受信準備が完
了したら、準備完了の信号をデータ格納装置へ送信す
る。また、既に受信済みのレコードとともに受信したレ
コードを対象としてデータ分析を行う。データ受信、分
析処理205の後は処理202へ戻る。分析結果集計処
理206では、分析結果集計装置はデータ分析装置から
分析結果を受け取り、これを集計して全体の分析結果を
得る。以上が、分析方法の概要である。このように、複
数の装置が互いに協調しながら、データ分析を行う。以
下に、特徴ルールの発見を例にとり、各装置において行
われる処理を詳細に説明する。
【0020】分析対象データは複数のフィールドからな
るレコードの集合であり、全てのレコードは同数のフィ
ールドを持つ。レコードは分析の対象となる対象物、フ
ィールドは対象物の持つ属性に対応する。商店の顧客情
報を例にとると、1つのレコードは1人の顧客、各フィ
ールドは性別、年齢などの、顧客の属性に対応する。特
徴ルール発見では前処理として、各属性値を少数のカテ
ゴリに変換する。例えば、「年齢」は通常10〜100
程度の範囲の値を取り得るが、これを「35歳以下」、
「36歳以上55歳以下」、「56歳以上」のような少
数のカテゴリに変換する。また、「性別」は、もともと
「男」「女」の2つの値しか取り得ないので、このまま
2つのカテゴリとして用いることが多い。このようにカ
テゴリへの変換を施した分析対象データの例を図3に示
す。
るレコードの集合であり、全てのレコードは同数のフィ
ールドを持つ。レコードは分析の対象となる対象物、フ
ィールドは対象物の持つ属性に対応する。商店の顧客情
報を例にとると、1つのレコードは1人の顧客、各フィ
ールドは性別、年齢などの、顧客の属性に対応する。特
徴ルール発見では前処理として、各属性値を少数のカテ
ゴリに変換する。例えば、「年齢」は通常10〜100
程度の範囲の値を取り得るが、これを「35歳以下」、
「36歳以上55歳以下」、「56歳以上」のような少
数のカテゴリに変換する。また、「性別」は、もともと
「男」「女」の2つの値しか取り得ないので、このまま
2つのカテゴリとして用いることが多い。このようにカ
テゴリへの変換を施した分析対象データの例を図3に示
す。
【0021】特徴ルールは、次のように書き表される。
【0022】「if 性別=男 and 年齢=56以上 then 購入
額=大」すなわち、対象物の属性とカテゴリ化された値
の組からなる if-then ルールである。特徴ルールの if
部に現れる属性を「条件項目」、 then 部に現れる属
性を「結論項目」と呼ぶ。1つの属性が同時に条件項目
と結論項目の両方になることはない。また、特徴ルール
は評価値を持つ。一般に特徴ルールを「if A then B」
と表した時、その評価値は次式で定義される。
額=大」すなわち、対象物の属性とカテゴリ化された値
の組からなる if-then ルールである。特徴ルールの if
部に現れる属性を「条件項目」、 then 部に現れる属
性を「結論項目」と呼ぶ。1つの属性が同時に条件項目
と結論項目の両方になることはない。また、特徴ルール
は評価値を持つ。一般に特徴ルールを「if A then B」
と表した時、その評価値は次式で定義される。
【0023】
【数2】P(A)^a log{P(B|A)/P(B)} ここで、P(A)、P(B) はそれぞれ、分析対象データ全体
のうちで条件 A および条件 B を満足するレコードの割
合であり、 P(B|A) は条件 A を満足するレコードのう
ち、条件 A と 条件 B の両方を満足するレコードの割
合である。また、指数 a はヒューリスティックに定め
られる正の定数である。また、評価値の別の定義とし
て、次の式を用いる場合もある。
のうちで条件 A および条件 B を満足するレコードの割
合であり、 P(B|A) は条件 A を満足するレコードのう
ち、条件 A と 条件 B の両方を満足するレコードの割
合である。また、指数 a はヒューリスティックに定め
られる正の定数である。また、評価値の別の定義とし
て、次の式を用いる場合もある。
【0024】
【数3】P(A)^a P(B|A)log{P(B|A)/P(B)} 数1、数2のいずれにおいても、ルールに現れる条件を
満たすレコード、および分析対象データ全体のレコード
の数を知ることによって評価値を算出することができ
る。
満たすレコード、および分析対象データ全体のレコード
の数を知ることによって評価値を算出することができ
る。
【0025】特徴ルール発見とは、上記で定義したルー
ル評価値に基づき、評価値の大きい特徴ルールを発見す
る処理である。この時、発見すべき特徴ルールの数の上
限、結論項目となるフィールドとその値、条件項目の候
補となる複数のフィールド、1つの特徴ルールに現れる
条件項目の数の上限が分析者によって与えられているも
のとする。図4、5、6にルール発見の手順を示す。図
4はデータ格納装置における処理手順、図5はデータ分
析装置における処理手順、図6は分析結果集計装置にお
ける処理手順である。分析対象データとして図3に示し
たデータを例にとり、結論項目を「購入額」、その値を
「大」、条件項目の候補を「性別」、「年齢」、「職
業」、条件項目の条件数の上限を2とする。また、「性
別」は「男」、「女」の2値、「年齢」は「35歳以
下」、「36歳から55歳」、「56歳以上」の3値、
「職業」は「有」、「無」の2値を取り得るものとす
る。
ル評価値に基づき、評価値の大きい特徴ルールを発見す
る処理である。この時、発見すべき特徴ルールの数の上
限、結論項目となるフィールドとその値、条件項目の候
補となる複数のフィールド、1つの特徴ルールに現れる
条件項目の数の上限が分析者によって与えられているも
のとする。図4、5、6にルール発見の手順を示す。図
4はデータ格納装置における処理手順、図5はデータ分
析装置における処理手順、図6は分析結果集計装置にお
ける処理手順である。分析対象データとして図3に示し
たデータを例にとり、結論項目を「購入額」、その値を
「大」、条件項目の候補を「性別」、「年齢」、「職
業」、条件項目の条件数の上限を2とする。また、「性
別」は「男」、「女」の2値、「年齢」は「35歳以
下」、「36歳から55歳」、「56歳以上」の3値、
「職業」は「有」、「無」の2値を取り得るものとす
る。
【0026】まず、データ格納装置、データ分析装置、
分析結果集計装置の全てにおいて、割り当て設定処理4
01、501、601を行う。割り当て設定処理におい
ては、指定された条件項目の候補と、条件数の上限にし
たがって、可能な全ての特徴ルールに対応するカウンタ
を用意する。上記の条件項目候補と条件数の上限を用い
た場合、条件項目の可能な組合せは23通りであり、図
7に示す23通りの特徴ルールが可能である。特徴ルー
ルの評価値算出には、前述の P(A)、P(B|A)、P(B) が必
要である。ここで、結論項目となるフィールドとその値
は1つに指定されているため、 P(B) は全ての特徴ルー
ルについて同じである。したがって、各特徴ルールにつ
いて、 P(A)、P(B|A) を知るための2つのカウンタを用
意することになる。これらのカウンタは複数のデータ分
析装置に分配して割り当てられる。
分析結果集計装置の全てにおいて、割り当て設定処理4
01、501、601を行う。割り当て設定処理におい
ては、指定された条件項目の候補と、条件数の上限にし
たがって、可能な全ての特徴ルールに対応するカウンタ
を用意する。上記の条件項目候補と条件数の上限を用い
た場合、条件項目の可能な組合せは23通りであり、図
7に示す23通りの特徴ルールが可能である。特徴ルー
ルの評価値算出には、前述の P(A)、P(B|A)、P(B) が必
要である。ここで、結論項目となるフィールドとその値
は1つに指定されているため、 P(B) は全ての特徴ルー
ルについて同じである。したがって、各特徴ルールにつ
いて、 P(A)、P(B|A) を知るための2つのカウンタを用
意することになる。これらのカウンタは複数のデータ分
析装置に分配して割り当てられる。
【0027】どのデータ分析装置にどの特徴ルールのカ
ウンタを割り当てるかはデータ分析装置のうちの1つ、
または、分析結果集計装置、またはデータ格納装置のい
ずれかによって決定される。そして、カウンタを割り当
てられたデータ分析装置のそれぞれの識別名、または、
カウンタを割り当てられたデータ分析装置の数がデータ
格納装置へ通知される。各データ分析装置では割り当て
にしたがってカウンタを用意する。
ウンタを割り当てるかはデータ分析装置のうちの1つ、
または、分析結果集計装置、またはデータ格納装置のい
ずれかによって決定される。そして、カウンタを割り当
てられたデータ分析装置のそれぞれの識別名、または、
カウンタを割り当てられたデータ分析装置の数がデータ
格納装置へ通知される。各データ分析装置では割り当て
にしたがってカウンタを用意する。
【0028】データ格納装置では割り当て設定処理40
1の後、カウンタを割り当てられた全てのデータ分析装
置と分析結果集計装置から、準備完了の信号を受信する
のを待ち(処理402)、準備完了の信号を全て受信し
たら、処理403へ進む。処理403では、未送信のデ
ータがあるかどうかを確認し、未送信のデータがある場
合はレコード送信処理404へ、全てのデータが送信済
みである場合は送信終了処理405へ進む。レコード送
信処理404では、まだ送信していないデータのうちの
1個のレコードを通信路へ送信し、処理402へ戻る。
送信終了処理405では、全てのデータを送信し終わっ
たことを示す信号を通信路へ送信する。
1の後、カウンタを割り当てられた全てのデータ分析装
置と分析結果集計装置から、準備完了の信号を受信する
のを待ち(処理402)、準備完了の信号を全て受信し
たら、処理403へ進む。処理403では、未送信のデ
ータがあるかどうかを確認し、未送信のデータがある場
合はレコード送信処理404へ、全てのデータが送信済
みである場合は送信終了処理405へ進む。レコード送
信処理404では、まだ送信していないデータのうちの
1個のレコードを通信路へ送信し、処理402へ戻る。
送信終了処理405では、全てのデータを送信し終わっ
たことを示す信号を通信路へ送信する。
【0029】以上で、データ格納装置における処理は終
了する。
了する。
【0030】データ分析装置では割り当て設定処理50
1の後、分析対象データを受信する準備が完了したこと
を示す信号をデータ格納装置へ送信する(処理50
2)。データ受信待ち処理503では、データ格納装置
からデータを受信するのを待ち、データを受信したら、
処理504へ進む。処理504においては、受信したデ
ータがデータの終了を示す信号であるかどうかを判定
し、データ終了信号であればルール評価処理507へ、
そうでなければカウンタ更新処理505へ進む。カウン
タ更新処理505では、受信したデータは分析対象デー
タのレコードであるとして、そのフィールドの値を評価
する。そして、フィールドの値が、データ分析装置に割
り当てられた特徴ルールの条件と一致していれば、該当
するカウンタの値を更新する。一般に、1個のレコード
は、複数の特徴ルールの条件と一致し得る。すなわち、
1個のレコードの処理において、複数の特徴ルールのカ
ウンタ更新が行われる。データ受信準備処理506で
は、処理503で受信したレコードを破棄し、次のレコ
ードを受信する準備をし、処理502へ戻る。ルール評
価処理507では、データ分析装置に割り当てられたル
ールの評価値をカウンタの値に基づいて算出し、評価値
の大きい順に、発見すべき特徴ルールの数の上限として
指定された数の特徴ルールを取り出す。ただし、評価値
が 0 よりも小さい特徴ルールは取り出されない。した
がって、指定された数よりも少数の特徴ルールしか取り
出されない場合がある。この後、分析結果集計装置から
の指示を待つ処理508へ進む。分析結果集計装置から
の指示が終了指示である場合(処理509)は、データ
分析装置における処理を終了する。分析結果集計装置か
らの指示が分析結果送信指示である場合(処理510)
は、取り出しておいた特徴ルールとその評価値を分析結
果集計装置へ送信し(処理511)、指示を待つ処理5
08へ戻る。
1の後、分析対象データを受信する準備が完了したこと
を示す信号をデータ格納装置へ送信する(処理50
2)。データ受信待ち処理503では、データ格納装置
からデータを受信するのを待ち、データを受信したら、
処理504へ進む。処理504においては、受信したデ
ータがデータの終了を示す信号であるかどうかを判定
し、データ終了信号であればルール評価処理507へ、
そうでなければカウンタ更新処理505へ進む。カウン
タ更新処理505では、受信したデータは分析対象デー
タのレコードであるとして、そのフィールドの値を評価
する。そして、フィールドの値が、データ分析装置に割
り当てられた特徴ルールの条件と一致していれば、該当
するカウンタの値を更新する。一般に、1個のレコード
は、複数の特徴ルールの条件と一致し得る。すなわち、
1個のレコードの処理において、複数の特徴ルールのカ
ウンタ更新が行われる。データ受信準備処理506で
は、処理503で受信したレコードを破棄し、次のレコ
ードを受信する準備をし、処理502へ戻る。ルール評
価処理507では、データ分析装置に割り当てられたル
ールの評価値をカウンタの値に基づいて算出し、評価値
の大きい順に、発見すべき特徴ルールの数の上限として
指定された数の特徴ルールを取り出す。ただし、評価値
が 0 よりも小さい特徴ルールは取り出されない。した
がって、指定された数よりも少数の特徴ルールしか取り
出されない場合がある。この後、分析結果集計装置から
の指示を待つ処理508へ進む。分析結果集計装置から
の指示が終了指示である場合(処理509)は、データ
分析装置における処理を終了する。分析結果集計装置か
らの指示が分析結果送信指示である場合(処理510)
は、取り出しておいた特徴ルールとその評価値を分析結
果集計装置へ送信し(処理511)、指示を待つ処理5
08へ戻る。
【0031】分析結果集計装置では割り当て設定処理6
01の後、分析対象データを受信する準備が完了したこ
とを示す信号をデータ格納装置へ送信する(処理60
2)。データ受信待ち処理603では、データ格納装置
からデータを受信するのを待ち、データを受信したら、
処理604へ進む。処理604においては、受信したデ
ータがデータの終了を示す信号であるかどうかを判定
し、データ終了信号であれば分析結果収集処理606
へ、そうでなければ受信準備処理605へ進む。受信準
備処理605では、データ格納装置から受信したデータ
を破棄し、次のデータを受信する準備をし、処理602
へ戻る。分析結果収集処理606では、全てのデータ分
析装置へ順に分析結果送信指示を送り、それぞれのデー
タ分析装置で取り出された特徴ルールとその評価値を収
集する。分析結果集計処理607では、収集した特徴ル
ールの中から、評価値の大きい順に、発見すべき特徴ル
ールの数の上限として指定された数の特徴ルールを取り
出し、これを特徴ルール発見の結果とする。終了指示処
理608では、全てのデータ分析装置へ終了指示を送信
する。以上で、分析結果集計装置における処理を終了す
る。
01の後、分析対象データを受信する準備が完了したこ
とを示す信号をデータ格納装置へ送信する(処理60
2)。データ受信待ち処理603では、データ格納装置
からデータを受信するのを待ち、データを受信したら、
処理604へ進む。処理604においては、受信したデ
ータがデータの終了を示す信号であるかどうかを判定
し、データ終了信号であれば分析結果収集処理606
へ、そうでなければ受信準備処理605へ進む。受信準
備処理605では、データ格納装置から受信したデータ
を破棄し、次のデータを受信する準備をし、処理602
へ戻る。分析結果収集処理606では、全てのデータ分
析装置へ順に分析結果送信指示を送り、それぞれのデー
タ分析装置で取り出された特徴ルールとその評価値を収
集する。分析結果集計処理607では、収集した特徴ル
ールの中から、評価値の大きい順に、発見すべき特徴ル
ールの数の上限として指定された数の特徴ルールを取り
出し、これを特徴ルール発見の結果とする。終了指示処
理608では、全てのデータ分析装置へ終了指示を送信
する。以上で、分析結果集計装置における処理を終了す
る。
【0032】図8に本発明の第二の実施の形態の構成を
示す。第一の形態ではバス型の通信路を使用していた
が、第二の形態ではリング型の通信路を使用している。
リング型通信路では、全ての装置は送信端子と受信端子
を持ち、装置の送信端子は別の装置の受信端子と単方向
の通信路を介して接続されている。データ格納装置、デ
ータ分析装置、分析結果集計装置はいずれも、データを
発信する場合は、発信する装置の識別子をデータに付加
して、送信端子からデータを送出する。データを受信す
る場合は、受信端子からデータを受け取る。そして、そ
のデータに付加された識別子が自分のものであれば、そ
のデータを破棄し、識別子が自分のものでなければ、必
要に応じてそのデータを装置内に取り込むとともに、デ
ータと識別子を自分の送信端子から送出する。このよう
に、ある装置から送信されたデータは全ての装置の間を
順に転送されて送信元の装置へ戻り、そこで転送が終了
する。
示す。第一の形態ではバス型の通信路を使用していた
が、第二の形態ではリング型の通信路を使用している。
リング型通信路では、全ての装置は送信端子と受信端子
を持ち、装置の送信端子は別の装置の受信端子と単方向
の通信路を介して接続されている。データ格納装置、デ
ータ分析装置、分析結果集計装置はいずれも、データを
発信する場合は、発信する装置の識別子をデータに付加
して、送信端子からデータを送出する。データを受信す
る場合は、受信端子からデータを受け取る。そして、そ
のデータに付加された識別子が自分のものであれば、そ
のデータを破棄し、識別子が自分のものでなければ、必
要に応じてそのデータを装置内に取り込むとともに、デ
ータと識別子を自分の送信端子から送出する。このよう
に、ある装置から送信されたデータは全ての装置の間を
順に転送されて送信元の装置へ戻り、そこで転送が終了
する。
【0033】したがって、バス型の通信路と同様に、送
信元の装置からの1回の送信で、他の全ての装置にデー
タが伝送される。
信元の装置からの1回の送信で、他の全ての装置にデー
タが伝送される。
【0034】図9に本発明の第三の実施の形態の構成を
示す。第二の形態ではスター型の通信路を使用してい
る。スター型通信路では、全ての装置は双方向の通信路
を介して集線装置901と接続されている。集線装置は
複数の接続端子を持ち、1つの接続端子において受信し
た信号を他の全ての接続端子から送信する機能を持つ。
したがって、バス型の通信路と同様に、送信元の装置か
らの1回の送信で、他の全ての装置にデータが伝送され
る。
示す。第二の形態ではスター型の通信路を使用してい
る。スター型通信路では、全ての装置は双方向の通信路
を介して集線装置901と接続されている。集線装置は
複数の接続端子を持ち、1つの接続端子において受信し
た信号を他の全ての接続端子から送信する機能を持つ。
したがって、バス型の通信路と同様に、送信元の装置か
らの1回の送信で、他の全ての装置にデータが伝送され
る。
【0035】図10に本発明の第四の実施の形態の構成
を示す。データ管理装置1004、複数のデータ分析装
置1002、分析結果集計装置1003が1つの共有メ
モリ1005に接続され、データ管理装置1004は通
信路を介してデータ格納装置1001に接続されてい
る。分析対象データはデータ格納装置に格納されてい
る。
を示す。データ管理装置1004、複数のデータ分析装
置1002、分析結果集計装置1003が1つの共有メ
モリ1005に接続され、データ管理装置1004は通
信路を介してデータ格納装置1001に接続されてい
る。分析対象データはデータ格納装置に格納されてい
る。
【0036】共有メモリは、データ区画1006、カウ
ンタ区画1007、分析結果区画1008に分けられて
いる。
ンタ区画1007、分析結果区画1008に分けられて
いる。
【0037】図11、12、13に本実施形態における
特徴ルール発見の手順を示す。図11はデータ管理装置
における手順、図12はデータ分析装置における手順、
図13は分析結果集計装置における手順である。まず、
データ管理装置、データ分析装置、分析結果集計装置の
全てにおいて、割り当て設定処理1101、1201、
1301を行う。割り当て設定処理においては、指定さ
れた条件項目の候補と、条件数の上限にしたがって、可
能な全ての特徴ルールに対応するカウンタを共有メモリ
のカウンタ区画内に用意する。また、特徴ルールのそれ
ぞれについて、そのカウンタ更新処理を担当するデータ
分析装置を決める。どのデータ分析装置にどの特徴ルー
ルのカウンタ更新処理を割り当てるかはデータ分析装置
のうちの1つ、または、分析結果集計装置のいずれかに
よって決定される。また、データ分析装置のそれぞれの
分析結果を書き込む領域を分析結果区画に用意する。ま
た、データ管理装置において、共有メモリのデータ区画
内に複数のレコードバッファ1009を用意する。1つ
のレコードバッファは1つのレコードを格納できるレコ
ード領域と、カウンタ更新処理を割り当てられた複数の
データ分析装置の1つ1つと対応するフラグ領域からな
る。フラグの1つ1つは「データ無効」、「データ有
効」のどちらかの状態を取る。1つのレコードバッファ
のフラグが全て「データ無効」である場合、そのレコー
ドバッファは「空いている」と言う。初期状態では、全
てのレコードバッファは空いている。また、レコードバ
ッファとは別に、データ区画内にデータ終了フラグ10
10を用意する。データ終了フラグは「真」、「偽」の
2つの状態の一方を取ることができ、初期状態は「偽」
である。
特徴ルール発見の手順を示す。図11はデータ管理装置
における手順、図12はデータ分析装置における手順、
図13は分析結果集計装置における手順である。まず、
データ管理装置、データ分析装置、分析結果集計装置の
全てにおいて、割り当て設定処理1101、1201、
1301を行う。割り当て設定処理においては、指定さ
れた条件項目の候補と、条件数の上限にしたがって、可
能な全ての特徴ルールに対応するカウンタを共有メモリ
のカウンタ区画内に用意する。また、特徴ルールのそれ
ぞれについて、そのカウンタ更新処理を担当するデータ
分析装置を決める。どのデータ分析装置にどの特徴ルー
ルのカウンタ更新処理を割り当てるかはデータ分析装置
のうちの1つ、または、分析結果集計装置のいずれかに
よって決定される。また、データ分析装置のそれぞれの
分析結果を書き込む領域を分析結果区画に用意する。ま
た、データ管理装置において、共有メモリのデータ区画
内に複数のレコードバッファ1009を用意する。1つ
のレコードバッファは1つのレコードを格納できるレコ
ード領域と、カウンタ更新処理を割り当てられた複数の
データ分析装置の1つ1つと対応するフラグ領域からな
る。フラグの1つ1つは「データ無効」、「データ有
効」のどちらかの状態を取る。1つのレコードバッファ
のフラグが全て「データ無効」である場合、そのレコー
ドバッファは「空いている」と言う。初期状態では、全
てのレコードバッファは空いている。また、レコードバ
ッファとは別に、データ区画内にデータ終了フラグ10
10を用意する。データ終了フラグは「真」、「偽」の
2つの状態の一方を取ることができ、初期状態は「偽」
である。
【0038】データ管理装置では、データ格納装置から
分析対象データのレコードを1個入力する(処理110
2)。この時、データ格納装置からデータの終了を示す
信号を受信した場合は処理1106へ、そうでなければ
処理1104へ進む(処理1103)。処理1104で
は、共有メモリのレコードバッファを走査し、空いてい
るレコードバッファを1つ探し出す。これが見つからな
かった場合は、見つかるまで走査を繰り返す。空いてい
るレコードバッファが見つかった場合は処理1105へ
進む。処理1105では、処理1104で見つかったレ
コードバッファのレコード領域にデータ格納装置から入
力したレコードを格納し、そのレコードバッファの全て
のフラグに「データ有効」を示す値を設定する。その
後、処理1102へ戻る。処理1106では、データ区
画のデータ終了フラグを「真」の状態にする。以上でデ
ータ管理装置における処理を終了する。
分析対象データのレコードを1個入力する(処理110
2)。この時、データ格納装置からデータの終了を示す
信号を受信した場合は処理1106へ、そうでなければ
処理1104へ進む(処理1103)。処理1104で
は、共有メモリのレコードバッファを走査し、空いてい
るレコードバッファを1つ探し出す。これが見つからな
かった場合は、見つかるまで走査を繰り返す。空いてい
るレコードバッファが見つかった場合は処理1105へ
進む。処理1105では、処理1104で見つかったレ
コードバッファのレコード領域にデータ格納装置から入
力したレコードを格納し、そのレコードバッファの全て
のフラグに「データ有効」を示す値を設定する。その
後、処理1102へ戻る。処理1106では、データ区
画のデータ終了フラグを「真」の状態にする。以上でデ
ータ管理装置における処理を終了する。
【0039】データ分析装置では、共有メモリのレコー
ドバッファを走査し、自データ分析装置に対応するフラ
グが「データ有効」であるレコードバッファを1つ探す
(処理1202)。これが見つかった場合は処理120
3へ、見つからなかった場合は処理1205へ進む。処
理1203では、処理1202で見つかったレコードバ
ッファからレコードを読み込み、そのフィールドの値
が、データ分析装置に割り当てられた特徴ルールの条件
と一致していれば、該当する特徴ルールのカウンタの値
を更新する。処理1204では、処理1202で見つか
ったレコードバッファ内の、自データ分析装置に対応す
るフラグを「データ無効」に更新する。その後、処理1
202へ戻る。処理1205では、共有メモリ内のデー
タ終了フラグを調べ、状態が「真」であれば処理120
6へ進み、状態が「偽」であれば処理1202へ戻る。
処理1206では、データ分析装置に割り当てられたル
ールの評価値をカウンタの値に基づいて算出し、評価値
の大きい順に、発見すべき特徴ルールの数の上限として
指定された数の特徴ルールを取り出す。ただし、評価値
が 0 よりも小さい特徴ルールは取り出されない。処理
1207では、取り出した特徴ルールとその評価値を共
有メモリの分析結果領域に書き込む。以上でデータ分析
装置における処理を終了する。
ドバッファを走査し、自データ分析装置に対応するフラ
グが「データ有効」であるレコードバッファを1つ探す
(処理1202)。これが見つかった場合は処理120
3へ、見つからなかった場合は処理1205へ進む。処
理1203では、処理1202で見つかったレコードバ
ッファからレコードを読み込み、そのフィールドの値
が、データ分析装置に割り当てられた特徴ルールの条件
と一致していれば、該当する特徴ルールのカウンタの値
を更新する。処理1204では、処理1202で見つか
ったレコードバッファ内の、自データ分析装置に対応す
るフラグを「データ無効」に更新する。その後、処理1
202へ戻る。処理1205では、共有メモリ内のデー
タ終了フラグを調べ、状態が「真」であれば処理120
6へ進み、状態が「偽」であれば処理1202へ戻る。
処理1206では、データ分析装置に割り当てられたル
ールの評価値をカウンタの値に基づいて算出し、評価値
の大きい順に、発見すべき特徴ルールの数の上限として
指定された数の特徴ルールを取り出す。ただし、評価値
が 0 よりも小さい特徴ルールは取り出されない。処理
1207では、取り出した特徴ルールとその評価値を共
有メモリの分析結果領域に書き込む。以上でデータ分析
装置における処理を終了する。
【0040】分析結果集計装置では、共有メモリの分析
結果領域を調べ、全てのデータ分析装置の分析結果が分
析結果領域に書き込まれるのを待つ(処理1302)。
全てのデータ分析装置の分析結果が揃ったら、分析結果
領域に書き込まれた特徴ルールの中から、評価値の大き
い順に、発見すべき特徴ルールの数の上限として指定さ
れた数の特徴ルールを取り出し、これを特徴ルール発見
の結果とする(処理1303)。以上で分析結果集計装
置における処理を終了する。
結果領域を調べ、全てのデータ分析装置の分析結果が分
析結果領域に書き込まれるのを待つ(処理1302)。
全てのデータ分析装置の分析結果が揃ったら、分析結果
領域に書き込まれた特徴ルールの中から、評価値の大き
い順に、発見すべき特徴ルールの数の上限として指定さ
れた数の特徴ルールを取り出し、これを特徴ルール発見
の結果とする(処理1303)。以上で分析結果集計装
置における処理を終了する。
【0041】なお、以上で説明した第四の実施の形態は
カウンタを共有メモリ内に置く形態であったが、データ
分析装置のそれぞれが局所メモリ1401を持っている
場合は、カウンタを局所メモリ内に置くこともできる
(図14)。
カウンタを共有メモリ内に置く形態であったが、データ
分析装置のそれぞれが局所メモリ1401を持っている
場合は、カウンタを局所メモリ内に置くこともできる
(図14)。
【0042】
【発明の効果】本発明によれば、大量のデータを多面的
に分析するデータマイニングなどのデータ分析処理を複
数の処理装置を並列に動作させて実行する場合に、分析
対象データの転送量、転送回数を少なく抑え、かつ、各
々の処理装置において必要となる主記憶の量を少なく抑
えることができる。また、大量データ分析方法に適する
ように設計されたデータ格納方法を特に必要としないの
で、一般のデータベースシステムに格納されたデータを
分析対象とすることができる。
に分析するデータマイニングなどのデータ分析処理を複
数の処理装置を並列に動作させて実行する場合に、分析
対象データの転送量、転送回数を少なく抑え、かつ、各
々の処理装置において必要となる主記憶の量を少なく抑
えることができる。また、大量データ分析方法に適する
ように設計されたデータ格納方法を特に必要としないの
で、一般のデータベースシステムに格納されたデータを
分析対象とすることができる。
【図1】第1の実施形態の構成図。
【図2】分析方法の概要を示す流れ図。
【図3】分析対象データの例を示す図。
【図4】第1の実施形態のデータ格納装置における処理
を示す流れ図。
を示す流れ図。
【図5】第1の実施形態のデータ分析装置における処理
を示す流れ図。
を示す流れ図。
【図6】第1の実施形態の分析結果集計装置における処
理を示す流れ図。
理を示す流れ図。
【図7】全ての可能な特徴ルールを列挙した図。
【図8】第2の実施形態の構成図。
【図9】第3の実施形態の構成図。
【図10】第4の実施形態の構成図。
【図11】第4の実施形態のデータ管理装置における処
理を示す流れ図。
理を示す流れ図。
【図12】第4の実施形態のデータ分析装置における処
理を示す流れ図。
理を示す流れ図。
【図13】第4の実施形態の分析結果集計装置における
処理を示す流れ図。
処理を示す流れ図。
【図14】第4の実施形態において、局所メモリにカウ
ンタを置く構成図。
ンタを置く構成図。
101…データ格納装置、102…データ分析装置、1
03…分析結果集計装置、104…バス型通信路、10
04…データ管理装置、1005…共有メモリ、 10
06…共有メモリ内のデータ区画、1007…共有メモ
リ内のカウンタ区画、1008…共有メモリ内の分析結
果区画、1009…レコードバッファ、1010…終了
フラグ、1401…局所メモリ内のカウンタ。
03…分析結果集計装置、104…バス型通信路、10
04…データ管理装置、1005…共有メモリ、 10
06…共有メモリ内のデータ区画、1007…共有メモ
リ内のカウンタ区画、1008…共有メモリ内の分析結
果区画、1009…レコードバッファ、1010…終了
フラグ、1401…局所メモリ内のカウンタ。
フロントページの続き (72)発明者 伊藤 幸康 神奈川県横浜市戸塚区戸塚町5030番地 株 式会社日立製作所ソフトウェア事業部内 Fターム(参考) 5B075 KK02 PQ05 QS05
Claims (4)
- 【請求項1】 単数、または複数のデータ格納手段に格
納されたデータを対象とし、複数のデータ分析手段を用
いるデータ分析において、前記の複数のデータ分析手段
は前記のデータ格納手段から同一のデータを入力し、前
記複数のデータ分析手段のそれぞれにおいて分析を行
い、前記複数のデータ分析手段のそれぞれにおける分析
結果をまとめて全体の分析結果をすることを特徴とする
データ分析方法。 - 【請求項2】 前記複数のデータ分析手段は前記のデー
タ格納手段が一回出力した分析対象データを共有するこ
とを特徴とする請求項1に記載のデータ分析方法。 - 【請求項3】 複数のデータ分析手段が共有する共有記
憶手段を用い、前記複数のデータ分析手段は各々の分析
結果を前記共有記憶手段へ出力することを特徴とする請
求項1、および請求項2に記載のデータ分析方法。 - 【請求項4】 請求項1、2、および3に記載の並列分
散分析方法を計算機で実行するための計算機プログラム
を格納した記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34702699A JP2001167098A (ja) | 1999-12-07 | 1999-12-07 | 大量データの分散並列分析方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34702699A JP2001167098A (ja) | 1999-12-07 | 1999-12-07 | 大量データの分散並列分析方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001167098A true JP2001167098A (ja) | 2001-06-22 |
Family
ID=18387428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34702699A Pending JP2001167098A (ja) | 1999-12-07 | 1999-12-07 | 大量データの分散並列分析方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001167098A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009031923A (ja) * | 2007-07-25 | 2009-02-12 | Toshiba Corp | データ分析システムおよびデータ分析方法 |
JP2011039820A (ja) * | 2009-08-12 | 2011-02-24 | Hitachi Ltd | ストリームデータ処理方法及び装置 |
JP2012022558A (ja) * | 2010-07-15 | 2012-02-02 | Hitachi Ltd | 分散計算システム |
KR101590719B1 (ko) | 2014-07-21 | 2016-02-02 | 부산대학교 산학협력단 | 빅 데이터 분석을 위한 웹 서비스 간 데이터 전달 방법 및 구조 |
CN105589900A (zh) * | 2014-11-21 | 2016-05-18 | 中国银联股份有限公司 | 基于多维分析的数据挖掘方法 |
CN106570151A (zh) * | 2016-10-28 | 2017-04-19 | 上海斐讯数据通信技术有限公司 | 一种海量文件的数据收集处理方法及系统 |
WO2017217349A1 (ja) * | 2016-06-13 | 2017-12-21 | 日本電気株式会社 | 情報処理システム、分析装置、制御装置、方法および記憶媒体 |
-
1999
- 1999-12-07 JP JP34702699A patent/JP2001167098A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009031923A (ja) * | 2007-07-25 | 2009-02-12 | Toshiba Corp | データ分析システムおよびデータ分析方法 |
JP2011039820A (ja) * | 2009-08-12 | 2011-02-24 | Hitachi Ltd | ストリームデータ処理方法及び装置 |
JP2012022558A (ja) * | 2010-07-15 | 2012-02-02 | Hitachi Ltd | 分散計算システム |
KR101590719B1 (ko) | 2014-07-21 | 2016-02-02 | 부산대학교 산학협력단 | 빅 데이터 분석을 위한 웹 서비스 간 데이터 전달 방법 및 구조 |
CN105589900A (zh) * | 2014-11-21 | 2016-05-18 | 中国银联股份有限公司 | 基于多维分析的数据挖掘方法 |
WO2017217349A1 (ja) * | 2016-06-13 | 2017-12-21 | 日本電気株式会社 | 情報処理システム、分析装置、制御装置、方法および記憶媒体 |
JPWO2017217349A1 (ja) * | 2016-06-13 | 2019-04-11 | 日本電気株式会社 | 情報処理システム、分析装置、制御装置、方法およびプログラム |
US11243865B2 (en) | 2016-06-13 | 2022-02-08 | Nec Corporation | Information processing system, method, and storage medium |
CN106570151A (zh) * | 2016-10-28 | 2017-04-19 | 上海斐讯数据通信技术有限公司 | 一种海量文件的数据收集处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sahni | Preemptive scheduling with due dates | |
US5806059A (en) | Database management system and method for query process for the same | |
US6622138B1 (en) | Method and apparatus for optimizing computation of OLAP ranking functions | |
US5471611A (en) | Computerised information-retrieval database systems | |
US6556988B2 (en) | Database management apparatus and query operation therefor, including processing plural database operation requests based on key range of hash code | |
JP2005108221A (ja) | クエリ、ルール、および購読を索引付けするためのシステムおよび方法 | |
US7698312B2 (en) | Performing recursive database operations | |
CN113761185B (zh) | 主键提取方法、设备及存储介质 | |
US20150169656A1 (en) | Distributed database system | |
JPH1097544A (ja) | データベース処理システム | |
JP2001167098A (ja) | 大量データの分散並列分析方法 | |
US6389410B1 (en) | Method for minimizing the number of sorts required for a query block containing window functions | |
US5946683A (en) | Technique for effectively instantiating attributes in association rules | |
Yang et al. | Evaluation of a parallel branch-and-bound algorithm on a class of multiprocessors | |
CN113094444B (zh) | 数据处理方法、数据处理装置、计算机设备和介质 | |
US6604122B1 (en) | Method and apparatus for evaluating a data processing request performed by distributed processes | |
JP2004326480A (ja) | 大量データの分散並列分析方法 | |
US7756853B2 (en) | Frequent itemset counting using subsets of bitmaps | |
CN110765100A (zh) | 标签的生成方法、装置、计算机可读存储介质及服务器 | |
CN112199401B (zh) | 数据请求处理方法、装置、服务器、系统及存储介质 | |
JPH10154160A (ja) | 並列データ検索処理装置 | |
CN113630476A (zh) | 应用于计算机集群的通信方法及通信装置 | |
JP2762949B2 (ja) | オブジェクト指向データベース管理システムにおける問い合わせの分割処理方法 | |
CN112435151A (zh) | 一种基于关联分析的政务信息数据处理方法及系统 | |
CN110309177B (zh) | 一种数据处理的方法以及相关装置 |