IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

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

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-20
(54)【発明の名称】メタデータ駆動型データ取り込み
(51)【国際特許分類】
   G06F 16/907 20190101AFI20240912BHJP
【FI】
G06F16/907
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024516937
(86)(22)【出願日】2022-09-16
(85)【翻訳文提出日】2024-04-24
(86)【国際出願番号】 US2022076595
(87)【国際公開番号】W WO2023044445
(87)【国際公開日】2023-03-23
(31)【優先権主張番号】63/245,244
(32)【優先日】2021-09-17
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/665,109
(32)【優先日】2022-02-04
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】509123208
【氏名又は名称】アビニシオ テクノロジー エルエルシー
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ドゥサン・ラディヴォエヴィッチ
(72)【発明者】
【氏名】ロバート・パークス
(72)【発明者】
【氏名】アダム・ワイス
(72)【発明者】
【氏名】マヤ・ジャンコヴィッチ
(72)【発明者】
【氏名】ジョン・ヴィッケリー
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175FB02
5B175FB03
(57)【要約】
最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)フィールドを記述する可能性があるものとしてユーザが指定した名前との間の共通コンテキストをユーザに対して自動的に識別し、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる電子システム。
【特許請求の範囲】
【請求項1】
最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)フィールドを記述する可能性があるものとしてユーザが指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる、データ処理システムによって実装される方法であって、
ハードウェア記憶デバイスによって、外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、前記取り出されたデータセットを前記1つ以上のデータストアの中に記憶することと
を含む、方法。
【請求項2】
前記メタデータ項目のうちの少なくとも1つが、取り出されたデータセットのフィールドのフィールド名を含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのメタデータ項目のラベルであって、前記ラベルは、前記少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、
前記少なくとも1つのメタデータ項目の前記ラベルと前記ユーザ定義名との間のマッチングを識別することと、
前記マッチングに応じて、前記少なくとも1つのメタデータ項目と前記コンテキストメタデータ項目との間のリンクを生成することとを更に含む、請求項2に記載の方法。
【請求項4】
前記ラベルを決定することは、前記少なくとも1つのメタデータ項目、又は前記少なくとも1つのメタデータ項目によって記述される前記データ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む、請求項3に記載の方法。
【請求項5】
前記少なくとも1つのメタデータ項目の前記ラベルは、前記データセット内の前記データ項目についての前記ユーザ定義名から選択される、請求項3に記載の方法。
【請求項6】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成することは、前記メタデータ項目を表すデータと、前記ユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項3に記載の方法。
【請求項7】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成するは、前記ユーザ定義名メタデータを表すデータと前記メタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項3に記載の方法。
【請求項8】
前記クライアントデバイスにおけるグラフィカルユーザインターフェースであって、前記グラフィカルユーザインターフェースは、前記ユーザ定義名と、前記ユーザ定義名のうちの少なくとも1つに関する前記1つ以上のルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、
前記グラフィカルユーザインターフェースの前記入力部分への入力を表すデータであって、前記データは、前記ユーザ定義名のうちの前記少なくとも1つに関する前記1つ以上のルールを定義する、データを受信することと
を含む、請求項1に記載の方法。
【請求項9】
前記グラフィカルユーザインターフェースは、前記ユーザ定義名に割り当てられた前記メタデータ項目のうちの1つ以上を表示するように構成される、請求項8に記載の方法。
【請求項10】
前記1つ以上のルールが、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項11】
取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて、
前記取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、
前記少なくとも1つのフィールド名を前記メタデータ項目と比較して、前記少なくとも1つのフィールド名と前記メタデータ項目との間のマッチングを識別することと、
前記メタデータ項目を記憶されたリンケージ情報と比較して、前記メタデータ項目に割り当てられた前記ユーザ定義名を識別することと、
前記ユーザ定義名を含む前記1つ以上のルールのうちの前記少なくとも1つを識別することと
によって、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することを更に含む、請求項1に記載の方法。
【請求項12】
前記技術的属性は、前記データセット内の前記データのフォーマット及び/又は構造を含む、請求項1に記載の方法。
【請求項13】
最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)フィールドを記述する可能性があるものとしてユーザが指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させるためのハードウェア記憶デバイスであって、
外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、前記取り出されたデータセットを前記1つ以上のデータストアの中に記憶することと
を含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイス。
【請求項14】
前記メタデータ項目の少なくとも1つは、取り出されたデータセットのフィールドに対するフィールド名を含む、請求項13に記載のハードウェア記憶デバイス。
【請求項15】
ハードウェア記憶デバイスであって、前記動作は、
前記少なくとも1つのメタデータ項目のラベルであって、前記ラベルは、前記少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、
前記少なくとも1つのメタデータ項目の前記ラベルと前記ユーザ定義名との間のマッチングを識別することと、
前記マッチングに応じて、前記少なくとも1つのメタデータ項目と前記コンテキストメタデータ項目との間のリンクを生成することと
を更に含む、請求項14に記載のハードウェア記憶デバイス。
【請求項16】
前記ラベルを決定することは、前記少なくとも1つのメタデータ項目、又は前記少なくとも1つのメタデータ項目によって記述される前記データ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項17】
前記少なくとも1つのメタデータ項目の前記ラベルは、前記データセット内の前記データ項目についての前記ユーザ定義名から選択される、請求項15に記載のハードウェア記憶デバイス。
【請求項18】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間のリンクを生成することは、前記メタデータ項目を表すデータと、前記ユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項19】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成することは、前記ユーザ定義名メタデータを表すデータと前記メタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項20】
最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)フィールドを記述する可能性があるものとしてユーザが指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる電子システムであって、
1つ以上の処理デバイスと、
ハードウェア記憶デバイスであって、
外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、前記取り出されたデータセットを前記1つ以上のデータストアの中に記憶することと
を含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイスと
を含む、電子システム。
【発明の詳細な説明】
【技術分野】
【0001】
(優先権の主張)
本出願は、米国特許法第119条(e)の下で、2021年09月17日に出願された米国特許出願第63/245,244号に対する優先権を主張する、2022年2月4日に出願された米国特許出願第17/665,109号に対する優先権を主張し、両方の内容全体が参照により本明細書に組み込まれる。
【0002】
(発明の分野)
本開示は、データ取り込みを駆動するためにメタデータを使用する技法に関する。
【背景技術】
【0003】
組織は、そのビジネスを実行するために、ますます大規模で複雑なデータの集まりを維持している。多くの場合、組織のデータは、複数の異なるデータソースにわたって拡散され、組織は、データ記憶及び分析を容易にするために、これらのデータをまとめる必要がある。そうするために、組織は、データが1つ以上のデータソースから、データレイク、データウェアハウス、データベース、又は別のデータ記憶システムなどの宛先に移動されるデータ取り込みプロセスを使用することができる。データ取り込みは、即時使用又はデータベースへの記憶のためにデータを取得するプロセスを含むことができる。一旦取り込まれると、データは、記憶され、分析され、又は別様に使用されることができる。しかしながら、多様なデータフォーマット及び品質を有する複数のデータソースが存在する場合、効率的な方法でデータを取り込むことは困難であり得る。
【0004】
図1を参照すると、データセットを取り込むための従来技術のシステム1が示されている。システム1は、ソースシステム3、データ処理システム5、記憶システム6、及びクライアントデバイス7、8、9を含む。ソースシステム3は、データセット2a~2cを記憶し、データセット2a~2cをデータ処理システム5に送信する。データセット2a~2cの各々は、管理されず、クレンジングされず、適合されない。データセット2a~2cの取り込みの前に、これらのデータセット2a~2cは、理想的には、管理され、クレンジングされ、適合される。しかしながら、これは達成されず、データセット2a~2cは、少なくとも以下の理由のために、最終的に、クレンジング、管理、又は適合されることなく取り込まれる。
【0005】
取り込みの前に、データセット2a~2cは、理想的には、様々なビジネス要件及びビジネスルールに準拠する。このために、最終的に失敗したビジネスユーザ4bは、クライアントデバイス7を介して、様々なビジネス要件7aを指定する。クライアントデバイス7は、これらのビジネス要件7aをクライアントデバイス8に送信する。次に、技術スタッフ4aは、ビジネス要件7aをレビューし、取り込み前にデータを変換するための機械可読ルールを含むビジネスルール7bを書き込み、データは、ビジネス要件に準拠するように変換される。クライアントデバイス8は、これらのビジネスルール7bをデータ処理システム5に送信し、データ処理システム5は、ソースデータセット2a~2cに対してこれらのビジネスルール7bを実行する。ソースデータセット2a~2cが成功裏に処理されたかどうかを識別するために、データ処理システムは、クライアントデバイス9に送信されるテスト結果9aを生成する。次に、テスタ4cは、テスト結果9aをレビューし、テストエラー9bのリストを生成する。クライアントデバイス9は、テストエラー9bをクライアントデバイス7に送信し、ここで、ビジネスユーザは、テストエラーをレビューし、テストエラーに対処するために新しい又は改訂されたビジネス要件をドラフトし、プロセス全体が再び開始する。その結果、ビジネスユーザ4bの無限サイクルがビジネス要件7aを生成し、ビジネス要件7aが技術スタッフにビジネスルールを生成するように促し、ビジネスルールが新しいテスト結果を生成し、テスタに新しい技術的エラーを識別させる。この無限サイクルのため、ソースデータセット2a~2cは、完全に管理され、クレンジングされ、適合されることは決してない。最後に、ソースデータセット2a~2cは、記憶システム6に取り込まれてもよいが(例えば、取り込まれたデータセット5a)、それらは、完全に管理され、クレンジングされ、適合される前に取り込まれる。したがって、標準化され、管理され、クレンジングされ、適合されたデータセットを効率的且つ確実に取り込むことができるシステムが必要とされている。
【発明の概要】
【課題を解決するための手段】
【0006】
一般に、第1の態様では、最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)フィールドを記述する可能性があるものとしてユーザが指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる方法であって、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、1つ以上のメタデータ項目とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のルールのうちの少なくとも1つを、メタデータの検出された項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む、方法。1つ以上のコンピュータのシステムは、動作中にシステムにアクションを実行させるソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせをシステムにインストールすることによって、特定の動作又はアクションを実行するように構成することができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実行させる命令を含むことによって、特定の動作又はアクションを実行するように構成することができる。
【0007】
一般に、第1の態様と組み合わせ可能な第2の態様では、メタデータ項目のうちの少なくとも1つは、取り出されたデータセットのフィールドのフィールド名を含む。
【0008】
一般に、第1から第2の態様のいずれかと組み合わせ可能な第3の態様では、方法はまた、少なくとも1つのメタデータ項目のラベルであって、ラベルが少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、少なくとも1つのメタデータ項目のラベルとユーザ定義名との間のマッチングを識別することと、マッチングに応じて、少なくとも1つのメタデータ項目とコンテキストメタデータ項目との間のリンクを生成することとを含む。
【0009】
一般に、第1から第3の態様のいずれかと組み合わせ可能な第4の態様では、ラベルを決定することは、少なくとも1つのメタデータ項目、又は少なくとも1つのメタデータ項目によって記述されるデータ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む。
【0010】
一般に、第1から第4の態様のいずれかと組み合わせ可能な第5の態様では、少なくとも1つのメタデータ項目のラベルは、データセット内のデータ項目のユーザ定義名から選択される。
【0011】
一般に、第1から第5の態様のいずれかと組み合わせ可能な第6の態様では、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することは、メタデータ項目を表すデータとユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む。
【0012】
一般に、第1から第6の態様のいずれかと組み合わせ可能な第7の態様では、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することは、ユーザ定義名メタデータを表すデータとメタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む。
【0013】
一般に、第1から第7の態様のいずれかと組み合わせ可能な第8の態様では、方法は、クライアントデバイスにおけるグラフィカルユーザインターフェースであって、グラフィカルユーザインターフェースは、ユーザ定義名と、ユーザ定義名のうちの少なくとも1つに関する1つ以上のルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、グラフィカルユーザインターフェースの入力部分への入力を表すデータであって、データは、ユーザ定義名のうちの少なくとも1つに関する1つ以上のルールを定義する、データを受信することとを更に含む。
【0014】
一般に、第1から第8の態様のいずれかと組み合わせ可能な第9の態様では、グラフィカルユーザインターフェースは、ユーザ定義名に割り当てられたメタデータ項目のうちの1つ以上を表示するように構成される。
【0015】
一般に、第1から第9の態様のいずれかと組み合わせ可能な第10の態様では、1つ以上のルールは、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含む。
【0016】
一般に、第1から第10の態様のいずれかと組み合わせ可能な第11の態様では、方法はまた、取り出されたデータセットにおいて、取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、少なくとも1つのフィールド名をメタデータ項目と比較して、少なくとも1つのフィールド名とメタデータ項目との間のマッチングを識別することと、メタデータ項目を記憶されたリンケージ情報と比較して、メタデータ項目に割り当てられたユーザ定義名を識別することと、ユーザ定義名を含む1つ以上のルールのうちの少なくとも1つを識別することとによって、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することを含む。
【0017】
一般に、第1から第11の態様のいずれかと組み合わせ可能な第12の態様では、技術的属性は、データセット内のデータのフォーマット及び/又は構造を含む。
【0018】
一般に、第13の態様では、最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)ユーザがフィールドを記述する可能性があるものとして指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させるためのハードウェア記憶デバイスであって、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、1つ以上のメタデータ項目とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のルールのうちの少なくとも1つを、メタデータの検出された項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイス。この態様の他の実施形態は、対応するコンピュータシステム、装置、及び1つ以上のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含み、各々が方法のアクションを実行するように構成される。
【0019】
一般に、第14の態様では、最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)ユーザがフィールドを記述する可能性があるものとして指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる電子システムであって、1つ以上の処理デバイスと、ハードウェア記憶デバイスであって、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、1つ以上のメタデータ項目とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のルールのうちの少なくとも1つを、メタデータの検出された項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイスとを含む、電子システム。この態様の他の実施形態は、対応するコンピュータシステム、装置、及び1つ以上のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含み、各々が方法のアクションを実行するように構成される。
【0020】
一般に、第15の態様は、記憶のためにデータを準備する方法は、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、メタデータ項目のうちの1つ以上とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のガバナンスルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のガバナンスルールのうちの少なくとも1つを、検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のガバナンスルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む。1つ以上のコンピュータのシステムは、動作中にシステムにアクションを実行させるソフトウェア、ファームウェア、ハードウェア、又はそれらの組み合わせをシステムにインストールすることによって、特定の動作又はアクションを実行するように構成することができる。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、装置にアクションを実行させる命令を含むことによって、特定の動作又はアクションを実行するように構成することができる。
【0021】
一般に、第15の態様と組み合わせ可能な第16の態様では、メタデータ項目のうちの少なくとも1つは、取り出されたデータセットのフィールドのフィールド名を含む。
【0022】
一般に、第15から第16の態様のいずれかと組み合わせ可能な第17の態様では、方法は、少なくとも1つのメタデータ項目のラベルであって、ラベルが少なくとも1つのメタデータ項目のセマンティックな意味を表す、少なくとも1つのメタデータ項目のラベルを決定することと、少なくとも1つのメタデータ項目のラベルとユーザ定義名との間のマッチングを識別することと、マッチングに応じて、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することとを含む。
【0023】
一般に、第15から第17の態様のいずれかと組み合わせ可能な第18の態様では、ラベルを決定することは、少なくとも1つのメタデータ項目、又は少なくとも1つのメタデータ項目によって記述されるデータ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む。
【0024】
一般に、第15から第18の態様のいずれかと組み合わせ可能な第19の態様では、少なくとも1つのメタデータ項目のラベルは、データセット内のデータ項目のユーザ定義名から選択される。
【0025】
一般に、第15から第19の態様のいずれかと組み合わせ可能な第20の態様では、メタデータ項目のうちの1つ以上とユーザ定義名との間の関連付けを識別することは、メタデータ項目を表すデータとユーザ定義名を表すデータへのポインタとを含むインデックスなどの少なくとも1つのデータ構造を生成することを含む。
【0026】
一般に、第15から第20の態様のいずれかと組み合わせ可能な第21の態様では、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することは、ユーザ定義名メタデータを表すデータとメタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む。
【0027】
一般に、第15から第21の態様のいずれかと組み合わせ可能な第22の態様では、方法は、クライアントデバイスにおけるグラフィカルユーザインターフェースであって、グラフィカルユーザインターフェースは、ユーザ定義名と、ユーザ定義名のうちの少なくとも1つに関して1つ以上のガバナンスルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、グラフィカルユーザインターフェースの入力部分への入力を表すデータであって、ユーザ定義名のうちの少なくとも1つに関して1つ以上のガバナンスルールを定義する、データを受信することとを更に含む。
【0028】
一般に、第15から第22の態様のいずれかと組み合わせ可能な第23の態様では、グラフィカルユーザインターフェースは、コンテキストメタデータ項目に割り当てられたメタデータ項目のうちの1つ以上を表示するように構成される。
【0029】
一般に、第15から第23の態様のいずれかと組み合わせ可能な第24の態様では、1つ以上のガバナンスルールは、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含み、データ品質ルールは、特定のデータの正しいフォーマットを指定し、不正フォーマットが検出された場合に特定のデータが否認されることを示し、PIIルールは、PIIの項目と、検出時にそのPIIを暗号化、トークン化、又は他の方法で難読化するためのルールとを指定する。
【0030】
一般に、第15から第24の態様のいずれかと組み合わせ可能な第25の態様では、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されたユーザ定義名に割り当てられたメタデータ項目を検出することは、取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、少なくとも1つのフィールド名をメタデータ項目と比較して、少なくとも1つのフィールド名とメタデータ項目との間のマッチングを識別することと、メタデータ項目を記憶されたリンケージ情報と比較して、メタデータ項目に割り当てられたユーザ定義名を識別することと、識別されたユーザ定義名を含む1つ以上のガバナンスルールのうちの少なくとも1つを識別することとを含む。技術的属性は、データセット内のデータのフォーマット及び/又は構造を含む。
【0031】
一般に、第26の態様では、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させるためのハードウェア記憶デバイスであって、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、メタデータ項目のうちの1つ以上とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のガバナンスルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のガバナンスルールのうちの少なくとも1つを、検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のガバナンスルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイス。この態様の他の実施形態は、対応するコンピュータシステム、装置、及び1つ以上のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含み、各々が方法のアクションを実行するように構成される。
【0032】
一般に、第26の態様と組み合わせ可能な第27の態様では、メタデータ項目のうちの少なくとも1つは、取り出されたデータセットのフィールドのフィールド名を含む。
【0033】
一般に、第26から第27の態様のいずれかと組み合わせ可能な第28の態様では、動作は、少なくとも1つのメタデータ項目のラベルであって、ラベルが少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、少なくとも1つのメタデータ項目のラベルとユーザ定義名との間のマッチングを識別することと、マッチングに応じて、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することとを更に含む。
【0034】
一般に、第26から第28の態様のいずれかと組み合わせ可能な第29の態様では、ラベルを決定することは、少なくとも1つのメタデータ項目、又は少なくとも1つのメタデータ項目によって記述されるデータ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む。
【0035】
一般に、第26から第29の態様のいずれかと組み合わせ可能な第30の態様では、少なくとも1つのメタデータ項目のラベルは、データセット内のデータ項目のユーザ定義名から選択される。
【0036】
一般に、第26から第30の態様のいずれかと組み合わせ可能な第31の態様では、メタデータ項目のうちの1つ以上とユーザ定義名との間の関連付けを識別することは、メタデータ項目を表すデータとユーザ定義名を表すデータへのポインタとを含むインデックスなどの少なくとも1つのデータ構造を生成することを含む。
【0037】
一般に、第26から第31の態様のいずれかと組み合わせ可能な第32の態様では、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することは、ユーザ定義名メタデータを表すデータとメタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む。
【0038】
一般に、第26から第32の態様のいずれかと組み合わせ可能な第33の態様では、動作は、クライアントデバイスにおけるグラフィカルユーザインターフェースであって、グラフィカルユーザインターフェースは、ユーザ定義名と、ユーザ定義名のうちの少なくとも1つに関する1つ以上のガバナンスルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、グラフィカルユーザインターフェースの入力部分への入力を表すデータであって、ユーザ定義名のうちの少なくとも1つに関する1つ以上のガバナンスルールを定義するデータを受信することとを含む。
【0039】
一般に、第26から第33の態様のいずれかと組み合わせ可能な第34の態様では、グラフィカルユーザインターフェースは、コンテキストメタデータ項目に割り当てられたメタデータ項目のうちの1つ以上を表示するように構成される。
【0040】
一般に、第26から第34の態様のいずれかと組み合わせ可能な第35の態様では、1つ以上のガバナンスルールは、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含み、データ品質ルールは、特定のデータの正しいフォーマットを指定し、不正フォーマットが検出された場合に特定のデータが否認されることを示し、PIIルールは、PIIの項目と、検出時にそのPIIを暗号化、トークン化、又は他の方法で難読化するためのルールとを指定する。
【0041】
一般に、第26から第35の態様のいずれかと組み合わせ可能な第36の態様では、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することは、取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、少なくとも1つのフィールド名をメタデータ項目と比較して、少なくとも1つのフィールド名とメタデータ項目との間のマッチングを識別することと、メタデータ項目を記憶されたリンケージ情報と比較して、メタデータ項目に割り当てられたユーザ定義名を識別することと、識別されたユーザ定義名を含む1つ以上のガバナンスルールのうちの少なくとも1つを識別することとを含む。
【0042】
一般に、第26から第36の態様のいずれかと組み合わせ可能な第37の態様では、技術的属性は、データセット内のデータのフォーマット及び/又は構造を含む。
【0043】
一般に、第38の態様では、記憶のためにデータを準備するための電子システムは、1つ以上の処理デバイスと、1つ以上のハードウェア記憶デバイスであって、外部データソースからデータセットを取り出すことと、取り出されたデータセットから、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、クライアントデバイスから、取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名を受信することと、メタデータ項目のうちの1つ以上とユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、1つ以上の動作であって、1つ以上の動作は、ユーザ定義名のうちの少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のガバナンスルールにアクセスすることと、取り出されたデータセットのうちの1つ以上の各々について、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、検出に応じて、1つ以上のガバナンスルールのうちの少なくとも1つを、検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、1つ以上のガバナンスルールのうちの少なくとも1つの適用に続いて、取り出されたデータセットを1つ以上のデータストアの中に記憶することとを含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイスとを含む。この態様の他の実施形態は、対応するコンピュータシステム、装置、及び1つ以上のコンピュータ記憶デバイスに記録されたコンピュータプログラムを含み、各々が方法のアクションを実行するように構成される。
【0044】
一般に、第38の態様と組み合わせ可能な第39の態様では、メタデータ項目のうちの少なくとも1つは、取り出されたデータセットのフィールドのフィールド名を含む。
【0045】
一般に、第38から第39の態様のいずれかと組み合わせ可能な第40の態様では、動作は、少なくとも1つのメタデータ項目のラベルであって、ラベルが少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、少なくとも1つのメタデータ項目のラベルとユーザ定義名との間のマッチングを識別することと、マッチングに応じて、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することとを更に含む。
【0046】
一般に、第38から第40の態様のいずれかと組み合わせ可能な第41の態様では、ラベルを決定することは、少なくとも1つのメタデータ項目、又は少なくとも1つのメタデータ項目によって記述されるデータ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む。
【0047】
一般に、第38から第41の態様のいずれかと組み合わせ可能な第42の態様では、少なくとも1つのメタデータ項目のラベルは、データセット内のデータ項目のユーザ定義名から選択される。
【0048】
一般に、第38から第42の態様のいずれかと組み合わせ可能な第43の態様では、メタデータ項目のうちの1つ以上とユーザ定義名との間の関連付けを識別することは、メタデータ項目を表すデータとユーザ定義名を表すデータへのポインタとを含むインデックスなどの少なくとも1つのデータ構造を生成することを含む。
【0049】
一般に、第38から第43の態様のいずれかと組み合わせ可能な第44の態様では、少なくとも1つのメタデータ項目とユーザ定義名との間のリンクを生成することは、ユーザ定義名メタデータを表すデータとメタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む。
【0050】
一般に、第38から第44の態様のいずれかと組み合わせ可能な第45の態様では、動作は、クライアントデバイスにおけるグラフィカルユーザインターフェースであって、グラフィカルユーザインターフェースは、ユーザ定義名と、ユーザ定義名の少なくとも1つに関して1つ以上のガバナンスルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、グラフィカルユーザインターフェースの入力部分への入力を表すデータであって、ユーザ定義名の少なくとも1つに関して1つ以上のガバナンスルールを定義する、データを受信することとを更に含む。
【0051】
一般に、第38から第45の態様のいずれかと組み合わせ可能な第46の態様では、グラフィカルユーザインターフェースは、コンテキストメタデータ項目に割り当てられたメタデータ項目のうちの1つ以上を表示するように構成される。
【0052】
一般に、第38から第46の態様のいずれかと組み合わせ可能な第47の態様では、1つ以上のガバナンスルールは、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含み、データ品質ルールは、特定のデータの正しいフォーマットを指定し、不正フォーマットが検出された場合に特定のデータが否認されることを示し、PIIルールは、PIIの項目と、検出時にそのPIIを暗号化、トークン化、又は他の方法で難読化するためのルールとを指定する。
【0053】
一般に、第38から第47の態様のいずれかと組み合わせ可能な第48の態様では、取り出されたデータセットにおいて、1つ以上のガバナンスルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することは、取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、少なくとも1つのフィールド名をメタデータ項目と比較して、少なくとも1つのフィールド名とメタデータ項目との間のマッチングを識別することと、メタデータ項目を記憶されたリンケージ情報と比較して、メタデータ項目に割り当てられたユーザ定義名を識別することと、識別されたユーザ定義名を含む1つ以上のガバナンスルールのうちの少なくとも1つを識別することとを含む。
【0054】
一般に、第38から第48の態様のいずれかと組み合わせ可能な第49の態様では、技術的属性は、データセット内のデータのフォーマット及び/又は構造を含む。
【0055】
この概要は、以下の発明を実施するための形態において更に説明される概念の選択を簡略化された形態で紹介するために提供される。この概要は、特許請求される主題の主要な特徴又は本質的な特徴を特定することを意図するものではない。
【0056】
1つ以上の実装形態の詳細が、添付の図面及び以下の記載において明らかにされる。本明細書に記載のその他の特徴、目的、及び利点は、記載及び図面から、並びに特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0057】
図1】データセットを取り込むための従来技術のシステムを示す。
図2A】メタデータ駆動型データ取り込みのための例示的なシステムを各々示す。
図2B】メタデータ駆動型データ取り込みのための例示的なシステムを各々示す。
図2C】メタデータ駆動型データ取り込みのための例示的なシステムを各々示す。
図2D】メタデータ駆動型データ取り込みのための例示的なシステムを各々示す。
図3】メタデータ駆動型データ取り込みのための例示的なシステムを各々示す。
図4A】ガバナンスルールの仕様及び生成のための例示的なシステムを示す。
図4B】ガバナンスルールの仕様及び生成のための例示的なシステムを示す。
図5A】連続メタデータ駆動型データ取り込みのためのシステムの例を示す。
図5B】連続メタデータ駆動型データ取り込みのためのシステムの例を示す。
図6】メタデータ駆動型データ取り込みのための例示的なプロセスである。
【0058】
同じ特徴は、参照符号によって示される場合、同じ符号及び/又は参照番号によって示されるものとする。
【発明を実施するための形態】
【0059】
本明細書で説明される技法は、1つ以上のデータソースからのデータが、データ記憶システムへの取り込みの前に管理又は他の方法で処理され得るメタデータ駆動型データ取り込みプロセスを実行する。一般に、ガバナンス(本明細書ではデータガバナンスとも呼ばれる)は、例えば、指定された品質及びセキュリティのデータ(例えば、個人識別可能情報(PII)のセキュリティ要件に準拠するデータ)を取得するために、指定された目標に従って情報及びデータの効果的且つ効率的な使用を保証するプロセス、役割、ポリシー、規格、及びメトリック(本明細書ではまとめて「プロセス」と呼ばれる)を含む。いくつかの例では、PIIは、PIIを暗号化又はトークン化することによって管理される。データガバナンスはまた、例えば、指定された品質レベル未満のデータ、異常なデータを除去するためのデータのクレンジング、及び指定されたフォーマットに準拠するようにデータをフォーマットすることを含む。特に、データソースからのデータに関連付けられた技術的メタデータ項目は、好ましくは、ガバナンスルールに関連付けられたコンテキストメタデータ項目とリンクされることができ、それによって、データ処理システムが技術的メタデータ及びコンテキストメタデータを使用して取り込みを駆動することを可能にする。一般に、コンテキストメタデータは、ビジネスコンテキストを他のデータに追加し、ビジネスマンによって作成された、及び/又はビジネスマンによって使用される情報を提供するデータを含む。例えば、コンテキストメタデータは、データ及び/又はデータセットにセマンティックな意味を与えるラベルであってもよい。技術的メタデータの処理は、データ自体を処理するよりも計算集約的ではないので、また、管理ポリシー(及びデータクオリティルール)によって最終的に否認される不完全な、破損した、又は他の低品質のデータを取り込むことに関連する計算上の浪費が防止されるので、本明細書で説明されるような管理摂取前を提供するメタデータ駆動型技法を通して、計算リソース(例えば、メモリ、処理サイクルなど)の消費は、取り込み後にデータを管理する技法に対して低減される。加えて、取り込み前のデータのガバナンスは、PIIが適切な保護なしに取り込まれることを防止し、それによってデータセキュリティ及びプライバシーを強化する。本技法はまた、以下で説明されるように、(技術的レベルではなく)コンテキストレベルで取り込み及びガバナンスルールのためのデータの指定を可能にすることによって、非技術的ユーザによる選択的取り込みを容易にする。
【0060】
データ取り込み中、データ処理システムは、複数のデータソースからデータセットを受信する。各データセットは、多くの構造化データレコード(例えば、数百万又は数十億の構造化データレコード)を含むことができる。一般に、構造化データレコードは、例えば、データレコードの様々なフィールドを指定するために、データが指定されたフォーマット又はタイプで構造化されているデータレコードである。例えば、データレコードは、名、姓、社会保障番号というデータフィールドを含み得る。一例では、これらのフィールドを有するデータレコードの内容は以下の通りである。Jane,Doe,024-206-01420。この例では、データレコードは、名、姓、及び社会保障番号のフィールド名を実際には含まない。むしろ、データは、これらのデータフィールドに従って構造化される。特に、構造は、第1のデリミタ(「,」)の前の内容の第1の部分が、第1の名フィールドに割り当てられる。第1のデリミタと第2のデリミタとの間の内容の第2の部分は、姓フィールドに割り当てられる。残りの内容は、社会保障番号フィールドに割り当てられる。
【0061】
いくつかの例では、データセットが受信されると、データ処理システムは、データセット及びそれらが含むデータレコードをデータ記憶システムに記憶することができる。次に、データ処理システムは、取り込まれたデータを分析又は他の方法で処理することができる。例えば、データ処理システムは、データガバナンスルールをデータレコードに適用して、分析及び更なる処理のためにデータレコードを準備することができる。一般に、データガバナンスは、とりわけ、可用性、有用性、一貫性、データ完全性、データセキュリティ、又はそれらの組み合わせなどの指定された目的をサポートするデータ制御の実装を通じて高いデータ品質を保証するデータ管理プロセスを指す。例えば、データ処理システムは、データを特定の(例えば、一様な)データ型又はフォーマットに再フォーマットすることなどによって、データを適合させることができる。例えば、上記の例におけるデータレコードは、フォーマット:名、姓、社会保障番号を有していたが、別の関連データレコード(例えば、異なるデータセットからの)は、フォーマット:社会保障番号、姓、名前を有してもよい。このデータを適合させるために、データ処理システムは、データレコードの一方又は両方を一様なフォーマットに再フォーマットすることができる。いくつかの例では、データ処理システムは、PIIを除去若しくは難読化すること、又は正しくない、破損した、不正にフォーマットされた、重複した、若しくは不完全なデータを修正若しくは除去することなどによって、データをクレンジングすることができる。例えば、社会保障番号はPIIとみなすことができるので、データ処理システムは、適用されたガバナンスルールによって社会保障番号フィールド内のエントリを難読化(例えばトークン化)することができる。
【0062】
いくつかの例では、データセットのフィールドは、それらが含むデータを記述するように命名されていない。例えば、社会保障番号フィールドは、「SSN」などの記述的なものではなく、「S523」と命名され得る。同様に、データセットは、名、姓、それらの組み合わせ、又は他の何らかの名前全体(例えば、製品名)のデータを含むかどうかを記述することなく、「名前」フィールドを含み得る。データセットのフィールド名及び/又はフォーマットは、同じ又は異なるデータソースから受信されたデータセットにわたって不均一であってもよい。これらの不均一性及び記述ラベルの欠如は、取り込まれたデータを効率的に管理(及び解釈)することを困難にする可能性がある。
【0063】
いくつかの例では、データ処理システムは、ガバナンス及び他の目的のためにデータセット内のフィールドのセマンティックな意味を発見するために、取り込まれたデータに対してセマンティック発見を実行することができる。そのようなセマンティック発見の例は、「Discovering a semantic meaning of data fields from profile data of the data fields」と題された米国特許出願第26/7206,261号に説明されており、その全内容は、参照することによって本明細書に組み込まれる。セマンティック発見が実行されると、取り込まれたデータは、管理(例えば、適合及びクリーニング)又は他の方法で処理することができる。取り込まれたデータに意味を提供することによって、セマンティック発見はまた、ユーザ(例えば、非技術的ユーザ)が、データを理解及び解釈し、分析のためにどのデータを使用するかを決定することを可能にする。
【0064】
データ取り込みの前述の例では、データ処理システムは、データガバナンス、セマンティック発見、及び他の処理を実行する前に、データセット及びデータレコードにアクセスし、記憶する。しかしながら、このようにしてデータを取り込むことは効率的でないか、又は望ましくない場合がある。例えば、クレンジングの前にデータを取り込むと、PIIが宛先記憶システムに記憶されることになる可能性がある。宛先記憶システムが危険にさらされている場合、PIIが一時的にしか記憶されていない場合であっても、PIIが漏洩する可能性がある。取り込み後にデータガバナンスを実行することはまた、取り込まれたデータが最終的に否認される場合(例えば、不完全である、破損している、又はそうでなければ低いデータ品質を有するため)、計算リソース(例えば、メモリ、処理サイクルなど)の浪費をもたらし得る。更に、データが取り込まれた後にのみセマンティック発見を実行することは、非技術的ユーザが、利用可能なデータを理解し、分析に必要なデータのサブセットを選択的に取り込むことを困難にする可能性がある。
【0065】
本明細書で説明される技法は、メタデータ駆動型データ取り込みプロセスを実行して、データが取り込まれる前にデータを管理するか又は他の方法で処理する。いくつかの例では、技術的メタデータは、1つ以上のソースシステムから読み取られるか、又はアクセスされる。一般に、技術的メタデータは、データセット内のフィールドを特徴付ける技術的属性を記述し、例えば、その技術的メタデータは、データセット内のデータのフォーマット及び/又は構造に関する情報を含む。一般に、技術的属性は、データのフォーマット及び/又は構造を指定する。技術的メタデータの例は、とりわけ、レコードフォーマット若しくは構造、フィールド名、データ型、属性、アクセス許可、変換ルール、バックアップルール、データモデル、データ系統、マッピングドキュメンテーション、又はそれらの組み合わせを含む。技術的メタデータは、技術的メタデータの意味(例えば、ビジネスの意味)を指定するコンテキストメタデータと(例えば、セマンティック発見を介して)自動的にマッチングされる。次に、このコンテキストメタデータは、実際の取り込みの前にデータがどのように管理されるか(例えば、クレンジングされ、適合されるか)を指定するデータガバナンスルールを定義する際に使用される。このようにして、技術的メタデータは、データ処理システムに、取り込まれるデータのフォーマット及び/又はタイプ(例えば、構造)の計算上効率的なデータカタログを提供し、技術的メタデータとマッチングするコンテキストメタデータは、取り込みの前にデータに適用されるデータガバナンスルールを定義するので、メタデータは取り込みプロセスを駆動している。このカタログは、技術的メタデータの処理が、データ自体を分析するのに必要なリソースの量よりも少ない計算リソース(例えば、メモリ、処理サイクルなど)を消費するので、計算効率がより高い。加えて、取り込み前のデータのガバナンスは、PIIが適切な保護なしに取り込まれることを防止し、ガバナンスポリシーによって最終的に否認される不完全な、破損した、又は他の低品質データを取り込むことに関連する計算上の浪費を低減する。本明細書で説明される技法はまた、(技術的ではなく)コンテキストレベルで取り込み及びガバナンスルールのためのデータの指定を可能にすることによって、非技術的ユーザによる選択的取り込みを容易にする。
【0066】
図2Aを参照すると、システム10は、データ取り込みシステム12、ソースシステム14、クライアントデバイス26、及び記憶システム23を含む。この例では、図1に関して説明した無限サイクルは存在しない。むしろ、システム10は、以下のように、効率的且つ確実にデータを取り込む。したがって、別個のビジネスユーザ及びテスタを必要としない。システム10の効率のために、ビジネスユーザ及びテスタは、ビジネスユーザ/テスタ13に結合される。更に、システム10は、信頼性があり、正確であり、ビジネスルールを生成するための専用テスタ及び技術スタッフの必要性をなくす。実際、このシステムはもはや技術スタッフ15に依存しない。
【0067】
一般に、データ取り込みシステム12は、データ取り込みを実行するデータ処理システムである。データ取り込みシステム12は、ハーベスティングエンジン18、リンケージエンジン24、及び標準化エンジン26を含む。ハーベスティングエンジン18は、ソースシステム14から技術的メタデータ22を読み取るか、又は他の方法で受信し、技術的メタデータ22をリンケージエンジン24に渡す。コンテキストメタデータ20は、(例えば、ユーザによって)クライアントデバイス26に入力され、クライアントデバイス26は、コンテキストメタデータ20をデータ取り込みシステム12のリンケージエンジン24に送信する。リンケージエンジン24は、技術的メタデータ22及びコンテキストメタデータ20を受信し、技術的メタデータ22の項目とコンテキストメタデータ20の項目との間の関係又はリンクを(例えば、セマンティック発見を通じて)識別するためのプログラム命令及び/又は実行可能論理を含む。一般に、リンク(本明細書ではリンケージとも呼ばれる)は、例えばデータ項目間の関係を指定する値を有するデータ記憶システムに記憶されたデータ構造によって表される。ポインタはリンクの一例である。この例では、標準化エンジン26は、ソースシステム14から取り出されたデータ(例えば、データセット又はデータレコード)に対してデータ取り込みを実行する。リンケージエンジン24から出力されたリンクを使用して、標準化エンジン26は、リンク内で参照されるコンテキストメタデータに関連付けられたガバナンスルールを識別し、ソースシステム14から取り出されたデータの取り込みの前にそれらのガバナンスルールを適用し、データは、1つ以上の構造化データレコードを含むことができるが、他のデータフォーマット(例えば、フラットファイル、スプレッドシートファイルなど)をいくつかの実装形態で使用することができる。
【0068】
図2Bを参照すると、ハーベスティングエンジン18は、ソースシステム14からデータセット34a~34cの技術的メタデータ22を取り出す。ハーベスティングエンジンはまた、他のソースデータセット、例えば、データセット37に対する他の技術的メタデータ21を取り出す。例えば、ソースシステム14は、それが含むデータ(例えば、データセット14a~14c)の技術的メタデータを記憶することができ、技術的メタデータ22をデータ取り込みシステム12のハーベスティングエンジン18に送信することができる。いくつかの例では、ソースシステム14及び/又はハーベスティングエンジン18は、データセット34a~34cのフォーマット及び/又は他の技術的メタデータ22を発見するために、発見プロセス(例えば、レコードフォーマット発見)を実行することができる。そのような発見プロセスの例は、「Managing record format information」と題された米国特許出願第12/2065,0206号に説明されており、その全内容は、参照することによって本明細書に組み込まれる。次に、ハーベスティングエンジン18は、技術的メタデータ22をリンケージエンジン24に送信する。
【0069】
クライアントデバイス16は、コンテキストメタデータ20をリンケージエンジン24に送信する。この例では、ビジネスユーザ/テスタが、GUIなどを介して、コンテキストメタデータ20をクライアントデバイス16に入力する。前述したように、コンテキストメタデータ20は、ユーザ指定のメタデータ(ユーザ定義名など)及び/又は対応する技術的メタデータ22に特定の意味(例えば、ビジネスの意味又は素人の意味)を提供する他のメタデータを含む。リンケージエンジン24は、技術的メタデータ22及びコンテキストメタデータ20を分析及び解析して、メタデータ項目間のリンク23(又は関連付け23若しくはリンケージ23)を識別する。これらのリンケージは、データからセマンティックな意味を識別するためにデータがプロファイリングされるプロセスであるセマンティック発見を通じて識別される。データのセマンティックな意味が識別されると、セマンティックな意味及びコンテキストメタデータの類似性又は同一性を識別することができる。
【0070】
好ましくは、リンク23は、技術的メタデータ22とコンテキストメタデータ20との間の関係を指定するか、又は他の方法で表すインデックスなどのデータ構造として存在する。例えば、リンク23は、技術的メタデータ22のどの項目がコンテキストメタデータ20の項目に対応するか、又はそうでなければマッピングするかを指定することができる。例えば、リンケージエンジン24は、技術的メタデータ22及び/又はコンテキストメタデータ20に対してセマンティック発見を自動的に実行して、技術的メタデータ22の項目とコンテキストメタデータ20の項目との間の関係又はリンケージを識別する。例えば、リンケージエンジン24は、技術的メタデータ22を(単独で、又は技術的メタデータ22に関連付けられた実際のデータセット34a~34cのサンプルと組み合わせて)処理して、技術的メタデータ22の各項目についてのセマンティックな意味を識別することができる。次いで、リンケージエンジン24は、技術的メタデータ22の各項目について識別された意味及び/又は他の情報をコンテキストメタデータ20と比較して、メタデータ項目間のリンク23を識別することができる。データ処理システムが着信データセットを処理しているとき、データ処理システムは、データセット内のフィールドの値にアクセスして、値がどのように処理されるか、すなわち、どのガバナンスルールによって値が処理されるかを決定する必要はない。むしろ、データ処理システムは、単にインデックス内のリンク23にアクセスし、その後、データを処理するためのガバナンスルール(例えば、データ品質ルール、PIIルールなど)にアクセスすることができる。したがって、データ処理システムは、フィールドの値を処理するための適切なガバナンスルールを選択しているので、データ処理システムは、データセットをより効率的に処理することができる。これは、コンピューティングリソースの消費を低減する。
【0071】
この例では、ソースシステム14は、データ内容35を含むソースデータセット34aをハーベスティングエンジン18に送信する。この例では、内容35は、列35a~35c及び行35d~35gを有するテーブルを含む。列35a及び行35dによって定義されるセルは、社会保障フィールドのフィールド名である。列35k及び行35d~35gによって定義されるセルの内容は、ソースシステム14に記憶された実際の社会保障番号である。この例では、社会保障フィールド名は「S523」である。この例では、社会保障フィールド名は非常に技術的であり、更なるコンテキストがない非技術的ユーザには意味がない。列35b及び行35dによって定義されるセルは、名フィールドであり、列35b及び行35d~35gによって定義されるセルの内容は、ソースシステム14に記憶された実際の名の文字列である。この例では、名フィールドの名前は「F137」である。社会保障フィールド名と同様に、名フィールド名も、ビジネス又は非技術的ユーザにとって意味がない。データセット14の行35eは、姓を提供する。このフィールドの名前は、列35c及び行35dによって定義されるセルに示されるように、「L243」である。他のフィールド名と同様に、このフィールド名も特に意味を持たない。この最後の姓フィールドの内容は、列35eから行35d~35gによって定義されるセルによって示される。
【0072】
ハーベスティングエンジン18は、ソースデータセット34aの技術的メタデータ22を発見するために発見プロセスを実行する。いくつかの例では、ソースシステム14は、データセット34aに関する技術的メタデータ(例えば、レコードフォーマット、アクセスパラメータなど)を記憶し、ハーベスティングエンジン18は、入力としてソースシステム14から技術的メタデータ22を受信する。いくつかの例では、ハーベスティングエンジン18は、データセット34aのデータのサンプル(例えば、内容35又はその一部)を受信し、データセット34aのフォーマット及び/又は他の技術的メタデータ22を決定するためにデータを分析する。例えば、ハーベスティングエンジン18は、サンプルデータを解析又は他の方法で分析して、データセット34aに関する他の技術的メタデータ22の中でも、文字セット、レコードフォーマットタイプ、レコードフォーマット自体、又はそれらの組み合わせを決定することができる。いくつかの例では、ハーベスティングエンジン18は、技術的メタデータ22を検証するために、データセット34aについて決定された技術的メタデータ22を、ソースシステム14から受信された技術的メタデータと比較することができる。いくつかの例では、ハーベスティングエンジン14は、検証及び/又は調整のために、決定されたレコードフォーマット(又は他の技術的メタデータ22)をユーザに提示することができる。
【0073】
発見プロセスに基づいて、ハーベスティングエンジン18は、技術的メタデータ22を構成する技術的メタデータの複数の項目22a~22cを生成する。この例では、項目222aは、データセット34aの列35a、行35dによって定義されるセルによって指定されるフィールド名(例えば、「S523」フィールド名)を表す。項目22aはまた、この例では「10進数」データ型である、そのフィールドのデータ型を表す。項目222bは、データセット34aの列35b、行35dによって定義されるセルによって指定されるフィールド名(例えば、「F137」フィールド名)を表す。項目22bはまた、そのフィールドのデータ型を表す。この例では、項目222bのデータ型は「文字列」データ型である。項目222cは、データセット34aの列35c、行35dによって定義されるセルによって指定されるフィールド名(例えば、「L243」フィールド名)を表す。項目22bはまた、そのフィールドのデータ型を表す。この例では、データ型は「文字列」データ型である。ハーベスティングエンジン18は、技術的メタデータ22をリンケージエンジン24に送信する。
【0074】
この例では、コンテキストメタデータ20は項目20a~20dを含む。項目20aは、「SSN」の値を含む。項目20bは、「名」の値を含む。項目20cは、「姓」の値を含む。項目20dは、生年月日(「DOB」)の値を含む。いくつかの例では、コンテキストメタデータ20の項目20a~20dの各々は、クライアントデバイス16のユーザによって指定される。例えば、クライアントデバイス16のユーザは、コンテキストメタデータ20の項目20a~20dを(例えば、GUIを介して)指定して、ビジネス又は素人の用語で、システム10によって取り込まれる(又は取り込みのために利用可能にされる)べきデータを示すことができる。ユーザ13は、以下で詳細に説明するように、ガバナンスルールを定義するためにコンテキストメタデータ20を使用することもできる。
【0075】
本明細書で説明するように、リンケージエンジン24は、技術的メタデータ22の項目22a~22cとコンテキストメタデータ20の項目20a~20cとの間のリンクを生成する。いくつかの例では、リンケージエンジン24は、技術的メタデータ22のどの項目22a~22cがコンテキストメタデータ20の項目20a~20dに対応するかを識別するために、セマンティック発見プロセスを実行する。例えば、リンケージエンジン24は、技術的メタデータ22の項目22a~22c(例えば、フィールド名、データ型、データセット名など)、及び/又は技術的メタデータ22の項目22a~222cに関連付けられた実際のデータのサンプル(例えば、データセット34aの内容35)を処理して、技術的メタデータ22の項目22a~22cによって表されるフィールドのセマンティックな意味を識別することができる。そうするために、リンケージエンジン24は、1つ以上の分類器を実行して、技術的メタデータ22の項目22a~22cによって表される各フィールドのラベルを識別することができる。いくつかの例では、ラベルは、コンテキストメタデータ20の項目20a~20dから選択することができ、それによって、技術的メタデータ22の項目22a~22cをコンテキストメタデータ項目20a~20dとマッチングする。他の例では、ラベルは、ラベルの辞書から選択することができ、確証プロセスを使用して、技術的メタデータ項目22a~22cに割り当てられたラベルをコンテキストメタデータ20の項目20a~20d(又はコンテキストメタデータ20の項目20a~20dに関連付けられたラベル)に関連付けることができる。
【0076】
一般に、リンケージエンジン24は、技術的メタデータ項目22a~22c及び/又は技術的メタデータ22の項目22a~22cによって表されるフィールドの値に対して1つ以上の分類子を実行して、フィールドにどのようにラベル付けするかを決定することができる。分類器の例は、とりわけ、キーワードマッチング、ファジーマッチング、パターンマッチング、フィンガープリンティング、又はそれらの組み合わせを含むことができる。いくつかの例では、リンケージエンジン24は、フィールド名(例えば、技術的メタデータ22の項目22a~222cによって指定されたフィールド名)をラベル(例えば、コンテキストメタデータ20の項目20a~20dによって指定されたラベル、又はラベルの辞書からの別のラベル)とマッチングするためのロジック又は他のプロセスを実行することによって、キーワードマッチングを実行する。例えば、リンケージエンジン24が、フィールド名「姓」を含む技術的メタデータ22の項目22a~22cを受信した場合、リンケージエンジン24は、コンテキストメタデータ20内にマッチングする項目20a~20d(例えば、ラベル)があるかどうかをチェックすることができる。マッチングがある場合、リンケージエンジン24は、技術的メタデータ22の項目とコンテキストメタデータ20の項目との間のリンクを生成することができる。他のマッチング戦略は、ファジー論理、シノニム、又は正確なマッチよりも少ないマッチを識別するための他のプロセスを使用するマッチングを含むことができる。例えば、2つの名前の間にファジーマッチとして適格であるのに十分なレベルの類似性があると決定された場合、リンケージエンジン24は、技術的メタデータ22の項目22a~22cによって指定されたフィールド「l_name」を、コンテキストメタデータ項目20a~20dによって指定されたラベル「姓」に関連付けることができる。
【0077】
いくつかの例では、リンケージエンジン24は、マッチングを識別するために、フィールド名(又は他の技術的メタデータ)に加えて、又はその代わりに、技術的メタデータ22の項目22a~22cに関連付けられたデータ値を評価することができる。例えば、リンケージエンジン24は、「st」、「ln」、「ave」、「pl」、「ct」などの通り名の異なる略語を含むラベル「通り名」を(例えば、コンテキストメタデータ20から)受信することができる。次いで、リンケージエンジン24は、それらの略語のいずれかが、技術的メタデータ22の項目22a~22cによって表されるフィールド内のフィールド名及び/又はデータ内に含まれているかどうかを決定するためのチェックを実行することができる。略語のうちの1つ以上が、フィールド名及び/又は技術的メタデータ項目によって表されるフィールド内のデータに含まれる場合、リンケージエンジン24は、技術的メタデータのその項目と「通り名」ラベルに関連付けられたコンテキストメタデータ項目との間のマッチング(又はマッチングの確率)を識別することができる。他の技術的メタデータ22(例えば、データ型)及び/又はコンテキストメタデータ20も、マッチングを識別するために使用することができる。
【0078】
いくつかの例では、リンケージエンジン24は、パターンマッチングを使用して、技術的メタデータとコンテキストメタデータとの間のリンケージを識別することができる。使用されるパターンマッチングのタイプは、技術的メタデータ22において指定されたデータ型に基づいて決定することができる。例えば、リンケージエンジン24は、技術的メタデータ22の項目22a~22cが数値データ(データフィールド内の桁数を更に示すことができる)を有するフィールドを表すと決定することができる。この例では、リンケージエンジン24は、フィールドのデータに対して1つ以上のパターンテストを実行して、フィールドが例えば社会保障番号を表すかどうかを決定することができる。例えば、リンケージエンジン24は、フィールドのためのデータのサンプルを処理して、それがパターン###-##-###(デリミタの変動を伴う)に従うかどうかを決定することができる。同様に、リンケージエンジン24は、データを社会保障番号の既知の特徴(例えば、9桁)又は例(例えば、既知の社会保障番号リスト)と比較することによって、フィールドのデータが、例えば、社会保障番号の特定のフィンガープリントを含むかどうかをチェックすることができる。この分析に基づいて、リンケージエンジン24は、フィールドが社会保障番号フィールドであるかどうかを決定することができ、技術的メタデータ22の対応する項目22a~222cを、ラベル「SSN」に関連付けられたコンテキストメタデータ20の項目20a~20dとリンクすることができる。
【0079】
いくつかの例では、リンケージエンジン24は、異なる分類器からの結果を比較又は組み合わせて、技術的メタデータとコンテキストメタデータとの間の適切なリンクを生成することができる。例えば、分類器の各々は、分析される技術的メタデータ22の項目22a~22cに対して1つ以上の提案されるラベルを出力することができる。提案された各ラベルは、スコア及び/又は重み値と関連付けることができる。各ラベルのスコア及び/又は重みは、フィールドのセマンティックな意味を識別するものとして特定のラベル(例えば、コンテキストメタデータ20の特定の項目20a~20d)を提案するためにリンケージエンジン24によって使用されることができ、それに応じてリンクを生成することができる。いくつかの例では、リンケージエンジン24は、前のデータセット(例えば、特定のソースから)又は同じデータセットの前の反復の分類が記憶され、後続の反復のためにどの分類子が選択されるか、及びそれらの後続の反復の確率値がどのように決定されるかに影響を及ぼす機械学習ロジックを実行することができる。機械学習論理は、データセット上で訓練され、訓練データを使用して開発された重みを適用して、データセットの新しいデータを分類し得る。いくつかの例では、分類結果を閾値レベルの確実性で確証することができない場合、リンケージエンジン24は、(例えば、クライアントデバイス16の)ユーザに、ラベルを手動で検証し、且つ/又は技術的メタデータとコンテキストメタデータとの間のリンクを識別するように促すことができる。このようにして、リンケージエンジンは、単一の分類器に依存するプロセスに対して、セマンティック発見及びリンケージプロセスの精度を改善することができる。
【0080】
特に、セマンティック発見を実行した結果に基づいて、リンケージエンジン24は、技術的メタデータ22とコンテキストメタデータ20との間のリンク48aを生成する。リンク48aは、技術的メタデータ22とコンテキストメタデータ20との間のセマンティックな意味関係の存在を指定する。一般に、セマンティックな意味関係は、あるデータ項目が別のデータ項目にセマンティックな意味を提供することを指定する。リンク48b、48c、48dは、それぞれ、技術的メタデータ22の項目22a~22cとコンテキストメタデータ20の項目20a~20cとの間のセマンティックな意味関係を指定する。特に、リンク48bは、コンテキストメタデータ20の項目20aが技術的メタデータ22の項目22aに対してセマンティックな意味を提供することを指定する。リンク48cは、コンテキストメタデータ20の項目20bが、技術的メタデータ22の項目22bに対するセマンティックな意味を提供することを指定する。リンク48dは、コンテキストメタデータ20の項目20cが、技術的メタデータ22の項目22cに対するセマンティックな意味を提供することを指定する。リンク48a~48dの各々は、対応する技術的メタデータ及びコンテキストメタデータと関連付けて記憶システムに記憶することができる。いくつかの例では、技術的メタデータ22及びコンテキストメタデータ20の各々(並びにそれらの対応する項目22a~22c、20a~20c)は、データ構造のオブジェクト又は要素として表され、リンク48a~48dの各々は、対応するメタデータとメタデータ項目との間のポインタとして表される。
【0081】
リンケージエンジンの機能の別の例を以下に提供する。この例では、リンケージエンジン24は、コンテキストメタデータ項目20a~20dとも呼ばれるコンテキストメタデータ20a~20dにアクセスし、且つ/又はそれを記憶する。リンケージエンジンはまた、本明細書で説明されるように、メタデータ又はメタデータによって表されるデータに対してセマンティック発見を実行するためのセマンティック発見エンジン(図示せず)を含む。
【0082】
ソースシステム14は、ソースデータセット34a~34cのうちの1つをハーベスティングエンジン18に送信する。送信されたデータセット34aの内容は、データセット34aの内容35として前に参照されたテーブル35に示されている。
【0083】
一例では、ハーベスティングエンジン18は、ソースデータセット34aの内容を表すテーブル35を受信し、本明細書で説明するように、そのテーブル35の内容に対してデータフォーマット発見を実行する。これに応じて、ハーベスティングエンジン18は、技術的メタデータ22をリンケージエンジン24に出力する。この例では、技術的メタデータ22は、項目22a~33bを含む。技術的メタデータ項目22aは、テーブル35に示す社会保障フィールド「S523」のフィールド名及びデータ型を表す。技術的メタデータ項目22bは、テーブル35に示す名フィールド「F137」のフィールド名及びデータ型を表す。技術的メタデータ項目22cは、テーブル35に示される姓フィールド「L243」のフィールド名及びデータ型を表す。この例では、リンケージエンジン24は、セマンティック発見を実行するセマンティック発見エンジンを含む。セマンティック発見エンジンは、入力として、技術的メタデータ22及びコンテキストメタデータ20を受信する。セマンティック発見エンジンは、技術的メタデータ22の項目についてのセマンティックな意味を決定するために、本明細書で説明されるように、受信されたメタデータを処理する。例えば、技術的メタデータ22の項目22aを受信すると、セマンティック発見エンジンは、項目22a及び/又は項目22aが表すフィールドの実際のデータのサンプルを処理して、メタデータ項目22aのセマンティックな意味(項目22aが表すフィールドのセマンティックな意味と同じであり得る)を決定する。この例では、技術的メタデータ22の項目22aは、10進数データ型を有する「S523」という名前のフィールドを表す。このフィールド名は技術的且つ非記述的であるので、セマンティック発見エンジンは、エンジンがフィールドに対する既存の(例えば、記憶された)ラベルを認識していない限り、セマンティックな意味を決定するためにフィールド「S523」に関連付けられたデータを考慮し得る。例えば、セマンティック発見エンジンは、(例えば、技術的メタデータ22に含まれるアクセスパラメータを使用して)テーブル35からフィールド「S523」のデータのサンプルにアクセスすることができる。一旦アクセスされると、セマンティック発見エンジンは、メタデータ22の項目22aに対する1つ以上のラベルを識別するために、1つ以上の分類器を使用してデータを処理することができる。いくつかの例では、ラベルは、コンテキストメタデータ20a~20dの項目から選択される。例えば、セマンティック発見エンジンは、データに対してパターンマッチング技法を実行して、データが一般的に、社会保障番号を示すパターン###-##-####に従うことを決定することができる。この分析に基づいて、セマンティック発見エンジンは、コンテキストメタデータ20a~20dの項目からラベル「SSN」を、技術的メタデータ22の項目22aのセマンティックな意味として選択することができる。
【0084】
いくつかの例では、セマンティック発見エンジンは、技術的メタデータ22の項目22aに対するラベルを選択するときに、コンテキストメタデータ20a~20dに含まれるラベルに限定されない。この例では、セマンティック発見エンジン(又はリンケージエンジン24)は、マッチングプロセスを実行して、技術的メタデータ22の項目22aに割り当てられたラベルをコンテキストメタデータ20a~20dの項目とマッチングすることができる。いくつかの例では、セマンティック発見エンジンは、コンテキストメタデータ20a~20dの項目に対してセマンティック発見プロセスを実行して、技術的メタデータ項目についてのラベルとマッチングさせることができるコンテキストメタデータ20a~20dの項目についての1つ以上のラベルを識別する。いくつかの例では、セマンティック発見エンジンは、ユーザに(例えば、グラフィカルユーザインターフェースを介して)メタデータ項目に対するラベルを選択、調整、又は検証するように促す。
【0085】
セマンティック発見エンジンは、同様のセマンティック発見プロセスを実行して、他のメタデータ項目のセマンティックな意味を発見することができる。セマンティック発見エンジンは、技術的メタデータ22の項目22bを処理して、それらが名フィールドを表すことを決定することができる。例えば、セマンティック発見エンジンは、例えば、データを名の既知のリストと比較して、項目が名フィールドを表すことを決定することによって、技術的メタデータのそれぞれの項目に関連付けられたデータのサンプルを処理することができる。この分析に基づいて、セマンティック発見エンジンは、技術的メタデータ22の項目22bに対するセマンティックな意味として、ラベル「名」(例えば、コンテキストメタデータ20a~20dの項目から)を選択することができる。セマンティック発見エンジンはまた、技術的メタデータ22の項目22cを同様に処理して、それが姓フィールドを表すことを決定することができる。例えば、セマンティック発見エンジンは、技術的メタデータのそれぞれの項目に関連付けられたデータのサンプルを、例えば、データを姓の既知のリストと比較することによって処理して、項目が姓フィールドを表すことを決定することができる。この分析に基づいて、セマンティック発見エンジンは、技術的メタデータ22の項目22cに対するセマンティックな意味として、ラベル「姓」(例えば、コンテキストメタデータ20a~20dの項目から)を選択することができる。リンケージ23を生成した後、リンケージエンジン24は、リンケージ23を標準化エンジン26に送信し、標準化エンジン26は、リンケージ23をメタデータと組み合わせて使用して、取り込みを駆動する。
【0086】
図2Cを参照すると、システム10は、ガバナンスルールの仕様及び生成を提供する。この例では、クライアントデバイス16は、ペイン30及び部分34を有するグラフィカルユーザインターフェース(GUI)27をレンダリングする。ペイン30は、コンテキストメタデータ、例えば、リンケージ23を生成する際に使用されるコンテキストメタデータによって指定される名前を表示する。この例では、ペイン30内に表示されるコンテキストメタデータは、コンテキストメタデータ20a~20dに対応する。部分34は、ガバナンスルールを定義するために、テーブル形式などの入力部分を表示する。このテーブル内のセルは編集可能であり、ユーザが値及び/又はデータを入力してガバナンスルールを定義することを可能にする。この例では、ガバナンスルールは、行32aに示すように、PIIルールを含む。一般に、PIIルールは、PIIの項目と、検出時にそのPIIを暗号化、トークン化、又は他の方法で難読化するためのルールとを指定する。この例では、行32aに示されるルールは、社会保障番号データ(PIIの一例)が検出時にトークン化される(値/フォーマットフィールド内の「レベル1」によって表される)ことを指定する。行32bは、社会保障番号データの正しいフォーマットを指定し、不正フォーマットが検出された場合にデータを否認すべきであることを示すデータ品質ルールを示す。この例では、データが否認されるとき、データは取り込まれない。部分34に示されるテーブルが完成すると、ユーザは、クライアントデバイス16に、部分34に入力されたルールを指定するデータをデータ取り込みシステム12に送信させるコントロール30aを選択する。この送信されたデータは、ガバナンスルール25と呼ばれる。
【0087】
ここで、ガバナンスルール25の内容について説明する。この例では、ガバナンスルール25は、行25b~25c及び32a、32bを有するテーブル25aを含む。各行は、特定のルールを指定する。具体的には、行25bは、取り込まれたデータが1年間保持されることを指定する保持ポリシーを含む。行25cは、データが毎日取り込まれることを指定する取り込み頻度ルールを含む。行32aは、PIIルールを含む。行32bは、データ品質ルール1を含む。
【0088】
この例では、標準化エンジン26は、図示されていないが、例えば、ローゾーン及びクレンジング済みゾーンを含む様々なゾーンを有する。一般に、ローゾーンは、データをそのロー形式で(例えば、取り込み前に)記憶するための記憶システム(例えば、標準化エンジン26の内部にある、又は標準化エンジン26と通信するように構成された専用データリポジトリ又は他のハードウェア記憶デバイス)の一部である。一般に、クレンジング済みゾーンは、例えば、PII情報がトークン化、暗号化、又は他の方法で難読化され、データ品質ルールが適用されたデータを記憶するための記憶システム(ローゾーンの記憶システムと同じであっても異なっていてもよい)の別の部分である。いくつかの例では、標準化エンジン26は、異なる目的を果たすより少ない又は追加のゾーンを含むことができる。
【0089】
図2Dを参照すると、標準化エンジン26は、データセット35、37を受信し、その各々は、クレンジングされておらず、適合されておらず、管理されていない。これらのデータセットは、異なるフィールドなどを有する点で異なる。データセット35は、社会保障フィールド、名、及び姓をそれぞれ表す列35a~35cを含む。データセット37は、社会保障番号、姓、及び生年月日を表す列37a、37b、37cを含む。この例では、標準化エンジン26は、社会保障番号がデータレコードを一意に識別するキーであることを識別する。いくつかの例では、標準化エンジン26は、キーのデータ構造(例えば、フォーマット及び/又はデータ型)を指定するデータで事前にプログラムされる。この例では、標準化エンジン26は、例えば、標準化エンジン26が、いつデータが社会保障番号であり、したがってキーであるかを識別することを可能にするために、社会保障番号の構造及びフォーマットを指定するデータで事前にプログラムされる。すなわち、データセット35、37の各々は、キー付きデータセット、例えば、データを一意に識別し、したがってキーとして働くフィールドに関連付けられた構造化データである。標準化エンジン26は、同じキーに関連付けられたデータが一緒に結合されることを意味するキー上でデータセットを結合する。この例では、標準化エンジン26は、データセット35内の行35dのキー値(例えば、社会保障番号050-30-3421)がデータセット37内の行37dのキー値(例えば、社会保障番号245-23-3531)とマッチングすることを識別する。マッチングキーに基づいて、標準化エンジン26は、以下で更に詳細に説明するように、行35d、37dの内容を組み合わせ、リンケージ23を使用して、行35d、37dの組み合わされた内容にどのガバナンスルールを適用すべきかを識別し、ルールを適用して、標準化データセット39の行39hに示されるように、社会保障番号に結合される管理され、クレンジングされ、適合されたデータを生成する。データセット39は、列35a、37aの内容の管理された(例えばトークン化された)バージョンに対応する列39dを含む。データセット39は、列35bの内容の管理されたバージョンに対応する列39eを含む。データセット39は、列37bの内容の管理されたバージョンに対応する列39fを含む。データセット39は、列37cの内容の管理されたバージョンに対応する列39gを含む。
【0090】
図3を参照すると、システム10は、メタデータ駆動型取り込みの一例を示す。データセット34aは、標準化エンジン26に送信されるか、そうでなければ標準化エンジン26によってアクセスされる。受信されると、標準化エンジン26は、データセット34aをローゾーンに記憶する。この例では、記憶されたデータセット34aは、ローデータと、データセットが取り込まれた時間を示すタイムスタンプとを含む。標準化エンジン26は、リンケージ23及びガバナンスルール25を記憶する。データセット34aの受信に応じて、標準化エンジン26は、どのガバナンスルール25をデータセット34aに適用すべきかを識別する。特に、標準化エンジン26は、データセット34aを分析して、データセット34aに含まれるフィールド名(又は他のメタデータ)を識別する。次に、標準化エンジン26は、識別されたフィールド名をリンケージ23と比較して、識別されたフィールド名とリンケージ23に含まれる技術的メタデータ項目との間のマッチングを識別する。標準化エンジン26は、リンク23を使用して、技術的メタデータの識別された項目とリンクされたコンテキストメタデータ項目(ユーザ定義名など)を識別する。標準化エンジン26は、ガバナンスルール25を解析して、どのガバナンスルール25がコンテキストメタデータの識別された項目を参照するかを識別する。識別されたガバナンスルール25について、標準化エンジン26は、データセット34a内の適切なデータ(例えば、ガバナンスルールによって参照されるコンテキストメタデータ項目にリンクされる技術的メタデータの識別された項目によって表されるフィールド内のデータ)に対してそれらのガバナンスルール25を実行するタスクを生成する。ガバナンスタスクの実行の出力はデータセット39であり、これは、ガバナンスルール25に従ってクレンジングされているか、さもなければ管理されている。例えば、データセット39のセル39a、39cに示されるように、社会保障番号フィールドに関連付けられた全てのPII情報は、(例えば、テーブル25aの行32aに示されるPIIルールに従って)トークン化されている。加えて、データセット39のセル39bに示されるように、社会保障番号フィールド内の値のうちの1つは、ガバナンスルール25に含まれるデータ品質ルール(例えば、行32に示されるルール)に失敗している。したがって、セル39bに含まれるデータ値、又はセル39bを含む行又はレコード全体は、取り込みの前に除去される。
【0091】
この例では、標準化エンジン26は、データセット又はデータレコードから、データセット(又はデータレコード)の技術的メタデータ(及びフィールドの関連内容)の1つ以上の項目を識別する技術的メタデータ識別プロセスを実行する。例えば、データセット34aに対して、プロセスは、セル35z内のフィールド名「S523」が技術的メタデータ項目を表すことを、例えば、データセット34aに含まれる技術的メタデータにアクセスすることによって、又はそうでなければ、データセット34aに含まれるフィールド名を分析することによって識別する。プロセスはまた、セル35w~35yがフィールド名「S523」を有するフィールドの値を表すことを識別する。すなわち、プロセスは、セル35zがフィールドの名前に対応する技術的メタデータを表し、セル35w~35yがセル35zに示される技術的メタデータによって表されるフィールドの値を表すことを識別する。標準化エンジン26は、セル35zに含まれるフィールド名を使用して、コンテキストメタデータのどの項目がセル35z内で表される技術的メタデータにリンクされているかを識別する。標準化エンジン26は、コンテキストメタデータ20(図2A)の項目20aがセル35z内に示される技術的メタデータの値に対応することを識別する。技術的メタデータ22(図2A)の項目22aは、セル35zに示される技術的メタデータの値に対応する。これに基づいて、標準化エンジン26は、技術的メタデータ22の項目22aがリンク23dを介してコンテキストメタデータ20の項目20aにリンクされていることを識別する。この例では、リンク23dは、データ構造間の関連付け又は参照である。したがって、標準化エンジン26は、セル35zに示され、項目22aに対応する技術的メタデータがコンテキストメタデータ20aの項目にマッピングされることを識別する。コンテキストメタデータ20aの項目を識別すると、標準化エンジンは、どのガバナンスルール25がコンテキストメタデータ20aの項目を参照し、したがって、セル35w~35yの内容に対して実行されるべきかを識別する。標準化エンジン26は、行32a、32bに表されるルール(本明細書ではルール32a、32bとも呼ばれる)がそれらの仕様にコンテキストメタデータ20aの項目を含むことを識別し、セル35w~35y内の値に対してこれらのルール32a、32bを実行する。これらのルールの実行結果は、標準化データセットのセル39a~39cに示されている。
【0092】
同様に、標準化エンジン26は、ルール32a、32bがソースデータセットに適用されることを識別する。この例では、標準化エンジン26は、ソースデータセット37の列37aが、コンテキストメタデータ項目20a(コンテキストメタデータ21aとも呼ばれる)にリンクされた(又は関連付けられた)技術的メタデータ21の項目21aに対応することを識別する。コンテキストメタデータ20はルール32a、32bによって参照されるので、標準化エンジン26は、ルール32a、32bがデータセット37の列37aに適用されることを識別し、ルール32a、32bを列37aに適用する。この例では、データセット35、37は、標準化データセット39を生成するために、(例えば、PIIをトークン化することによって)管理され、クレンジングされ、適合され、(例えば、列35z、37aによって表されるキーフィールド上で)一緒に結合される。データセット39及び/又はデータセット39の内容は、宛先記憶システム、例えば記憶システム28への最終的な取り込みの準備ができている。この例では、標準化エンジン26は、記憶及びその後の処理のためにデータセット39を記憶システム29に送信する。
【0093】
図4Aを参照すると、システム70は、グラフィカルユーザインターフェース72をレンダリングするクライアントデバイス76を示す。この例では、グラフィカルユーザインターフェース72は、図2Cに示されるグラフィカルユーザインターフェース27の変形である。この変形例では、コンテキストメタデータの表示された各視覚表現72a~72dは、対応する(例えば、リンクされた)技術的メタデータにおいて指定されたフィールド名を含むように更新されている。これらの視覚表現72a~72dは、本明細書で説明するように、コンテキストメタデータと技術的メタデータとの間の適切なリンケージが識別されると、表示することができる。この例では、グラフィカルユーザインターフェース72は、例えば、ガバナンスルールをデータレコードに適用したリアルタイム結果を示すことによって、データレコードを処理したリアルタイム結果を表示する。これらの結果は、視覚表現72a~72dに示され、その各々は、処理されている特定のデータレコード内のフィールドに対応する。この例では、ビジネスユーザ/テスタ78は、部分75内の各セルが編集可能であるので、結果を閲覧し、ライブ時間を編集し、その結果に基づいて、部分75に示されているガバナンスルールを編集することができる。ガバナンスルールの適用の結果を閲覧することができることによって、ビジネスユーザ/テスタは、不正な又は意図しない結果を検出し、全てのエラーを訂正するためにガバナンスルールを直ちに更新することができる。それによって、グラフィカルユーザインターフェース72は、ガバナンスルールの修正及び/又は訂正を通じてシステムの基礎となる機能の訂正を可能にするフィードバックループを提供する。
【0094】
例えば、視覚表現72a stopは、図3に示されるコンテキストメタデータ24aの視覚表現である。視覚表現72aは、コンテキストメタデータ20a(図3)の項目にリンクされた技術的メタデータ22の項目22aに関連付けられたセル35w(図3)の内容に対応する以下のテキスト「050-30-3421」を含むように更新される。更に、視覚表現72aは、セル35wの内容に対するガバナンスルール25(図3)の実行結果を指定する。この例では、結果は、社会保障番号のトークン化(例えば、トークン1)である。視覚表現72b~72cは、それぞれ「名」及び「姓」としてコンテキストメタデータでラベル付けされた2つの他のフィールドに関して処理されているデータレコードの内容を示す。視覚表現72b~72cはまた、これらのフィールド「ボブ」及び「ジョーンズ」の内容をそれぞれ示す。視覚表現72b~72cはまた、これらのフィールドに対するガバナンスルール25の実行の結果を示す。この例では、ガバナンスルール25の実行は、これらのフィールドの値を変更しない。
【0095】
グラフィカルユーザインターフェース72は、ガバナンスルール74を表示し、ガバナンスルール74は、USにおいて、生年月日フィールドの適切なUSフォーマットを指定する。この例では、ガバナンスルール及びガバナンスルールの視覚表現は、まとめて参照される。視覚表現72dは、生年月日フィールドに関して処理されているデータレコードの内容を示す。この例では、視覚表現は、生年月日フィールドの内容(例えば、「7/13/2010」)を指定し、生年月日フィールド内のデータのフォーマットが、データガバナンスルール74で指定された必要なフォーマット(例えば、「MM-DD-YYYY」)に合格するか、又は対応することを指定する。
【0096】
図4Bを参照すると、グラフィカルユーザインターフェース82は、ガバナンスルール74(図4A)の変形であるガバナンスルール84を表示する。ガバナンスルール84は、欧州データフォーマット規格に従ってデータレコードを処理するためのルールである。したがって、ガバナンスルール84は、生年月日フィールドについてその欧州データフォーマット(例えば、DD-MM-YYYY)を指定する。この例では、図4Aに示すガバナンスルールで処理されたデータレコードは、図4Bに示すガバナンスルールでも処理される。したがって、この例では、データレコードは、このデータレコード内の生年月日フィールドが米国規格に従ってフォーマットされているので、ガバナンスルール84に失敗する。この失敗を視覚的に表すために、グラフィカルユーザインターフェース82は、データ発生フィールドの内容が否認された(例えば、「7/13/2010→否認」)ことを指定する視覚表現82aを含む。
【0097】
図5Aを参照すると、システム80は、本明細書で説明される技法を使用した、T...Tからの期間にわたる連続的なデータセットの処理及び取り込みを示す。図1に示される従来技術のシステム1とは異なり、システム80は、長期間にわたって大量のデータセットを連続的に取り込み、取り込みのためにクレンジングされ、適合され、管理されたデータを生成することができる。システム80は、それぞれソースデータセット214a、214b、...、214nを含むソースシステム82を含む。この例では、リンケージ23は、データ取り込みプロセスが開始する前であっても、本明細書で説明される技法を使用して識別される。時間間隔T...Tにわたって、ソースシステム82は、標準化エンジン26にデータセット214a、214b、...、214nをそれぞれ送信し、各データセットは、複数のデータレコード、データテーブル、及び/又は他の構造化データを含む。
【0098】
図5Bを参照すると、システムは、標準化エンジン26が、時間T...Tにわたって、記憶システム28への取り込みのためにクレンジングされたか、又は他の方法で管理されたデータセット82a~82nを出力することを示す。この例では、データセット82a~82nは、リンケージ23及びガバナンスルール25の適用に基づいて管理される。
【0099】
図6は、メタデータ駆動型データ取り込みのための例示的なプロセス600のフローチャートを示す。プロセス600は、図2-5を参照して説明される技術を実装するように構成される1つ以上のコンピューティングシステムを含む、本明細書に説明されるシステム及びコンポーネント(例えば、データ取り込みシステム、又はハーベスティングエンジン、リンケージエンジン、標準化エンジンなどのそのコンポーネント)のうちの1つ以上によって実装されることができる。
【0100】
プロセス600の動作は、外部データソースからデータセットを取り出すこと(602)を含む。例えば、システム10、又はハーベスティングエンジン18、リンケージエンジン24、及び/又は標準化エンジン26などのそのコンポーネントは、ソースシステム14から取り込まれる1つ以上のデータセット(例えば、データセット34a~34cなど)を取り出すことができる。データセットが取り出されると、取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目が識別される(604)。例えば、取り出されたデータセットについて技術的メタデータ(例えば、技術的メタデータ21a~21c)を識別するために、取り出されたデータセットに対して発見プロセスを実行することができ、技術的メタデータは、取り出されたデータセットの1つ以上のフィールドについてのフィールド名を含む。
【0101】
取り出されたデータセット内のフィールドを記述するための候補であるユーザ定義名が、クライアントデバイスから受信される(606)。いくつかの例では、ユーザ定義名は、クライアントデバイス16のユーザ(例えば、ビジネスユーザ13)から受信されたコンテキストメタデータ(例えば、コンテキストメタデータ20)に含まれる。この情報を使用して、1つ以上のメタデータ項目とユーザ定義名のうちの少なくとも1つとの間の関連付けが識別される(608)。それに応じて、ユーザ定義名のうちの少なくとも1つを参照する1つ以上のルールがアクセスされる(610)。1つ以上のルールは、データPIIルール、データ品質ルール、又はユーザ定義名のうちの少なくとも1つに関連付けられたデータに適用される1つ以上の動作を指定する他のガバナンスルール(例えば、ガバナンスルール25)を含むことができる。
【0102】
取り出されたデータセットのうちの1つ以上の各々について、プロセス600の動作は、その取り出されたデータセットにおいて、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出すること612を含む。いくつかの例では、取り出されたデータセットにおいて、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することは、取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、少なくとも1つのフィールド名をメタデータ項目と比較して、少なくとも1つのフィールド名とメタデータ項目との間のマッチングを識別することと、メタデータ項目を記憶されたリンケージ情報と比較して、メタデータ項目に割り当てられたユーザ定義名を識別することと、ユーザ定義名を含む1つ以上のルールのうちの少なくとも1つを識別することとによって、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することを含む。検出に応じて、1つ以上のルールのうちの少なくとも1つが、メタデータの検出された項目によって記述される1つ以上のデータ項目に適用される(614)。1つ以上のルールのうちの少なくとも1つの適用に続いて、取り出された(及び処理された)データセットは、1つ以上のデータストアの中に記憶される(616)。いくつかの例では、データセットは、メタデータ項目、ユーザ定義名、及びそれらの関連付け(例えば、リンケージ)に基づいて生成されたデータフローグラフの実行を通じて、取り出され、処理され、記憶される。このようにして、プロセス600は、例えば、最小限のユーザ入力で、異なるデータセット内のフィールド間の共通コンテキスト、及びフィールドを記述する可能性があるものとしてユーザが指定した名前をユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる。
【0103】
いくつかの例では、プロセス600の動作は、少なくとも1つのメタデータ項目のラベルを決定することを含み、ラベルは、少なくとも1つのメタデータ項目のセマンティックな意味を表す。そのようなラベルは、例えば、メタデータ項目及び/又はメタデータ項目によって記述されるデータ項目のサンプルに対して1つ以上のセマンティック発見プロセスを実行することによって決定することができる。少なくとも1つのメタデータ項目のラベルとユーザ定義名との間のマッチングが識別される。いくつかの例では、少なくとも1つのメタデータ項目のラベルは、ユーザ定義名から選択される。マッチングに応じて、少なくとも1つのメタデータ項目とコンテキストメタデータ項目との間のリンク(例えば、リンク23)が生成される。いくつかの例では、リンクを生成することは、メタデータ項目を表すデータと、ユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む(又は、データ構造が、ユーザ定義名を表すデータと、メタデータ項目へのポインタとを含むように、逆も同様である)。
【0104】
いくつかの例では、プロセス600の動作は、クライアントデバイスにおけるグラフィカルユーザインターフェースの表示を引き起こすことによって、ユーザが1つ以上のルールを定義及びテストすることを可能にし、グラフィカルユーザインターフェースは、ユーザ定義名と、ユーザ定義名のうちの少なくとも1つに関して1つ以上のルールを定義するための入力部分とを含む。グラフィカルユーザインターフェースは、コンテキストメタデータ項目に割り当てられたメタデータ項目のうちの1つ以上の視覚化を表示するように構成され得る。グラフィカルユーザインターフェースの入力部分への入力を表すデータを受信することができ、データは、ユーザ定義名のうちの少なくとも1つに関する1つ以上のルールを定義する。
【0105】
本明細書で説明されるシステムは、取り込みの前に、特定の基準を満たすデータ、データ品質、セキュリティ及び/又は一貫性データの管理を達成する。取り込み前にデータをクレンジングし、適合させ、管理することによって、システムは、データセットを保存し、その後、クリーニングされ、管理され、適合されたバージョンのデータセットを再保存する必要があるためにリソースが消費されないので、性能及び処理能力の向上を達成する。メモリリソースのこの低減は、取り込み前のガバナンスをより計算上効率的にする。加えて、本明細書で説明されるシステムは、メタデータを使用して、どのデータ要素が取り込み前に管理される必要があるか、及びどのデータ要素が取り込み前に否認されるべきか、例えば、データがフォーマット要件に準拠しないために否認されるべきかを識別することによって、データ品質及びデータセキュリティの向上をもたらした。このデータ品質の向上は、例えばフォーマットエラーのために処理することができないデータが記憶されないので、計算効率及びメモリリソースの効率的な使用を更に向上させる。
【0106】
更に、本明細書で説明される技法は、最小限のユーザ入力で、(i)異なるデータセット内のフィールドと、(ii)ユーザがフィールドを記述する可能性があるものとして指定した名前との間の共通コンテキストをユーザに対して自動的に識別することによって、また、それらの共通コンテキストを使用して、指定されたデータ品質を保証するために記憶前に異なるデータセットを管理することによって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させる。この例では、共通コンテキストは、同じタイプのデータを指定するフィールド、例えば、社会保障番号がデータのタイプである場合、社会保障番号を指定するフィールドを含む。潜在的に記述されたフィールドとしてユーザが指定した名前の例は、コンテキストメタデータを含む。
【0107】
本明細書で説明される技法を使用して、データ処理システムは、パターンを見つけ、それらのパターンに対して人工知能及び機械学習(AI/ML)を活用することによって、データからビジネス価値を決定することができる。データ処理システムは、データが存在する様々な既存のシステムからの共通領域にデータを持ってくることによってそれを行う。その領域から、データ科学者はデータにアクセスし、最終的に彼らのAI/MLモデルを研究し、訓練することができる。これを行うために、データ処理システムは、様々なデータガバナンスタスクを実行して、利用可能なデータのビジネス上の意味を理解し、いくつかのデータ最良のソースであるものを理解し、誰がデータを所有してデータへのアクセスを得るかを知り、データをクレンジングしてそのデータの品質を理解し、データがPII又は機密情報を含む場合にはデータをマスクし、データがどこから来ているかを消費者が理解し、誰がその情報の消費者であるかを発信者が理解するように、リネージを提供する。前述の技法は、(例えば、データガバナンスルールにおける)ビジネス表現要件から、実行可能なジョブ、例えば、データガバナンスルールにおいて指定されるようにデータをクレンジングするため、データガバナンスルールにおいて指定されるようにデータ品質をテストするためなど、データガバナンスルールにおける機能を実行するプログラムに変換することによって、これらのデータ管理タスクの自動化を提供する。
【0108】
いくつかの例では、取り込まれたデータは、例えば、実行可能なデータフローグラフへの入力として使用することができる。一般に、実行可能なデータフローグラフは、1つ以上のコンポーネント(「ノード」又は「頂点」と呼ばれることもある)を有する。ノード、コンポーネント、又は頂点は、ノード、コンポーネント、又は頂点に関連付けられた動作を実装するためのプログラムコードに対応する。コンポーネント間のデータフローは、グラフのリンク(アーク、エッジ)に対応する。そのようなグラフベースの計算を実装するシステムは、「Executing Computations Expressed as Graphs」と題された米国特許第5,966,0 号に説明されており、その全内容は、参照することによって本明細書に組み込まれる。
【0109】
データ取り込みシステム及びそのコンポーネントを含む、本明細書に記載の主題及び動作の実装は、デジタル電子回路、又は本明細書に開示された構造及びそれらの構造的均等物を含むコンピュータソフトウェア、ファームウェア、若しくはハードウェア、又はそれらの1つ以上の組み合わせで実装することができる。本明細書に記載の主題の実装形態は、1つ以上のコンピュータプログラム(データ処理プログラムとも称される)(すなわち、データ処理装置によって実行するために、又はデータ処理装置の動作を制御するためにコンピュータ記憶媒体上に符号化されたコンピュータプログラム命令の1つ以上のモジュール)として実装することができる。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基板、ランダムアクセス若しくはシリアルアクセスメモリアレイ若しくはデバイス、又はそれらのうちの1つ以上の組み合わせであってもよく、又はそれらに含まれてもよい。コンピュータ記憶媒体はまた、1つ以上の別個の物理的コンポーネント又は媒体(例えば、複数のCD、ディスク、又は他の記憶デバイス)であってもよく、又はそれらに含まれてもよい。本主題は、非一時的コンピュータ記憶媒体に記憶されたコンピュータプログラム命令に実装され得る。
【0110】
本明細書で説明される動作は、1つ以上のコンピュータ可読記憶デバイスに記憶されているか、又は他のソースから受信されたデータに対してデータ処理システム又は装置によって実行される動作として実装することができる。「データ処理システム」という用語は、データを処理するためのあらゆる種類の装置、デバイス、及びマシンを包含し、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップ、又は前述のものの複数のもの、又は組み合わせを含む。システムは、例えばFPGA(field programmable gate array、フィールドプログラマブルゲートアレイ)又はASIC(application specific integrated circuit、特定用途向け集積回路)などの専用論理回路を含むことができる。システムはまた、ハードウェアに加えて、問題のコンピュータプログラム(例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想マシン、又はそれらの1つ以上の組み合わせを構成するコード)の実行環境を提供するコードを含むことができる。システム及び実行環境は、Webサービス、分散コンピューティング、及びグリッドコンピューティングインフラストラクチャなどの様々な異なるコンピューティングモデルインフラストラクチャを実現することができる。
【0111】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとしても知られている)は、コンパイル言語若しくはインタープリタ言語、宣言型言語若しくは手続き型言語を含む任意の形式のプログラミング言語で書くことができ、スタンドアロンプログラムとして、又はモジュール、コンポーネント、サブルーチン、オブジェクト、若しくはコンピューティング環境での使用に好適な他のユニットとして含む、任意の形態で展開することができる。コンピュータプログラムは、ファイルシステム内のファイルに対応してもよいが、対応する必要はない。プログラムは、他のプログラム又はデータ(例えば、マークアップ言語文書に記憶された1つ以上のスクリプト)を保持するファイルの一部分、問題のプログラム専用の単一のファイル、又は複数の協調ファイル(例えば、1つ以上のモジュール、サブプログラム、又はコードの部分を記憶するファイル)に記憶することができる。コンピュータプログラムは、1つのコンピュータ上で、又は1つのサイトに位置するか、又は複数のサイトに分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開することができる。
【0112】
本明細書に記載のプロセス及び論理フローは、入力データに対して動作し、出力を生成することによってアクションを実行するために、1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって実行することができる。プロセス及び論理フローはまた、専用論理回路(例えば、FPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)によって実行することができ、装置は専用論理回路として実装することができる。
【0113】
コンピュータプログラムの実行に好適なプロセッサは、例として、汎用マイクロプロセッサ及び専用マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。概して、プロセッサは、リードオンリーメモリ若しくはランダムアクセスメモリ又はその両方から命令及びデータを受信するであろう。コンピュータの必須要素は、命令に従ってアクションを実行するためのプロセッサと、命令及びデータを記憶するための1つ以上のメモリデバイスとを含む。一般に、コンピュータはまた、データを記憶するための1つ以上の大容量記憶デバイス(例えば、磁気ディスク、光磁気ディスク、又は光ディスク)を含むか、それらからデータを受信するか、それらにデータを転送するか、又はその両方を行うように動作可能に結合することになるが、コンピュータは、そのようなデバイスを有する必要はない。更に、コンピュータは、別のデバイス(例えば、携帯電話、携帯情報端末(Personal Digital Assistant、PDA)、モバイルオーディオ若しくはビデオプレーヤ、ゲームコンソール、全地球測位システム(Global Positioning System、GPS)受信機、又は携帯型記憶デバイス(例えば、ユニバーサルシリアルバス(Universal Serial Bus、USB)フラッシュドライブ))に組み込むことができる。コンピュータプログラム命令及びデータを記憶するのに好適なデバイスは、例として、半導体メモリデバイス(例えば、EPROM、EEPROM、及びフラッシュメモリデバイス)、磁気ディスク(例えば、内蔵ハードディスク又はリムーバブルディスク)、光磁気ディスク、並びにCD-ROM及びDVD-ROMディスクを含む、あらゆる形態の不揮発性メモリ、媒体及びメモリデバイスを含む。プロセッサ及びメモリは、専用ロジック回路によって補完され得るか、又は専用ロジック回路に組み込まれ得る。
【0114】
本明細書に記載の主題の実装形態は、バックエンドコンポーネント(例えば、データサーバとして)を含むか、又はミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含むか、又はフロントエンドコンポーネント(例えば、ユーザが本明細書に記載の主題の実装形態と対話することができるグラフィカルユーザインターフェース又はWebブラウザを有するユーザコンピュータ)、又は1つ以上のそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、若しくはフロントエンドコンポーネントの任意の組み合わせを含む、コンピューティングシステムに実装することができる。システムのコンポーネントは、デジタルデータ通信(例えば、通信ネットワーク)の任意の形態又は媒体によって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク(Local Area Network、LAN)及びワイドエリアネットワーク(Wide Area Network、WAN)、インターネットワーク(例えば、インターネット)、及びピアツーピアネットワーク(例えば、アドホックピアツーピアネットワーク)が含まれる。
【0115】
コンピューティングシステムは、ユーザ及びサーバを含むことができる。ユーザ及びサーバは、一般に、互いに遠隔であり、典型的には、通信ネットワークを通して対話する。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じ得る。いくつかの実装形態では、サーバは、データ(例えば、HTMLページ)をユーザデバイスに送信する(例えば、ユーザデバイスと対話するユーザにデータを表示し、ユーザデバイスと対話するユーザからユーザ入力を受信する目的で)。ユーザデバイスにおいて生成されたデータ(例えば、ユーザ対話の結果)は、サーバにおいてユーザデバイスから受信することができる。
【0116】
本明細書は多くの特定の実装形態の詳細を含むが、これらは、任意の実装形態又は特許請求され得るものの範囲に対する限定として解釈されるべきではなく、特定の実装形態に特有の特徴の記載として解釈されるべきである。別個の実施態様の文脈において本明細書に記載されるある特定の特徴はまた、単一の実装形態において組み合わせて実装することができる。逆に、単一の実施態様の文脈において記載される様々な特徴はまた、複数の実装形態において別々に、又は任意の好適な二次組み合わせにおいて実装することができる。更に、特徴は、ある特定の組み合わせにおいて作用するものして上述され、初めにそのように特許請求され得るが、特許請求される組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから切除することができ、特許請求される組み合わせは、二次組み合わせ又は二次組み合わせの変形を対象とし得る。
【0117】
同様に、動作は、特定の順序で図面に描かれているが、望ましい結果を達成するために、そのような動作が示された特定の順序で又は連続した順序で実行されるか、又は全ての例示された動作が実行されることを必要とするものとして理解されるべきではない。ある特定の状況では、マルチタスク処理及び並列処理が有利であり得る。更に、上記の実装態様における様々なシステムコンポーネントの分離は、全ての実装形態においてそのような分離を必要とするものとして理解されるべきではなく、記載されたプログラムコンポーネント及びシステムは、一般に単一のソフトウェア製品に共に統合されるか、又は複数のソフトウェア製品にパッケージ化され得ることを理解されたい。
【0118】
他の実装形態は、以下の特許請求の範囲の範囲内である。
【符号の説明】
【0119】
1 システム
2 データセット
3 ソースシステム
4a ビジネスユーザ
4b 技術スタッフ
4c テスタ
5 データ処理システム
6 記憶システム
7 クライアントデバイス
8 クライアントデバイス
9 クライアントデバイス
10 システム
12 データ取り込みシステム
13 ビジネスユーザ/テスタ
14 ソースシステム
15 技術スタッフ
16 クライアントデバイス
18 ハーベスティングエンジン
20 コンテキストメタデータ
23 リンケージ
24 リンケージエンジン
25 ガバナンスルール
26 標準化エンジン
28 記憶システム
39 標準化データセット
70 システム
74 ガバナンスルール
75 部分
76 クライアントデバイス
78 ビジネスユーザ/テスタ
80 システム
84 ガバナンスルール
214 ソースデータセット
222 項目
600 プロセス
図1
図2A
図2B
図2C
図2D
図3
図4A
図4B
図5A
図5B
図6
【手続補正書】
【提出日】2024-05-16
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
1つ以上のデータストアの中に記憶されたデータの品質を改善するためのデータ処理システムによって実装される方法であって、
ハードウェア記憶デバイスによって、外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、1つ以上のデータストアの中に、前記1つ以上のルールのうちの前記少なくとも1つが適用される前記1つ以上のデータ項目を記憶することと
を含む、方法。
【請求項2】
前記メタデータ項目のうちの少なくとも1つが、取り出されたデータセットのフィールドのフィールド名を含む、請求項1に記載の方法。
【請求項3】
前記少なくとも1つのメタデータ項目のラベルであって、前記ラベルは、前記少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、
前記少なくとも1つのメタデータ項目の前記ラベルと前記ユーザ定義名との間のマッチングを識別することと、
前記マッチングに応じて、前記少なくとも1つのメタデータ項目と前記コンテキストメタデータ項目との間のリンクを生成することと
を更に含む、請求項2に記載の方法。
【請求項4】
前記ラベルを決定することは、前記少なくとも1つのメタデータ項目、又は前記少なくとも1つのメタデータ項目によって記述される前記データ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む、請求項3に記載の方法。
【請求項5】
前記少なくとも1つのメタデータ項目の前記ラベルは、前記データセット内の前記データ項目についての前記ユーザ定義名から選択される、請求項3に記載の方法。
【請求項6】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成することは、前記メタデータ項目を表すデータと、前記ユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項3に記載の方法。
【請求項7】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成するは、前記ユーザ定義名メタデータを表すデータと前記メタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項3に記載の方法。
【請求項8】
前記クライアントデバイスにおけるグラフィカルユーザインターフェースであって、前記グラフィカルユーザインターフェースは、前記ユーザ定義名と、前記ユーザ定義名のうちの少なくとも1つに関する前記1つ以上のルールを定義するための入力部分とを含む、グラフィカルユーザインターフェースを表示させることと、
前記グラフィカルユーザインターフェースの前記入力部分への入力を表すデータであって、前記データは、前記ユーザ定義名のうちの前記少なくとも1つに関する前記1つ以上のルールを定義する、データを受信することと
を含む、請求項1に記載の方法。
【請求項9】
前記グラフィカルユーザインターフェースは、前記ユーザ定義名に割り当てられた前記メタデータ項目のうちの1つ以上を表示するように構成される、請求項8に記載の方法。
【請求項10】
前記1つ以上のルールが、個人識別可能情報(PII)ルール又はデータ品質ルールのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項11】
取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて、
前記取り出されたデータセットに含まれる少なくとも1つのフィールド名を識別することと、
前記少なくとも1つのフィールド名を前記メタデータ項目と比較して、前記少なくとも1つのフィールド名と前記メタデータ項目との間のマッチングを識別することと、
前記メタデータ項目を記憶されたリンケージ情報と比較して、前記メタデータ項目に割り当てられた前記ユーザ定義名を識別することと、
前記ユーザ定義名を含む前記1つ以上のルールのうちの前記少なくとも1つを識別することと
によって、1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することを更に含む、請求項1に記載の方法。
【請求項12】
前記技術的属性は、前記データセット内の前記データのフォーマット及び/又は構造を含む、請求項1に記載の方法。
【請求項13】
1つ以上のデータストアの中に記憶されたデータの品質を改善するためのハードウェア記憶デバイスであって、記憶のために指定されたデータ品質を有するデータを準備する速度を増加させるためのハードウェア記憶デバイスは、
外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、1つ以上のデータストアの中に、前記1つ以上のルールのうちの前記少なくとも1つが適用される前記1つ以上のデータ項目を記憶することと
を含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイス。
【請求項14】
前記メタデータ項目の少なくとも1つは、取り出されたデータセットのフィールドに対するフィールド名を含む、請求項13に記載のハードウェア記憶デバイス。
【請求項15】
ハードウェア記憶デバイスであって、前記動作は、
前記少なくとも1つのメタデータ項目のラベルであって、前記ラベルは、前記少なくとも1つのメタデータ項目のセマンティックな意味を表す、ラベルを決定することと、
前記少なくとも1つのメタデータ項目の前記ラベルと前記ユーザ定義名との間のマッチングを識別することと、
前記マッチングに応じて、前記少なくとも1つのメタデータ項目と前記コンテキストメタデータ項目との間のリンクを生成することと
を更に含む、請求項14に記載のハードウェア記憶デバイス。
【請求項16】
前記ラベルを決定することは、前記少なくとも1つのメタデータ項目、又は前記少なくとも1つのメタデータ項目によって記述される前記データ項目のうちの少なくとも1つに対して1つ以上のセマンティック発見プロセスを実行することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項17】
前記少なくとも1つのメタデータ項目の前記ラベルは、前記データセット内の前記データ項目についての前記ユーザ定義名から選択される、請求項15に記載のハードウェア記憶デバイス。
【請求項18】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間のリンクを生成することは、前記メタデータ項目を表すデータと、前記ユーザ定義名を表すデータへのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項19】
前記少なくとも1つのメタデータ項目と前記ユーザ定義名との間の前記リンクを生成することは、前記ユーザ定義名メタデータを表すデータと前記メタデータ項目へのポインタとを含む少なくとも1つのデータ構造を生成することを含む、請求項15に記載のハードウェア記憶デバイス。
【請求項20】
1つ以上のデータストアの中に記憶されたデータの品質を改善するための電子システムであって、
1つ以上の処理デバイスと、
ハードウェア記憶デバイスであって、
外部データソースからデータセットを取り出すことと、
前記取り出されたデータセットから、前記取り出されたデータセット内のフィールドを特徴付ける技術的属性を記述するメタデータ項目を識別することと、
クライアントデバイスから、前記取り出されたデータセット内の前記フィールドを記述するための候補であるユーザ定義名を受信することと、
1つ以上のメタデータ項目と前記ユーザ定義名のうちの少なくとも1つとの間の関連付けを識別することと、
1つ以上の動作であって、前記1つ以上の動作は、前記ユーザ定義名のうちの前記少なくとも1つを参照する、1つ以上の動作を指定する1つ以上のルールにアクセスすることと、
前記取り出されたデータセットのうちの1つ以上の各々について、
前記取り出されたデータセットにおいて、前記1つ以上のルールのうちの少なくとも1つにおいて参照されるユーザ定義名に割り当てられるメタデータ項目を検出することと、
検出に応じて、前記1つ以上のルールのうちの前記少なくとも1つを、前記検出されたメタデータ項目によって記述される1つ以上のデータ項目に適用することと、
前記1つ以上のルールのうちの前記少なくとも1つの適用に続いて、1つ以上のデータストアの中に、前記1つ以上のルールのうちの前記少なくとも1つが適用される前記1つ以上のデータ項目を記憶することと
を含む、動作を実行するために1つ以上の処理デバイスによって実行可能な命令を記憶するハードウェア記憶デバイスと
を含む、電子システム。
【国際調査報告】