特許第5768063号(P5768063)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アビニシオ テクノロジー エルエルシーの特許一覧

特許5768063適合を特徴付けるルールを用いたメタデータソースの照合
<>
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000005
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000006
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000007
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000008
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000009
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000010
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000011
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000012
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000013
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000014
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000015
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000016
  • 特許5768063-適合を特徴付けるルールを用いたメタデータソースの照合 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5768063
(24)【登録日】2015年6月26日
(45)【発行日】2015年8月26日
(54)【発明の名称】適合を特徴付けるルールを用いたメタデータソースの照合
(51)【国際特許分類】
   G06F 17/30 20060101AFI20150806BHJP
【FI】
   G06F17/30 220Z
   G06F17/30 350C
【請求項の数】42
【全頁数】24
(21)【出願番号】特願2012-549069(P2012-549069)
(86)(22)【出願日】2011年1月13日
(65)【公表番号】特表2013-517569(P2013-517569A)
(43)【公表日】2013年5月16日
(86)【国際出願番号】US2011021108
(87)【国際公開番号】WO2011088195
(87)【国際公開日】20110721
【審査請求日】2014年1月9日
(31)【優先権主張番号】61/294,663
(32)【優先日】2010年1月13日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】509123208
【氏名又は名称】アビニシオ テクノロジー エルエルシー
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(72)【発明者】
【氏名】ショーン,アンドリュー
【審査官】 野崎 大進
(56)【参考文献】
【文献】 特開2003−271656(JP,A)
【文献】 国際公開第2009/017158(WO,A1)
【文献】 特開2000−040085(JP,A)
【文献】 特開2006−163941(JP,A)
【文献】 特開2006−039871(JP,A)
【文献】 米国特許出願公開第2003/0120651(US,A1)
【文献】 米国特許出願公開第2004/0158567(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/30
JSTPlus(JDreamIII)
(57)【特許請求の範囲】
【請求項1】
複数のソースの各々の仕様であって、各仕様は対応する前記ソースの1つ又は複数のデータ要素を識別する情報を含む、各々の仕様をデータ記憶システム内に記憶することと、
前記データ記憶システムと通信するデータ処理システムにおいて前記ソースからのデータ要素を処理することと、を含む方法であって、該処理することは、
第1のソース内のターム及び関連付けられたターム記述を特定すること、
前記第1のソース内の前記タームと最も同様である第2のソース内の第1の所定数のタームを特定し、前記第1のソース内の前記ターム記述と最も同様である第2の所定数のターム記述を特定すること、及び
1つ又は複数のルールを、前記第1のソース内の前記タームと、前記第2のソース内の前記特定されたタームのそれぞれとの間の適合の品質を評価することに適用することを含み、各々のルールは、(i)前記第1のソース内の前記タームと前記第2のソース内の各特定されたタームとの間の類似性、及び(ii)前記第1のソース内の前記ターム記述と前記第2のソース内の各特定されたターム記述との間の類似性を評価する、方法。
【請求項2】
各々のルールは、前記第1のソース内の前記ターム及び関連付けられた記述と、前記第2のソース内の各々のターム及び関連付けられた記述との適合に、グレードレベルを割り当てる、請求項1に記載の方法。
【請求項3】
閾値より低いグレードレベルを有する適合を特定することをさらに含む、請求項2に記載の方法。
【請求項4】
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームを1つ又は複数のクラスに分類することと、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームの各々について1つ又は複数のクラスワードを割り当てることと、
前記第1のソース内の前記タームと前記第2のソース内の前記特定された各々との間の適合の質を評価するように、前記第1のソース内の前記タームについての前記1つ又は複数のクラスワードと第2のソース内の前記特定されたタームの各々についての前記1つ又は複数のクラスワードを比較することと、
をさらに含む、請求項に記載の方法。
【請求項5】
第1のグレードは、第1のルールの出力に割り当てられ、第2のグレードは、第2のルールの別の出力に割り当てられ、前記第1のグレードは、前記第2のグレードに対して前記適より良い品質を示す、請求項1に記載の方法。
【請求項6】
つ又は複数の前記ルールを生成するために十分な情報を含む入力を受信することをさらに含む、請求項1に記載の方法。
【請求項7】
前記1つ又は複数のルールを適用することは、前記第1のソース内の前記ターム又は関連付けられたターム記述内にある単語が出現する回数と、前記第2のソース前記特定されたターム又はターム記述内にある単語が出現する回数の尺度に基づく品質メトリックを決定することを含む、請求項1に記載の方法。
【請求項8】
前記処理することは、前記第1又は第2のソースで第1の頻度で出現するターム又はターム記述に第1の重みを提供することと、
前記第1又は第2のソースで第2の頻度で出現するターム又はターム記述に第2の重みを提供することと、を含み、
前記第1の重みの値は前記第2の重みの値よりも小さく、
前記1つ又は複数のルールを適用することは、前記タームに関連する重みを考慮する、請求項1に記載の方法。
【請求項9】
前記処理することは、
前記第1のソース内のターム又はターム記述の第1の頻度と前記第2のソース内のターム又はターム記述の第2の頻度とを演算することと、
前記第1及び第2の頻度の数値の積に基づいて品質メトリックを生成することと含む、請求項1に記載の方法。
【請求項10】
ームの前記第1の所定数又はターム記述の前記第2の所定数は、ユーザによって指定される、請求項に記載の方法。
【請求項11】
コンピュータプログラムを記憶するコンピュータ可読媒体であって、該コンピュータプログラムは、コンピュータに、
複数のソースの各々の仕様であって、各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む、各々の仕様を記憶させ、
前記ソースからのデータ要素を処理させる命令を含み、該処理は、
第1のソース内のターム及び関連付けられたターム記述を特定すること、
前記第1のソース内の前記タームと最も同様である第2のソース内の第1の所定数のタームを特定し、前記第1のソース内の前記ターム記述と最も同様である第2の所定数のターム記述を特定すること、及び
1つ又は複数のルールを、前記第1のソース内の前記タームと、前記第2のソース内の前記特定されたタームのそれぞれとの間の適合の品質を評価することに適用することを含み、各々のルールは、(i)前記第1のソース内の前記タームと前記第2のソース内の各特定されたタームとの間の類似性、及び(ii)前記第1のソース内の前記ターム記述と前記第2のソース内の各特定されたターム記述との間の類似性を評価する、コンピュータ可読媒体。
【請求項12】
複数のソースの各々の仕様であって、各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む、各々の仕様を記憶するデータ記憶システムと、
前記データ記憶システムに結合され、前記ソースからのデータ要素を処理するように構成されたデータ処理システムとを含み、該データ処理システムは、
第1のソース内のターム及び関連付けられたターム記述を特定すること、
前記第1のソース内の前記タームと最も同様である第2のソース内の第1の所定数のタームを特定し、前記第1のソース内の前記ターム記述と最も同様である第2の所定数のターム記述を特定すること、及び
1つ又は複数のルールを、前記第1のソース内の前記タームと、前記第2のソース内の前記特定されたタームのそれぞれとの間の適合の品質を評価することに適用することを含み、各々のルールは、(i)前記第1のソース内の前記タームと前記第2のソース内の各特定されたタームとの間の類似性、及び(ii)前記第1のソース内の前記ターム記述と前記第2のソース内の各特定されたターム記述との間の類似性を評価する、システム。
【請求項13】
複数のソースの各々の仕様であって、各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む、各々の仕様を記憶する手段と、
前記ソースから得たデータ要素を処理する手段と、
を含むシステムであって、前記処理する手段は、
第1のソース内のターム及び関連付けられたターム記述を特定すること、
前記第1のソース内の前記タームと最も同様である第2のソース内の第1の所定数のタームを特定し、前記第1のソース内の前記ターム記述と最も同様である第2の所定数のターム記述を特定すること、及び
1つ又は複数のルールを、前記第1のソース内の前記タームと、前記第2のソース内の前記特定されたタームのそれぞれとの間の適合の品質を評価することに適用することを含み、各々のルールは、(i)前記第1のソース内の前記タームと前記第2のソース内の各特定されたタームとの間の類似性、及び(ii)前記第1のソース内の前記ターム記述と前記第2のソース内の各特定されたターム記述との間の類似性を評価する、システム。
【請求項14】
各々のルールは、前記第1のソース内の前記ターム及び関連付けられた記述と、前記第2のソース内の各々のターム及び関連付けられた記述との適合に、グレードレベルを割り当てる、請求項11に記載のコンピュータ可読媒体。
【請求項15】
コンピュータに、閾値より低いグレードレベルを有する適合を特定させる命令をさらに含む、請求項14に記載のコンピュータ可読媒体。
【請求項16】
コンピュータプログラムは、コンピュータに、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームを1つ又は複数のクラスに分類させ、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームの各々について1つ又は複数のクラスワードを割り当てさせ、
前記第1のソース内の前記タームと前記第2のソース内の前記特定された各々との間の適合の質を評価するように、前記第1のソース内の前記タームについての前記1つ又は複数のクラスワードと第2のソース内の前記特定されたタームの各々についての前記1つ又は複数のクラスワードを比較させる、
命令をさらに含む、請求項11に記載のコンピュータ可読媒体。
【請求項17】
第1のグレードは、第1のルールの出力に割り当てられ、第2のグレードは、第2のルールの別の出力に割り当てられ、前記第1のグレードは、前記第2のグレードに対して前記適より良い品質を示す、請求項11に記載のコンピュータ可読媒体。
【請求項18】
コンピュータプログラムは、
つ又は複数の前記ルールを生成するために十分な情報を含む入力を受信するための命令をさらに含む、請求項11に記載のコンピュータ可読媒体。
【請求項19】
前記1つ又は複数のルールを適用することは、前記第1のソース内の前記ターム又は関連付けられたターム記述内にある単語が出現する回数と、前記第2のソース前記特定されたターム又はターム記述内にある単語が出現する回数の尺度に基づく品質メトリックを決定することを含む、請求項11に記載のコンピュータ可読媒体。
【請求項20】
コンピュータプログラムは、コンピュータに、
前記第1又は第2のソースで第1の頻度で出現するターム又はターム記述に第1の重みを提供させ、
前記第1又は第2のソースで第2の頻度で出現するターム又はターム記述に第2の重みを提供させる、命令をさらに含み、
前記第1の重みの値は前記第2の重みの値よりも小さく、
前記1つ又は複数のルールを適用することは、前記タームに関連する重みを考慮する、請求項11に記載のコンピュータ可読媒体。
【請求項21】
コンピュータプログラムは、コンピュータに、
前記第1のソース内のターム又はターム記述の第1の頻度と前記第2のソース内のターム又はターム記述の第2の頻度とを演算させ、
前記第1及び第2の頻度の数値の積に基づいて品質メトリックを生成させる、命令をさらに含む、請求項11に記載のコンピュータ可読媒体。
【請求項22】
ームの前記第1の所定数又はターム記述の前記第2の所定数は、ユーザによって指定される、請求項11に記載のコンピュータ可読媒体。
【請求項23】
各々のルールは、前記第1のソース内の前記ターム及び関連付けられた記述と、前記第2のソース内の各々のターム及び関連付けられた記述との適合に、グレードレベルを割り当てる、請求項12に記載のシステム。
【請求項24】
前記データ処理システムは、閾値より低いグレードレベルを有する適合を特定するように構成される、請求項23に記載のシステム。
【請求項25】
前記データ処理システムは、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームを1つ又は複数のクラスに分類し、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームの各々について1つ又は複数のクラスワードを割り当て、
前記第1のソース内の前記タームと前記第2のソース内の前記特定された各々との間の適合の質を評価するように、前記第1のソース内の前記タームについての前記1つ又は複数のクラスワードと第2のソース内の前記特定されたタームの各々についての前記1つ又は複数のクラスワードを比較するように構成される
請求項12に記載のシステム。
【請求項26】
第1のグレードは、第1のルールの出力に割り当てられ、第2のグレードは、第2のルールの別の出力に割り当てられ、前記第1のグレードは、前記第2のグレードに対して前記適より良い品質を示す、請求項12に記載のシステム。
【請求項27】
つ又は複数の前記ルールを生成するために十分な情報を含む入力を受信することをさらに含む、請求項12に記載のシステム。
【請求項28】
前記1つ又は複数のルールを適用することは、前記第1のソース内の前記ターム又は関連付けられたターム記述内にある単語が出現する回数と、前記第2のソース前記特定されたターム又はターム記述内にある単語が出現する回数の尺度に基づく品質メトリックを決定することを含む、請求項12に記載のシステム。
【請求項29】
前記データ要素を処理することは、
前記第1又は第2のソースで第1の頻度で出現するターム又はターム記述に第1の重みを提供することと、
前記第1又は第2のソースで第2の頻度で出現するターム又はターム記述に第2の重みを提供することと、を含み、
前記第1の重みの値は前記第2の重みの値よりも小さく、
前記1つ又は複数のルールを適用することは、前記タームに関連する重みを考慮する、請求項12に記載のシステム。
【請求項30】
前記データ要素を処理することは、
前記第1のソース内のターム又はターム記述の第1の頻度と前記第2のソース内のターム又はターム記述の第2の頻度とを演算することと、
前記第1及び第2の頻度の数値の積に基づいて品質メトリックを生成することとを含む、請求項12に記載のシステム。
【請求項31】
ームの前記第1の所定数又はターム記述の前記第2の所定数は、ユーザによって指定される、請求項12に記載のシステム。
【請求項32】
各々のルールは、前記第1のソース内の前記ターム及び関連付けられた記述と、前記第2のソース内の各々のターム及び関連付けられた記述との適合に、グレードレベルを割り当てる、請求項13に記載のシステム。
【請求項33】
前記データ要素を処理することは、閾値より低いグレードレベルを有する適合を特定することを含む、請求項32に記載のシステム。
【請求項34】
前記データ要素を処理することは、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームを1つ又は複数のクラスに分類することと、
前記第1のソース内の前記ターム及び第2のソース内の前記特定されたタームの各々について1つ又は複数のクラスワードを割り当てることと
前記第1のソース内の前記タームと前記第2のソース内の前記特定された各々との間の適合の質を評価するように、前記第1のソース内の前記タームについての前記1つ又は複数のクラスワードと第2のソース内の前記特定されたタームの各々についての前記1つ又は複数のクラスワードを比較することとを含む
請求項13に記載のシステム。
【請求項35】
第1のグレードは、第1のルールの出力に割り当てられ、第2のグレードは、第2のルールの別の出力に割り当てられ、前記第1のグレードは、前記第2のグレードに対して前記適より良い品質を示す、請求項13に記載のシステム。
【請求項36】
つ又は複数の前記ルールを生成するために十分な情報を含む入力を受信する手段をさらに含む、請求項13に記載のシステム。
【請求項37】
前記1つ又は複数のルールを適用することは、前記第1のソース内の前記ターム又は関連付けられたターム記述内にある単語が出現する回数と、前記第2のソース前記特定されたターム又はターム記述内にある単語が出現する回数の尺度に基づく品質メトリックを決定することを含む、請求項13に記載のシステム。
【請求項38】
前記データ要素を処理することは、
前記第1又は第2のソースで第1の頻度で出現するターム又はターム記述に第1の重みを提供することと、
前記第1又は第2のソースで第2の頻度で出現するターム又はターム記述に第2の重みを提供することと、を含み、
前記第1の重みの値は前記第2の重みの値よりも小さく、
前記1つ又は複数のルールを適用することは、前記タームに関連する重みを考慮する、請求項13に記載のシステム。
【請求項39】
前記データを処理することは、
前記第1のソース内のターム又はターム記述の第1の頻度と前記第2のソース内のターム又はターム記述の第2の頻度とを演算することと、
前記第1及び第2の頻度の数値の積に基づいて品質メトリックを生成することと
含む、請求項13に記載のシステム。
【請求項40】
ームの前記第1の所定数又はターム記述の前記第2の所定数は、ユーザによって指定される、請求項13に記載のシステム。
【請求項41】
複数のソースの各々の仕様であって、各仕様は対応する前記ソースの1つ又は複数のデータ要素を識別する情報を含む、各々の仕様をデータ記憶システム内に記憶することと、
前記データ記憶システムと通信するデータ処理システムにおいて、前記複数のソース内のそれぞれの要素間の適合を見つけるために前記ソースからのデータ要素を処理することと、を含む方法であって、該処理することは、
第1のソースの少なくともいくつかのデータ要素内の名称又は記述からのタームを、共通のレポジトリの標準属性の名称又は記述からのタームに照合することと、
更新されたレポジトリを生成するために、前記共通のレポジトリに、前記第1のソースの不適合のデータ要素からのタームを追加することと、及び
第2のソースの少なくともいくつかのデータ要素内の名称又は記述からのタームを、前記更新された共通のレポジトリの標準属性の名称又は記述からのタームに照合することを含む、方法。
【請求項42】
前記処理することは、
前記更新された共通のレポジトリに前記第2のソースの不適合のデータ要素からのタームを追加すること、及び
前記第1及び第2のソース以外のソースの少なくともいくつかの各々について、
前記ソースの少なくともいくつかのデータ要素内の名称又は記述からのタームを、前記更新された共通のレポジトリの標準属性の名称又は記述からのタームに照合し、及び、
前記更新された共通のレポジトリに前記ソースの不適合のデータ要素からのタームを追加することを含む、請求項41に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
本出願は、参照により本明細書に組み込むものとする、2010年1月13日に出願された米国出願第61/294,663号に対する優先権を主張する。
【0002】
本明細書は、一致乃至は適合(matches)を特徴付けるルールを用いたメタデータソースの照合(matching)に関する。
【背景技術】
【0003】
メタデータ発見(メタデータスキャンとしても知られる)は、フィールド名又はデータベーステーブル若しくはスプレッドシートのカラムなどのデータ集合内に出現する値を記述するメタデータを表すデータ要素間の関係を発見するために、用いられ得る。幾つかのケースでは、所与のデータ集合内に出現するデータのメタデータは、様々な異なるソース内に記憶されている。メタデータ発見工程(process)の間、第1のソース内のデータ要素と第2のソース内のデータ要素との間に適合が発見されることがある。適合は、例えば、テーブル内のフィールドのメタデータの同様のフィールド名及び/又は記述に対応し得る。この適合は、適合するデータ要素がそれぞれのデータ集合内の同じタイプのデータ値のメタデータを表すことを示す。幾つかのケースでは、ユーザ指定又はWordNetなどの辞書ベースのデータベースを含む同義語のデータベースが、同様の意味論的な意味を有するデータ要素間の適合(例えば、「日(day)」と「日付(date)」の適合、又は「性別(gender)」と「性(sex)」の適合)を決定するために、用いられ得る。メタデータのマスタコレクション(「メタデータレジストリ」とも呼ばれる)は、発見された関係に基づいてメタデータを記憶し、又はメタデータ発見工程で発見されたメタデータにリンクするように、生成又は更新されうる。
【発明の概要】
【課題を解決するための手段】
【0004】
一態様では、一般に、方法は、複数のソースの各々の仕様(各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む)をデータ記憶システム内に記憶することと、データ記憶システムに結合されたデータ処理システムでソースから得たデータ要素を処理することとを含み、該処理することは、記憶された仕様の対応する1つに基づいて各ソースのルール集合を生成することと、異なるソースのデータ要素を照合し、第1のソースについて生成されたルール集合と第2のソースについて生成されたルール集合とに従って第1のソースの第1のデータ要素と第2のソースの第2のデータ要素との所与の適合乃至は適合を特徴付ける品質メトリックを決定することと、を含む。
【0005】
以下のうち1つ以上を含む。
【0006】
各々のソースのルール集合は、所与の適合を特徴付ける品質メトリックに対応する1つ又は複数のグレードを生成することができる。該方法は、1つ又は複数のグレードに対応する説明情報を提供することを含むことができる。所与の適合は、それぞれ、第1及び第2のデータ要素に対応する名称の適合を含むことができ、1つ又は複数のグレードは、所与の適合を特徴付ける品質メトリックに基づく。所与の適合は、それぞれ、第1及び第2のデータ要素に対応する記述の適合を含むことができ、1つ又は複数のグレードは、所与の適合を特徴付ける品質メトリックに基づく。
【0007】
該方法は、第1及び第2のデータ要素内に出現するターム(terms)を1つ又は複数のクラスに分類することと、第1及び第2のデータ要素内のタームの各々について1つ又は複数のクラスワードを割り当てることと、それぞれ、第1及び第2のデータ要素内のタームに対応する1つ又は複数のクラスワードを比較して所与の適合の品質メトリックを生成することと、所与の適合を特徴付ける品質メトリックに基づいて、1つ又は複数のグレードを割り当てることとをさらに含むことができる。所与の適合を特徴付ける品質メトリックは、距離尺度メトリックを含むことができる。第1のグレードは、ルールの集合の第1のルールの出力に割り当てられ、第2のグレードは、ルール集合の第2のルールの別の出力に割り当てられ、第1のグレードは、第2のグレードに対して所与の適合を特徴付けるより良い品質メトリックを示すことができる。
【0008】
ルール集合は、それぞれ、第1及び第2のデータ要素内に出現する名称の類似性に基づく。ルール集合は、それぞれ、第1及び第2のデータ要素内に出現する記述の類似性に基づくことができる。該方法は、第1のデータ要素と第2のデータ要素との適合の品質を定量化するルール集合の1つ又は複数のルールを生成する入力を提供する能力をユーザに提供することをさらに含むことができる。ルール集合内のルールの各々は、トリガ入力と、該トリガ入力に基づく出力とを含む。ルール集合内の所与のルールの全てのトリガ入力が真の値になるまで、ルール集合内のルールの各々が順次読み出される。所与の適合を特徴付ける品質メトリックは、第1又は第2のデータ要素のターム内にある単語が出現する回数と、第1又は第2のソースから得たタームの集合内にある単語が出現する回数の尺度に基づく。
【0009】
該方法は、第1又は第2のソースで第1の頻度で出現するタームに第1の重みを提供することと、第1又は第2のソースで第2の頻度で出現するタームに第2の重みを提供する(第1の重みの値が第2の重みの値よりも小さい)こととによって、所与の適合を特徴付ける品質メトリックを演算することをさらに含むことができる。該方法は、第1のソース内のタームの第1の頻度と第2のソース内のタームの第2の頻度とを演算することと、第1及び第2の頻度の数値の積に基づいて品質メトリックを生成することとによって、所与の適合を特徴付ける品質メトリックを演算することをさらに含むことができる。所定の限度の間(例えば、0と1の間)の範囲で品質メトリックを正規化するステップを含む。
【0010】
該方法は、第1のソース内のタームに対応し、タームとタームの集合の各々との適合を特徴付ける所定の品質メトリックを有する第2のソースから得たタームの集合を生成することをさらに含むことができる。タームの集合内のタームの数は、ユーザによって指定される。タームとタームの集合の各々との適合は、ターム内に出現する適合する名称に基づく。タームとタームの集合の各々との適合は、ターム内に出現する適合する記述に基づく。
【0011】
別の態様では、一般に、コンピュータプログラムを記憶するコンピュータ可読媒体であって、該コンピュータプログラムは、コンピュータに、複数のソースの各々の仕様(各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む)を記憶させ、記憶された仕様の対応する1つに基づいて各ソースのルール集合を生成させ、異なるソースのデータ要素を照合させ、第1のソースについて生成されたルール集合と第2のソースについて生成されたルール集合とに従って第1のソースの第1のデータ要素と第2のソースの第2のデータ要素との所与の適合を特徴付ける品質メトリックを決定させる命令を含む。
【0012】
別の態様では、一般に、システムは、複数のソースの各々の仕様(各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む)を記憶するデータ記憶システムと、データ記憶システムに結合され、記憶された仕様の対応する1つに基づいて各ソースのルール集合を生成し、異なるソースのデータ要素を照合し、第1のソースについて生成されたルール集合と第2のソースについて生成されたルール集合とに従って第1のソースの第1のデータ要素と第2のソースの第2のデータ要素との所与の適合を特徴付ける品質メトリックを決定するように構成されたデータ処理システムとを含む。
【0013】
別の態様では、一般に、システムは、複数のソースの各々の仕様(各仕様は対応するソースの1つ又は複数のデータ要素を識別する情報を含む)を記憶する手段と、ソースから得たデータ要素を処理する手段とを含み、該手段は、記憶された仕様の対応する1つに基づいて各ソースのルール集合を生成することと、異なるソースのデータ要素を照合し、第1のソースについて生成されたルール集合と第2のソースについて生成されたルール集合とに従って第1のソースの第1のデータ要素と第2のソースの第2のデータ要素との所与の適合を特徴付ける品質メトリックを決定することとを含む。
【0014】
態様は、以下の利点のうち1つ以上を含む。
【0015】
一般に、1つ又は複数のキーワードとあるテキスト(例えば、ウェブページ)との一致乃至は適合(match)を検索する場合、検索プロセスは、ユーザに対して所与の適合が生じた理由を、例えばテキスト内のキーワードの出現を強調することによって(例えば、キーワードを太字にすることで)表示することができる。幾つかの例では、本明細書に記載する技術は、文書の異なるバージョンにおける変化を識別するために、用いられ得る。さらに、適合スコア及びグレードなどの詳細を含み得る関係図によって、ソース又はキータームはターゲットタームに可視的にリンクされ得る。同じタイプのデータのメタデータを表し得る2つのデータ要素を照合する場合、適合が生じた理由(又は生じなかった理由)は、それぞれのキーワード間の正確な適合の存在よりも複雑になる場合がある。例えば、データ要素内に出現するタームは拡張又は変換されている(例えば、語幹処理を用いて)ことがあり、適合するタームの関係は同義語の発見又はタームのカテゴリ(「クラス」と呼ばれる)への分類に基づき得る。照合を実行するために用いる手順は、各適合にグレードを割り当てることで適合品質を特徴付けるためのルールを使用できる。グレードは、適合に関連付けて記憶して適合品質を示すことができる。
【0016】
多数のメタデータのソースがあるケースでは、異なるソース間の差は、照合プロセスが繰り返されるにつれてソースが任意の回数だけ効率的に処理されるように、明らかにされ得る。事前処理手順によって、データ要素を解釈し、及び/又は変換するのに必要な情報、並びに適合を特徴付けるためのルールを定義するのに必要な情報を提供することによって、ソースから直接的にデータ要素の処理を可能にするソース処理情報を生成することができる。
【0017】
本発明のその他の特徴及び利点は、以下の説明と特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【0018】
図1図1は、グラフベースの演算を実行するシステムのブロック図である。
図2図2は、例示的なメタデータ処理手順のフローチャートである。
図3図3は、例示的な自動化照合工程の段階を示す図である。
図4図4は、自動化照合工程の例示的なグラフベースの実施を示す図である。
図5図5は、図4の自動化照合工程のグラフベースの実施の例示的な出力を示す図である。
図6図6は、例示的なルールとルールを管理するためのインターフェイスのスクリーンショットである。
図7図7は、例示的なルールとルールを管理するためのインターフェイスのスクリーンショットである。
図8図8は、例示的なルールとルールを管理するためのインターフェイスのスクリーンショットである。
図9図9は、例示的なメタデータインターフェイスのスクリーンショットである。
図10図10は、例示的なメタデータインターフェイスのスクリーンショットである。
図11図11は、例示的なメタデータインターフェイスのスクリーンショットである。
図12図12は、例示的なメタデータインターフェイスのスクリーンショットである。
【発明を実施するための形態】
【0019】
ビジネスアナリストは、多くのシステムにわたって、データ要素のビジネス特性のリストを含む複数(multiple)のデータ辞書を維持している。データ辞書(又はメタデータリポジトリ)は、意味、他のデータとの関係、起源、用法、及びフォーマットといったデータについての情報のリポジトリである。したがって、データ辞書は、タームの定義の標準化とこれらのタームの用法の一貫性とを容易にする。幾つかのシナリオでは、企業全体のデータ辞書は、企業内で使用されるデータについてのメタデータを取り込むように、維持され得る。
【0020】
照合されるべきデータ要素は、1つ又は複数の記述タームを用いたデータ要素を識別する名称部分を有することができ、また、任意的に、データ要素又は当該要素を特徴付ける様々な特性を記述する記述部分を有してもよい。異なる辞書に含まれる名称及びそれに対応する記述は、様々なフォーマットであり得る。例えば、データ辞書は、異なる時期に、また、独立して維持され得る異なるシステムの部分として、開発されうる。少なくともこの理由から、共通に採用される命名標準がなくてもよい。そうすることで、本出願に記載されるメタデータ処理技術の利点は、様々なデータ辞書にまたがった名称及び記述の調和(harmonization)である。加えて、品質メトリック(quality metric)又はデータ要素の適合を定量化するスコアを提供することで、自動化メタデータ処理は、ビジネスアナリストの関心を人間による分析を要する適合のごく一部にしか向けないことになる。例えば、アナリストは、メトリックによる近接した適合としてスコアされたそういった適合にしか興味を示さないだろう。
【0021】
図1は、メタデータ処理技術を使用できる例示的なデータ処理システム100を示す。システム100は、各々が様々な記憶フォーマット(例えば、データベーステーブル、スプレッドシートファイル、平文ファイル、又はメインフレームが使用する固有のフォーマット)のいずれかでデータ及び/又はメタデータを記憶できる記憶デバイス又はオンラインデータストリームへの接続などのデータ及び/又はメタデータの1つ又は複数のソースを含む。幾つかのケースでは、ソースは、そのメタデータによって記述されるデータとは独立してメタデータを記憶する。幾つかのケースでは、メタデータは、そのメタデータによって記述されるデータと同じデータ構造体内に記憶され、又は例えば、リンク若しくはポインタを用いるデータに関連付けて記憶される。一例では、ソース102は、単一のマスタデータ記憶システムを形成するように統合された複数のデータ記憶システムに関連付けられる。システムを統合するプロセスでは、マージされるべき対応データを記述するメタデータの適合を決定する必要がある場合がある。例えば、ある1つのソースからのカスタマリストからのどのフィールドが別のソースからのカスタマリストからのフィールドと同じ属性を表すデータ値(例えば、ある1つのソースからの「social security #(社会保障番号)」フィールドは、別のソースの「SSN」フィールドと同じ属性である)を記憶するかを決定する必要がある場合がある。そして、データ要素間の適合は、データ記憶システムを統合するために、用いることができる。実行環境104は、ソース102を読み出し、ソースレジストリ114に基づいてメタデータソースに対するソース処理情報122を生成する事前処理モジュール106と、ソース処理情報122と参照情報124とに基づいて適合を判定し、品質情報を記録するためのメタデータ処理を実行する実行モジュール112とを含む。以下に詳述するように、データ記憶システム116は、ソースレジストリ114と、ソース処理情報112と、参照情報124とを記憶する。実行環境104は、UNIXオペレーティングシステムなどの好適なオペレーティングシステムの制御下の1つ又は複数の汎用コンピュータ上にホスティングされ得る。例えば、実行環境104は、複数の中央処理装置(CPU)、ローカルの(例えば、SMPコンピュータなどのマルチプロセッサシステム)、又はローカル分散の(例えば、クラスタ又はMPPとして結合された複数のプロセッサ)、又はリモートの、若しくはリモート分散された(例えば、ローカルエリアネットワーク(LAN)及び/又はワイドエリアネットワーク(WAN)を介して結合された複数のプロセッサ)、又はこれらの任意の組合せを用いるコンピュータシステムの構成を含む複数ノードの並列コンピュータ環境を含むことができる。ソース102を提供する記憶デバイスは、実行環境104のローカル側にあってもよく、例えば、実行環境104を実行するコンピュータに接続された記憶媒体(例えば、ハードドライブ108)上に記憶されてもよく、又は実行環境104のリモート側にあってもよく、例えば、リモート接続を介して、実行環境104を実行するコンピュータと通信するリモートシステム(例えば、メインフレーム110)上にホスティングされてもよい。
【0022】
データ記憶システム116はまた、開発者120が事前処理モジュール106と実行モジュール112とを構成できる開発環境118にアクセスできる。開発環境118は、幾つかの実装では、頂点間に有向リンク(ワーク要素のフローを表す)によって接続された頂点(コンポーネント又はデータ集合)を含むデータフローグラフとしてのアプリケーションを開発するシステムである。例えば、そのような環境は、参照により本明細書に組み込むものとする、「Managing Parameters for Graph-Based Applications」と題された米国公開第2007/0011668号に詳述されている。事前処理モジュール106及び実行モジュール112の双方は、ソース102からの入力データのフローを受け取り、例えば、ソース102内のデータ要素間の潜在的な適合のストリームとして出力データのフローを提供するデータフローグラフとして実施される各モジュールと並列に複数のソースを処理する能力を備えるように構成され得る。
【0023】
事前処理モジュール106は、ソースレジストリ114に従うソースからの情報に基づいてソース処理情報122を準備する。ソースレジストリ114は、ソースにアクセスする方法を示すアクセス情報と、ソース内のデータ要素のフォーマットを示すフォーマット情報と、照合プロセスに含まれるソース内の特定のデータ要素の識別とを特定する処理されるべき各ソースの仕様を含む。各仕様は、例えば、テーブル内の行として記憶され得る。事前処理モジュール106は、ソースレジストリ114によって識別されたソースからデータ要素を読み取り、ソース処理情報122を生成する。ソース処理情報122は、ソースレジストリ114からのフォーマット情報に加えて、照合プロセスで使用されるターム及び記述を抽出するために、データ要素を解釈し、及び/又は変換するのに必要な任意の情報を含む。例えば、異なる変換機能は、様々なフォーマットの各々を照合プロセスで使用される共通のフォーマットに変換するにために記憶され得る。
【0024】
ソース処理情報122はまた、適合を特徴付けるルールを定義するのに必要な情報を含む。グレードを決定するルールの幾つかはデータ要素の特性に依存し得る。ゆえに、各ソースは対応するルールの集合を有することができ、異なるルールの集合と共に、所与の適合のグレードを決定するために使用され得る。
【0025】
実行モジュール112は、事前処理モジュール106によって生成されたソース処理情報122と、事項環境104がアクセス可能なデータ記憶システム116内に記憶された参照情報124とを使用する。実行モジュール112は、データ要素から抽出されたターム及び記述から照合されるべき単語を生成し、データ要素間の適合を生じさせるために照合プロセスを実行する。以下に詳述するように、照合プロセスは、適合の品質を特徴付けるデータを記憶することを含む。幾つかの実装では、ソースレジストリ114内にリストされた各ソースとデータ記憶システム116内に記憶された標準メタデータリポジトリ(CMR)との照合が実行される。例えば、CMRは、企業環境内のマスタ基準辞書として機能する企業データ辞書を表すことができる。ソース内のデータ要素は、CMR内の基準属性と比較される適合が検出される。
【0026】
あるソースのデータ要素内に記憶された名称又は記述又はその他のメタデータから抽出されたタームとCMR内に表現された標準属性の名称又は記述から抽出されたタームとの適合は、適合したデータ要素が標準属性と同じ意味を潜在的に有するということを示す。幾つかの実装では、適合は、標準属性名称とデータ要素名称との照合と、標準属性記述とデータ要素記述との照合との組み合せに基づいて決定される。
【0027】
幾つかの実装では、照合は、それぞれのデータ要素間又はデータ要素と標準属性間の適合を見つけ出すように、各ソースが、CMRに加えて他の全てのソースと比較されるように、実行される。幾つかの実装では、照合は、ソースとの先の比較から得た不適合のタームを反復の間にCMRに追加することでソース間の比較を可能にする。このようにして、このプロセスは、「全数」処理の必要性を除去することができる。例えば、例示的な照合プロセスは、CMR(n)が不適合に終わった先のソース比較におけるデータ要素の名称又は記述からの選択したタームでCMRを更新するn番目の反復である以下のシーケンスを使用する。
・ソース1をCMR(0)と比較する。
・CMR(0)と適合しなかったソース1の全タームを追加してCMR(1)を作成する。
・ソース2をCMR(1)と比較する。
・CMR(1)と適合しなかったソース2の全タームを追加してCMR(2)を作成する。
・ソース3をCMR(2)と比較する。
・以下同様。
【0028】
実行モジュール112によって実行される照合プロセスの一例では、プロセスは、データ要素から抽出されたタームを標準のフォームに正規化し、展開し、クレンジング(cleansing)することで、また、データ要素内のメタデータによって定義された属性の名称に対応するターム及びその属性の記述に対応するタームを識別することで開始する。クレンジングは、一定の句読点(例えば、下線、ダッシュなど)を選択的にフィルタリングし、大文字/小文字を変換し(例えば、小文字への)、及び余分なスペースを除去することを含んでもよい。標準の言葉に関する(standard linguistic)「煩雑語(nuisance words)」又は「ストップワード(stop words)」を含む所定の単語(例えば、「a(1つの)、also(また)、and(及び)」など)のリストはまた、タームから除去され得る。幾つかの実装では、参照情報124はまた、ストップワード、頭字語、及び別名のリストを含むルックアップファイルを含み得る。例えば、ストップワードのリストを含むストップワードルックアップファイルは、クレンジングでの一助のために使用され得る。ユーザは、ルックアップファイルを修正することでこのリストに対して単語を追加又は除去できる。このプロセスはまた、略語と頭字語とを非省略の語句に展開することと、名称又は記述内のタームを共通の別名に展開することとを含む。さらに、頭字語ルックアップファイルは、このプロセスでの一助のために使用され得る。そうして、ユーザは、インターフェイスを通して頭字語ルックアップファイルを修正し得る。幾つかの例では、インターフェイスは、ファイルに対する任意の変更の承認及び通知におけるユーザのフィードバックを求めるための制御項目(controls)を含んでもよい。
【0029】
幾つかの実装では、同義語ルックアップファイルは、同様の意味を持ち得る異なる単語をサポートするターム及び記述における単語の同義語を含んでもよい。例えば、「agency(省)」、「authority(当局)」、「bureau(局)」及び「organization(機関)」は、特定のターム又は記述の文脈で「office(官庁)」という単語と同様の意味を有する。幾つかの例では、そのような同義語は、ターム及び記述における特定の単語の国際的な等価物を含んでもよい。例えば、「liter(リットル)は、「litre(リットル)」の同義語である。加えて、同義語ルックアップファイルは、別のデータソース内の「address(アドレス)」にのみ対応する1つのデータソース内の「address1(アドレス1)」及び「address2(アドレス2)」などの別名の単語に対応する。さらに、ターム及び記述における幾つかの単語は、単語間の差を正規化する試みの中でそれらの語幹の形式に変換されることがある。幾つかの実装では、変換は、例えば、接尾辞を調整することで、活用形、時制、及び/又は複数形を対象とすることもできる。例として、「acquisition」は「acquisit」に変換でき、「parameters」は「paramet」に変換され得る。幾つかの実装では、名称についてクレンジングされた単語のグループが生成され、記述についてクレンジングされた単語のグループが生成される。
【0030】
このプロセスはまた、各属性の「クラスワード」を決定することを含む。クラスワードは、属性によって記述された1つのデータの内容及び役割を定義する単語である。クラスワードの例示的な集合は、amount(量)、code(符号)、date(日付)、time(時刻)、date-time(日時)class(クラス)、description(記述)、identifier(識別子)、image(画像)、indicator(標識)、name(名称)、address(アドレス)、number(番号)、quantity(数量)、percent(パーセント)、rate(割合)、sound(音)、及びtext(テキスト)である。所与の属性のクラスワードを決定するために、属性名内のタームは、クラスワードの所定の集合の1つに対する第1の適合を識別するように、右から左にスキャンされ得る。例えば、属性名「start date(開始日付)」に対応するクラスワードは、「date(日付)」である。幾つかのクラスワードは、決定されたクラスワードへの適合を必ずしも必要とすることなく名称及び/又は記述に出現する単語に基づいて決定される(例えば、「title(タイトル)」という属性名は、属性記述内に出現するタームに応じて、クラスワード「text(テキスト)」、「indicator(標識)」又は「name(名称)」に対応する可能性がある)。
【0031】
ソース内のターム及び記述とCMR内のターム及び記述の類似性の演算は、下記の修正されたTF−IDFプロセスによって実行され得る。「ターム頻度−逆文書頻度」(TF−IDF)重みは、所与のデータ要素及びデータ要素のソースから見た属性名又は記述内に出現するターム内の単語の重要度を評価するのに用いられる統計的尺度である。単語の重要度は、データ要素(例えば、名称と記述を含む)内にある単語が出現する回数に正比例して増加する。しかし、単語の重要度は、CMR内で表される属性内の単語の頻度によってオフセットされる。
【0032】
TF−IDF重みは、CMR内に極めて頻繁に出現する単語の重みを漸減し、めったに出現しない単語の重みを増大させる。例えば、「code(符号)」という単語をデータ辞書ターム内の共通単語と考えてみる。ソース及びターゲットのターム内に「code(符号)」という単語が出現した場合、出現した単語どうしの適合は適切に記述されない。これは、「code(符号)」が共通文字列であるためである。しかし、ソースとターゲットのタームが両方とも「disputed(紛争中)」というタームを含んでいた場合、タームの適合の記述は改善され、両方のターム内の「disputed(紛争中)」という単語は、2つのタームの適合を容易にすることに寄与する。
【0033】
文書Dの集合(例えば、ソース内のデータ要素の集合を表す)の「document(文書)」d(例えば、代表的なタームが抽出されるデータ要素の少なくとも一部を表す)に対する例示的な重みベクトルは、
【数1】

但し、
【数2】

及び、
*tfは、文書d内のタームtのターム頻度(ローカルパラメータ)であり、
【数3】

は、逆文書頻度(グローバルパラメータ)である。
【0034】
|D|は、文書の集合内の文書の総数、|{t∈d}|は、タームtを含む文書の数である。
【0035】
一例では、属性名及び記述は8つの単語を含み、「branch(分岐)」という単語が2回出現する。「branch(分岐)」のターム頻度(TF)は、0.25(8単語中2単語)である。CMRには、約3,300個の属性があり、「branch(分岐)」は、そのうち12個に出現する。次に、逆文書頻度(IDF)がln(3,300/12)=5.61として計算される。TF−IDF重みは、上記数量の積:0.25*5.61=1.4である。別の例では、属性名及び記述は8つの単語を含み、「code(符号)」という単語が1回出現する。「code(符号)」のTFは、0.125(8単語中1単語)である。CMRには、約3,300個の属性があり、「code(符号)」は、そのうち900個に出現する。次に、逆文書頻度(IDF)がln(3,300/900)=1.99として計算される。TF−IDF重みは、上記数量の積:0.125*1.99=0.16である。したがって、これらの例では、1.4の重みを有する「branch(分岐)」という単語は、0.16の重みを有する「code(符号)」という単語よりも重要であることになる。
【0036】
幾つかの実装では、タームと記述との間の類似性は、例えば0〜1の範囲内にある正規化された絶対数であり得る。そうして、各ソースタームについて、修正されたTF−IDF方法に基づく適合演算の結果は、例えば、属性の名称内のソースタームに最もよく適合するN個のCMRタームと属性のそれに対応するソース記述に最もよく適合するN個のCMR記述の集合であり得る。数字Nは、照合システムへの入力パラメータであってもよい。幾つかの例では、N=3の値が使用され得る。
【0037】
照合プロセスは、最も大きい重みを持つデータ要素の単語の適合を得るための照合を実行する場合に、単語のTF−IDF重みを考慮することができる。照合プロセスは、名称又は記述内のタームから抽出された単語がいつCMRの属性から抽出された単語と適合するかを決定するための様々な照合技術のいずれかを使用できる。例えば、参照により本明細書に組み込むものとする、「MANAGING AN ARCHIVE FOR APPROXIMATE STRING MATCHING」と題された米国公開第2009/0182728号は、近似文字列照合の技術について記載している。
【0038】
照合プロセスの出力は、データ要素が適合するCMR内のそれぞれの属性に関連付けられたデータ要素のリストを含む。幾つかの実装では、適合は名称と記述の両方の内の適合する単語に対応する。出力は、任意的に、適合した名称と記述及び両方内の単語を含み、名称又は記述の適合がないデータ要素のリストを含んでもよい。
【0039】
各々の適合に関連付けられて、実行モジュール112は、適合の品質を特徴付けるグレードを含む説明情報と、そのグレードがどのように得られたかの経緯(例えば、ルールファイアリング)の説明と、なぜ適合が生じたかの説明とを記憶できる。グレードは、データ要素名のクレンジングされた単語と標準属性名のクレンジングされた単語との間の「名称適合」と、データ要素記述のクレンジングされた単語と標準属性記述のクレンジングされた単語との間の「記述適合」と、データ要素に関連付けられたクラスワードと標準属性に関連付けられたクラスワードとの間の「クラス適合」とに基づいて決定できる。適合のメトリックは適合が近い(例えば、距離尺度に関して)程度を示すことができる。
【0040】
例えば、「AA」のグレードは、完全な名称適合(例えば、少なくとも1つのクレンジングされた単語が完全に適合する)、高い記述適合(例えば、クレンジングされた単語間の適合で、メトリック>75%)、及び同一クラスワードの存在を決定するルールに基づいて、割り当てられ得る。「AB」のグレードは、高い名称適合(例えば、クレンジングされた単語間の適合で、メトリック>95%)、高い記述適合(例えば、クレンジングされた単語間の適合で、メトリック>70%)、及び同一クラスワードの存在を決定するルールに基づいて、割り当てられ得る。クラスワードが同一でない場合、データ要素によって記述されるデータの内容に有意義な差があるに違いないことから、グレードは、通常、かなり低く設定される(例えば、「DA」以下)。
【0041】
実行環境104はまた、関連付けられたグレード及びその他の情報に基づいて適合をレビューし承認するため、ユーザ124が照合プロセスの出力との対話を可能にするユーザインターフェイスを含む。ユーザインターフェイスは、標準属性又は別のデータ要素内のタームに適合した名称及び/又は記述内のタームを含むデータ要素のリストを含んでもよく、リストはソース内の元のデータ要素又は元のデータ要素のコピーへのリンクを含んでもよい。幾つかの実装では、適合は、ユーザの入力なしにグレードとしきい値との比較に基づいて承認される。不適合のデータ要素は、ユーザ入力に基づいて参照情報124を更新するためにレビューし、使用され得る。例えば、ユーザは、それぞれ同義語を含む参照又は同義語の拡張を含む参照に追加する技術ターム又は予期しない同義語をレビューすることができる。
【0042】
図2は、ソース102から得たメタデータを事前処理し、メタデータについて照合を実行する例示的な手順200のフローチャートを示す。手順200は、データ記憶システム116内に、各々が対応するソースの1つ又は複数のデータ要素を識別する情報を含む複数のソース102の各々の仕様を記憶すること(202)を含む。手順200は、データ記憶システム116に結合された実行環境104を提供するデータ処理システムにおいて、ソースからのデータ要素を処理することを含む。該処理することは、記憶された仕様の対応する1つに基づいて各ソースのルールの集合を生成すること(204)と、様々なソースのデータ要素を照合し(206)、第1のソースについて生成されたルールの集合と第2のソースについて生成されたルールの集合とに従って第1のソースの第1のデータ要素と第2のソースの第2のデータ要素との所与の適合を特徴付ける品質メトリック(例えば、グレード)を決定すること(208)とを含む。各ソースが処理された後、決定された適合を識別する結果が記憶される(210)。さらにソースが追加されると、手順200は繰り返され、追加のソースを処理する。
【0043】
図3は、ソース(例えば、ソースデータ辞書)がCMR(例えば、企業辞書)と照合されるデータ処理システム(例えば、図1に示すシステム100)で実行される自動照合プロセスの例示的な段階を示す。例えば、CMRは、ある期間にわたって様々なソースに基づいて編纂され得る。
【0044】
準備フェーズ310では、ソースデータ辞書内の情報は、上記のメタデータ処理技術と互換性のあるフォーマットに変換され得る。例えば、事前処理モジュール106(図1)は、ソースデータ構造体を共通の記録フォーマットにマッピングするために、この段階で用いられ得る。
【0045】
準備フェーズ310の一実装において、システムは、特定のソースのデータ構造体を生成し、対応するソースデータ辞書を登録フォームに登録するために、ユーザから入力を受け付け得る。続いて、登録フォームは読み出され、ソースデータ辞書は、照合システムと互換性のあるフォーマットに変換され得る。例えば、グラフベースのシステムでは、「メタデータ生成」ソースデータ辞書をロードするために、データフローグラフが実行され得る。グラフは、登録フォームを読み出して、照合プロセスで用いられるメタデータを生成し得る。幾つかの実装では、グラフはまた、追加のデータフローグラフを構成するパラメータの集合と、ソースデータ辞書に対応するビジネスターム、記述、同義語、及びリンクをロードするルールエンジンを構成するルールファイルとを生成し得る。メタデータ、パラメータの集合、及びルールファイルが生成されると、照合データフローグラフが実行され得る。幾つかの例では、「グラフ生成」を介して複数のソース辞書が同時に実行され得る。
【0046】
解析フェーズ320では、個々の単語を抽出するために、ソース辞書内のタームが処理され得る。クレンジング工程に関連して上述したように、意味論的な意味を有しない句読点をタームから除去してもよい。幾つかの実装では、「$」及び「%」などの特定の文字は意味論的な意味を有するので、ターム内に残される。幾つかの実装では、タームはさらに、上記のクラスワードに分類され得る。
【0047】
標準化フェーズ330では、ターム及び記述の変動(variability)が低減され得る。このフェーズでは、ターム及び記述は、例えば、ストップワードを除去し、略語を展開し、別名をマッピングするように、さらにクレンジングされ得る。承認フェーズ340では、1つ又は複数の照合技術を用いてソースタームは標準タームと照合され得る。例えば、上記のTF−IDF重みは、所与のデータ要素及びデータ要素のソースから見たターム又は記述内の単語の重要度を評価するために、使用され得る。幾つかの例では、「ファジーマッチング」技術が、照合プロセスを実行するために、使用され得る(例えば、参照により本明細書に組み込むものとする米国公開第2009/0182728号に記載されるように)。
【0048】
重みが割り当てられると、1つ又は複数のユーザ作成ルールは、照合フェーズ350の間に適合をグレード付けするために、用いられ得る。例えば、適合を上記のようにグレード付けされ得る。ある実装では、「A」、「B」、「C」又は「F」といったグレードは、適合の品質に応じて適合に割り当てられ、ここで、「A」は最高品質の適合を指定するグレード、「F」は最低品質の適合を指定するグレードであり得る。最後に、スコアフェーズで、ユーザは、適合に割り当てられたグレードに基づいて適合をレビューし承認することができる。幾つかの実装では、ユーザはCMRの新しい標準タームを提案することもできる。
【0049】
図4は、上記の照合技術を実行する例示的なグラフベースの方法を示す。ソースデータの照合の準備が整ったら、照合グラフ400は、例えば上記の「メタデータ生成」グラフから呼び出され得る。そうして、読み出しターゲットコンポーネント402と読み出しソースコンポーネント404は、それぞれ対応するターゲット及びソースファイル406、408を読み出すことによって、照合プロセスを開始する。ターゲットファイル406は、CMRからのCMRターム及び記述を含み得る。続いて、マッピングコンポーネント410、412は、それぞれターゲット及びソースファイル内のターム及び記述についてターゲット及びソースの特定のマッピングプロセスを実行し得る。例えば、特定のタームと記述の複数のインスタンスと変動とをマッピングコンポーネント410、412によって共にマッピングしてもよい。そうして、ワークフローを使用するユーザが「最良の」適合を決定するプロセスを支援することができるように、該プロセスは、各適合の適合スコアを有する複数のターゲットと照合されるべきソースタームを考慮する。
【0050】
続いて、上に詳述した分類工程を用いて、分類コンポーネント414、416は、ターゲットファイル406、408内のターム及び記述のクラスワードを決定し得る。幾つかの状況では、文字列テキストを用いたタームの照合は、演算的に遅くなり得る。したがって、テキストのタームを数字キーに変換、すなわち、トークン化してマッピングプロセスを大幅に高速化することができる。例えば、コンポーネント415は、ソース及びターゲットのタームについてこの変換を実行し得る。照合の最後に、各キーは、元のテキストタームに復号化され得る。ソースとターゲットのターム及び記述がマッピングされ標準化されると、サブグラフ照合418は、ソース内のターム及び記述内の単語をターゲット内のターム及び記述内の単語と照合する。ソース及びターゲットで適合する単語の場合、サブグラフ照合418は、適合の近さを示す添付の品質メトリックと共にターム又は記述を返すことができる。結合コンポーネント420は、特定のターム又は記述の元のソースから抽出されたソース属性名を用いて、結合を実行し、結果を適合結果422として出力することができる。
【0051】
図4のグラフ400の例示的な出力500が図5に示される。図示のように、ソースターム「milestone identifier(マイルストーン識別子)」502は、少なくとも3つのCMRターム(又は任意のユーザ指定数の「最良の適合」)、すなわち、「milestone name(マイルストーン名)」、「milestone identifier(マイルストーン識別子)」及び「milestone date(マイルストーン日付)」504に対応する。品質メトリック506は、ソースタームのCMRタームの各々との類似性の程度を定量化する。例えば、出力「milestone identifier(マイルストーン識別子)」の第2のアイテムの類似性尺度は1で、完全な適合を示す。実施では、ターム「milestone identifier(マイルストーン識別子)」502の最良の3つの適合は、最良の3つの記述適合と結合され、ソースとCMRタームとの間の最良の適合を決定するために、9つのターム/記述通信が、ビジネスルールの集合に送信され得る。
【0052】
幾つかの例では、ビジネスルールは、ターム名及び記述の適合の類似性だけでなく、上に詳述したソース及びCMRタームの演算されたクラスワードに基づき得る。幾つかの実装では、ビジネスルールの出力は、最良の適合であると共にその適合の評点でもある。ユーザは、評点に対応する適合の所定の品質を設定し得る。さらに、ユーザは、所定範囲の承認されたグレードを指定し得る。例えば、ユーザは、グレードA〜BC(又はBマイナス)に対応する適合品質だけを受け入れ得る。
【0053】
図6は、照合処理で用いる例示的なビジネスルール600を示す。トリガ602は、ビジネスルール600への入力として作用し、ビジネスルール600は図示の対応する出力604を生成する。ソースとCMRターム間の名称の類似性などの類似性尺度は、0〜1の範囲の数値として定量化され得る。そうして、第1のビジネスルール606は、以下のように解釈できる。ソースとCMRターム間の名称の類似性が0.95より大きい場合、ソースとCMR記述間の記述の類似性は0.70より大きく、2つのタームの名称は同一であり、2つのタームに対応するクラスワードは同じで、2つのタームの間の適合グレードは「AA」(又は「Aプラス」)である。幾つかの例では、上記のビジネスルールのいずれかのトリガ602の値が偽の場合、以下のように述べる第2のビジネスルール608が読み出される。すなわち、ソースとCMRターム間の名称の類似性が0.95より大きい場合、ソースとCMR記述間の記述の類似性は0.70より大きく、2つのタームの名称は同一でなく、2つのタームに対応するクラスワードは同じで、2つのタームの間の適合グレードは「AB」(又は「Aマイナス」)である。例では、入力トリガのすべてが真の値となるビジネスルールが読み出されるまで、ビジネスルール600が次々に読み出される。ユーザは、ビジネスルール600によってトリガされる最小のグレードを定義し得る。
【0054】
幾つかの実装では、アナリストは、テストデータを用いてビジネスルール600のテストランを実行することができるかも知れない。図7は、例示的なテストランのスクリーンショット700である。図示のように、テストデータアイテム702の各々について、適合グレード704が生成され、アナリストに表示される。さらに、各アイテムに対応する類似性スコア706及びクラスワード適合708が表示される。アナリストは反転表示されたテストアイテム710を選択し、アイテム710に関する詳細情報を表示できる。
【0055】
図8は、特定のテストデータアイテム(例えば、図7のアイテム702)についてどのルールが発火したかを正確に示す例示的なスクリーンショット800である。さらに、アナリストは、ビジネスルール(例えば、図6のルール600の1つ)が何回発火したかに関する情報を表示できる。図示のように、幾つかの実装では、1つ又は複数のグラフィカルボタン802が、ボタン802に対応するトリガの値が真であったか否かを示すために、用いられ得る。ルール5に対応するボタンはすべて押下され、特定のテストデータについてルール5が発火したことを示す。さらに、各ルールが発火した回数が表示され得る。例えば、ルール1は77回、ルール5は303回発火している。高速の「反復テスト、修正、及び再実行」方法と呼ばれるこの方法は、照合ルールを最適化するために用いる。アナリストは、不適切に適合したタームがあるか否かを確認する(see)ために、そのようなインターフェースを用いることができる。
【0056】
図9図12は、ユーザにメタデータ情報を表示する例示的なメタデータインターフェイス900のスクリーンショットである。幾つかの実装では、照合プロセスの結果(例えば、図4の適合出力422)はインターフェイス900内に組み込み得る。図6に示すように、インターフェイス900は、メタデータリポジトリを検索するテキストフィールド902を提供できる。タームは、さらに階層グループ(例えば、「Business(ビジネス)」904)及び子グループ(例えば、「Baseline(ベースライン)」906)としてさらに記憶することができる。
【0057】
図10は、「Baseline(ベースライン)」906グループに属するターム「acceptance date(承認日付)」1002の詳細を表示するインターフェイス900を示す。幾つかの実装では、ユーザは、ターム「acceptance date(承認日付)」1002上で右クリックしてターム「acceptance date(承認日付)」1002に関する関係の確認を求めることができる。
【0058】
図11は、Baselineのターム「acceptance date(承認日付)」1002への適合の図表現1102を示す。幾つかの例では、適合のソースに関する情報もユーザに表示され得る。
【0059】
図12を参照すると、幾つかの実装では、適合の表形式ビューがユーザに提示され得る。インターフェイス900は、承認された適合のみを表示するように構成され得る。ユーザは、「approval workflow(承認ワークフロー)」タブ1202を用いてタームのペンディング中及び/又は不合格になった適合をレビューすることができる。
【0060】
上記メタデータ処理方法は、コンピュータ上で実行されるソフトウェアを用いて実行され得る。幾つかの実装では、該プロセスは、極めて短い実行中に無数の辞書について照合プロセスを自動化することができる。例えば、ソフトウェアは、各々が少なくとも1つのプロセッサ、少なくとも1つのデータ記憶システム(揮発性又は不揮発性メモリ及び/又は記憶素子を含む)、少なくとも1つの入力デバイス又はポート、及び少なくとも1つの出力デバイス又はポートを含む、1つ又は複数のプログラミングされた、又はプログラマブルコンピュータシステム(分散、クライアント/サーバ、又はグリッドなどの様々なアーキテクチャであってもよい)上で実行される。1つ又は複数のコンピュータプログラム内の手順を形成する、ソフトウェアは、例えば、データフローグラフの設計と構成に関連するその他のサービスを提供するより大きいプログラムの1つ又は複数のモジュールを形成してもよい。グラフのノード及び要素は、コンピュータ可読媒体に記憶されたデータ構造体又はデータリポジトリ内に記憶されたデータモデルに準拠するその他の組織化されたデータとして実施することができる。
【0061】
ソフトウェアは、汎用又は特殊用途のプログラマブルコンピュータによって読み出し可能なCD−ROMなどの記憶媒体上に提供でき、又はネットワークの通信媒体を介して実行先のコンピュータへ送達する(伝搬信号内に符号化されて)ことができる。すべての機能は、特殊用途のコンピュータ上で、又はコプロセッサなどの特殊用途のハードウェアを用いて実行できる。ソフトウェアは、ソフトウェアによって指定された演算の異なる部分が異なるコンピュータによって実行される分散形態で実施できる。そのようなコンピュータプログラムは各々、汎用又は特殊用途のプログラマブルコンピュータによって読み出し可能な記憶媒体又はデバイス(ソリッドステートメモリ若しくは媒体、又は磁気若しくは光媒体)上に記憶され、又はダウンロードされ、記憶媒体又はデバイスがコンピュータシステムによって読み出された時にコンピュータを構成し運用して本明細書に記載する手順を実行することが好ましい。本発明のシステムは、コンピュータプログラムを備えて構成されたコンピュータ可読記憶媒体として実施されると考えてもよく、そのように構成された記憶媒体によって、コンピュータシステムは特定の事前定義された形で動作して本明細書に記載する機能を実行する。
【0062】
以上、本発明の幾つかの実施形態について説明してきた。しかし、本発明の精神及び範囲を逸脱することなく本発明の様々な変更が可能であることが理解されよう。例えば、上記ステップは順不同であってもよく、したがって、記載した順序と異なる順序で実行できる。
【0063】
なお、上記の説明は、添付の特許請求の範囲によって定義される本発明の範囲を限定するのではなく例示することが意図されている。例えば、上記の幾つかの機能ステップは、全体の処理に実質的に影響することなく別の順序で実行してもよい。その他の実施形態も添付の特許請求の範囲の範囲内である。
図1
図2
図3
図4
図5-1】
図5-2】
図6
図7
図8
図9
図10
図11
図12