JP6207619B2 - ソース追跡によるデータのプロファイリング - Google Patents

ソース追跡によるデータのプロファイリング Download PDF

Info

Publication number
JP6207619B2
JP6207619B2 JP2015537694A JP2015537694A JP6207619B2 JP 6207619 B2 JP6207619 B2 JP 6207619B2 JP 2015537694 A JP2015537694 A JP 2015537694A JP 2015537694 A JP2015537694 A JP 2015537694A JP 6207619 B2 JP6207619 B2 JP 6207619B2
Authority
JP
Japan
Prior art keywords
value
entries
sets
records
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015537694A
Other languages
English (en)
Other versions
JP2016502166A (ja
Inventor
アーレン アンダーソン
アーレン アンダーソン
Original Assignee
アビニシオ テクノロジー エルエルシー
アビニシオ テクノロジー エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by アビニシオ テクノロジー エルエルシー, アビニシオ テクノロジー エルエルシー filed Critical アビニシオ テクノロジー エルエルシー
Publication of JP2016502166A publication Critical patent/JP2016502166A/ja
Application granted granted Critical
Publication of JP6207619B2 publication Critical patent/JP6207619B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • G06F16/24544Join order optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

関連出願の相互参照
本出願は、参照により本明細書に組み込まれている、2012年10月22日に出願された米国特許出願第61/716,766号の優先権を主張するものである。
本明細書は、ソース追跡によりデータをプロファイリングすることに関する。
記憶されたデータセットは、様々な特徴が知られていないデータを含むことが多い。例えば、データセットについての値の範囲若しくは標準値、そのデータセットの異なるフィールド間の関係、又は異なるフィールドにおける値間での従属性が知られていないことがある。そのような特徴を決定するために、データプロファイリングは、データセットのソースを検査することを含むことができる。
一態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするための方法が、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに接続されたインターフェース上で、データ記憶システムに記憶されたレコードの複数の集合にアクセスするステップであって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスするステップと、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するステップとを含む。処理するステップは、値カウントエントリの組み合わせリストを生成するために、2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリをマージするステップと、別個のフィールド値エントリのリストを生成するために、値カウントエントリの組み合わせリストの値カウントエントリを集約するステップであって、別個のフィールド値エントリの少なくともいくつかが、値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、2又は3以上の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、集約するステップとを含む。
態様は、以下の特徴のうちの1又は2以上を含むことができる。
対応するリストの値カウントエントリをマージするステップは、値カウントエントリからの値に基づいて、値カウントエントリをソートするステップを含む。
値カウントエントリをソートするステップは、値カウントエントリからの値に基づいて、主ソート順序によってソートするステップと、2又は3以上の集合の識別子に基づいて、副ソート順序によってソートするステップとを含む。
集合のうちの2又は3以上の集合の定量的情報を処理するステップは、集合のうちの3又は4以上の集合の定量的情報を処理するステップを含む。
方法は、3又は4以上の集合のうちの少なくとも2つの集合の第1のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含み、プロファイリング要約情報は、第1のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む。
方法は、3又は4以上の集合のうちの少なくとも2つの集合の、第1のサブセットとは異なる第2のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含み、プロファイリング要約情報は、第2のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む。
特定の集合に対応する値カウントエントリのリストにおける各値カウントエントリは、選択されたフィールドに値が現れるレコードの特定の集合内でのそれぞれの位置を識別する位置情報をさらに含む。
処理するステップは、別個のフィールド値エントリのリストを更新するために、2又は3以上の集合のうちの第3の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップであって、その結果、別個のフィールド値エントリの少なくともいくつかが、第1の集合、第2の集合、及び第3の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合、第2の集合、及び第3の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップを含む。
別の態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピュータプログラムが、コンピュータ可読記憶媒体に記憶される。コンピュータプログラムは、コンピューティングシステムに、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに接続されたインターフェース上で、データ記憶システムに記憶されたレコードの複数の集合にアクセスさせるための命令であって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスさせるための命令と、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理させるための命令とを含む。処理することは、値カウントエントリの組み合わせリストを生成するために、2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリをマージすることと、別個のフィールド値エントリのリストを生成するために、値カウントエントリの組み合わせリストの値カウントエントリを集約することであって、別個のフィールド値エントリの少なくともいくつかが、値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、2又は3以上の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、集約することとを含む。
別の態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムが、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに記憶されたレコードの複数の集合にアクセスするように構成された、データ記憶システムに接続されたインターフェースであって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、インターフェースと、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するように構成された少なくとも1つのプロセッサとを含む。処理することは、値カウントエントリの組み合わせリストを生成するために、2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリをマージすることと、別個のフィールド値エントリのリストを生成するために、値カウントエントリの組み合わせリストの値カウントエントリを集約することであって、別個のフィールド値エントリの少なくともいくつかが、値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、2又は3以上の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、集約することとを含む。
別の態様によれば、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムが、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに記憶されたレコードの複数の集合にアクセスするための手段であって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスするための手段と、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するための手段とを含む。処理することは、値カウントエントリの組み合わせリストを生成するために、2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリをマージすることと、別個のフィールド値エントリのリストを生成するために、値カウントエントリの組み合わせリストの値カウントエントリを集約することであって、別個のフィールド値エントリの少なくともいくつかが、値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、2又は3以上の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、集約することとを含む。
別の態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするための方法が、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに接続されたインターフェース上で、データ記憶システムに記憶されたレコードの複数の集合にアクセスするステップであって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスするステップと、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するステップとを含む。処理するステップは、別個のフィールド値エントリのリストを含む出力データを記憶するために、2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップと、記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップであって、その結果、別個のフィールド値エントリのうちの少なくともいくつかが、第1の集合及び第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合及び第2の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップとを含む。
態様は、以下の特徴のうちの1又は2以上を含むことができる。
集合のうちの2又は3以上の集合の定量的情報を処理するステップは、集合のうちの3又は4以上の集合の定量的情報を処理するステップを含む。
方法は、3又は4以上の集合のうちの少なくとも2つの集合の第1のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含み、プロファイリング要約情報は、第1のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む。
方法は、3又は4以上の集合のうちの少なくとも2つの集合の、第1のサブセットとは異なる第2のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含み、プロファイリング要約情報は、第2のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む。
特定の集合に対応する値カウントエントリのリストにおける各値カウントエントリは、選択されたフィールドに値が現れるレコードの特定の集合内でのそれぞれの位置を識別する位置情報をさらに含む。
処理するステップは、別個のフィールド値エントリのリストを更新するために、2又は3以上の集合のうちの第3の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップであって、その結果、別個のフィールド値エントリの少なくともいくつかが、第1の集合、第2の集合、及び第3の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合、第2の集合、及び第3の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップを含む。
別の態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピュータプログラムが、コンピュータ可読記憶媒体に記憶される。コンピュータプログラムは、コンピューティングシステムに、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに接続されたインターフェース上で、データ記憶システムに記憶されたレコードの複数の集合にアクセスさせるための命令であって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスさせるための命令と、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理させるための命令とを含む。処理することは、別個のフィールド値エントリのリストを含む出力データを記憶するために、2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことと、記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことであって、その結果、別個のフィールド値エントリのうちの少なくともいくつかが、第1の集合及び第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合及び第2の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むこととを含む。
別の態様において、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムが、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに記憶されたレコードの複数の集合にアクセスするように構成された、データ記憶システムに接続されたインターフェースであって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、インターフェースと、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するように構成された少なくとも1つのプロセッサとを含む。処理することは、別個のフィールド値エントリのリストを含む出力データを記憶するために、2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことと、記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことであって、その結果、別個のフィールド値エントリのうちの少なくともいくつかが、第1の集合及び第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合及び第2の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むこととを含む。
別の態様によれば、一般に、データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムが、レコードの複数の集合の各々についての定量的情報を記憶するために、データ記憶システムに記憶されたレコードの複数の集合にアクセスするための手段であって、各特定の集合についての定量的情報が、特定の集合におけるレコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、選択されたフィールドに現れる値、及び選択されたフィールドにその値が現れるレコードの数のカウントを含む、アクセスするための手段と、プロファイリング要約情報を生成するために、集合のうちの2又は3以上の集合の定量的情報を処理するための手段とを含む。処理することは、別個のフィールド値エントリのリストを含む出力データを記憶するために、2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことと、記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むことであって、その結果、別個のフィールド値エントリのうちの少なくともいくつかが、第1の集合及び第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、第1の集合及び第2の集合の各々について別個の値が現れるレコードの数を定量化する情報を含む、読み込むこととを含む。
態様は、以下の利点のうちの1又は2以上を含むことができる。
リレーショナルデータベース管理システム及び他のリレーショナルデータ記憶システムの設計の一態様は、キーとして知られる値であり、これらの値を使用して、異なるエンティティ(例えば、異なるテーブル又はデータセットなどの、レコードの異なる集合)において、レコードを識別する、及び/又はリンクする(若しくは「結合する」)ことができる。設計において意図される、レコード間のリレーショナル演算(例えば、結合演算)を、キーが首尾よく可能にする範囲は、参照整合性として知られている。レコードが挿入される、更新される、又は削除されるときに、経時的に参照整合性を維持することは、信頼できるリレーショナルデータ記憶システムを維持する一態様である。この目的のために、いくつかのリレーショナルデータベースは、リレーショナル整合性を施行するための制約(例えば、対応するレコードの主キーを参照する外部キーであるフィールド値を有するレコードを、その対応するレコードが既に別のエンティティに存在しない限り、あるエンティティに挿入することはできない)を与える。しかし、そのような制約をチェックすることは、データをロードするときのパフォーマンスを低下させることがあり、そのため、最も大きい若しくは最もアクティブなシステムの多くが、制約を持たないことがある、又は、制約がオフにされていることがある。そのため、リレーショナルシステムの参照整合性を評価する(assessing)ことは、システムのデータ品質を評価することの一部であり得る。データが挿入される、更新される、又は削除されるときに、参照整合性制約が自動的に施行されない場合、制約の違反が発生する恐れがあり、システムの参照整合性は損なわれることになる。
いくつかのシステムにおいて、通常の演算は、エンティティ間の結合演算を含むことができ、そこでは、1つのエンティティのレコードのキーフィールドにおける値が、別のエンティティのレコードのキーフィールドにおける値と比較される。これらの対応するキーフィールドにおける値は、結合演算のための「キー」と呼ばれる。キーによって結合されるように構成された2つのエンティティを記憶するデータ記憶システムの参照整合性は、キー上での結合を明示的に実現することによって、直接評価され得る。結合演算から生じることになる、結合されたレコードの様々な種類の分析は、参照整合性を評価するときに実施されてよい。例えば、以下のレコードカウント、すなわち、両方のエンティティにおいて一意であるキーによって結合されるレコードの数、1つのエンティティにおいて一意であり、しかしもう一方においてそうではないキーによって結合されるレコードの数、どちらのエンティティにおいても一意でないキーによって結合されるレコードの数、1つのエンティティにおいて存在せず、しかしもう一方のエンティティにおいて一意のキーを有するレコードの数、1つのエンティティにおいて存在せず、しかしもう一方のエンティティにおいて非一意のキーを有するレコードの数が、検討されてよい。これらのカウントは、まとめて、キーの一意性、デカルト積(例えば、両方の結合されたエンティティにおいて非一意のキー)、及び孤立したレコード(例えば、結合されたエンティティに存在しないキー)についての問題に答える。これらは、参照整合性のいくつかの基本測定の例である。本明細書で説明する技法は、プロファイリングされているデータの参照整合性の、これらの測定及び他の測定のいくつかの計算を促進する。
本発明の他の特徴及び利点は、以下の説明から、及び特許請求の範囲から明らかになるであろう。
データをプロファイリングするためのシステムのブロック図である。 出現(occurrence)の統計の例についての図である。 出現の統計の例についてのベン図である。 例示的なデータプロファイリング手順の概略図である。
図1は、データプロファイリング方法を適用することができる、例示的なデータ処理システム100を示す。システム100は、記憶デバイス又はオンラインデータストリームへの接続などの、データの1又は2以上のソースを含むことができるデータソース102を含み、その各々が様々な記憶フォーマットのうちのいずれか(例えば、データベーステーブル、スプレッドシートファイル、フラットテキストファイル、又はメインフレームにより使用されるネイティブフォーマット)でデータを記憶することができる。実行環境104が、プロファイリングモジュール106と、処理モジュール108とを含む。実行環境104は、UNIXオペレーティングシステムなどの好適なオペレーティングシステムの制御下にある、1又は2以上の汎用コンピュータ上でホストされてよい。例えば、実行環境104は、複数ノード並行コンピューティング環境を含むことができ、複数ノード並行コンピューティング環境は、ローカルで(例えば、SMPコンピュータなどのマルチプロセッサシステム)、若しくはローカルに分散された(例えば、クラスタ若しくはMPPとして接続された複数のプロセッサ)、又は、リモートで、若しくはリモートに分散された(例えば、ローカルエリアネットワーク(LAN)及び/若しくはワイドエリアネットワーク(WAN)を介して接続された複数のプロセッサ)のうちのいずれかで、又はそれらの任意の組み合わせで、複数の中央処理ユニット(CPU)を用いるコンピュータシステムの構成を含む。
プロファイリングモジュール106は、データソース102からデータを読み込み、プロファイリングモジュール106及び処理モジュール108へのアクセスが可能なプロファイリングデータストア110に、プロファイリング要約情報を記憶する。例えば、プロファイリングデータストア110は、データソース102の記憶デバイス内に保持されても、又は実行環境104からアクセス可能な別のデータ記憶システムに保持されてもよい。プロファイリング要約情報に基づいて、処理モジュール108は、データソース102におけるデータに対して様々な処理タスクを実行することができ、タスクは、データを一掃(cleansing)すること、データを別のシステムにロードすること、又はデータソース102に記憶されたオブジェクトへのアクセスを管理することを含む。データソース102を提供する記憶デバイスは、例えば、実行環境104を稼働させるコンピュータに接続された記憶媒体(例えば、ハードドライブ112)上に記憶されて、実行環境104にローカルであってもよいし、又は、例えば、リモート接続若しくは(例えば、クラウドコンピューティングインフラストラクチャによって提供される)リモートサービス上で、実行環境104を稼働させるコンピュータと通信しているリモートシステム(例えば、メインフレーム114)上でホストされて、実行環境104にリモートであってもよい。
プロファイリングモジュール106は、データソース102に記憶されたデータを読み込み、記憶されたデータの参照整合性を評価するために有用な分析を含む様々な種類の分析を、効率的な方法で実行することができる。上で説明したように、参照整合性を評価するための1つの方法は、明示的な結合演算を実行し、結果として生じる結合されたレコードを分析することによる。しかしながら、特に、プロファイリングモジュール106によって実行されるデータプロファイリングの一部であり得る、より広いデータ品質評価(data quality evaluation)のコンテキストにおいては、ペアのエンティティ間で明示的な結合演算を実行することは、常に参照整合性を評価するための最も効率的な方法であるわけではない。いくつかのデータプロファイリング手順は、1若しくは2以上の選択されたフィールド(又はフィールドの組み合わせ)のセットにおける別個の値の集合を調査することによって、データセットの品質を特徴付ける。データプロファイリングアクティビティを促進するために、センサス計算を実行して、選択されたフィールドの各々についての別個の値のセットを列挙し、各別個の値を有するレコードの数のカウントを含む、センサスデータを生成することができる。例えば、選択されたフィールドについての値カウントエントリのリストとして、センサスデータを配置することができ、各値カウントエントリは、選択されたフィールドに現れる別個の値、及び選択されたフィールドにその別個の値が現れるレコードの数のカウントを含む。いくつかの実施形態において、センサスデータは、単一のデータセットに記憶され、高速ランダムアクセスのためにフィールドによってインデックスされてもよく、一方他の実施形態においては、センサスデータは、例えば、フィールドごとに1つの複数のデータセットに記憶されてもよい。
1つの方法において、参照整合性評価は、異なるタイプの結合されたレコード及び異なるタイプの結合されないレコードに関連付けられた様々な数を特徴付ける出現統計を使用した、2つのエンティティのフィールド間の結合演算の結果を要約する結合分析によって提供される。第1のエンティティ(エンティティA)のキーフィールド(フィールドA)と、第2のエンティティ(エンティティB)の対応するキーフィールド(フィールドB)との結合演算について、異なるパターンの出現数の例が、図2Aのチャートにおいて示されている。「出現数」は、値がフィールドに出現する回数を表す。出現数の0は、値がフィールドに現れないことを意味する。出現数の1は、フィールドのまさに1つのレコードのみに値が現れることを意味する。出現値の「M」又は「N」は、フィールドの2以上のレコードに値が現れることを意味する。この例において、チャートの各行は、対応するパターン、すなわち「フィールドA出現数」×「フィールドB出現数」に関連付けられたカウントを含む。チャートの各列は、特定のタイプである、異なるパターンに関連付けられたカウントを含む。タイプ「A−distinct」(「B−distinct」)は、出現の特定のパターンに関連付けられた、エンティティA(エンティティB)のレコードに現れる別個の値の数を表す。タイプ「A−count」(「B−count」)は、出現の特定のパターンに関連付けられた、エンティティA(エンティティB)のレコードの合計数を表す。タイプ「AB−count」は、出現の特定のパターンに関連付けられた、結合されたレコードの合計数を表す。チャートの下半分(すなわち、出現のパターン、1×1、1×N、N×1、N×Mを有する行)は、結合されたレコード(ここでは、特定のキー値が、フィールドAとBとの両方に現れる)を表し、チャートの上半分(すなわち、出現のパターン、1×0、0×1、N×0、0×Nを有する)は、結合されないレコード(ここでは、特定のキー値が、1つのフィールドA又はBのみに現れる)を表す。このチャートに現れる実際のカウントは、値:1つのレコードにおける「a」、1つのレコードにおける「b」、2つのレコードにおける「d」、2つのレコードにおける「e」を有するAフィールドから、及び、値:1つのレコードにおける「a」、2つのレコードにおける「c」、1つのレコードにおける「d」、3つのレコードにおける「e」を有するBフィールドから、生じることになるカウントである。そのようにして、エンティティAにおける6つのレコード、及びエンティティBにおける7つのレコードの合計が存在する。図2Bは、出現統計の別の形式を視覚的に表すベン図を示す。図は、エンティティA(1つの結合されないレコード)及びエンティティB(2つの結合されないレコード)に関連付けられた、円のオーバーラップしない部分において、(外部結合において)通過(passed through)されたか、又は結合されないレコードとして(内部結合において)拒絶されたかのいずれかの、結合演算において一致しないレコードの数を示す。図は、オーバーラップする部分において、結合演算において一致する各エンティティについての残りのレコードの数(エンティティAにおける5つのレコード、エンティティBにおける5つのレコード)を示す。これらの10の一致するレコードは、9つの結合されたレコードの合計(これは、列「AB−count」におけるカウントの和である)を生じる。円の相対的なサイジング及びオーバーラップのセンタリングを使用して、各領域におけるカウントを定性的に指し示すことができる。
結合分析は、エンティティの実際のレコードに対する実際の結合演算の実行に基づいて、又は、エンティティについてのセンサスデータのそれぞれのセットに対して「センサス結合」演算を実行することによって(例えば、参照により本明細書に組み込まれている米国特許第7,849,075号に説明されるように)、実行されてよい。センサス結合において、各エンティティは、センサスレコードのセットを有し、ここで、各レコードは、フィールド識別子(例えば、フィールドA又はフィールドB)と、そのフィールドに現れる別個の値と、その別個の値が現れるレコードの数のカウントとを含む。2つのエンティティのキーフィールドについて生成されたセンサスレコードを比較することによって、センサス結合演算は、潜在的に、2つのエンティティからの個々のレコードのそれらのキーフィールドを比較する結合演算よりも、より小さな数の比較を行う。センサス結合演算が2つの入力センサスレコードにおける値の間に一致を見つけた場合、一致した値、2つのカウントに基づいた対応する出現のパターン、及びペアのキーフィールドに対する結合演算において生成されることになるレコードの合計数(これは、センサスレコードにおける2つのカウントの積である)を包含する、出力レコードが生成される。値について一致が見つからない場合、値はまた、対応する出現のパターン及びレコードの合計数(これは、単一のセンサスレコードにおける単一のカウントである)と共に出力される。センサス結合演算の出力レコードのこの情報は、結合演算のために、上の出現統計のチャートにおけるカウントのすべてを集めるのに十分である。
いくつかのケースでは、例えば、レコードの複数の集合(例えば、1若しくは2以上のデータベースからの複数のテーブル、及び/又は、1若しくは2以上のファイルベースのデータストアからの複数のデータセット)を含むデータソースの参照整合性を分析するために、複数のペアのエンティティに対して結合分析を実行できることが有用である。ペアごとに出現統計を決定するために、特定のエンティティを、多くの他のエンティティとペアにしてもよい。しかしながら、複数回読み込まれることになる、各エンティティのキーフィールドにおけるレコード、又はエンティティごとのそれぞれのセンサスファイルにおけるセンサスレコードを要求する代わりに、プロファイリングモジュール106は、データソースに対するより時間消費の少ない読み込み処理を用いて、出現統計を生成することができる。例えば、3つのデータセットA、B、及びCが存在し、結合分析がA/B、A/C、及びB/Cについてのペアでの出現統計を求める場合、各ペアの別々の独立した分析は、各センサスファイルが2回読み込まれることを求めることになる。一般に、N個のエンティティがすべての考え得る組み合わせにおいて独立して分析されるためには、N(N−1)/2個の一意のペアが存在し、これは、各エンティティがN−1回(他のエンティティごとに1回)読み込まれることを要求することになる。分析されるエンティティの数が2よりも大きい(例えば、3若しくは4以上、又は、10若しくは11以上、又は100若しくは101以上など、2よりも著しく大きい)ときに、本明細書で説明した方法のいくつかを用いて一緒にエンティティを処理することによって、著しい効率を達成することができる。例えば、いくつかのケースでは、データベースのエンティティ関係図に従って、多くのエンティティ(例えば、テーブル)にわたって結合分析を実行することができる。
プロファイリングモジュール106は、(エンティティレコード又はセンサスレコードのいずれかに対して)実行されることになる実際の結合演算を要求せずに、キーフィールドに対する複数のペアでの結合演算(又は多方向結合)の結果を生成する方法を適用することによって、同じセンサスファイルの反復読み込み操作を回避することができる。そのような方法の以下の2つの例は、各エンティティに出現する共通のキーフィールド(例えば、アカウント番号フィールド)について、エンティティごとにセンサスファイルを書き込む(又は、あらかじめ記憶されたセンサスファイルを読み込む)ために、複数のエンティティにアクセスすることを含む。(結合分析のためには必要とされない他のフィールドについての他のセンサスファイルがまた存在してもよい。)「集約」方法は、センサスレコードのソートされた組み合わせリスト(又は少なくとも、ソースエンティティを識別するために識別子でラベル付けされた、センサスレコードからの値及びカウント)を生成するために、キーフィールドについて対応するセンサスファイルからのセンサスレコードをマージすることもまた含む。いくつかの実施形態において、各センサスファイル内のセンサスレコードがソートされ、それにより、記憶及び読み込みアクセス時間に関して、マージ処理をより効率的にする。
いくつかの実施形態においては、異なるセンサスファイルからのセンサスレコードを、センサスレコードの中間組み合わせリストにマージし、ソートすることは要求されない。「更新」方法において、あらかじめ受信されたセンサスデータから生成されており、記憶システム又はデータ構造に保持されている、且つ、着信センサスレコードからのキー値によってアクセス可能な、出力データエントリのリストを更新するように、着信(潜在的にソートされていない)センサスレコードを処理することができる。新しいセンサスレコードが到着すると、出力データエントリが、着信センサスレコードからのキー値を用いて記憶装置から取り出され、更新され、再び記憶装置に書き込まれる。ディスク、インメモリデータ構造、及び一度だけ書き込み可能な記憶装置(この場合、前の結果は、所定の位置で更新され得ず、記憶域の最後に追加されなければならない)を含む、様々な記憶システムがサポートされる。
「更新」方法において、センサスファイルは同時に処理される必要はないが、センサスファイルは経時的に利用可能になるので、更新として組み込むことができる。とりわけ、あらかじめ処理されたセンサスファイルの後のバージョンを、前の結果を更新するように再処理することができる。別々に計算された結果の2又は3以上のセットを組み合わせることもまた可能である。
いくつかの実施形態において、更新方法及び集約方法の両方の混合を使用することができる。同時に利用可能なセンサスファイルの場合、メモリフットプリントを削減するために、又はパフォーマンスを向上させるために、集約を使用することができる。別々の時間に到着するセンサスファイルの場合、前の結果を更新するために、更新を使用することができる。集約方法を、センサスファイルのセットに独立して適用することができ、一方その結果が、更新方法を使用して後で組み合わせられる。
集約方法の例が、図3に示されている。この例において、それぞれのソースエンティティであるエンティティA、エンティティB、及びエンティティCについての3つのセンサスファイル、300A、300B、及び300Cが(本方法は任意の数のセンサスファイルのために機能するものの)、プロファイリングモジュール106への入力として用いられる。各センサスファイルは、センサスファイルが属するソースエンティティ(「A」、「B」、又は「C」)を指し示すソース識別子で始まるセンサスレコードを含む。ソース識別子の後に、センサスレコードは、センサスファイルに関連付けられたキーフィールドに現れる別個のキーフィールド値を含み、そのキーフィールド値を含むレコードの数のカウントがそれに続く。この例において、センサスファイルにおけるセンサスレコードのすべてが、エンティティ内の所望の固有のキーフィールドについてである。別の例においては、センサスレコードに、各値に関連付けられたフィールドを識別する追加的な識別子が含まれる。結合分析に対する所望のセンサスレコードにのみアクセスすることは、エンティティのすべてのフィールドについてのすべてのセンサスレコードを読み込み、関係のないものを破棄することよりも効率的なので、いくつかの実施形態は、この例でのように、異なる、独立してアクセス可能なセンサスファイル内に、異なるフィールドについてのセンサスレコードを記憶する。代替として、異なるフィールドについてのセンサスレコードを、異なるセクションへのランダムアクセスのために構成された共通のファイル又はデータストアの、異なるセクションに記憶することができる。一緒に分析されることになるセンサスファイルのグループを指定する別の識別子を追加することによって、異なるキーフィールドについての複数の結合分析を、同じ実行内で実施することができる。
プロファイリングモジュール106のマージサブモジュール302が、センサスレコードのすべてから、センサスエントリをソートした組み合わせリスト304を生成するために、入力センサスファイルからセンサスレコードを読み込む。いくつかの実施形態において、入力センサスファイルは、順次的に読み込まれる(及び、例えば、入力センサスファイルが記憶媒体の分割されたデータセグメントに記憶されている場合は、並行して読み込んでもよい)。並行実施形態の場合、センサスレコードは、各センサスファイルにおいてキーフィールド値によって分割されてよく、その結果、共通のキーフィールド値を共有するすべてのレコードが、同じデータセグメントに配置される。入力センサスファイルからのセンサスレコードは、センサスレコードからのキーフィールド値に基づいて、主ソート順序によってソートされ、次いで、ソース識別子に基づいて、副ソート順序によってソートされる。図3に示すリスト304において、センサスエントリは、最初に主ソートされたキーフィールド値を、それに続いて副ソートされたソース識別子を、それに続いてレコードカウントを示すように書き直されているが、これらの項目は、各センサスエントリ内で任意の順序に記憶されてよい。センサスファイルの異なるそれぞれのグループに対して複数の結合分析が同時に行われることになる場合は、一緒に分析されることになるセンサスファイルのグループを指定するラベルが、主ソートキーとして(キーフィールド値に基づいた副ソート、及びソース識別子に基づいた三次ソートと共に)追加されて、一緒に分析されることが意図されるレコードが隣接するように保証することができる。
プロファイリングモジュール106の集約サブモジュール306が、別個のキーフィールド値エントリのリスト308を生成するために、リスト304からのエントリを集約し、各別個のキーフィールド値エントリは、別個のキーフィールド値を識別し、入力センサスファイル(この例では、ソースエンティティA、B、及びC)によって表されるソースエンティティの各々について、別個のキーフィールド値が現れるレコードの数を定量化する情報を識別する。同じキーフィールド値を共有する、リスト304におけるソートされたセンサスエントリは、ソース識別子を介して(例えば、ロールアップ処理を用いて)集約される。いくつかの実施形態において、集約サブモジュール306は、各別個のキーフィールド値に関連付けられた2つのベクトルを包含するデータ構造に、エントリを集約した結果を記憶する。1つのベクトルは、ソースエンティティごとに個々のエンティティレコードカウントを記憶し、もう一方のベクトルは、ソースエンティティのペアごとにペアでの結合レコードカウントを記憶する。そのため、第1のベクトルの長さは、ソースエンティティの数によって決定され、第2のベクトルの長さは、ソースエンティティの一意のペアの数によって決定される。第1のベクトルの各要素は、特定のソースエンティティに対応し、関連付けられたキーフィールド値を包含するレコードのカウントを保持し、このカウントは、カウントがゼロでない場合にはセンサスファイルからのカウント、又は、そのキーフィールド値がセンサスファイルに現れなかった場合にはゼロのカウントである。このデータ構造はまた、複数の分析において、センサスファイルの別々のグループの中で変化するファイルの数に適応することができる。例えば、集約サブモジュール306は、記憶された変数又はルックアップ操作などのメカニズムを使用して、ベクトルにおけるインデックスを、グループごとに特定のセンサスファイルに関連付けることができる。第2のベクトルの各エントリは、ソースエンティティの特定のペアの間の結合演算から生じることになる結合レコードの数のカウントを保持し、これは、(第1のベクトルにある)ペアごとにカウントの積として計算される。第1のベクトルにおけるエンティティの順序に基づいて(例えば、第1のインデックスが第2のインデックス未満のインデックスのすべてのペアからなるマルチインデックスを形成することによって)、第2のベクトルのインデックス構造を決定することができる。
図3の例において、キーフィールド値「c」を有する2つのセンサスレコードが、センサスファイル300B及び300CのエンティティB及びエンティティCに、1つずつ存在する。エンティティBセンサスレコードにおけるエンティティレコードのカウントは2であり、エンティティCセンサスレコードにおけるエンティティレコードのカウントは1である。リスト308における対応する集約された出力データ構造は、「c[0 2 1][0 0 2]」であり、ここで、データ構造における第1の項目は、キーフィールド値「c」であり、次の項目は、エンティティA、B、及びCそれぞれにおけるレコードカウントの第1のベクトルであり、最後の項目は、エンティティペアA/B、A/C、及びB/Cそれぞれについてのカウントの積の第2のベクトルである。この第2のベクトルは、いくつかの実施形態において省略されてもよく、代わりに、その値が第1のベクトルにおける値によって完全に決定された以後で生成されてもよい。
リスト308における情報から、提供されるべき出現統計のために、図2Aのチャート及び図2Bのベン図などの要約情報が、リスト308におけるデータ構造からの適切な値にアクセスすることによって、ソースエンティティのペアごとに計算されてよい(3方向及びより高次の結合についての同様の要約情報もまた可能である)。非一意性は、しばしば特定の関心であるため、一意及び非一意のレコードのペアリングのためのカウントは、別々に報告されてもよい。上で説明したように、結合分析の結果を視覚的に表すために、ペアごとにベン図を生成することができる。例えば、ペアA/Bについて、円の相対的なサイズ及び円312のセンタリング、並びに結果として生じるオーバーラップを配置して、対応する出現チャート310の情報に基づいて決定された各領域におけるカウントの近似値を、定量的に指し示すことができる。
いくつかの実施形態において、センサスファイル300A、300B、300Cにおけるセンサスレコードについてのデータ構造はまた、キーフィールド値が現れる特定のエンティティ内での、レコードのそれぞれの位置を識別する位置情報を含むことができる。一実施形態において、センサスレコードの生成中に、ベクトルが、関連付けられたキーフィールド値を有するあらゆるレコードの一意のレコード識別子として入力される。エンティティの元のデータにおけるレコードが、一意のレコード識別子を有さない場合、例えば、一続きの連続した番号を各レコードに割り当てることによって、プロファイリング手順の一部として、そのようなレコード識別子を生成し、レコードに追加することができる。以下でより詳細に説明するように、この位置情報は次いで、マージ段階においてセンサスレコードから収集されたセンサスエントリ内に含まれてよく、集約段階において組み合わされてよい。
位置情報を記憶するための他の実施形態が可能であり、そのうちのいくつかは、パフォーマンス及び/又は削減された記憶域空間において、利点を与えることができる。例えば、レコード識別子のベクトルに代わって、ビットベクトルを使用することができる。ビットベクトルの各ビットは、特定のレコード識別子に対応し、対応するレコード識別子を有する関連付けられたレコードが、関連付けられたキーフィールド値を有する場合に、ビットが設定される。ビットベクトルのビットとレコード識別子との対応関係は、明示的であっても、又は暗黙的であってもよい。例えば、必ずしも1対1ではなく、ビットを対応するレコード識別子に関連付ける、明示的なマッピングが存在してもよいし、又は、各ビットの位置がレコードの位置の順次的な順序に対応する、暗黙的なマッピングが存在してもよい。いくつかの実施形態において、結果として生じるビットベクトルは、記憶装置におけるさらなる節約のために圧縮される。
位置データ構造を各センサスエントリに関連付けることによって、この位置情報を、それが集約された出力データ構造ごとに位置データ構造のベクトルとして現れる、リスト308へと伝播することができる。位置データ構造のベクトルは、ソースエンティティごとに1つの位置データ構造(例えば、ビットベクトル)を含む。リスト308の各集約された出力データ構造における位置データ構造のベクトルの存在は、結果から、元のソースエンティティにおける対応するレコードへの「ドリルダウン」を促進する。いくつかのケースにおいて、ソースエンティティがキーフィールド値によってインデックスされている場合、キーフィールド値それ自体を使用して、元のソースエンティティにおけるレコードをルックアップすることができるが、これは、いくつかのソースエンティティには当てはまらないことがある。位置データ構造は、元のソースエンティティの汎用インデックスとして働くことができ、そのソースエンティティに関連付けられたセンサスファイルは、(キー値を位置データ構造内のインデックスにリンクする)副インデックスとして働くことができる。
ペアでの出現チャート310及び関連付けられたベン図312の生成は、リスト308における出力データ構造を介した集約を含む。例えば、各出現カテゴリ(例えば、1×0、1×1など)に対応する出力データ構造におけるカウントを総計して、結果として得られる合計カウントを生み出す。位置データ構造もまた、組み合わせることができる。レコード識別子のベクトルである位置データ構造のケースでは、特定の出現カテゴリについての特定のソースエンティティにおける異なるキーフィールド値に対応するベクトルは、つなぎ合わされる。ビットベクトルである位置データ構造のケースでは、特定の出現カテゴリについての特定のソースエンティティにおける異なるキーフィールド値に対応するビットベクトルは、一緒に論理和が取られる。結果は、出現チャートの各エントリ、又はベン図のエントリに対応する、組み合わされた位置データ構造である。ユーザは、この出現カテゴリについての、サンプルレコード又はレコードの包括的なセットのいずれかを取り出すために、この位置データ構造を使用して、このエントリからドリルダウンすることができる。参照整合性評価のコンテキストでは、例えば、複製であるレコード又は孤立したレコードにアクセスできることは極めて貴重であり、これは、そうするための能力を提供する。
出現チャート及びベン図への集約が位置データ構造それ自体を組み合わせず、代わりに、リスト308におけるキーフィールド値に対応するビットベクトルを構築する、異なる実施形態が可能である。この実施形態では、ビットインデックスを、リスト308における各別個のキーフィールド値とペアにする、ビット対キー値のマッピングが構築される。集約の間、どのキーフィールド値が所与の出現チャートエントリに寄与するかを指し示すビットベクトルが、入力される。次に、2つのステップでのドリルダウンに進行することができる。出現チャートエントリについてのビットベクトルは、(ビット対キー値のマッピングから)関連付けられたキーフィールド値のセットを見つけるために使用される。これらのキーフィールド値は、元のレコードを取り出すために元のソースエンティティにおいて直接ルックアップされるか、又は、例えば、リスト308若しくはセンサスファイル300A〜300C(これらは次いで元のレコードを取り出すために使用される)における位置データ構造を取り出すためにルックアップされるかのいずれかである。この実施形態は、とりわけ、元のソースエンティティが既にキーフィールド値によってインデックスされている場合に、記憶要件及び効率に関して利点を与えることができる。
図4は、(エンティティCについての)センサスファイル400Cがプロファイリングモジュール106の更新サブモジュール406に到着する、更新方法を示しており、更新サブモジュール406は、更新されたリスト408ABCを生成するために、(エンティティA及びBのセンサスファイルからあらかじめ生成された)あらかじめ生成された出力リスト408ABを更新する。センサスファイル400Cにおけるセンサスエントリ「C c 1」は、別個のキーフィールド値「c」、及びその値が現れるエンティティCの1つのレコードのカウントを表す。キーフィールド値「c」を有する408ABにおける対応する出力データ構造が取り出される。キーフィールド値「c」を有するレコードのエンティティA及びエンティティBにおけるカウントを示す第1のベクトル「[0 2]」が、キーフィールド値「c」を有するエンティティCにおけるレコードのカウントを示す要素を追加するように、「[0 2 1]」に更新される。同様に、カウントのペアでの積を示す第2のベクトルが、「[0]」から「[0 0 2]」に更新され、ここで、第2の要素は、エンティティAについてのカウントとエンティティCについてのカウントとの積(0×2=0)であり、一方で第3の要素は、エンティティBについてのカウントとエンティティCについてのカウントとの積(1×2=2)である。結果は、更新された出力データ構造のリスト408ABCに書き込まれる。
図5は、(エンティティBについての)センサスファイル500Bが更新サブモジュール406に到着する、更新方法を示しており、更新サブモジュール406は、(エンティティAのセンサスファイル及びエンティティBの前のバージョンのセンサスファイルからあらかじめ生成された)あらかじめ生成された出力リスト508ABを更新する。センサスファイル500Bにおけるセンサスエントリ「B c 4」は、別個のキーフィールド値「c」、及びその値が現れるエンティティBの4つのレコードのカウントを表す。リスト508ABの対応する出力データ構造から、エンティティBにおける「c」についての前のカウントは、(第1のベクトル「[0 2]」における第2の要素に従って)2であった。このカウントが、「[0 4]」を取得するために、新しいカウントで第1のベクトルにおいて更新される。第2のベクトルが次いで、エンティティA及びエンティティBからのカウントの積で更新され、この例では、「[0]」のままで変わらない。結果は、更新された出力リスト510ABに書き込まれる。
図6は、2つの別々に生成された出力リストが組み合わされた、更新方法の別の例を示している。出力リスト608ABは、エンティティA及びエンティティBからのセンサスレコードの組み合わせに基づいて生成され、出力リスト608BCは、エンティティB及びエンティティCについてのセンサスレコードの組み合わせに基づいて生成された。この例では、両方の出力リストの生成において、エンティティBについての同じセンサスレコードが使用された。(センサスファイルの異なるバージョンがエンティティBについての異なるセンサスレコードを提供する他の例では、図5に示す手順が、出力データ構造においてエンティティB値を更新するために最初に適用されて、最新のセンサス値に対応することができる。)プロファイリングモジュール106の組み合わせサブモジュール606が、出力データ構造からの情報を一致するキーフィールド値により組み合わせ、例えば、リスト608ABからの出力データ構造「c[0 2][0]」と、リスト608BCからの出力データ構造「c[2 1][2]」とを組み合わせる。第1のベクトルの各々における要素は、各出力データ構造において表されるそれぞれのエンティティのセンサスカウントに対応する。2つの第1のベクトルは、それらの要素の共用体を取り、両方の出力データ構造において表される任意のエンティティについての(最新の)1つの要素のみを保つことによって、組み合わされる。この例では、組み合わせの結果は、更新された第1のベクトル「[0 2 1]」である。更新された第2のベクトルから、更新された第1のベクトルに従ってカウントのペアでの積が計算され、更新された第2のベクトル「[0 0 2]」をもたらす。更新された出力データ構造は、出力リスト608ABCに記憶される。
上で説明したデータプロファイリング方法は、好適なソフトウェアを実行するコンピューティングシステムを用いることにより実装することができる。例えば、ソフトウェアは、1又は2以上のプログラムされた、又はプログラム可能な(分散型、クライアント/サーバ型、又はグリッドなどの様々なアーキテクチャであってよい)コンピューティングシステム上で実行される、1又は2以上のコンピュータプログラムにおける手順を含むことができ、コンピューティングシステムの各々は、少なくとも1つのプロセッサと、少なくとも1つのデータ記憶システム(揮発性及び/又は不揮発性のメモリ及び/又は記憶要素を含む)と、(少なくとも1つの入力デバイス又はポートを使用して入力を受信し、少なくとも1つの出力デバイス又はポートを使用して出力を提供するための)少なくとも1つのユーザインターフェースとを含む。ソフトウェアは、例えば、設計、構成、及びデータフローグラフの実行に関するサービスを提供する、より大きなプログラムの1又は2以上のモジュールを含むことができる。プログラムのモジュール(例えば、データフローグラフの要素)は、データ構造、又はデータリポジトリに記憶されたデータモデルに準拠する他の組織化されたデータとして実装されてよい。
ソフトウェアは、(例えば、汎用若しくは特殊目的コンピューティングシステム、又はデバイスによって可読な)CD−ROM若しくは他のコンピュータ可読媒体などの有形の、非一時的な媒体上で提供されてもよいし、又は、(例えば、伝播シグナルで符号化されて)ネットワークの通信媒体上で、ソフトウェアが実行されるコンピューティングシステムの有形の、非一時的な媒体に配信されてもよい。処理のうちのいくつか又は全部は、特殊目的コンピュータ上で、或いは、コプロセッサ若しくはフィールドプログラマブルゲートアレイ(FPGA)、又は専用の特定用途向け集積回路(ASIC)などの特殊目的ハードウェアを使用して実行されてもよい。処理は、分散されたやり方で実装されてもよく、そこでは、ソフトウェアによって規定された異なる部分の計算が、異なるコンピューティング要素によって実行される。そのような各コンピュータプログラムは、本明細書で説明した処理を実行するために記憶デバイス媒体がコンピュータによって読み込まれるとき、コンピュータを構成し、動作させるために、好ましくは、汎用又は特殊目的プログラム可能なコンピュータによってアクセス可能な記憶デバイスのコンピュータ可読記憶媒体上(例えば、ソリッドステートメモリ若しくは媒体、又は磁気若しくは光学媒体)に記憶される、又はそこにダウンロードされる。本発明のシステムはまた、コンピュータプログラムで構成された、有形の、非一時的な媒体として実装されるものとみなされてもよく、そこでは、そのように構成された媒体が、固有のあらかじめ定義されたやり方で、本明細書で説明した処理ステップのうちの1又は2以上を実行するように、コンピュータを動作させる。
本発明のいくつかの実施形態が説明されてきた。それにも関わらず、上述した説明は、例証することを意図しており、以下の特許請求の範囲によって定義される本発明の範囲を限定することを意図しないことが理解されるべきである。それに応じて、他の実施形態もまた、以下の特許請求の範囲内である。例えば、様々な改良形態が、本発明の範囲から逸脱することなく行われてよい。加えて、上で説明したステップのうちのいくつかは、順序非依存であってよく、したがって、説明されたものとは異なる順序で実行することができる。

Claims (20)

  1. データ記憶システムに記憶されたデータをプロファイリングするための方法であって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに接続されたインターフェース上で、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするステップであって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスするステップと、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するステップと
    を含み、
    前記処理するステップが、
    値カウントエントリの組み合わせリストを生成するために、前記2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリをマージするステップと、
    別個のフィールド値エントリのリストを生成するために、値カウントエントリの前記組み合わせリストの値カウントエントリを集約するステップであって、前記別個のフィールド値エントリの少なくともいくつかが、前記値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、前記2又は3以上の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、集約するステップと
    を含む、方法。
  2. 対応するリストの値カウントエントリをマージするステップが、前記値カウントエントリの値に基づいて、前記値カウントエントリをソートするステップを含む、請求項1に記載の方法。
  3. 値カウントエントリをソートするステップが、前記値カウントエントリの値に基づいて、主ソート順序によりソートするステップと、2又は3以上の集合の識別子に基づいて、副ソート順序によりソートするステップとを含む、請求項2に記載の方法。
  4. 集合のうちの2又は3以上の集合の定量的情報を処理するステップが、前記集合のうちの3又は4以上の集合の前記定量的情報を処理するステップを含む、請求項1に記載の方法。
  5. 3又は4以上の集合のうちの少なくとも2つの集合の第1のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含む方法であって、前記プロファイリング要約情報が、前記第1のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む、請求項4に記載の方法。
  6. 3又は4以上の集合のうちの少なくとも2つの集合の、第1のサブセットとは異なる第2のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含む方法であって、前記プロファイリング要約情報が、前記第2のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む、請求項5に記載の方法。
  7. 特定の集合に対応する値カウントエントリのリストにおける各値カウントエントリが、選択されたフィールドに値が現れるレコードの前記特定の集合内でのそれぞれの位置を識別する位置情報をさらに含む、請求項1に記載の方法。
  8. 処理するステップが、別個のフィールド値エントリのリストを更新するために、2又は3以上の集合のうちの第3の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップであって、その結果、前記別個のフィールド値エントリの少なくともいくつかが、第1の集合、第2の集合、及び前記第3の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合、前記第2の集合、及び前記第3の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップを含む、請求項1に記載の方法。
  9. データ記憶システムに記憶されたデータをプロファイリングするための、コンピュータ可読記憶媒体に記憶されたコンピュータプログラムであって、
    コンピューティングシステムに、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに接続されたインターフェース上で、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスさせるための命令であって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスさせるための命令と、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理させるための命令と
    を含み、
    前記処理することが、
    値カウントエントリの組み合わせリストを生成するために、前記2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリをマージすることと、
    別個のフィールド値エントリのリストを生成するために、値カウントエントリの前記組み合わせリストの値カウントエントリを集約することであって、前記別個のフィールド値エントリの少なくともいくつかが、前記値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、前記2又は3以上の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、集約することと
    を含む、コンピュータプログラム。
  10. データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムであって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするように構成された、前記データ記憶システムに接続されたインターフェースであって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、インターフェースと、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するように構成された少なくとも1つのプロセッサと
    を含み、
    前記処理することが、
    値カウントエントリの組み合わせリストを生成するために、前記2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリをマージすることと、
    別個のフィールド値エントリのリストを生成するために、値カウントエントリの前記組み合わせリストの値カウントエントリを集約することであって、前記別個のフィールド値エントリの少なくともいくつかが、前記値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、前記2又は3以上の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、集約することと
    を含む、コンピューティングシステム。
  11. データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムであって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするための手段であって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスするための手段と、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するための手段と
    を含み、
    前記処理することが、
    値カウントエントリの組み合わせリストを生成するために、前記2又は3以上の集合のうちの少なくとも第1の集合及び第2の集合の各々からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリをマージすることと、
    別個のフィールド値エントリのリストを生成するために、値カウントエントリの前記組み合わせリストの値カウントエントリを集約することであって、前記別個のフィールド値エントリの少なくともいくつかが、前記値カウントエントリのうちの少なくとも1つからの別個の値を識別し、且つ、前記2又は3以上の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、集約することと
    を含む、コンピューティングシステム。
  12. データ記憶システムに記憶されたデータをプロファイリングするための方法であって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに接続されたインターフェース上で、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするステップであって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスするステップと、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するステップと
    を含み、
    前記処理するステップが、
    別個のフィールド値エントリのリストを含む出力データを記憶するために、前記2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むステップと、
    記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、前記2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むステップであって、その結果、前記別個のフィールド値エントリのうちの少なくともいくつかが、前記第1の集合及び前記第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合及び前記第2の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップと
    を含む、方法。
  13. 集合のうちの2又は3以上の集合の定量的情報を処理するステップが、前記集合のうちの3又は4以上の集合の前記定量的情報を処理するステップを含む、請求項12に記載の方法。
  14. 3又は4以上の集合のうちの少なくとも2つの集合の第1のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含む方法であって、前記プロファイリング要約情報が、前記第1のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む、請求項13に記載の方法。
  15. 3又は4以上の集合のうちの少なくとも2つの集合の、第1のサブセットとは異なる第2のサブセットについて、別個のフィールド値エントリのリストからプロファイリング要約情報を生成するステップをさらに含む方法であって、前記プロファイリング要約情報が、前記第2のサブセットにおけるレコードのそれぞれの集合のフィールド間の結合演算の結果の複数のパターンを含む、請求項14に記載の方法。
  16. 特定の集合に対応する値カウントエントリのリストにおける各値カウントエントリが、選択されたフィールドに値が現れるレコードの前記特定の集合内でのそれぞれの位置を識別する位置情報をさらに含む、請求項12に記載の方法。
  17. 処理するステップが、別個のフィールド値エントリのリストを更新するために、2又は3以上の集合のうちの第3の集合からの少なくとも1つのフィールドについて、対応するリストの値カウントエントリを読み込むステップであって、その結果、前記別個のフィールド値エントリの少なくともいくつかが、第1の集合、第2の集合、及び前記第3の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合、前記第2の集合、及び前記第3の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むステップを含む、請求項12に記載の方法。
  18. データ記憶システムに記憶されたデータをプロファイリングするための、コンピュータ可読記憶媒体に記憶されたコンピュータプログラムであって、
    コンピューティングシステムに、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに接続されたインターフェース上で、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスさせるための命令であって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスさせるための命令と、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理させるための命令と
    を含み、
    前記処理することが、
    別個のフィールド値エントリのリストを含む出力データを記憶するために、前記2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことと、
    記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、前記2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことであって、その結果、前記別個のフィールド値エントリのうちの少なくともいくつかが、前記第1の集合及び前記第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合及び前記第2の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むことと
    を含む、コンピュータプログラム。
  19. データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムであって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするように構成された、前記データ記憶システムに接続されたインターフェースであって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、インターフェースと、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するように構成された少なくとも1つのプロセッサと
    を含み、
    前記処理することが、
    別個のフィールド値エントリのリストを含む出力データを記憶するために、前記2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことと、
    記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、前記2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことであって、その結果、前記別個のフィールド値エントリのうちの少なくともいくつかが、前記第1の集合及び前記第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合及び前記第2の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むことと
    を含む、コンピューティングシステム。
  20. データ記憶システムに記憶されたデータをプロファイリングするためのコンピューティングシステムであって、
    レコードの複数の集合の各々についての定量的情報を記憶するために、前記データ記憶システムに記憶された前記レコードの複数の集合にアクセスするための手段であって、各特定の集合についての前記定量的情報が、前記特定の集合における前記レコードの少なくとも1つの選択されたフィールドについて、値カウントエントリの対応するリストを含み、各値カウントエントリが、前記選択されたフィールドに現れる値、及び前記選択されたフィールドに前記値が現れるレコードの数のカウントを含む、アクセスするための手段と、
    プロファイリング要約情報を生成するために、前記集合のうちの2又は3以上の集合の前記定量的情報を処理するための手段と
    を含み、
    前記処理することが、
    別個のフィールド値エントリのリストを含む出力データを記憶するために、前記2又は3以上の集合のうちの第1の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことと、
    記憶された出力データに少なくとも部分的に基づいて、更新された出力データを記憶するために、前記2又は3以上の集合のうちの第2の集合からの少なくとも1つのフィールドについて、対応するリストの前記値カウントエントリを読み込むことであって、その結果、前記別個のフィールド値エントリのうちの少なくともいくつかが、前記第1の集合及び前記第2の集合についての対応するリストの値カウントエントリからの別個の値を識別し、且つ、前記第1の集合及び前記第2の集合の各々について前記別個の値が現れるレコードの数を定量化する情報を含む、読み込むことと
    を含む、コンピューティングシステム。
JP2015537694A 2012-10-22 2013-08-02 ソース追跡によるデータのプロファイリング Active JP6207619B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261716766P 2012-10-22 2012-10-22
US61/716,766 2012-10-22
PCT/US2013/053351 WO2014065917A1 (en) 2012-10-22 2013-08-02 Profiling data with source tracking

Publications (2)

Publication Number Publication Date
JP2016502166A JP2016502166A (ja) 2016-01-21
JP6207619B2 true JP6207619B2 (ja) 2017-10-04

Family

ID=48985856

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2015537694A Active JP6207619B2 (ja) 2012-10-22 2013-08-02 ソース追跡によるデータのプロファイリング
JP2015537698A Active JP6357162B2 (ja) 2012-10-22 2013-08-02 位置情報を用いたデータのプロファイリング
JP2015538128A Active JP6377622B2 (ja) 2012-10-22 2013-10-22 位置情報を用いたデータのプロファイリング

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015537698A Active JP6357162B2 (ja) 2012-10-22 2013-08-02 位置情報を用いたデータのプロファイリング
JP2015538128A Active JP6377622B2 (ja) 2012-10-22 2013-10-22 位置情報を用いたデータのプロファイリング

Country Status (9)

Country Link
US (5) US9569434B2 (ja)
EP (5) EP3657348B1 (ja)
JP (3) JP6207619B2 (ja)
KR (3) KR102129643B1 (ja)
CN (4) CN104756107B (ja)
AU (4) AU2013335231B2 (ja)
CA (3) CA2887670C (ja)
HK (3) HK1211109A1 (ja)
WO (3) WO2014065917A1 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013335231B2 (en) 2012-10-22 2018-08-09 Ab Initio Technology Llc Profiling data with location information
US9953054B2 (en) * 2013-04-22 2018-04-24 Salesforce.Com, Inc. Systems and methods for implementing and maintaining sampled tables in a database system
US9292553B2 (en) * 2013-08-20 2016-03-22 Pivotal Software, Inc. Queries for thin database indexing
US9292554B2 (en) * 2013-08-20 2016-03-22 Pivotal Software, Inc. Thin database indexing
US10515231B2 (en) * 2013-11-08 2019-12-24 Symcor Inc. Method of obfuscating relationships between data in database tables
US20150199645A1 (en) * 2014-01-15 2015-07-16 Bank Of America Corporation Customer Profile View of Consolidated Customer Attributes
US9984173B2 (en) * 2014-02-24 2018-05-29 International Business Machines Corporation Automated value analysis in legacy data
CA2939915C (en) 2014-03-07 2021-02-16 Ab Initio Technology Llc Managing data profiling operations related to data type
US10769122B2 (en) * 2014-03-13 2020-09-08 Ab Initio Technology Llc Specifying and applying logical validation rules to data
GB2524073A (en) * 2014-03-14 2015-09-16 Ibm Communication method and system for accessing media data
US9628107B2 (en) 2014-04-07 2017-04-18 International Business Machines Corporation Compression of floating-point data by identifying a previous loss of precision
US10089409B2 (en) 2014-04-29 2018-10-02 Microsoft Technology Licensing, Llc Event-triggered data quality verification
US10877955B2 (en) * 2014-04-29 2020-12-29 Microsoft Technology Licensing, Llc Using lineage to infer data quality issues
US9959299B2 (en) 2014-12-02 2018-05-01 International Business Machines Corporation Compression-aware partial sort of streaming columnar data
US10909078B2 (en) 2015-02-25 2021-02-02 International Business Machines Corporation Query predicate evaluation and computation for hierarchically compressed data
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query
US10467215B2 (en) * 2015-06-23 2019-11-05 Microsoft Technology Licensing, Llc Matching documents using a bit vector search index
US11281639B2 (en) 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US10229143B2 (en) 2015-06-23 2019-03-12 Microsoft Technology Licensing, Llc Storage and retrieval of data from a bit vector search index
US10242071B2 (en) 2015-06-23 2019-03-26 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
US10733164B2 (en) 2015-06-23 2020-08-04 Microsoft Technology Licensing, Llc Updating a bit vector search index
US10565198B2 (en) 2015-06-23 2020-02-18 Microsoft Technology Licensing, Llc Bit vector search index using shards
US20170242876A1 (en) * 2016-02-22 2017-08-24 Ca, Inc. Maintaining Database Referential Integrity Using Different Primary and Foreign Key Values
US11475026B2 (en) * 2016-02-26 2022-10-18 Douglas Schiller Value discrepancy visualization apparatus and method thereof
CN106227837B (zh) * 2016-07-27 2019-08-02 浪潮金融信息技术有限公司 一种数据分析方法和装置
JP2018036977A (ja) * 2016-09-02 2018-03-08 富士ゼロックス株式会社 情報処理装置及びプログラム
US10474649B2 (en) * 2016-09-27 2019-11-12 Halo Tech Corp. Providing action corrections using a dual model system
US10817465B2 (en) * 2016-12-09 2020-10-27 Salesforce.Com, Inc. Match index creation
US10636293B2 (en) * 2017-06-07 2020-04-28 International Business Machines Corporation Uncertainty modeling in traffic demand prediction
US10528549B2 (en) 2017-09-25 2020-01-07 Mastercard International Incorporated Systems and methods for use in loading data based on a hierarchical framework
US10795915B1 (en) * 2017-12-29 2020-10-06 Iqvia Inc. System and method for merging slowly changing data
US11514644B2 (en) 2018-01-19 2022-11-29 Enphase Energy, Inc. Automated roof surface measurement from combined aerial LiDAR data and imagery
US11068540B2 (en) 2018-01-25 2021-07-20 Ab Initio Technology Llc Techniques for integrating validation results in data profiling and related systems and methods
CN111971665B (zh) * 2018-01-25 2024-04-19 起元技术有限责任公司 将验证结果整合到数据归档中的技术以及相关系统和方法
US10430100B2 (en) 2018-02-28 2019-10-01 International Business Machines Corporation Transactional operations in multi-master distributed data management systems
US10891307B2 (en) * 2018-05-31 2021-01-12 Microsoft Technology Licensing, Llc Distributed data synchronization in a distributed computing system
US11042522B2 (en) 2018-06-11 2021-06-22 International Business Machines Corporation Resolving versions in an append-only large-scale data store in distributed data management systems
US11188539B2 (en) 2018-07-27 2021-11-30 International Business Machines Corporation Matching non-sequential log metadata with out-of-order record data
JP6573187B1 (ja) * 2019-01-08 2019-09-11 株式会社ビジネスインテリジェンス データ処理プログラム、データ出力装置、データ統合方法、出力プログラム、データ出力方法及びデータ処理システム
US11360990B2 (en) 2019-06-21 2022-06-14 Salesforce.Com, Inc. Method and a system for fuzzy matching of entities in a database system based on machine learning
US11194844B1 (en) * 2020-09-01 2021-12-07 Skyline Al Ltd. System and method for detecting second degree relationships between entities by uniquely resolving entities
US11909750B1 (en) * 2020-10-15 2024-02-20 Splunk Inc. Data reduction and evaluation via link analysis

Family Cites Families (145)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5179643A (en) 1988-12-23 1993-01-12 Hitachi, Ltd. Method of multi-dimensional analysis and display for a large volume of record information items and a system therefor
JPH032938A (ja) 1989-05-31 1991-01-09 Hitachi Ltd データベース処理方法
US5604899A (en) 1990-05-21 1997-02-18 Financial Systems Technology Pty. Ltd. Data relationships processor with unlimited expansion capability
FR2698465B1 (fr) 1992-11-20 1995-01-13 Bull Sa Méthode d'extraction de profils de statistiques, utilisation des statistiques créées par la méthode.
US5847972A (en) * 1993-09-24 1998-12-08 Eick; Stephen Gregory Method and apparatus for graphically analzying a log-file
US5742806A (en) 1994-01-31 1998-04-21 Sun Microsystems, Inc. Apparatus and method for decomposing database queries for database management system including multiprocessor digital data processing system
JP3519126B2 (ja) 1994-07-14 2004-04-12 株式会社リコー 自動レイアウトシステム
US5842200A (en) 1995-03-31 1998-11-24 International Business Machines Corporation System and method for parallel mining of association rules in databases
US6601048B1 (en) 1997-09-12 2003-07-29 Mci Communications Corporation System and method for detecting and managing fraud
CN1052316C (zh) * 1995-09-15 2000-05-10 殷步九 计算机管理设计系统
US5966072A (en) 1996-07-02 1999-10-12 Ab Initio Software Corporation Executing computations expressed as graphs
US5778373A (en) 1996-07-15 1998-07-07 At&T Corp Integration of an information server database schema by generating a translation map from exemplary files
US6138123A (en) 1996-07-25 2000-10-24 Rathbun; Kyle R. Method for creating and using parallel data structures
JPH1055367A (ja) 1996-08-09 1998-02-24 Hitachi Ltd データ利用システム
US5845285A (en) 1997-01-07 1998-12-01 Klein; Laurence C. Computer system and method of data analysis
US5987453A (en) 1997-04-07 1999-11-16 Informix Software, Inc. Method and apparatus for performing a join query in a database system
US7031843B1 (en) * 1997-09-23 2006-04-18 Gene Logic Inc. Computer methods and systems for displaying information relating to gene expression data
US6134560A (en) 1997-12-16 2000-10-17 Kliebhan; Daniel F. Method and apparatus for merging telephone switching office databases
JP3474106B2 (ja) * 1998-06-17 2003-12-08 アルプス電気株式会社 液晶表示装置
CA2340008C (en) 1998-08-11 2008-09-23 Shinji Furusho Method and apparatus for retrieving, accumulating, and sorting table-formatted data
US7039919B1 (en) * 1998-10-02 2006-05-02 Microsoft Corporation Tools and techniques for instrumenting interfaces of units of a software program
US6826556B1 (en) 1998-10-02 2004-11-30 Ncr Corporation Techniques for deploying analytic models in a parallel
US6546416B1 (en) 1998-12-09 2003-04-08 Infoseek Corporation Method and system for selectively blocking delivery of bulk electronic mail
US6959300B1 (en) 1998-12-10 2005-10-25 At&T Corp. Data compression method and apparatus
US6343294B1 (en) 1998-12-15 2002-01-29 International Business Machines Corporation Data file editor for multiple data subsets
US6741995B1 (en) 1999-03-23 2004-05-25 Metaedge Corporation Method for dynamically creating a profile
US6430539B1 (en) 1999-05-06 2002-08-06 Hnc Software Predictive modeling of consumer financial behavior
GB2349961A (en) * 1999-05-08 2000-11-15 Int Computers Ltd Analysing data files to produce summaries therefrom
US6163774A (en) 1999-05-24 2000-12-19 Platinum Technology Ip, Inc. Method and apparatus for simplified and flexible selection of aggregate and cross product levels for a data warehouse
US6801938B1 (en) 1999-06-18 2004-10-05 Torrent Systems, Inc. Segmentation and processing of continuous data streams using transactional semantics
CN100375088C (zh) 1999-06-18 2008-03-12 国际商业机器公司 利用事务语义法分段和处理连续数据流
JP3318834B2 (ja) 1999-07-30 2002-08-26 三菱電機株式会社 データファイルシステム及びデータ検索方法
JP3363120B2 (ja) 1999-08-30 2003-01-08 ファンクルシステム株式会社 コンテンツ収集・貼付方法及び装置並びにコンテンツ収集・貼付のためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001331362A (ja) 2000-03-17 2001-11-30 Sony Corp ファイル変換方法、データ変換装置及びファイル表示システム
JP3567861B2 (ja) 2000-07-07 2004-09-22 日本電信電話株式会社 情報源所在推定方法及び装置及び情報源所在推定プログラムを格納した記憶媒体
JP4366845B2 (ja) 2000-07-24 2009-11-18 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラム提供媒体
US6788302B1 (en) 2000-08-03 2004-09-07 International Business Machines Corporation Partitioning and load balancing graphical shape data for parallel applications
US20020073138A1 (en) 2000-12-08 2002-06-13 Gilbert Eric S. De-identification and linkage of data records
US6952693B2 (en) 2001-02-23 2005-10-04 Ran Wolff Distributed mining of association rules
US20020161778A1 (en) 2001-02-24 2002-10-31 Core Integration Partners, Inc. Method and system of data warehousing and building business intelligence using a data storage model
US20020120602A1 (en) 2001-02-28 2002-08-29 Ross Overbeek System, method and computer program product for simultaneous analysis of multiple genomes
US20030063779A1 (en) * 2001-03-29 2003-04-03 Jennifer Wrigley System for visual preference determination and predictive product selection
CA2349265A1 (en) * 2001-05-30 2002-11-30 Andrew Emili Protein expression profile database
US20030033138A1 (en) 2001-07-26 2003-02-13 Srinivas Bangalore Method for partitioning a data set into frequency vectors for clustering
US7130852B2 (en) 2001-07-27 2006-10-31 Silicon Valley Bank Internal security system for a relational database system
US7013290B2 (en) 2001-08-03 2006-03-14 John Allen Ananian Personalized interactive digital catalog profiling
US6801903B2 (en) 2001-10-12 2004-10-05 Ncr Corporation Collecting statistics in a database system
US7359847B2 (en) * 2001-11-30 2008-04-15 International Business Machines Corporation Tracking converage results in a batch simulation farm network
US20030140027A1 (en) 2001-12-12 2003-07-24 Jeffrey Huttel Universal Programming Interface to Knowledge Management (UPIKM) database system with integrated XML interface
US7813937B1 (en) 2002-02-15 2010-10-12 Fair Isaac Corporation Consistency modeling of healthcare claims to detect fraud and abuse
US7031969B2 (en) 2002-02-20 2006-04-18 Lawrence Technologies, Llc System and method for identifying relationships between database records
US7386318B2 (en) 2002-03-19 2008-06-10 Pitney Bowes Mapinfo Corporation Location based service provider
US7032212B2 (en) 2002-05-06 2006-04-18 Microsoft Corporation Method and system for generating test matrices for software programs
US20040083199A1 (en) 2002-08-07 2004-04-29 Govindugari Diwakar R. Method and architecture for data transformation, normalization, profiling, cleansing and validation
US6657568B1 (en) 2002-08-27 2003-12-02 Fmr Corp. Data packing for real-time streaming
US7047230B2 (en) 2002-09-09 2006-05-16 Lucent Technologies Inc. Distinct sampling system and a method of distinct sampling for optimizing distinct value query estimates
US7043476B2 (en) * 2002-10-11 2006-05-09 International Business Machines Corporation Method and apparatus for data mining to discover associations and covariances associated with data
AU2003284118A1 (en) 2002-10-14 2004-05-04 Battelle Memorial Institute Information reservoir
US7395243B1 (en) 2002-11-01 2008-07-01 Checkfree Corporation Technique for presenting matched billers to a consumer
US7698163B2 (en) 2002-11-22 2010-04-13 Accenture Global Services Gmbh Multi-dimensional segmentation for use in a customer interaction
US7403942B1 (en) 2003-02-04 2008-07-22 Seisint, Inc. Method and system for processing data records
US7433861B2 (en) 2003-03-13 2008-10-07 International Business Machines Corporation Byte-code representations of actual data to reduce network traffic in database transactions
US7117222B2 (en) 2003-03-13 2006-10-03 International Business Machines Corporation Pre-formatted column-level caching to improve client performance
US7130760B2 (en) 2003-03-31 2006-10-31 National Instruments Corporation Reporting invalid parameter values for a parameter-based system
US20040249810A1 (en) 2003-06-03 2004-12-09 Microsoft Corporation Small group sampling of data for use in query processing
GB0314591D0 (en) 2003-06-21 2003-07-30 Ibm Profiling data in a data store
US20050240354A1 (en) * 2003-08-27 2005-10-27 Ascential Software Corporation Service oriented architecture for an extract function in a data integration platform
US20060069717A1 (en) * 2003-08-27 2006-03-30 Ascential Software Corporation Security service for a services oriented architecture in a data integration platform
US7426520B2 (en) 2003-09-10 2008-09-16 Exeros, Inc. Method and apparatus for semantic discovery and mapping between data sources
CN101271472B (zh) * 2003-09-15 2011-04-13 起元科技有限公司 数据处理方法和数据处理系统
EP1676217B1 (en) * 2003-09-15 2011-07-06 Ab Initio Technology LLC Data profiling
US7587394B2 (en) 2003-09-23 2009-09-08 International Business Machines Corporation Methods and apparatus for query rewrite with auxiliary attributes in query processing operations
US7149736B2 (en) 2003-09-26 2006-12-12 Microsoft Corporation Maintaining time-sorted aggregation records representing aggregations of values from multiple database records using multiple partitions
AU2003279999A1 (en) 2003-10-21 2005-06-08 Nielsen Media Research, Inc. Methods and apparatus for fusing databases
US7620630B2 (en) * 2003-11-12 2009-11-17 Oliver Lloyd Pty Ltd Directory system
US8078481B2 (en) * 2003-12-05 2011-12-13 John Steinbarth Benefits administration system and methods of use and doing business
US7689542B2 (en) 2004-01-13 2010-03-30 Oracle International Corporation Dynamic return type generation in a database system
US20050177578A1 (en) 2004-02-10 2005-08-11 Chen Yao-Ching S. Efficient type annontation of XML schema-validated XML documents without schema validation
US7376656B2 (en) 2004-02-10 2008-05-20 Microsoft Corporation System and method for providing user defined aggregates in a database system
KR100619064B1 (ko) 2004-07-30 2006-08-31 삼성전자주식회사 메타 데이터를 포함하는 저장 매체, 그 재생 장치 및 방법
US8447743B2 (en) 2004-08-17 2013-05-21 International Business Machines Corporation Techniques for processing database queries including user-defined functions
CN1314634C (zh) 2004-09-17 2007-05-09 南京理工大学 单质炸药降静电处理方法
US7392169B2 (en) * 2004-10-21 2008-06-24 International Business Machines Corporation Method, system and program product for defining and recording minimum and maximum event counts of a simulation utilizing a high level language
US7899833B2 (en) 2004-11-02 2011-03-01 Ab Initio Technology Llc Managing related data objects
US20060129893A1 (en) * 2004-11-30 2006-06-15 Smith Alan R Apparatus, system, and method for criteria driven summarization of trace entry data
US8145642B2 (en) 2004-11-30 2012-03-27 Oracle International Corporation Method and apparatus to support bitmap filtering in a parallel system
US7694088B1 (en) * 2005-03-31 2010-04-06 Symantec Operating Corporation System and method for efficient creation of aggregate backup images
US20060230019A1 (en) * 2005-04-08 2006-10-12 International Business Machines Corporation System and method to optimize database access by synchronizing state based on data access patterns
US8572018B2 (en) * 2005-06-20 2013-10-29 New York University Method, system and software arrangement for reconstructing formal descriptive models of processes from functional/modal data using suitable ontology
US7584205B2 (en) 2005-06-27 2009-09-01 Ab Initio Technology Llc Aggregating data with complex operations
US7877350B2 (en) 2005-06-27 2011-01-25 Ab Initio Technology Llc Managing metadata for graph-based computations
US20070021995A1 (en) 2005-07-20 2007-01-25 Candemir Toklu Discovering patterns of executions in business processes
US7774346B2 (en) 2005-08-26 2010-08-10 Oracle International Corporation Indexes that are based on bitmap values and that use summary bitmap values
US20070073721A1 (en) 2005-09-23 2007-03-29 Business Objects, S.A. Apparatus and method for serviced data profiling operations
US7565349B2 (en) * 2005-11-10 2009-07-21 International Business Machines Corporation Method for computing frequency distribution for many fields in one pass in parallel
US20070214179A1 (en) 2006-03-10 2007-09-13 Khanh Hoang Searching, filtering, creating, displaying, and managing entity relationships across multiple data hierarchies through a user interface
US8271452B2 (en) * 2006-06-12 2012-09-18 Rainstor Limited Method, system, and database archive for enhancing database archiving
NO325864B1 (no) 2006-11-07 2008-08-04 Fast Search & Transfer Asa Fremgangsmåte ved beregning av sammendragsinformasjon og en søkemotor for å støtte og implementere fremgangsmåten
US20080114789A1 (en) 2006-11-15 2008-05-15 Wysham John A Data item retrieval method and apparatus
JP2008146242A (ja) * 2006-12-07 2008-06-26 Ricoh Co Ltd 発注支援システム、機器監視装置、機器監視方法及びプログラム
US7894075B2 (en) * 2006-12-11 2011-02-22 Zygo Corporation Multiple-degree of freedom interferometer with compensation for gas effects
US8412713B2 (en) * 2007-03-06 2013-04-02 Mcafee, Inc. Set function calculation in a database
US9224179B2 (en) * 2007-05-14 2015-12-29 The University Of Utah Research Foundation Method and system for report generation including extensible data
US7958142B2 (en) 2007-09-20 2011-06-07 Microsoft Corporation User profile aggregation
JP5241738B2 (ja) * 2008-01-28 2013-07-17 株式会社ターボデータラボラトリー 表からツリー構造データを構築する方法及び装置
US20090226916A1 (en) * 2008-02-01 2009-09-10 Life Technologies Corporation Automated Analysis of DNA Samples
US7912867B2 (en) 2008-02-25 2011-03-22 United Parcel Services Of America, Inc. Systems and methods of profiling data for integration
US7904464B2 (en) * 2008-08-27 2011-03-08 International Business Machines Corporation Virtual list view support in a distributed directory
US8463739B2 (en) * 2008-08-28 2013-06-11 Red Hat, Inc. Systems and methods for generating multi-population statistical measures using middleware
JP5287071B2 (ja) * 2008-09-17 2013-09-11 株式会社リコー データベース管理システムおよびプログラム
US20100114976A1 (en) * 2008-10-21 2010-05-06 Castellanos Maria G Method For Database Design
CN101393521B (zh) * 2008-11-13 2012-04-25 上海交通大学 Windows应用程序内部固化数据的提取系统
US8150832B2 (en) * 2009-03-06 2012-04-03 Oracle International Corporation Methods and systems for automatically determining a default hierarchy from data
US9251212B2 (en) * 2009-03-27 2016-02-02 Business Objects Software Ltd. Profiling in a massive parallel processing environment
US20110029478A1 (en) 2009-05-20 2011-02-03 Broeker Stephen A Stream Star Schema and Nested Binary Tree for Data Stream Analysis
US8977705B2 (en) * 2009-07-27 2015-03-10 Verisign, Inc. Method and system for data logging and analysis
KR101688555B1 (ko) 2009-09-16 2016-12-21 아브 이니티오 테크놀로지 엘엘시 데이터세트 요소의 매핑
US8560575B2 (en) * 2009-11-12 2013-10-15 Salesforce.Com, Inc. Methods and apparatus for selecting updates to associated records to publish on an information feed in an on-demand database service environment
AU2010319344B2 (en) 2009-11-13 2014-10-09 Ab Initio Technology Llc Managing record format information
US8595284B2 (en) 2009-12-14 2013-11-26 Samsung Electronics Co., Ltd Web application script migration
US8396873B2 (en) 2010-03-10 2013-03-12 Emc Corporation Index searching using a bloom filter
US8326824B2 (en) * 2010-05-28 2012-12-04 International Business Machines Corporation Methods to estimate existing cache contents for better query optimization
KR101781416B1 (ko) * 2010-06-22 2017-09-25 아브 이니티오 테크놀로지 엘엘시 관련 데이터세트의 처리
JP2012009996A (ja) * 2010-06-23 2012-01-12 National Institute Of Information & Communication Technology 情報処理システム、中継装置、および情報処理方法
JP5398663B2 (ja) * 2010-08-06 2014-01-29 三菱電機株式会社 データ処理装置及びデータ処理方法及びプログラム
US20140147013A1 (en) * 2010-10-11 2014-05-29 The Regents Of The University Of Colorado, A Body Corporate Direct echo particle image velocimetry flow vector mapping on ultrasound dicom images
US8296274B2 (en) 2011-01-27 2012-10-23 Leppard Andrew Considering multiple lookups in bloom filter decision making
AU2012211167B2 (en) 2011-01-28 2014-08-21 Ab Initio Technology Llc Generating data pattern information
JP5556695B2 (ja) * 2011-02-16 2014-07-23 株式会社島津製作所 質量分析データ処理方法及び該方法を用いた質量分析装置
US9275367B2 (en) * 2011-05-05 2016-03-01 Aegis Analytical Corporation System for designating, displaying and selecting types of process parameters and product outcome parameters
EP2608122A1 (en) * 2011-12-22 2013-06-26 Philip Morris Products S.A. Systems and methods for quantifying the impact of biological perturbations
US8610605B2 (en) * 2011-06-17 2013-12-17 Sap Ag Method and system for data compression
DE102012210794A1 (de) * 2011-07-01 2013-02-07 International Business Machines Corporation System und Verfahren zur Datenqualitätsüberwachung
US8856085B2 (en) 2011-07-19 2014-10-07 International Business Machines Corporation Automatic consistent sampling for data analysis
US8666919B2 (en) 2011-07-29 2014-03-04 Accenture Global Services Limited Data quality management for profiling, linking, cleansing and migrating data
WO2013063017A1 (en) * 2011-10-24 2013-05-02 The Brigham And Women's Hospital, Inc. Diagnosis and treatment of mesothelioma
CN103176973B (zh) 2011-12-20 2016-04-20 国际商业机器公司 用于生成数据库的测试工作负载的系统和方法
US8762396B2 (en) 2011-12-22 2014-06-24 Sap Ag Dynamic, hierarchical bloom filters for network data routing
US9336246B2 (en) 2012-02-28 2016-05-10 International Business Machines Corporation Generating composite key relationships between database objects based on sampling
US9483268B2 (en) * 2012-03-16 2016-11-01 International Business Machines Corporation Hardware based run-time instrumentation facility for managed run-times
US10061807B2 (en) * 2012-05-18 2018-08-28 Splunk Inc. Collection query driven generation of inverted index for raw machine data
CN104704499B (zh) * 2012-06-21 2018-12-11 菲利普莫里斯生产公司 与基于网络的生物标记签名相关的系统和方法
AU2013335231B2 (en) * 2012-10-22 2018-08-09 Ab Initio Technology Llc Profiling data with location information
WO2014065918A1 (en) * 2012-10-22 2014-05-01 Ab Initio Technology Llc Characterizing data sources in a data storage system
US9348773B2 (en) * 2013-05-28 2016-05-24 Dell Products, L.P. Systems and methods for adaptive interrupt coalescing in a converged network

Also Published As

Publication number Publication date
US20140114968A1 (en) 2014-04-24
JP2016502699A (ja) 2016-01-28
JP6357162B2 (ja) 2018-07-11
CA2888250C (en) 2020-07-21
EP2909746A1 (en) 2015-08-26
CA2887931A1 (en) 2014-05-01
KR102074026B1 (ko) 2020-02-05
CA2887931C (en) 2022-12-13
KR20150076227A (ko) 2015-07-06
US20140114926A1 (en) 2014-04-24
EP3657348B1 (en) 2021-12-01
CN104756107B (zh) 2019-01-01
CA2888250A1 (en) 2014-05-01
EP2909745A1 (en) 2015-08-26
CN104737167A (zh) 2015-06-24
CN104756107A (zh) 2015-07-01
WO2014066314A1 (en) 2014-05-01
US20170154075A1 (en) 2017-06-01
KR102129643B1 (ko) 2020-07-02
US9323749B2 (en) 2016-04-26
US9990362B2 (en) 2018-06-05
HK1211113A1 (en) 2016-05-13
US10719511B2 (en) 2020-07-21
KR20150076225A (ko) 2015-07-06
WO2014065917A1 (en) 2014-05-01
KR20150079689A (ko) 2015-07-08
AU2018253523A1 (en) 2018-11-15
EP3657348A1 (en) 2020-05-27
AU2013335231A1 (en) 2015-04-30
AU2013335229B2 (en) 2018-08-09
EP2909752A1 (en) 2015-08-26
CN104769586B (zh) 2019-03-22
AU2013334870A1 (en) 2015-04-30
US9569434B2 (en) 2017-02-14
HK1211109A1 (en) 2016-05-13
AU2018253523B2 (en) 2020-07-02
CN104769586A (zh) 2015-07-08
US20140114927A1 (en) 2014-04-24
KR102134494B1 (ko) 2020-07-15
CA2887670C (en) 2021-05-25
JP6377622B2 (ja) 2018-08-22
AU2013335231B2 (en) 2018-08-09
US20160012100A1 (en) 2016-01-14
JP2016502166A (ja) 2016-01-21
JP2015537296A (ja) 2015-12-24
US9323748B2 (en) 2016-04-26
AU2013334870B2 (en) 2018-08-09
WO2014065919A1 (en) 2014-05-01
CN110096494A (zh) 2019-08-06
HK1211116A1 (en) 2016-05-13
EP2909745B1 (en) 2020-01-01
EP2909752B1 (en) 2020-07-29
EP3764242A1 (en) 2021-01-13
CA2887670A1 (en) 2014-05-01
CN104737167B (zh) 2019-01-04
EP2909746B1 (en) 2019-12-18
CN110096494B (zh) 2024-04-26
AU2013335229A1 (en) 2015-04-30

Similar Documents

Publication Publication Date Title
JP6207619B2 (ja) ソース追跡によるデータのプロファイリング
US10521427B2 (en) Managing data queries
JP5372850B2 (ja) データプロファイリング
US7958114B2 (en) Detecting estimation errors in dictinct page counts
US20170060944A1 (en) Optimized inequality join method
US20120117054A1 (en) Query Analysis in a Database
CN111611458A (zh) 大数据治理中基于元数据和数据分析技术实现系统数据架构梳理的方法
Abuzaid et al. Diff: a relational interface for large-scale data explanation
Damasio et al. Guided automated learning for query workload re-optimization
Ordonez et al. Managing big data analytics workflows with a database system
Hasan et al. Data transformation from sql to nosql mongodb based on r programming language
Mihaylov et al. Scalable learning to troubleshoot query performance problems
Brkić et al. A time-constrained algorithm for integration testing in a data warehouse environment
Rozsnyai et al. Automated correlation discovery for semi-structured business processes
Ordonez-Ante et al. Dynamic data transformation for low latency querying in big data systems
Graefe et al. 10381 Summary and Abstracts Collection–Robust Query Processing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160705

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170721

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: 20170808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170905

R150 Certificate of patent or registration of utility model

Ref document number: 6207619

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250