(57)【特許請求の範囲】
【請求項１】
ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮装置において：
一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納するデータ読出し手段と、
一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、データ読出し手段で読み出されたデータが数値型か否かを判定し、数値型の場合には属性値の出現度数を数値型属性値カウンタに格納し、非数値型の場合には属性値の出現度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納する数値型判定手段と、
前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいて属性値のデータの型を判定し、判定結果を型決定テーブルに格納する型判定手段と、
型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成する圧縮手段と、
前記圧縮済ＲＤＢに基づいて、２値で表現される２値ＲＤＢを生成する２値ＲＤＢ変換手段とを備えたことを特徴とする属性圧縮装置。
【請求項２】
請求項１記載の属性圧縮装置において：
非数値型属性値カウンタの値が０であって、属性値総数カウンタの値が順序数値型閾値よりも大きい場合は、前記型反転手段で入力されたデータ型は全順序型と判断され、
入力されたデータ型が全順序型と判断された場合、前記圧縮手段で全てのデータに対して属性値変換を行うことを特徴とする属性圧縮装置。
【請求項３】
請求項１記載の属性圧縮装置において：
数値型属性値種類数カウンタの値が順序数値型閾値よりも大きく、非数値型属性値カウンタの値が順序非数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータは擬似全順序型と判断され、
入力されたデータ型が擬似全順序型と判断された場合、前記圧縮手段で前記圧縮手段で数値型データに対しては属性値変換を行い、非数値型データに対しては属性値変換を行わないことを特徴とする属性圧縮装置。
【請求項４】
請求項１記載の属性圧縮装置において：
属性値総数カウンタに格納された属性値種類の総数が、順序数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータ型はクラスタ型と判断され、
入力されたデータ型がクラスタ型と判断された場合、前記圧縮手段で一般ＲＤＢの属性のすべてを２値ＲＤＢの属性にそのまま用いることを特徴とする属性圧縮装置。
【請求項５】
請求項１記載の属性圧縮装置において：
属性値種類の総数が、レコード数カウンタのカウント数と閾値テーブル中の擬似識別子型閾値との積よりも大きい場合は、前記型反転手段で入力されたデータ型は擬似識別子型と判断され、
入力されたデータ型が擬似識別子型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないことを特徴とする属性圧縮装置。
【請求項６】
請求項１記載の属性圧縮装置において：
属性値総数カウンタの格納された属性値種類の総数が、０または１の場合は、前記型反転手段で入力されたデータ型は無値型と判断され、
入力されたデータ型が無値型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないことを特徴とする属性圧縮装置。
【請求項７】
請求項１−６記載の属性圧縮装置において：
属性型が全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型のいずれにも該当しない場合は、前記型反転手段で入力されたデータ型は文字列型と判断され、
入力されたデータ型が文字列型と判断された場合、前記圧縮手段で一般ＲＤＢのすべてを２値ＲＤＢにそのまま用いることを特徴とする属性圧縮装置。
【請求項８】
請求項１−７記載の属性圧縮装置において：
属性値カウントアップテーブル中にある文字列型属性値の頻度カウンタの値が、対応する属性の属性値の頻度カウンタの総和と少数割合閾値との積よりも小さい場合は、一般ＲＤＢの属性値を同一の属性値に圧縮することを特徴とする属性圧縮装置。
【請求項９】
請求項１−７記載の属性圧縮装置において：
さらに、日付フィールド圧縮手段および日付圧縮ＲＤＢを備え、日付を表す複数の属性の指定を受けて、その複数の属性中から数値だけをまとめて一つの全順序型の属性とみなして圧縮を行うことを特徴とする属性圧縮装置。
【請求項１０】
請求項１−７記載の属性圧縮装置において：
さらに、サンプリング手段およびサンプルＲＤＢを備え、一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、そのサンプルＲＤＢを用いて全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型、文字型の分類を行い、２値ＲＤＢを生成することを特徴とする属性圧縮装置。
【請求項１１】
請求項１０記載の属性圧縮装置において：
さらに、統計計算手段および統計圧縮ＲＤＢを備え、
その統計計算手段は、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、または一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きい場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管することを特徴とする属性圧縮装置。
【請求項１２】
請求項１−７記載の属性圧縮装置において：
さらに、相関ＲＤＢ生成手段および相関関係ＲＤＢを備え、
作成された２値ＲＤＢ中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成することを特徴とする属性圧縮装置。
【請求項１３】
請求項１−７記載の属性圧縮装置において：
さらに、不要属性値除去手段および不要属性値除去ＲＤＢを備え、
圧縮後の属性値の範囲が、不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないようにすることを特徴とする属性圧縮方法。
【請求項１４】
請求項１記載の属性圧縮装置において：
さらに、多数判定手段および多数割合閾値テーブルを備え、
その多数判定手段は、ある属性の圧縮済属性値の圧縮テーブルカウンタの値と、この属性における圧縮テーブルカウンタの総和との比から多数割合を求め、閾値テーブルに予め格納された多数割合閾値と、前記求められた多数割合とを比較して、同じ属性が多数を示す属性値かどうかを判断し、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないようにすることを特徴とする属性圧縮装置。
【請求項１５】
ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮方法において：
データ読出し手段は、一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納し、
一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、
数値型判定手段は、上記で読み出されたデータが数値型か否かを判定し、数値型の場合には度数を数値型属性値カウンタに格納し、非数値型の場合には度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納し、
型判定手段は、前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいてデータの型を判定し、判定結果を型決定テーブルに格納し、
圧縮手段は、型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成し、
２値ＲＤＢ変換手段は、圧縮済ＲＤＢに基づいて、２値で表現される２値ＲＤＢを生成することを特徴とする属性圧縮方法。
【請求項１６】
請求項１５記載の属性圧縮方法において：
サンプリング手段によって、前記一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、以降前記一般ＲＤＢの代わりにサンプルＲＤＢを用いることを特徴とする属性圧縮方法。
【請求項１７】
請求項１６記載の属性圧縮方法において：
統計計算手段は、前記サンプル手段によって得られた結果から、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、もしくは一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きいと判断した場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管し、前記圧縮手段はこの統計圧縮ＲＤＢおよび型決定テーブルに基づいて圧縮テーブルを生成することを特徴とする属性圧縮方法。
【請求項１８】
請求項１５記載の属性圧縮方法において：相関ＲＤＢ生成手段は、読み出された一般ＲＤＢ２１中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成し、相関関係ＲＤＢに保管し、前記２値ＲＤＢ変換手段はこの相関関係ＲＤＢを用いて圧縮済ＲＤＢから２値ＲＤＢを生成するすることを特徴とする属性圧縮方法。
【請求項１９】
請求項１５記載の属性圧縮方法において：圧縮後の属性値の範囲が、前記不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないようにすることを特徴とする属性圧縮方法。
【請求項２０】
請求項１５記載の属性圧縮方法において：
多数判定手段は、ある属性の圧縮済属性値の圧縮テーブルカウンタの値と、この属性における圧縮テーブルカウンタの総和との比から多数割合を求め、閾値テーブルに予め格納された多数割合閾値と、前記求められた多数割合とを比較して、同じ属性が多数を示す属性値かどうかを判断し、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないようにすることを特徴とする属性圧縮方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般ＲＤＢ（Relational Data Base）から２値ＲＤＢへの変換の際にその属性値を圧縮する装置および方法に関するものである。
【０００２】
【従来の技術】
属性値の集合からなる数値データを区切って圧縮する装置としては、例えば、特開平7-93159がある。この装置においては、属性値に順序がある場合の属性値の圧縮の方法として、
▲１▼それぞれの区間に含まれるデータ数が等しくなるようにする、
▲２▼属性ごとに、属性値の平均値と分散の値とを求め、その平均値と分散の値に基づいて区間の分割を行なう、
▲３▼ユーザにより入力された位置で区間の分割を行なう、
▲４▼各属性の定義域を等分割して区間とすることが提案されている。
【０００３】
【発明が解決しようとする課題】
しかし、一般のＲＤＢ中の属性は、属性値の型は必ずしも一定の順序があるものとは限らず、従来の技術ではそのような一定の順序がない場合には対応できないという問題点があった。
【０００４】
さらに、属性値が数値の場合は、一般には順序の意味付けをもっているのが普通であるが、ＩＤ番号（Identification Number）のような例外があり、そのような場合に、圧縮を行なうことは意味がないばかりか、有害になってしまうという問題点もあった。
【０００５】
また、一般のＲＤＢ属性値の中には、数値で示されているものと文字で示されているものが混在していたり、レコードによってはそこが空欄になっていたりする場合には、従来の技術では、対応できないという問題点があった。
【０００６】
本発明は上記のような問題点を解決するためになされたもので、各属性の属性値の種類数、分布、各属性値のとりうる型等を調べた上で圧縮の必要の可否も含めて適切な圧縮を行なうことにより、２値ＲＤＢの属性の数を減らし、相関関係発見を高速にすることを目的とする。
【０００７】
【課題を解決するための手段】
第１の発明の属性圧縮装置は、ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮装置において：一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納するデータ読出し手段と、一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、データ読出し手段で読み出されたデータが数値型か否かを判定し、数値型の場合には属性値の出現度数を数値型属性値カウンタに格納し、非数値型の場合には属性値の出現度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納する数値型判定手段と、前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいて属性値のデータの型を判定し、判定結果を型決定テーブルに格納する型判定手段と、型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成する圧縮手段と、前記圧縮済ＲＤＢに基づいて、２値で表現される２値ＲＤＢを生成する２値ＲＤＢ変換手段とを備えるように構成される。
【０００８】
第２の発明の属性圧縮装置は、非数値型属性値カウンタの値が０であって、属性値総数カウンタの値が順序数値型閾値よりも大きい場合は、前記型反転手段で入力されたデータ型は全順序型と判断され、入力されたデータ型が全順序型と判断された場合、前記圧縮手段で全てのデータに対して属性値変換を行うように構成される。
【０００９】
第３の発明の属性圧縮装置は、数値型属性値種類数カウンタの値が順序数値型閾値よりも大きく、非数値型属性値カウンタの値が順序非数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータは擬似全順序型と判断され、入力されたデータ型が擬似全順序型と判断された場合、前記圧縮手段で前記圧縮手段で数値型データに対しては属性値変換を行い、非数値型データに対しては属性値変換を行わないように構成される。
【００１０】
第４の発明の属性圧縮装置は、属性値総数カウンタに格納された属性値種類の総数が、順序数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータ型はクラスタ型と判断され、入力されたデータ型がクラスタ型と判断された場合、前記圧縮手段で一般ＲＤＢの属性のすべてを２値ＲＤＢの属性にそのまま用いるように構成される。
【００１１】
第５の発明の属性圧縮装置は、属性値種類の総数が、レコード数カウンタのカウント数と閾値テーブル中の擬似識別子型閾値との積よりも大きい場合は、前記型反転手段で入力されたデータ型は擬似識別子型と判断され、入力されたデータ型が擬似識別子型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないように構成される。
【００１２】
第６の発明の属性圧縮装置は、属性値総数カウンタの格納された属性値種類の総数が、０または１の場合は、前記型反転手段で入力されたデータ型は無値型と判断され、入力されたデータ型が無値型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないように構成される。
【００１３】
第７の発明の属性圧縮装置は、属性型が上記の全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型のいずれにも該当しない場合は、前記型反転手段で入力されたデータ型は文字列型と判断され、入力されたデータ型が文字列型と判断された場合、前記圧縮手段で一般ＲＤＢのすべてを２値ＲＤＢにそのまま用いるように構成される。
【００１４】
第８の発明の属性圧縮装置は、属性値カウントアップテーブル中にある文字列型属性値の頻度カウンタの値が、対応する属性の属性値の頻度カウンタの総和と少数割合閾値との積よりも小さい場合は、一般ＲＤＢの属性値を同一の属性値に圧縮するように構成される。
【００１５】
第９の発明の属性圧縮装置は、さらに、日付フィールド圧縮手段および日付圧縮ＲＤＢを備え、日付を表す複数の属性の指定を受けて、その複数の属性をまとめて一つの全順序型の属性とみなして圧縮を行うように構成される。
【００１６】
第１０の発明の属性圧縮装置は、さらに、サンプリング手段およびサンプルＲＤＢを備え、一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、そのサンプルＲＤＢを用いて全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型、文字型の分類を行い、２値ＲＤＢ３０を生成するように構成される。
【００１７】
第１１の発明の属性圧縮装置は、さらに、統計計算手段および統計圧縮ＲＤＢを備え、統計計算手段は、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、または一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きい場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管するように構成される。
【００１８】
第１２の発明の属性圧縮装置は、さらに、相関ＲＤＢ生成手段および相関関係ＲＤＢを備え、作成された２値ＲＤＢ中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成するように構成される。
【００１９】
第１３の発明の属性圧縮装置は、さらに、不要属性値除去手段および不要属性値除去ＲＤＢを備え、圧縮後の属性値の範囲が、不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成される。
【００２０】
第１４の発明の属性圧縮装置は、さらに、多数判定手段および多数割合閾値テーブルを備え、その多数判定手段は、ある属性の圧縮済属性値の圧縮テーブルカウンタの値と、この属性における圧縮テーブルカウンタの総和との比から多数割合を求め、閾値テーブルに予め格納された多数割合閾値と、前記求められた多数割合とを比較して、同じ属性が多数を示す属性値かどうかを判断し、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成される。
【００２１】
第１５の発明の属性圧縮方法は、ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮方法において：データ読出し手段は、一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納し、一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、数値型判定手段は、上記で読み出されたデータが数値型か否かを判定し、数値型の場合には度数を数値型属性値カウンタに格納し、非数値型の場合には度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納し、型判定手段は、前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいてデータの型を判定し、判定結果を型決定テーブルに格納し、圧縮手段は、型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成し、２値で表現される２値ＲＤＢ変換手段は、圧縮済ＲＤＢに基づいて、２値ＲＤＢを生成するように構成される。
【００２２】
第１６の発明の属性圧縮方法は、サンプリング手段によって、前記一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、以降前記一般ＲＤＢの代わりにサンプルＲＤＢを用いるように構成される。
【００２３】
第１７の発明の属性圧縮方法は、
統計計算手段は、前記サンプル手段によって得られた結果から、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、または一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きいと判断した場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管し、前記圧縮手段はこの統計圧縮ＲＤＢおよび型決定テーブルに基づいて圧縮テーブルを生成するように構成される。
【００２４】
第１８の発明の属性圧縮方法は、相関ＲＤＢ生成手段は、読み出された一般ＲＤＢ２１中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成し、相関関係ＲＤＢに保管し、前記２値ＲＤＢ変換手段はこの相関関係ＲＤＢを用いて圧縮済ＲＤＢから２値ＲＤＢを生成するように構成される。
【００２５】
第１９の発明の属性圧縮方法は、圧縮後の属性値の範囲が、前記不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成される。
【００２６】
第２０の発明の属性圧縮方法は、多数判定手段は、閾値テーブルに予め格納された多数割合閾値に基づいて、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成される。
【００２７】
【発明の実施の形態】
実施の形態１．
図１は本発明の実施の形態１の属性圧縮装置の構成を示す図である。図１において、２１は本属性圧縮装置に入力され、圧縮された後に相関発見装置に供給される入力データ（一般ＲＤＢ）、８は一般ＲＤＢ２１を読み出すデータ読出し手段、１０はデータ読出し装置８で読み出されたレコード数をカウントするレコード数カウンタ、１２はデータ読出し装置８により読み出されたデータが数値型であるか否かを判断する数値型判定手段、１４はデータの属性を判定する型判定手段、１６は入力データを圧縮する圧縮手段、１８は圧縮されたデータを２値ＲＤＢに変換する２値ＲＤＢ変換手段、２２は属性値カウントアップテーブル、２３は一般ＲＤＢのそれぞれの属性型を決める型決定テーブル、２４は閾値テーブル、２５は型に応じた属性値の圧縮変換ルールが書かれた圧縮テーブル、２６は圧縮テーブルカウンタ、２７は圧縮テーブルを用いて圧縮変換された一般ＲＤＢを格納するための圧縮済ＲＤＢ、３０は圧縮済ＲＤＢを相関発見装置に供給するためにデコードされた２値ＲＤＢ、３２は数値型属性値カウンタ、３３は非数値型属性値カウンタである。
【００２８】
次に、実施の形態１の属性圧縮装置の動作について説明する。図２は、図１中の一般ＲＤＢ２１の一例を示す図である。図２においては、一般ＲＤＢ２１は属性として、たとえば、身長、体重、・・・血圧、・・・早起き度等を含むものとする。一般ＲＤＢ２１は、個人Ａさん，Ｂさん，Ｃさん，Ｄさん，Ｅさん・・・等の各レコードを含む。たとえば、Ａさんの場合は、身長が１８２．３ｃｍ、体重が９０ｋｇ、・・・血圧が１４０、・・・早起き度は「早」等の属性値が入力されている。
【００２９】
データ読出し手段８は、一般ＲＤＢ２１から各人毎のレコードを読み出す。各人のレコードが読み出されたときに、レコード数カウンタ１０はレコード読出し回数をカウントアップする。たとえば、Ａさんのレコードを読み出したときに、カウント数を１にし、Ｂさんのレコードを読み出したときに、カウント数を２にし、同様にして、たとえば、本例の場合は１９４人分のレコードが入力されていると仮定すると、一般ＲＤＢ２１の全レコードを読み出した後には、レコード数カウンタ１０のカウント数は１９４となる。
【００３０】
図３は、図１中の属性値カウントアップテーブル２２、数値型属性値カウンタ３２、非数値型属性値カウンタ３３および以下に述べる属性値総数カウンタ３４の一例を示す図である。データ読出し手段８は、一般ＲＤＢ２１のレコードの中からそれぞれの属性に対応する属性値を取り出し、それらの属性値を、図３に示すように属性値カウントアップテーブル２２に書き込む。この属性値カウントアップテーブル２２への書き込みは以下のように行われる。
【００３１】
すなわち、属性値カウントアップテーブル２２には、図３に示すように、各属性毎に、各属性の属性値を保管するフィールドとそれに対応してその属性値の出現頻度をカウントする頻度カウンタが用意されている。初期状態においては、属性値カウントアップテーブル２２中の属性値フィールドおよび頻度カウンタには何も書かれていないので、データ読出し手段８は、一般ＲＤＢ２１から読み出した属性値を属性値フィールド中に追加し、それに対応する頻度カウンタを新設してその新設された頻度カウンタのカウント数を歩進する。たとえば、最初に読み出された属性値は身長の属性値１８２．３であるので、その属性値を第１フィールドに書き込み、それに対応する頻度カウンタの数を１に設定する。一方、同じ属性値を２度目に読み出すときのように、属性値が既にフィールド中に存在する場合は、読み出した属性値を属性値カウントアップテーブル２２中には追加せず、属性値に対応する頻度カウント数のみを１つ歩進する。
【００３２】
一方、かかる処理と同時に、数値型判定手段１２は、読み出したデータの属性値が数値型であればその属性に対応する数値型属性値カウンタ３２および数値型属性値種類数カウンタ３５をそれぞれ１つカウントアップし、数値型でなければその属性に対応する非数値型属性値カウンタ３３を１つカウントアップする。たとえば、属性「身長」、「体重」、「血圧」、「早起き度」、・・・・に対応して、それぞれ数値型属性値カウンタ３２−１、３２−２、３２−３、３２−４１、・・・・および数値型属性値種類数カウンタ３５−１、３５−２、３５−３、３５−４１、・・・が設けられ、また非数値型属性値カウンタ３３−１、３３−２、３３−３、３３−４、・・・・が設けられる。
【００３３】
データ読出し装置８、レコード数カウンタ１０および数値型判定手段１２は、一般ＲＤＢ２１中の全ての属性について上記の読出しおよび書込み処理を行い、最後のレコードの読み出しおよび書込みが終了するまでこれらの処理を繰り返す。その結果、たとえば、身長および体重の属性の属性値は、この例では全て数値型であるので、身長および体重の属性にそれぞれ対応する数値型属性値カウンタ３２（３２−１，３２−２）のカウント数は全レコード数に等しい１９４となり、非数値型属性値カウンタ３３（３２−１，３２−２）のカウント数は０となる。また、たとえば、血圧の属性の属性値は、この例では、たとえば、図２に示すように、３番目に、数値でなく「測定不能」の表記があったと仮定すると、血圧の属性に対応する非数値型属性値カウンタ３３（３３−３）のカウント数は１となり、数値型属性値カウンタ３２（３２−３）のカウント数は全レコード数から非数値型属性値のカウント数１を引いた１９３となる。また、たとえば、早起き度の属性の属性値は、この例では、たとえば、「早」または「遅」の２つのみであり、しかもこれらはいずれも非数値型属性値であるので、早起き度の属性に対応する非数値型属性値カウンタ３３（３３−４）のカウント数は１９４なり、数値型属性値カウンタ３２（３２−４）のカウント数は０となる。
【００３４】
次に、型判定手段１４は、レコード数カウンタ１０の値、数値型属性値カウンタ３２の値、非数値型属性値カウンタ３３の値、および閾値テーブル２４に格納された順序数値型閾値、順序非数値型閾値、擬似識別子型閾値を入力して、それらの値に従って、各レコードの属性の型を、全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型、文字列型に判定・分類する。
【００３５】
図４は図１中の型決定テーブル２３の一例を示す図である。型判定手段１４は、分類された全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型、文字列型に従って、型決定テーブル２３中の対応ビットを１にする。図４において、たとえば、身長および体重の属性は、以下に説明するように全順序型であるので、全順序型のフィールドに１のフラッグが立てられ、血圧の属性は、擬似全順序型であるので、擬似全順序型のフィールドに１のフラッグが立てられ、早起き度の属性は、クラスタ型であるので、クラスタ型のフィールドに１のフラッグが立てられる。
【００３６】
ここで、全順序型とは、非数値型属性値カウンタ３３の値が０であって、数値型属性値カウンタ３２の値が順序数値型閾値よりも大きい場合をいう。ここで、順序数値型閾値は属性値の種類数が一定値以上であるか否かを判断する指標であり、たとえば、順序数値型閾値は１０のような数値が予め与えられ、閾値テーブル２４に保管されている。この例の身長および体重の属性に関しては、属性値総数カウンタ３４の値（＝３５）＞順序数値型閾値（＝１０）であるので、身長および体重の属性は全順序型であると判断される。逆に、データ型が全順序型である判断される場合には、この性の取りうる属性値の種類はほぼ数値型のみであり、かつ、その数が多く、かつ圧縮による効果が期待できることを意味する。
【００３７】
擬似全順序型とは、数値型属性値種類数カウンタ３５の値が順序数値型閾値よりも大きく、非数値型属性値カウンタ３３の値が順序非数値型閾値よりも小さい場合をいう。ここで、順序数値型閾値は上記の全順序型の場合と同じであり、順序非数値型閾値は、一般ＲＤＢ２１のデータ型に非数値型が含まれる度合いを判断する指標である。たとえば、順序非数値型閾値は、全種類数の一定割合、すなわち、この例では５のような数値が予め与えられ、閾値テーブル２４に保管されている。従って、一般ＲＤＢ２１のデータ型が擬似全順序型である判断される場合には、データ型の属性値の種類はほぼ数値型であり、かつ、その数が多く、一方、予め定められた順序非数値型閾値よりも少ない非数値型のデータが含まれていることを示している。
【００３８】
たとえば、血圧の属性に関しては、測定不能なる文字列型の属性値が含まれているので、数値型属性値種類数カウンタ３５（３５−３）の値は３５、非数値型属性値カウンタ３３（３３−３）の値は１となる。よって、血圧の属性のデータは、数値型属性値種類数カウンタ（３５−３）（＝３５）＞順序数値型閾値（＝１０）であり、かつ、非数値型属性値カウンタ（３３−３）（＝１）＜順序非数値型閾値（＝５）の条件を満足しているので、擬似全順序型と判断される。この擬似全順序型の場合は、数値型データに対しては圧縮による効果が期待できる一方、非数値型データに対しては圧縮による効果が期待できないことを意味する。
【００３９】
クラスタ型とは、属性値総数カウンタ３４に格納された属性値種類の総数が、順序数値型閾値よりも小さい場合をいう。ここで、順序数値型閾値は一般ＲＤＢ２１のデータ型の属性値の種類が少ない程度を判断する指標である。たとえば、本願では１０と設定される。属性値総数カウンタ３４の値は、たとえば、属性が身長の場合は、その属性値として、１８２．３，１８０．０，１６４．３、・・・等属性値の種類は３５あるものと仮定している。従って、属性値総数カウンタ３４の値３５＞順序数値型閾値の値１０であるので、属性が身長の場合はクラスタ型ではない。一方、属性が早起き度の場合は、属性値は「早」および「遅」の２つの属性値だけしかないので属性値総数カウンタ３４の値は２である。従って、属性値総数カウンタ３４の値２＜順序数値型閾値の値１０であるので、属性が早起き度の場合はクラスタ型である。このように、属性値の種類が少ない場合は、各属性値を共通化してまとめて圧縮する意義が小さい。従って、このクラスタ型の場合は、圧縮による効果が期待できないことを意味する。
【００４０】
擬似識別子型とは、属性値種類の総数が、レコード数カウンタ１０のカウント数と閾値テーブル２４中の擬似識別子型閾値との積よりも大きい場合をいう。ここで、擬似識別子型閾値は、お互いに共通の属性値をほとんど有しない程度、すなわち、属性値がユニークな値を有する程度を判断する指標である。たとえば、会社の健康において、レントゲン写真を撮る場合に付与される各人の撮影番号等は、それぞれ番号が異なり、共通な番号が存在しない。このような場合には、データをまとめ、分布をとる意義が無いので、データ圧縮による効果が期待できない。このように、データ圧縮による効果が期待できないデータを有する一般ＲＤＢ２１に対して圧縮をしないようにするために擬似識別子型閾値が予め定められる。たとえば、レントゲン写真の場合は、受検者１００人中番号の共通性は全くないので、擬似識別子型閾値＝異なる番号の出現回数１００／受験者数１００＝１となる。たとえば、他の例として、１００のデータがあり、その中で９０通りの異なる属性値の選択が存在する場合には、擬似識別子型閾値＝９０／１００＝０．９となる。
【００４１】
無値型とは、属性値総数カウンタ３４に格納された属性値種類の総数が、０または１の場合をいう。この場合は、この属性の属性値には情報量がないことを意味する。これは、たとえば、身長の属性の属性値中のデータが全くない場合、このとき属性値種類の総数＝０、または身長の属性の属性値中のデータが全て「異常なし」の場合、このとき属性値種類の総数＝１のような場合である。このように、属性値の種類の総数が０または１の場合は、各属性値を共通化してまとめて圧縮する意義が小さい。従って、この無値型の場合は、圧縮による効果が期待できないことを意味する。
【００４２】
文字列型とは、以上の処理によって、属性型が上記の全順序型、擬似全順序型、擬似識別子型、クラスタ型、無値型のいずれにも該当しない場合をいう。この場合は、属性値の種類数は多いが順序がないことを意味する。順序がない以上圧縮をしないか、全レコード中比率の少ない属性値について「その他」として圧縮する。
【００４３】
次に、圧縮手段１６は、一般ＲＤＢ２１から１レコードずつ読み出し、図５に示す圧縮テーブル２５中のカウンタ２６をカウントアップする。図５は、圧縮テーブル２５およびその圧縮テーブル２５中に含まれるカウンタ２６の一例を示す図である。圧縮テーブル２５は、各属性毎に生成され、この実施の形態１の例では、たとえば、身長、体重、・・・血圧、・・・早起き度等についてそれぞれの圧縮テーブルが生成される。たとえば、身長テーブルにおいては、各属性値は、身長が１６０ｃｍ以下の「身長低」、身長が１６０ｃｍ〜１８０ｃｍの「身長中」、身長が１８０ｃｍ以上の「身長高」の３段階に分類され、各分類に対応するカウンタ２６にその頻度がカウントされる。たとえば、圧縮テーブル２５においては、身長が１６０ｃｍ以下の「身長低」の人数は３２名、身長が１６０ｃｍ〜１８０ｃｍの「身長中」の人数は１２８人、身長が１８０ｃｍ以上の「身長高」の人数は３４人のようにカウンタ２６中に発生頻度が格納される。また、体重が５０ｋｇ以下の「体重小」の人数は１８名、体重が５０ｋｇ〜８０ｋｇの「体重中」の人数は１５０人、体重が８０ｋｇ以上の「体重大」の人数は２６人のようにカウンタ２６中に発生頻度が格納される。
【００４４】
さらに、圧縮手段１６は、一般ＲＤＢ２１と生成された圧縮テーブル２５から、圧縮済ＲＤＢ２７を生成する。ここで、図６は、図１中の圧縮済ＲＤＢの一例を示す図である。図において、圧縮済ＲＤＢ２７は、各人毎のレコードで構成され、各レコードのフィールドの属性は、身長、体重、・・・、血圧、・・・、早起き度等で構成され、各属性値は、たとえば、身長の属性の場合は、「身長高」、「身長中」、「身長低」等の３進値のいずれかで表現され、たとえば、早起き度の属性の場合は、「早」、「遅」の２進値のいずれかで表示される。圧縮手段１６は、以上の処理を一般ＲＤＢ２１中の最後のレコードを読み出すまで繰り返すことにより圧縮済ＲＤＢ２７を生成する。
【００４５】
次に、２値ＲＤＢ変換手段１８は、圧縮済ＲＤＢ２７から２値ＲＤＢ３０を生成する。図７は、図１中の２値ＲＤＢ３０の一例を示す図である。２値ＲＤＢ３０のフィールドは、圧縮済ＲＤＢ２７で３段階に分類された圧縮済属性値を各フィールド名とし、レコード名には各対象者のレコードが配置される。たとえば、対象者Ａは身長が「高」であるので、「身長高」のフィールド値が該当（または１）となり、「身長中」および「身長低」のフィールドは非該当（または、０）となる。また、対象者Ａの体重は「大」であるので、「体重大」のフィールド値が該当（または、１）となり、「体重中」および「体重小」のフィールドは非該当（または、０）となる。また、対象者Ａの血圧は「高」であるので、２値ＲＤＢ３０の「血圧高」のフィールド値が該当（または、１）となり、「血圧中」および「血圧低」のフィールド値は非該当（または、０）となる。また、対象者Ａの早起き度は「早」であるので、早起き度「早」のフィールド値が該当（または、１）となり、早起き度「遅」のフィールド値は非該当（または、０）となる。このように、圧縮済属性値のそれぞれのフィールドにこの各レコードの属性値が含まれれば「該当、または１」そうでなければ、「非該当、または０」を書き込み、これを２値ＲＤＢとする。
【００４６】
上述したように、実施の形態１の属性圧縮装置においては、一般ＲＤＢ１のデータを各型に分類した後に、属性値を２値に圧縮することによって、自動相関発見装置に供給するデータ量を少なくすることができ、演算処理の高速化、データ量の減少を計ることができる。
【００４７】
実施の形態２．
次に、型判定手段１４で決定された各データ型に基づいて、圧縮手段１６が一般ＲＤＢ２１を圧縮する圧縮形態について説明する。圧縮手段１６は、図４の型決定テーブル２３の内容を参照し、圧縮テーブル２５を生成し、それに従って、２値ＲＤＢ変換手段１８が２値ＲＤＢ３０を生成する。各型における圧縮の方法はそれぞれ異なるので、各型毎に圧縮の方法について以下に説明する。
【００４８】
まず、全順序型圧縮の具体例について、簡単に説明する。図４の型決定テーブル２３中の全順序型の内容が「１」である場合には、すなわち、非数値型属性値カウンタ３３の値が０であって、数値型属性値カウンタ３２の値が閾値テーブル２４中の順序数値型閾値よりも大きい場合には、圧縮による効果が期待できるので、前記の圧縮手段１６は圧縮を行い、その後２値ＲＤＢ変換手段１８で２値ＲＤＢへの変換を行い２値ＲＤＢ３０を生成する。
【００４９】
たとえば、一般ＲＤＢ２１のレコードの属性が身長の場合を例にとり、属性値を３段階に圧縮すると仮定すると、圧縮手段１６は、図５の圧縮テーブル２５に３分類された区間に従って、一般ＲＤＢ２１と圧縮テーブル２５とから、図６の圧縮済ＲＤＢ２７に属性値を書き込んでいく。この圧縮済ＲＤＢ２７は、各人毎のレコードで構成され、各レコードのフィールドの属性は、身長、体重、・・・、血圧、・・・、早起き度等で構成され、各属性値は、たとえば、身長の属性の場合は、「身長高」、「身長中」、「身長低」等の３進値のいずれかで表現され、たとえば、早起き度の属性の場合は、「早」、「遅」の２進値のいずれかで表示される。また、上記の分類については、一般ＲＤＢ２１の属性値が１６０ｃｍ未満の場合に「身長低」、１６０以上１８０ｃｍ未満の場合に「身長中」、１８０ｃｍ以上の場合に「身長高」と所定段階に予め分類されているものである。圧縮手段１６は、属性値の書き込みと同時に、属性値に応じて、「身長低」、「身長中」、「身長高」に対応する圧縮テーブル２５中の圧縮テーブルカウンタ２６のカウント数をそれぞれカウントアップする。
【００５０】
次に、２値ＲＤＢ変換手段１８は、圧縮済ＲＤＢ２７から２値ＲＤＢ３０を生成する。２値ＲＤＢ３０のフィールドは、圧縮済ＲＤＢ２７で３段階に分類された圧縮済属性値を各フィールド名とし、レコード名には各対象者が配置される。たとえば、対象者Ａは身長が「高」であるので、「身長高」のフィールド値が該当（または、１）となり、「身長中」および「身長低」のフィールドは非該当（または、０）となる。一方、対象者Ａの体重は「大」であるので、「体重大」のフィールド値が該当（または、１）となり、「体重中」および「体重小」のフィールドは非該当（または、０）となる。また、対象者Ａの血圧は「高」であるので、「血圧高」のフィールド値が該当（または、１）となり、「血圧中」および「血圧低」のフィールド値は非該当（または、０）となる。また、対象者Ａの早起き度は「早」であるので、早起き度「早」のフィールド値が該当（または、１）となり、早起き度「遅」のフィールド値は非該当（または、０）となる。このように、圧縮済属性値のそれぞれのフィールドにこの各レコードの属性値が含まれれば「該当または１」そうでなければ、「非該当または０」を書き込み、これを２値ＲＤＢとする。
【００５１】
実施の形態３．
次に、擬似全順序型圧縮の具体例について、簡単に説明する。たとえば、一般ＲＤＢ２１の属性として血圧の場合を例にとり、属性値を３段階に圧縮すると仮定する。圧縮テーブル２５で分類された区間に従って、属性値が１００未満の場合に「血圧低」、１００以上１３０未満の場合に「血圧中」、１３０以上の場合に「血圧高」とし、一般ＲＤＢ２１の属性値を３段階に分類し、圧縮済ＲＤＢ２７に書き込んでいく。一方、圧縮手段１６は、属性値に応じて、「身長低」、「身長中」、「身長高」に対応する圧縮テーブルカウンタ２６をカウントアップする。
【００５２】
次に、型判定手段１４で決定されたデータ型が擬似全順序型である場合に、圧縮手段１６が一般ＲＤＢ２１を圧縮する圧縮形態について説明する。圧縮手段１６は、型決定テーブル２３の内容を参照し、擬似全順序型の内容が「１」である場合には、すなわち、数値型属性値種類数カウンタの値が順序数値型閾値よりも大きく、非数値型属性値カウンタ３３の値が順序非数値型閾値よりも小さい場合は、数値型データに対しては圧縮による効果が期待でき、非数値型データに対しては圧縮による効果が期待できない。従って、この場合には、前記の圧縮手段１６は数値型データに対しては圧縮を行い、その後２値ＲＤＢ変換手段１８で２値ＲＤＢに変換を行い２値ＲＤＢ３０を生成する。一方、非数値型データに対しては圧縮を行わない。すなわち、非数値型の属性値については置き換えをせずに、そのまま圧縮済ＲＤＢ２７に書き込みを行う。同時に圧縮テーブル２５の区間に対応する圧縮テーブルカウンタ２６をカウントアップする。
【００５３】
たとえば、属性として血圧の場合を例にとると、属性値を３段階に圧縮すると仮定すると、圧縮テーブル２５に記述された区間に従って、一般ＲＤＢ２１の属性値を属性値が１００未満の場合に「血圧低」、１００以上１３０未満の場合に「血圧中」、１３０以上の場合に「血圧高」の３つで置き換え、属性値が「測定不能」の場合には、そのままの値、たとえば、図２の一般ＲＤＢ２１において、「測定不能」を、圧縮済ＲＤＢ２７に書き込む。このようにして、一般ＲＤＢ２１からの属性値を「血圧低」、「血圧中」、「血圧高」、「血圧測定不能」の４つに分類し、圧縮テーブル２５に対応する圧縮テーブルカウンタ２６をカウントアップする。
【００５４】
実施の形態４．
次に、クラスタ型圧縮の具体例について、簡単に説明する。型判定手段１４は、属性値総数カウンタ３４に格納された属性値種類の総数が、順序数値型閾値よりも小さい場合には、データがクラスタ型と判断して、図４の型決定テーブル２３中の擬似全順序型の内容を「１」にセットする。たとえば、順序数値型閾値を１０と仮定すると、属性が早起き度の場合の属性値（属性値種類の総数）は２（「早」および「遅」）であり、この値２は、順序数値型閾値（＝１０）よりも小さいので、データ型はクラスタ型と判断される。この場合は、属性値の種類が少ないので、「早」および「遅」の２つの属性値を共通化してまとめて圧縮する意義が小さい。従って、圧縮手段１６は、本来、「早」および「遅」の属性値を共通化することなく、「早」および「遅」の属性値を属性値をそのまま圧縮済ＲＤＢ２７に書き込む。２値ＲＤＢ変換手段１８は、圧縮済ＲＤＢ２７の値から２値ＲＤＢ３０を生成する。
【００５５】
実施の形態５．
次に、擬似識別子型圧縮の具体例について、簡単に説明する。型判定手段１４は、属性値種類総数テーブル３４中の格納された属性値種類の総数が、レコード数カウンタ１０のカウント数と閾値テーブル２４中の擬似識別子型閾値との積よりも大きい場合は、擬似識別子型と判断して、図４の型決定テーブル２３中の擬似識別子型の内容を「１」にセットする。たとえば、１９４のデータがあり、その中で１７４通りの異なる属性値の選択が存在する場合には、擬似識別子型閾値＝１７４／１９４＝約０．９となる。たとえば、属性値総数カウンタ３４中の属性値種類総数が１８０通りある場合を例に取ると、レコード数カウンタ１０のカウント数は１９４であるから、属性値種類総数（１８０）＞レコード数カウンタ１０のカウント数（１９４）×０．９＝１７４であるから、この場合は擬似識別子型と判断される。たとえば、被験者の電話番号等はユニークであるので、ほとんどのデータは異なるものである。このような場合は、属性値の種類が多いので、圧縮する意義が小さい。従って、圧縮手段１６は、属性値を圧縮済ＲＤＢ２７に書き込まない。従って、属性値は２値ＲＤＢ３０に書込まれない。
【００５６】
実施の形態６．
次に、無値型圧縮の具体例について、簡単に説明する。型判定手段１４は、属性値総数カウンタ３４に格納された属性値種類の総数が、０または１の場合は、無値型と判断して、図４の型決定テーブル２３中の無値型の内容を「１」にセットする。たとえば、たとえば、身長の属性の属性値中のデータが全くない場合、このとき属性値種類の総数＝０、または身長の属性の属性値中のデータが全て「異常なし」の場合、このとき属性値種類の総数＝１のような場合である。この場合は、属性の属性値には情報量がないので、圧縮する意義が小さい。従って、圧縮手段１６は、属性値を圧縮済ＲＤＢ２７に書き込まない。従って、属性値は２値ＲＤＢ３０に書込まれない。
【００５７】
実施の形態７．
次に、文字列型圧縮の具体例について、簡単に説明する。型判定手段１４は、属性型が上記の全順序型、擬似全順序型、擬似識別子型、クラスタ型、無値型のいずれにも該当しない場合は、文字列型と判断して、図４の型決定テーブル２３中の文字列型の内容を「１」にセットする。たとえば、３０個の属性が全て文字列で構成されている場合は、属性値の種類数は多いが、擬似識別子型となるほど多くはなく、さらに、順序性がないので、圧縮をする意義が少ない。従って、圧縮手段１６は、属性値をそのまま圧縮済ＲＤＢ２７に書き込む。２値ＲＤＢ変換手段１８は、圧縮済ＲＤＢ２７の値から２値ＲＤＢ３０を生成する。一方、この文字列型の場合には、全レコード中比率の少ない属性値について「その他」として圧縮する方法もある。その例について、次の実施の形態８で説明する。
【００５８】
実施の形態８．
実施の形態８は、文字列型を他の方法によって処理する属性圧縮装置に関するものである。図８は、本発明の実施の形態８の属性圧縮装置における圧縮の一例を示す図である。図１に示す実施の形態１において、圧縮手段１６が圧縮済ＲＤＢ２７へ書き込むステップにおいて、属性値カウントアップテーブル２２中のある文字列型属性値の頻度カウンタの値が、属性値の頻度カウンタの総和と少数割合閾値との積よりも小さい場合、つまり、ある文字列型属性値の比率が対応する属性中で低い場合には、文字列型はクラスタ型よりも属性値種類が多いので圧縮の必要があると判断される。従って、この場合は、上記を満たす文字列型属性値を一つに統合して、圧縮済ＲＤＢ２７に書き込んでいく。
【００５９】
図８において、たとえば、ある質問に対する回答選択肢が多数ある場合、その中で極端に回答が少なかった肢をまとめて、「その他」として圧縮済ＲＤＢに書き込むような場合である。図２の横軸はａ，ｂ，ｃ，ｄ，ｅ，ｆはそれぞれある質問に対する回答選択肢であり、縦軸は、各回答選択肢に対する回答数を示す。図８中の横点線は、少数割合閾値を示す。図８において、回答選択肢が多いと仮定すると、その回答選択肢を減少させたい場合に、少数割合閾値よりも回答数が小さい選択肢の回答数をまとめて、「その他」という項目を新設し、回答数が小さい選択肢の回答数を、まとめることによって選択肢の数を減少させる記憶とができる。図２において、ｄの回答選択肢とｆの回答選択肢の回答数が少数割合閾値より小さいので、これをまとめて、新たな選択肢「その他」を新設し、ｄの回答選択肢とｆの回答選択肢の回答数を加算した値を総回答数とすることによって、データを圧縮することができる。
【００６０】
実施の形態９．
次に、実施の形態９の属性圧縮装置について説明する。実施の形態９は、実施の形態１における一般ＲＤＢ２１において、日付をあらわす属性フィールドが含まれている場合、前処理として、これらの一般ＲＤＢ２１上の日付を表わす数値型フィールドの属性値を、日付フィールド圧縮手段１７を用いて、圧縮型日付属性値に置き換える属性圧縮装置に関するものである。図１０は、実施の形態９の、一般ＲＤＢ上の日付を表わす数値型フィールドを圧縮型日付属性値に置き換える属性圧縮装置の一例を示す図である。図９において、日付フィールド圧縮手段１７はデータ読出し装置８の前段に設けられ、一般ＲＤＢ２１から日付圧縮ＲＤＢ３１を生成する。図１１は、一般ＲＤＢ２１上の日付を表わす数値型フィールドを圧縮型日付属性値に置き換える方法の一例を示す図である。たとえば、一般ＲＤＢ２１上で日付フィールドの属性値として、年、月、日を含む１９９７．１２．１８、１９９８．１．１０、１９９５．１０．１２等で表示されていた場合、日付フィールド圧縮手段１７は、９７１２１８、１９９８０１１０、１９９５１０１２のような数値型属性値に変換された日付圧縮ＲＤＢ３１を生成する。データ読出し装置８は、一般ＲＤＢ２１を用いる代わりに、新たに生成された日付圧縮ＲＤＢ３１からデータを読み出すものである。このように、実施の形態９においては、入力時点で一般ＲＤＢ２１自身を圧縮することによって、データ処理速度を早くすることが可能となる。
【００６１】
実施の形態１０．
次に実施の形態１０の属性圧縮装置について説明する。実施の形態１０においては、実施の形態１における一般ＲＤＢ２１において、サンプリングを行って必要な属性に関するデータのみを抽出してそれらの抽出されたデータについてのみ圧縮をすればよいことがある。このような場合には、前処理によって、一般ＲＤＢ２１上の所定のレコードのみを抽出によって取り除き、残ったレコードに関するデータのみについて圧縮を行う。
【００６２】
図１１は実施の形態１０の処理を行う属性圧縮装置を示す図である。図１１において、サンプリング手段１１はデータ読出し装置８の前段に設けられ、一般ＲＤＢ２１からサンプルＲＤＢ３６を生成する。図１２はサンプリング前の一般ＲＤＢ２１とサンプリング後のサンプルＲＤＢ３６間の変換例を示す図である。図１２において、一般ＲＤＢ２１にはレコードＡ，Ｂ，Ｃ，Ｄ，Ｅ，・・・等が格納されているが、たとえば、レコードＢ，ＣおよびＥのデータは不要であると前もって分かっている時には、サンプリング手段１１が、レコードＢ，ＣおよびＥをサンプリングによって除去することによって、サンプルＲＤＢ３６のように、サンプリングによって除去されたレコードを除くレコードＢおよびＤが得られる。非数値型数カウンタ８は、このサンプルＲＤＢ３６を基に属性値カウントアップテーブル２２を作成することによって、少ないデータ数の処理で目的の圧縮を行うことができる。すなわち、実施の形態１０の属性圧縮装置においては、非数値型数カウンタ８は、一般ＲＤＢ２１に代わってサンプルＲＤＢ３６からの入力によって各属性の型を決定することができ、それによって処理を高速化することが可能となる。なお、各属性の型を決定した後の処理は図１に示す実施の形態１と同じであるので詳細な説明を省略する。
【００６３】
実施の形態１１．
次に、実施の形態１１の属性圧縮装置について説明する。図１３は、本発明の実施の形態１１の属性圧縮装置を示す図である。図１４は、各属性の全体平均およびサンプル平均との差である分離度示す図である。実施の形態１１においては、サンプリング手段１１を設けると共に統計計算手段１３を設けたものである。サンプリング手段１１の処理は、実施の形態１０と同様に一般ＲＤＢ２１からサンプルＲＤＢ３６を作成し保存すると共に、属性値カウントアップテーブル２２から、図１４に示すような各属性の全体平均、全体標準偏差および全体分散、全体上限値、全体下限値を計算する。次に、同様に、実施の形態１０で得られたサンプルＲＤＢ３６から、各属性のサンプル平均４１、サンプル標準偏差およびサンプル分散、サンプル上限値、サンプル下限値を計算する。
【００６４】
図１４に示されるように、統計計算手段１３は、上記の各属性の全体平均およびサンプル平均との差である分離度を求める。一般ＲＤＢ２１とサンプルＲＤＢ３６の分離度が大きい場合には、サンプル上限値とサンプル下限値については、それに挟まれた区間内を、たとえば、サンプル平均を中心にサンプル分散によって区間を区切って圧縮する。そして、一般ＲＤＢの全体下限値とサンプル下限値および、一般ＲＤＢの全体上限値とサンプル上限値間は、サンプル区間内と別個の区間として圧縮する。
【００６５】
以上の圧縮手法により、一般ＲＤＢ２１中の外れ値（一般ＲＤＢ２１を作成するときの入力誤りの可能性もあり）を区別した区間に割り振るか、あるいは、場合によっては、以下に述べる不要属性値除去ＲＤＢ２９中にこの区間を追加することによって、２値ＲＤＢ３０へのデコードを行なわないようにすることもできる。すなわち、サンプル下限値とサンプル上限値間を不要属値性として上記区間の属性値（外れ値）を２値ＲＤＢ３０に変換しないことによって、外れ値を除去できる。たとえば、「入社何年ですか」との問いに対し、答えは１〜４０年であるのに対して、間違えて９０年（入社年度）と答えた場合には、この９０を不要属値として不要属性値除去ＲＤＢ２９に追加することによって除去できる。
【００６６】
実施の形態１２．
次に、実施の形態１２の属性圧縮装置について説明する。図１５は実施の形態１２の属性圧縮装置の構成を示す図である。実施の形態１２においては、実施の形態１から１１の属性圧縮装置により作成された２値ＲＤＢ３０中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成することによってさらなる圧縮を行なうことができる。実施の形態１２の属性圧縮装置は、図１５に示すように、２値ＲＤＢ変換手段１８の前段に、相関ＲＤＢ生成手段１５を追加したものである。
【００６７】
図１６は相関ＲＤＢ生成手段１５を用いないで圧縮済ＲＤＢ２７から２値ＲＤＢ３０を生成するプロセスを示す図である。図１７は、実施の形態１２における相関ＲＤＢ生成手段１５を用いて、圧縮済ＲＤＢ２７から２値ＲＤＢを生成するプロセスを示す図である。なお、図１６は図１７との比較のために用いられるものである。たとえば、生成された圧縮済ＲＤＢ２７中の属性として、肥満度とローレル指数の属性があり、両属性値とも大、中、小の３段階に圧縮されていおり、相互の相関が大きいと判断される場合は、相関ＲＤＢ生成手段１５は、たとえば、「｛肥満度、ローレル指数｝→肥満」なる相関演算を行い、相関関係ＲＤＢ３８（図示されない）を生成する。次に、相関ＲＤＢ生成手段１５は、たとえば、肥満度の属性の属性値が大であり、同時に同じレコード中のローレル指数の属性の属性値が大である場合は、２値ＲＤＢ３０に「肥満大」、肥満度の属性の属性値と同じレコード中の対応するローレル指数の属性の属性値が中と中の組み合わせである場合は「肥満中」、肥満度の属性の属性値と同じレコード中の対応するローレル指数の属性の属性値が小と小の組み合わせである場合は「肥満小」と定義し肥満のフィールドを生成し、それらの属性値を「該当、または１」または「非該当、または０」にセットする。たとえば、図１７の例においては、レコードＡは「肥満小」のフィールドに１がセットされ、レコードＢは「肥満中」のフィールドに１がセットされ、レコードＣは「肥満大」のフィールドに１がセットされる。これらの条件に該当しない場合には、肥満のビットを立てない。
【００６８】
一方、図１６においては、実施の形態１の方法によって得られた２値ＲＤＢ３０を示している。図１６と図１７とを比べると、実施の形態１２においては、「｛肥満度、ローレル指数｝→肥満」なる相関演算を行って２値ＲＤＢ３０を生成する。すなわち、肥満度とローレル指数の指数が一致した時のみ肥満のフィールドにビットが立つ。肥満のフィールドにビットが立つと、肥満度およびローレル指数のビット１を０にする。このために、２値ＲＤＢ３０の各属性値に含まれる「該当または１」の出現確率が小さくなる。さらに、図１６の元２値ＲＤＢと図１７の改良２値ＲＤＢを比較すると分かるように、生成される相関ルールの長さが短くなり、ユーザの視認性が向上する。実際には、０の値に対してはメモリ上での割り当てを行わないようにできるので、装置全体のフィールド数、すなわちメモリ量が減少し、従って、演算処理速度が速くなる。
【００６９】
実施の形態１３．
図１８は実施の形態１３の属性圧縮装置を示す図である。図１８は、図１に示される属性圧縮装置に不要属性除去手段６および不要属性値除去ＲＤＢ２９を追加したものである。
上述の実施の形態においては、全ての圧縮された属性値に対して２値ＲＤＢ３０を生成したが、特定の属性値に対しては、２値ＲＤＢを生成しない方が都合のよいことがあり、その特定の属性値に関する２値ＲＤＢを生成しないようにする。この場合は、２値ＲＤＢ変換手段１８は、対象となる属性値に対しては２値ＲＤＢへの変換を行うことなく、その他の属性値に対してのみ２値ＲＤＢへの変換を行なう。たとえば、血圧が異常な人のデータだけが欲しい場合、血圧が正常な人のデータは不要であるので、血圧が正常な属性を２値ＲＤＢ３０に変換する必要はない。しかしながら、その人の肥満に関するデータは必要であるので、肥満の属性に関するデータは２値ＲＤＢ３０へ変換する。
【００７０】
図１９は、圧縮済ＲＤＢ２７から２値ＲＤＢ変換手段１８および不要属性値除去ＲＤＢ２９を介して２値ＲＤＢ３０を生成する過程を示す図である。圧縮手段１６と２値ＲＤＢ変換手段１８との間に設けられた不要属性除去手段６は、予め設定された不要属性値除去ＲＤＢ２９に基づいて、所定のデータに対して２値ＲＤＢ変換を行わないようにする。すなわち、不要属性除去手段６は、不要属性値除去ＲＤＢ２９に指定されている属性値、もしくは属性値区間に、圧縮済属性値が含まれている場合には、この圧縮済属性値は２値ＲＤＢに変換せずに、そのまま読み捨てるように動作する。
【００７１】
たとえば、図１９において、血圧が異常な場合（血圧高か血圧低）の属性と他の属性との相関関係を知りたい場合には、不要属性値除去ＲＤＢ２９中に血圧正常の属性値（血圧中）を指定しておけば、正常の属性が２値ＲＤＢ３０に変換されないので、その分圧縮が大きくなる。
【００７２】
実施の形態１４．
図２０は、実施の形態１４の属性圧縮装置を示す図である。図２０は、図１に示される属性圧縮装置に多数判定手段２８および多数割合閾値を追加したものである。
上記の実施の形態においては、全てのレコードに対して２値ＲＤＢ３０を生成したが、同じ属性が多数を占めるレコードに対しては、２値ＲＤＢ３０を生成しない方が都合のよいことがあり、その場合は２値ＲＤＢ変換手段１８で２値ＲＤＢが生成されないように、多数判定ＲＤＢ２８が前処理を行う。従って、２値ＲＤＢ変換手段１８は、対象となるレコードに対しては２値ＲＤＢへの変換を行なうことなく、その他のレコードに対してのみ２値ＲＤＢへの変換を行なう。
【００７３】
図２１は、多数判定手段２８が、多数割合閾値を参照して、圧縮済ＲＤＢ２７から２値ＲＤＢ３０を生成する過程を示す図である。多数判定手段２８は、ある属性の圧縮済属性値の圧縮テーブルカウンタ２６の値と、この属性における圧縮テーブルカウンタ２６の総和との比が、多数割合閾値よりも大きいレコードを多数判定手段２８が検出して、２値ＲＤＢ変換手段１８はこのレコードに対しては２値ＲＤＢ３０に変換せずにそのまま読み捨てる。
【００７４】
このように、ある調査項目につき、特異な結果を占めている場合の相関関係を知りたい場合に、その調査結果で多数を占める属性区間を削除することにより、圧縮を大きくすることができる。たとえば、図５に示すように、圧縮テーブルカウンタ２６の値（体重「中」のレコード）は１５０あり、この属性における圧縮テーブルカウンタ２６の総和（全レコード数）は１９４であるので、その比は１５０／１９４＝約０．８＞多数割合閾値（たとえば、０．７）となり、この条件を満足する。すなわち、この場合は、体重「中」のレコードは全体の大多数を占めているので、この多数を占める属性値を全て読み捨てることにより、体重が「大」または「小」に属するレコードに関する調査を効率よく行うことができる。
【００７５】
【発明の効果】
第１の発明は、ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮装置において：一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納するデータ読出し手段と、一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、データ読出し手段で読み出されたデータが数値型か否かを判定し、数値型の場合には属性値の出現度数を数値型属性値カウンタに格納し、非数値型の場合には属性値の出現度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納する数値型判定手段と、前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいて属性値のデータの型を判定し、判定結果を型決定テーブルに格納する型判定手段と、型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成する圧縮手段と、前記圧縮済ＲＤＢに基づいて、２値で表現される２値ＲＤＢを生成する２値ＲＤＢ変換手段とを備えるように構成されるので、一般ＲＤＢの属性の圧縮が自動化できる。
【００７６】
第２の発明の属性圧縮装置は、非数値型属性値カウンタの値が０であって、属性値総数カウンタの値が順序数値型閾値よりも大きい場合は、前記型反転手段で入力されたデータ型は全順序型と判断され、入力されたデータ型が全順序型と判断された場合、前記圧縮手段で全てのデータに対して属性値変換を行うように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００７７】
第３の発明の属性圧縮装置は、数値型属性値種類数カウンタの値が順序数値型閾値よりも大きく、非数値型属性値カウンタの値が順序非数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータは擬似全順序型と判断され、入力されたデータ型が擬似全順序型と判断された場合、前記圧縮手段で前記圧縮手段で数値型データに対しては属性値変換を行い、非数値型データに対しては属性値変換を行わないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００７８】
第４の発明の属性圧縮装置は、属性値総数カウンタに格納された属性値種類の総数が、順序数値型閾値よりも小さい場合は、前記型反転手段で入力されたデータ型はクラスタ型と判断され、入力されたデータ型がクラスタ型と判断された場合、前記圧縮手段で一般ＲＤＢの属性のすべてを２値ＲＤＢの属性にそのまま用いるように構成されるので、処理の高速化が可能となる。
【００７９】
第５の発明の属性圧縮装置は、属性値種類の総数が、レコード数カウンタのカウント数と閾値テーブル中の擬似識別子型閾値との積よりも大きい場合は、前記型反転手段で入力されたデータ型は擬似識別子型と判断され、入力されたデータ型が擬似識別子型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないように構成されるので、無用の圧縮を避けることによって、相関関係発見装置の処理が高速化できる。
【００８０】
第６の発明の属性圧縮装置は、属性値総数カウンタの格納された属性値種類の総数が、０または１の場合は、前記型反転手段で入力されたデータ型は無値型と判断され、入力されたデータ型が無値型と判断された場合、前記圧縮手段で一般ＲＤＢを２値ＲＤＢに変換しないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００８１】
第７の発明の属性圧縮装置は、属性型が上記の全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型のいずれにも該当しない場合は、前記型反転手段で入力されたデータ型は文字列型と判断され、入力されたデータ型が文字列型と判断された場合、前記圧縮手段で一般ＲＤＢのすべてを２値ＲＤＢにそのまま用いるように構成されるので、２値ＲＤＢの属性の数を減少でき、処理の高速化が可能となる。
【００８２】
第８の発明の属性圧縮装置は、属性値カウントアップテーブル中にある文字列型属性値の頻度カウンタの値が、対応する属性の属性値の頻度カウンタの総和と少数割合閾値との積よりも小さい場合は、一般ＲＤＢの属性値を同一の属性値に圧縮するように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００８３】
第９の発明の属性圧縮装置は、さらに、日付フィールド圧縮手段および日付圧縮ＲＤＢを備え、日付を表す複数の属性の指定を受けて、その複数の属性中から数値だけをまとめてひとつの全順序型の属性とみなして圧縮を行うように構成されるので、圧縮できない文字列型の属性が圧縮でき、処理の高速化が可能となる。
【００８４】
第１０の発明の属性圧縮装置は、さらに、サンプリング手段およびサンプルＲＤＢを備え、一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、そのサンプルＲＤＢを用いて全順序型、擬似全順序型、クラスタ型、擬似識別子型、無値型、文字型の分類を行い、２値ＲＤＢ３０を生成するように構成されるので、処理レコード数が少なくなり、処理の高速化が可能となる。
【００８５】
第１１の発明の属性圧縮装置は、さらに、統計計算手段および統計圧縮ＲＤＢを備え、統計計算手段は、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、もしくは一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きい場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管するように構成されるので、外れ値を除去するか、または外れ値を別個の圧縮区間とすることによって適切な範囲決定が行える。
【００８６】
第１２の発明の属性圧縮装置は、さらに、相関ＲＤＢ生成手段および相関関係ＲＤＢを備え、作成された２値ＲＤＢ中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成するように構成されるので、相関処理装置によってルールの長さが短くなり見やすくなる。
【００８７】
第１３の発明の属性圧縮装置は、さらに、不要属性値除去手段および不要属性値除去ＲＤＢを備え、圧縮後の属性値の範囲が、不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００８８】
第１４の発明の属性圧縮装置は、さらに、多数判定手段および多数割合閾値テーブルを備え、その多数判定手段は、ある属性の圧縮済属性値の圧縮テーブルカウンタの値と、この属性における圧縮テーブルカウンタの総和との比から多数割合を求め、閾値テーブルに予め格納された多数割合閾値と、前記求められた多数割合とを比較して、同じ属性が多数を示す属性値かどうかを判断し、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００８９】
第１５の発明の属性圧縮方法は、ＲＤＢ（Relational Data Base）中で相関のある属性値の組を自動的に抽出する相関自動発見装置に用いられ、一般ＲＤＢから２値ＲＤＢへの変換を行う属性圧縮方法において：データ読出し手段は、一般ＲＤＢの各属性を読み出し、読み出したデータを属性値カウントアップテーブルに格納し、一般ＲＤＢから読み出したレコード数をカウントするレコード数カウンタと、数値型判定手段は、上記で読み出されたデータが数値型か否かを判定し、数値型の場合には度数を数値型属性値カウンタに格納し、非数値型の場合には度数を非数値型属性値カウンタに格納し、さらに属性値の総数を属性値総数カウンタに格納し、型判定手段は、前記数値型属性値カウンタ、非数値型属性値カウンタ、およびユーザにより予め設定された種々の閾値が格納された閾値テーブルの各内容に基づいてデータの型を判定し、判定結果を型決定テーブルに格納し、圧縮手段は、型決定テーブルに格納された各型に基づいて圧縮の属性値変換方法を決定し、決定された属性値変換方法に基づいて一般ＲＤＢに格納されたデータより圧縮テーブルの属性値の範囲を決定し、前記属性値の範囲に属するデータの数をカウントすることにより圧縮テーブルを生成し、生成した前記圧縮テーブルに基づいて一般ＲＤＢより圧縮済ＲＤＢを生成し、２値ＲＤＢ変換手段は、圧縮済ＲＤＢに基づいて、２値で表現される２値ＲＤＢを生成するように構成されるので、一般ＲＤＢの属性の圧縮が自動化できる。
【００９０】
第１６の発明の属性圧縮方法は、サンプリング手段によって、前記一般ＲＤＢから一定レコード数を抜き出したサンプルＲＤＢを作成し、以降前記一般ＲＤＢの代わりにサンプルＲＤＢを用いるように構成されるので、処理レコード数が少なくなるので、処理の高速化が可能となる。
【００９１】
第１７の発明の属性圧縮方法は、統計計算手段は、前記サンプル手段によって得られた結果から、一般ＲＤＢとサンプルＲＤＢの属性の平均の差、もしくは一般ＲＤＢとサンプルＲＤＢの属性の標準偏差の差が一定の幅より大きいと判断した場合には、サンプル上限値とサンプル下限値に挟まれたサンプル区間内はサンプルＲＤＢのサンプル平均およびサンプル標準偏差に基づいて圧縮範囲を決定し、それサンプル区間以外の区間は、サンプル区間内と別個の区間として圧縮範囲を決定し、その結果を統計圧縮ＲＤＢに保管し、前記圧縮手段はこの統計圧縮ＲＤＢおよび型決定テーブルに基づいて圧縮テーブルを生成するように構成されるので、外れ値を除去することによって適切な範囲決定が行える。
【００９２】
第１８の発明の属性圧縮方法は、相関ＲＤＢ生成手段は、読み出された一般ＲＤＢ２１中のある属性と他の属性との相関が強い場合、これらの属性の相関を用いて新たな属性を生成し、相関関係ＲＤＢに保管し、前記２値ＲＤＢ変換手段はこの相関関係ＲＤＢを用いて圧縮済ＲＤＢから２値ＲＤＢを生成するように構成されるので、相関処理装置の出力である相関ルールの長さが短くなり見やすくなる。
【００９３】
第１９の発明の属性圧縮方法は、圧縮後の属性値の範囲が、前記不要属性値除去ＲＤＢに予め格納された不要範囲内に該当する場合には、不要属性値除去手段は、不要属性値除去ＲＤＢで特定された範囲の属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【００９４】
第２０の発明の属性圧縮方法は、多数判定手段は、閾値テーブルに予め格納された多数割合閾値に基づいて、同じ属性が多数を占める属性値を除去し、その除去された属性値に関しては、２値ＲＤＢ変換手段が２値ＲＤＢ変換を行わないように構成されるので、一般ＲＤＢの属性の圧縮が自動化でき、さらに、２値ＲＤＢの属性の数を減少できるので、処理の高速化が可能となる。
【図面の簡単な説明】
【図１】  本発明の実施の形態１の属性圧縮装置の構成を示す図である。
【図２】  図１中の一般ＲＤＢの一例を示す図である。
【図３】  図１中の属性値カウントアップテーブル、数値型属性値カウンタ、非数値型属性値カウンタおよび属性値総数カウンタの一例を示す図である。
【図４】  図１中の型決定テーブルの一例を示す図である。
【図５】  図１中の圧縮テーブルおよびその中に含まれるカウンタの一例を示す図である。
【図６】  図１中の圧縮済ＲＤＢの一例を示す図である。
【図７】  図１中の２値ＲＤＢの一例を示す図である。
【図８】  本発明の実施の形態８の属性圧縮装置における圧縮の一例を示す図である。
【図９】  本発明の実施の形態９の属性圧縮装置を示す図である。
【図１０】  本発明の実施の形態９において、一般ＲＤＢ上の日付を表わす数値型フィールドを圧縮型日付属性値に置き換える一例を示す図である。
【図１１】  本発明の実施の形態１０の属性圧縮装置を示す図である。
【図１２】  サンプリング前の一般ＲＤＢとサンプリング後のサンプルＲＤＢの一例を示す図である。
【図１３】  本発明の実施の形態１１の属性圧縮装置を示す図である。
【図１４】  本発明の実施の形態１１における各属性の全体平均およびサンプル平均との差である分離度示す図である。
【図１５】  本発明の実施の形態１２の属性圧縮装置の構成を示す図である。
【図１６】  相関ＲＤＢ生成手段を用いないで圧縮済ＲＤＢから２値ＲＤＢを生成するプロセスを示す図である。
【図１７】  本発明の実施の形態１２における相関ＲＤＢ生成手段１５を用いて、圧縮済ＲＤＢから２値ＲＤＢを生成するプロセスを示す図である。
【図１８】  本発明の実施の形態１３の属性圧縮装置の構成を示す図である。
【図１９】  本発明の実施の形態１３の属性圧縮装置において、圧縮済ＲＤＢから２値ＲＤＢを生成する過程を示す図である。
【図２０】  本発明の実施の形態１４の属性圧縮装置の構成を示す図である。
【図２１】  本発明の実施の形態１４の属性圧縮装置において、圧縮済ＲＤＢから２値ＲＤＢを生成する過程を示す図である。
【符号の説明】
６    不要属性値除去手段
８    データ読出し手段
１０  レコード数カウンタ
１１  サンプリング手段
１２  数値型判定手段
１３  統計計算手段
１４  型判定手段
１５  相関ＲＤＢ生成手段
１６  圧縮手段
１７  日付フィールド圧縮手段
１８  ２値ＲＤＢ変換手段
２１  一般ＲＤＢ
２２  属性値カウントアップテーブル
２３  型決定テーブル
２４  閾値テーブル
２５  圧縮テーブル
２６  圧縮テーブルカウンタ
２７  圧縮済ＲＤＢ
２８  多数判定手段
２９  不要属性値除去ＲＤＢ
３０  ２値ＲＤＢ
３１  日付圧縮ＲＤＢ
３２  数値型属性値カウンタ
３３  非数値型属性値カウンタ
３４  属性値総数カウンタ
３５  数値型属性値種類数カウンタ
３６  サンプル圧縮ＲＤＢ
３７  統計圧縮ＲＤＢ
３８  相関関係ＲＤＢ
３９  多数割合閾値
【図１】
0003651550.tif 000002
【図２】
0003651550.tif 000003
【図３】
0003651550.tif 000004
【図４】
0003651550.tif 000005
【図５】
0003651550.tif 000006
【図６】
0003651550.tif 000007
【図７】
0003651550.tif 000008
【図８】
0003651550.tif 000009
【図９】
0003651550.tif 000010
【図１０】
0003651550.tif 000011
【図１１】
0003651550.tif 000012
【図１２】
0003651550.tif 000013
【図１３】
0003651550.tif 000014
【図１４】
0003651550.tif 000015
【図１５】
0003651550.tif 000016
【図１６】
0003651550.tif 000017
【図１７】
0003651550.tif 000018
【図１８】
0003651550.tif 000019
【図１９】
0003651550.tif 000020
【図２０】
0003651550.tif 000021
【図２１】
0003651550.tif 000022