JP6121163B2 - データセット要素のマッピング - Google Patents

データセット要素のマッピング Download PDF

Info

Publication number
JP6121163B2
JP6121163B2 JP2012529903A JP2012529903A JP6121163B2 JP 6121163 B2 JP6121163 B2 JP 6121163B2 JP 2012529903 A JP2012529903 A JP 2012529903A JP 2012529903 A JP2012529903 A JP 2012529903A JP 6121163 B2 JP6121163 B2 JP 6121163B2
Authority
JP
Japan
Prior art keywords
output
data
data set
input
validation
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
JP2012529903A
Other languages
English (en)
Other versions
JP2013505502A (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 JP2013505502A publication Critical patent/JP2013505502A/ja
Application granted granted Critical
Publication of JP6121163B2 publication Critical patent/JP6121163B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • 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/248Presentation of query results
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/80Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
    • G06F16/84Mapping; Conversion
    • G06F16/88Mark-up to mark-up conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/151Transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Description

[0001] 優先権の主張
本出願は、2009年9月16日に出願された米国仮特許出願第61/243132号に対する優先権を主張するものであり、その内容全体は参照により本明細書に組み込まれるものである。
[0001] 本明細書はデータセット要素のマッピングに関する。
[0002] いくつかのデータベース又はデータ・ウェアハウジング・システムでは、あるデータセット(「ソース」又は「入力」データセット)の要素が他のデータセット(「出力」又は「ターゲット」データセット)の要素にマッピングされる。これらの要素は、例えば、データベース・テーブルのフィールド又はデータ・オブジェクトの属性を含むことができる。その場合、入力データセットのレコード(例えば、テーブルの行)を出力データセットにインポートすることができ、適切な入力フィールドが適切な出力フィールドにマッピングされる。入力データセットのフォーマットと出力データセットのフォーマットの間には、出力フォーマットを満足するためにデータ値を変換することを要求するような違いが存在する可能性がある。あるケースでは、例えば、データ品質を保証するため、又は出力データセットの所望の特性を満足するために、追加のデータ変形(data transformation)も適用される。マッピング・プロセスは、異なるスキル・レベル(例えば、初心者又は専門家)或いは異なる焦点分野(例えば、ビジネス又は技術)を有する異なるユーザ間での対話を必要とする可能性がある。
[0003] 一態様では、概略的に、入力データ処理システムに記憶された入力データセットの1つ又は複数の要素を、出力データ処理システムに記憶された出力データセットの1つ又は複数の要素にマッピングするための方法が記載されている。この方法は、所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係(mapped relationship)をインターフェースで受信することであって、マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式(transformational expression)を含み、変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することを含む。この方法は、それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素の識別情報をインターフェースで受信することを含む。この方法は、入力変数にマッピングされた入力データセットの要素に関連する入力データセットからの入力データに基づいて、変形式によりデータ処理システムから出力データを生成することを含む。この方法は、出力データセットの識別済み要素のうちの1つ又は複数に関連する有効値の1つ又は複数の特性を定義する妥当性検査基準に基づいて、生成された出力データに応じて妥当性検査情報(validation information)を決定することと、決定された妥当性検査情報に基づいて視覚フィードバック(visual feedback)をインターフェースに提示することを含む。
[0004] 諸態様は以下の特徴のうちの1つ又は複数を含むことができる。
[0005] この方法は、マップ済み関係により、入力データセットから出力データセットに入力データをインポートすることをさらに含む。
[0006] 入力データをインポートすることは、入力データセットの入力レコードのそれぞれのフィールド内の入力値に変形式を適用し、出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することを含み、入力レコードの少なくともいくつかのフィールドが入力変数にマッピングされた入力データセットの要素に対応し、出力レコードの少なくともいくつかのフィールドがそれぞれのマップ済み関係の出力にマッピングされた出力データセットの要素に対応する。
[0007] 入力データセットの入力レコードのそれぞれのフィールド内の入力値に変形式を適用こと、及び出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することは、データ処理コンポーネントを表すノードと、データ処理コンポーネント間のデータフローを表すリンクと、入力レコードのデータフローを提供する入力データセットを表すノードと、出力レコードのデータフローを受信する出力データセットを表すノードとを含む、データフロー・グラフ(dataflow graph)を実行することを含む。
[0008] この方法は、マップ済み関係を指定するマッピングを記憶することをさらに含む。
[0009] 妥当性検査情報を決定することは、出力データ処理システムに記憶された妥当性検査基準の指定を抽出することを含む。
[0010] インターフェースはデータ処理システムによって提供され、第1のユーザに提示され、出力データ処理システムに記憶された妥当性検査基準の指定は第2のユーザから受信される。
[0011] この方法は、生成された出力データを表す値をインターフェースに提示することをさらに含む。
[0012] 妥当性検査情報を決定することは、変形中のマップ済み関係の出力にマッピングされた出力データセットの識別済み要素に関連する妥当性検査基準に基づいて、変形式を含むそれぞれの変形中のマップ済み関係について生成された出力データを評価することを含む。
[0013] マップ済み関係は、変形式を含む複数の変形中のマップ済み関係を含む。
[0014] 妥当性検査基準は、第1の識別済み要素に関連する有効値の1つ又は複数の特性を定義する出力データセットの第1の識別済み要素に関連する第1の妥当性検査基準と、第2の識別済み要素に関連する有効値の1つ又は複数の特性を定義する出力データセットの第2の識別済み要素に関連する第2の妥当性検査基準とを含む。
[0015] 妥当性検査情報は、第1の識別済み要素に対応する第1のフィールドと、第2の識別済み要素に対応する第2のフィールドとを含む、生成された出力レコードに応じて決定される。
[0016] 第1の妥当性検査基準は出力レコードの第2のフィールド内の値に依存する。
[0017] 妥当性検査情報は、出力レコードの第1のフィールド内の値と、出力レコードの第2のフィールド内の値に依存する。
[0018] この方法は、変形式について有効な構造を示す構文情報を決定することをさらに含む。
[0019] この方法は、決定された構文情報に基づいて視覚フィードバックをインターフェースに提示することをさらに含む。
[0020] この方法は、変形式に対する受信ユーザ変更に基づいて変更済み変形式を受け入れることをさらに含む。
[0021] この方法は、入力データセットからの入力データに基づいて、変更済み変形式によりデータ処理システムから変更済み出力データを生成することをさらに含む。
[0022] この方法は、生成された変更済み出力データに応じて変更済み妥当性検査情報を決定し、変更済み妥当性検査情報に基づいて視覚フィードバックをインターフェースに提示することをさらに含む。
[0023] 変更済み出力データを生成し、変更済み妥当性検査情報に基づいて視覚フィードバックを提示することは、変形式が変更されている間に行われる。
[0024] 変更済み出力データを生成し、変更済み妥当性検査情報に基づいて視覚フィードバックを提示することは、変形式が変更された後でユーザ要求に応じて行われる。
[0025] 入力データセットからの入力データは、変形式を適用するデータフロー・グラフのコンポーネントへのデータの流れを表すリンクにより受信され、データフロー・グラフは、データ処理コンポーネントを表すノードと、データ処理コンポーネント間のデータフローを表すリンクと、入力データのデータフローを提供する入力データセットを表すノードと、出力データのデータフローを受信する出力データセットを表すノードとを含む。
[0026] 出力データセットに記憶された生成済み出力データは、変形式を適用するデータフロー・グラフのコンポーネントからのデータの流れを表すリンクにより出力データセットに提供され、データフロー・グラフは、データ処理コンポーネントを表すノードと、データ処理コンポーネント間のデータフローを表すリンクと、入力データのデータフローを提供する入力データセットを表すノードと、出力データのデータフローを受信する出力データセットを表すノードとを含む。
[0027] 少なくとも第1のマップ済み関係は、第1のマップ済み関係を適用するデータフロー・グラフのコンポーネントの選択に応じて受信され、データフロー・グラフは、データ処理コンポーネントを表すノードと、データ処理コンポーネント間のデータフローを表すリンクと、入力データのデータフローを提供する入力データセットを表すノードと、出力データのデータフローを受信する出力データセットを表すノードとを含む。
[0028] 視覚フィードバックは、インターフェース上に表示されたリネージ・ダイアグラム(lineage diagram)の複数のノードのうちの1つに関する妥当性検査情報を表すインジケータを含み、ノードは出力データセットの1つ又は複数の識別済み要素に関連する少なくとも1つの変形値(transformed value)を含む変形値を表す。
[0029] 視覚フィードバックは、インターフェース上に表示されたリネージ・ダイアグラムの複数のノードのうちの1つのノードにそれぞれが関連する複数のインジケータを含む。
[0030] インジケータに関連するノードのうちの少なくともいくつかは、そのノードによって表される変形値間の依存性を表すリンクによって接続される。
[0031] 視覚フィードバックは、出力データセットの1つ又は複数の識別済み要素を表す少なくとも1つの出力要素を含み、インターフェース上に表示された複数の出力要素のうちの1つの出力要素にそれぞれが関連する複数のインジケータを含む。
[0032] インターフェース上に表示された複数の出力要素は、入力データのレコードに変形式を適用した結果を表すフィールドに対応する。
[0033] 少なくとも1つのインジケータは、複数フィールド用の値の行に関する妥当性検査情報を示し、その行は入力データの単一レコードに変形式を適用した結果として得られる出力値を表す。
[0034] 少なくとも1つのインジケータは、1つのフィールド用の値の列に関する妥当性検査情報を示し、その列は入力データのそれぞれのレコードに単一変形式を複数回適用することを表す。
[0035] 視覚フィードバックは妥当性検査情報に基づいて計算された統計を含み、その統計は入力データの複数レコードに妥当性検査基準を適用した結果を表す。
[0036] 統計は一定の時間間隔で計算される。
[0037] 視覚フィードバックは妥当性検査基準に関連するカスタム・エラー・メッセージを含み、そのカスタム・エラー・メッセージは入力データのレコードに妥当性検査基準を適用した特定のインスタンスの結果に関する情報を示す。
[0038] この方法は、入力変数とは関係なく少なくとも1つの定数として定義された出力をインターフェースで受信することをさらに含む。
[0039] この方法は、変形式の結果を表す期待値を受信することをさらに含み、妥当性検査情報を決定することは、変形式を含み、それぞれの変形中のマップ済み関係について生成された出力データと期待値とを比較することを含む。
[0040] 他の態様では、概略的に、入力データセットの1つ又は複数の要素を、出力データセットの1つ又は複数の要素にマッピングするためのシステムが記載されている。このシステムは、入力データセットを記憶する入力データ記憶システムと、出力データセットを記憶する出力データ記憶システムと、ユーザ入力を受信し、データ処理の結果を提示するためのインターフェースを提供するように構成されたデータ処理システムとを含む。受信し提示することは、所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係をインターフェースで受信することであって、マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素の識別情報をインターフェースで受信することと、入力変数にマッピングされた入力データセットの要素に関連する入力データセットからの入力データに基づいて、変形式によりデータ処理システムから出力データを生成することと、出力データセットの識別済み要素のうちの1つ又は複数に関連する有効値の1つ又は複数の特性を定義する妥当性検査基準に基づいて、生成された出力データに応じて妥当性検査情報を決定することと、決定された妥当性検査情報に基づいて視覚フィードバックをインターフェースに提示することを含む。
[0041] 他の態様では、一般に、入力データセットの1つ又は複数の要素を、出力データセットの1つ又は複数の要素にマッピングするためのシステムが記載されている。このシステムは、入力データセットを記憶するための手段と、出力データセットを記憶するための手段と、ユーザ入力を受信し、データ処理の結果を提示するためのインターフェースを提供するための手段とを含む。受信し提示することは、所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係をインターフェースで受信することであって、マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素の識別情報をインターフェースで受信することと、入力変数にマッピングされた入力データセットの要素に関連する入力データセットからの入力データに基づいて、変形式によりデータ処理システムから出力データを生成することと、出力データセットの識別済み要素のうちの1つ又は複数に関連する有効値の1つ又は複数の特性を定義する妥当性検査基準に基づいて、生成された出力データに応じて妥当性検査情報を決定することと、決定された妥当性検査情報に基づいて視覚フィードバックをインターフェースに提示することを含む。
[0042] 他の態様では、一般に、コンピュータ可読媒体は、入力データセットの1つ又は複数の要素を、出力データセットの1つ又は複数の要素にマッピングするためのコンピュータ・プログラムを記憶する。このコンピュータ・プログラムは、所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係をインターフェースで受信することであって、マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素の識別情報をインターフェースで受信することと、入力変数にマッピングされた入力データセットの要素に関連する入力データセットからの入力データに基づいて、変形式によりデータ処理システムから出力データを生成することと、出力データセットの識別済み要素のうちの1つ又は複数に関連する有効値の1つ又は複数の特性を定義する妥当性検査基準に基づいて、生成された出力データに応じて妥当性検査情報を決定することと、決定された妥当性検査情報に基づいて視覚フィードバックをインターフェースに提示することをコンピュータに実行させるための命令を含む。
[0043] 諸態様は以下の利点のうちの1つ又は複数を含むことができる。
[0044] あるケースでは、1つの入力データセットが1つの出力データセットにマッピングされる時に(例えば、データ・フィードをデータ・ウェアハウスにロードする時に)、入力データセットが多数のフィールド(例えば、数千個のフィールド)を有し、出力データセットがそれより少数のフィールド(例えば、100個未満のフィールド)を有する可能性がある。データ管理システムは、1つ又は複数の入力フィールドからの情報を所与の出力フィールドにどのようにマッピングするかという指定を提供するマッピングを使用する。ユーザが(「マッピング・プロセス」中に)マッピングを構成できるようにするために、データ管理システムのためのユーザ・インターフェースが提供される。
[0045] ユーザ・インターフェースは、比較的経験不足のユーザがテスト値及び妥当性検査情報を表示して、マッピングの結果が意図するものと一致することをユーザが検証し、エラーを低減できるようにする、テスト及び妥当性検査機能を含む。妥当性検査機能は、より経験豊富なユーザが前もって妥当性検査規則を出力データセットの要素に関連付けることができるようにし、それはマッピング・プロセス中に後で適用することができる。例えば、1人又は複数の経験豊富なユーザは、多種多様な入力データ記憶システムに記憶された多数の入力データセットからのデータのためのリポジトリとして働く出力データ記憶システムに記憶された出力データセットの要件について知識を有する可能性がある。経験豊富なユーザがすべての入力データセットのフィールドを出力データセットの適切なフィールドにマッピングすることは実用的ではない可能性がある。ユーザ・インターフェースは、経験豊富なユーザが妥当性基準を施行して、経験豊富なユーザが行わないと思われるが、初心者ユーザが行う可能性のある潜在的エラーを捕捉するため、又は初心者ユーザが把握しないと思われる出力データセットに関連する特定の規約を満足するための方法を依然として提供しながら、異なる初心者ユーザが入力データセットのそれぞれについてマッピングを行えるようにするものである。
[0046] より経験豊富な又はより専門的なユーザによって提供される規則に基づくテスト及び妥当性検査をユーザ・インターフェースに統合することにより、あまり経験豊富ではないか又はあまり専門的ではないユーザによってもたらされる潜在的エラー又は不一致は、より遅い時期(システム統合プロセス中)ではなく、より早い時期(マッピング・プロセス中)に捕捉することができる。このようなエラー又は不一致をより早い時期に捕捉することにより、潜在的に数桁分の費用節約を獲得することができる。異なるチームのユーザが論点を説明し、問題を識別するために必要な時間を削減するだけでなく、識別された後でその問題の修正をより容易なものにする。
[0047] 本発明のその他の特徴及び利点は、以下の説明並びに特許請求の範囲から明らかになるであろう。
[0048]データセット要素をマッピングするための模範的なシステムである。 [0049]データ管理システムの一例である。 [0050]データ処理グラフの一例である。 [0051]トランスフォーム(transform)の一例である。 [0052]規則入力インターフェースの一例である。 [0053]トランスフォーム・ビュー・インターフェース(transform view interface)及び関連要素の一例である。 [0054]トランスフォーム・ビュー・インターフェースの動作に関する手順を示すフローチャートである。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0055]トランスフォーム・ビュー・インターフェースの動作の一例である。 [0056]トランスフォーム・ビュー・インターフェースの一例である。 [0057]リネージ・ダイアグラムの一例である。 [0058]トランスフォーム・ビュー・インターフェースの一例である。 [0059]妥当性検査規則インターフェースの一例である。
[0060] 図1を参照すると、データセット要素をマッピングし、マップ済みデータセット要素によりデータを処理するためのシステム10は、記憶装置又はオンライン・データ・ストリームへの接続など、1つ又は複数のデータ・ソースを含むことができるデータ・ソース12を含み、そのそれぞれは、様々な記憶フォーマット(例えば、データベース・テーブル、スプレッドシート・ファイル、フラット・テキスト・ファイル、又はメインフレームによって使用される固有フォーマット)のいずれかでデータを記憶することができる。実行環境14はデータセット・マッピング・モジュール16とデータセット処理モジュール22とを含む。実行環境14は、UNIXオペレーティング・システムなどの適切なオペレーティング・システムの制御下で1つ又は複数の汎用コンピュータ上で処理され(hosted)うる。例えば、実行環境14は、ローカル(例えば、SMPコンピュータなどのマルチプロセッサ・システム)又はローカル分散(例えば、クラスタ又はMPPとして結合された複数プロセッサ)或いはリモート又はリモート分散(例えば、LAN又はWANネットワークを介して結合された複数プロセッサ)若しくはこれらの任意の組み合わせの複数の中央演算処理装置(CPU)を使用するコンピュータ・システムの構成を含む、複数ノード・パラレル・コンピューティング環境を含むことができる。
[0061] 以下により詳細に記載されているように、データセット・マッピング・モジュール16は、入力データセットと出力データセットとの間でデータをマッピングするためのマッピング情報を記憶する。データセット処理モジュール22は、データ・ソース12に記憶された入力データセットからデータを読み取り、記憶したマッピング情報により、例えば、データに適用すべき変形式を含み、データ記憶システム26に記憶されたマッピング情報24に基づいて、データを処理する。データ・ソース12を提供する記憶装置は、実行環境15に対してローカルであり、例えば、実行環境14を実行するコンピュータに接続された記憶媒体(例えば、ハード・ディスク・ドライブ18)上に記憶される場合もあれば、実行環境14に対してリモートであり、例えば、ローカル・エリア・データ・ネットワーク又は広域データ・ネットワークにより実行環境14を実行するコンピュータと通信しているリモート・システム(例えば、メインフレーム20)上で処理される場合もある。
[0062] データセット・マッピング・モジュール16は、マッピングされているデータに基づく可視表現を(例えば、ディスプレイ上に示されたユーザ・インターフェースにより)ユーザに対して表示する。データ記憶システム26は開発環境28にとってもアクセス可能であり、その環境で開発者30は、データ記憶システム26に記憶され、データを処理し表示するためにデータセット処理モジュール22によって使用されるプログラムを開発することができる。実現例によっては、開発環境28は、頂点(コンポーネント又はデータセット)間の有向リンク(作業要素の流れを表す)によって接続された頂点を含むデータフロー・グラフとしてアプリケーションを開発するためのシステムである。例えば、このような環境は、参照により本明細書に組み込まれ、「Managing Parameters for Graph-Based Applications」という名称の米国特許公報第2007/0011668号により詳細に記載されている。
[0063] データセット処理モジュール22は、種々の形式のデータベース・システムを含む様々なタイプのシステムからのデータを処理することができる。データは、場合によってはヌル値を含み、それぞれのフィールド(「属性」又は「列」とも呼ばれる)用の値を有するレコードとして編成することができる。まず、データ・ソースからデータを読み取る場合、データセット処理モジュール22は、典型的に、そのデータ・ソース内のレコードに関する何らかの初期フォーマット情報から始める。(情況によっては、データ・ソースのレコード構造が最初に知られていない可能性があり、むしろデータ・ソースの分析後に決定される可能性があることに留意されたい。)レコードに関する初期情報としては、別個の値を表すビット数、レコード内のフィールドの順序、及びビットによって表される値のタイプ(例えば、文字列、符号付き/符号なし整数)を含むことができる。データセット処理モジュール22はデータ・ソースからレコードを読み取る時に、変形式を適用して、中間データ及び出力データを生成する。データセット・マッピング・モジュール16はこのデータにアクセスすることができ、データセット・マッピング・モジュール16のユーザ・インターフェースでユーザに対してデータの表現を表示する。
[0064] 図2は、システム10を使用して実現することができ、あるデータセットの要素を他のデータセットの要素にマッピングするための模範的なデータ管理システム300を示している。この例では、システム300は入力データ記憶システムに記憶された1つ又は複数の入力データセット310a、310bを含み、個々の入力データセット(例えば、データベース・テーブル)はシステム300への入力として機能することができる複数の個別要素を有することができる。入力データセット310aは、入力312a、312b、312c、312d(例えば、データベース・テーブルのフィールド又は列)を有する。さらに、データ管理システム300は出力データ記憶システム(入力データ記憶システムと同じものにすることができる)に記憶された1つ又は複数の出力データセット320a、320bも有し、個々の出力データセット(例えば、データベース・テーブル)はシステム300の出力として機能することができる複数の個別要素を有することができる。出力データセット320aは、出力322a、322b、322c、322d(例えば、データベース・テーブルのフィールド又は列)を有する。データ管理システム300は、入力312と出力322とのマップ済み関係を示すマッピング340を有し、任意選択で、入力から出力にマッピングされる要素に関連する指定の値又は特性を変換する。データ管理システム300は、マッピングによって定義された変形を実行し、ユーザ・インターフェースによりユーザと対話するためのデータ処理システム(例えば、データセット処理モジュール22によって実行されるデータフロー・グラフ)を含み、データベース・サーバ350又はその他のコンピューティング・システムに併せて動作することができる。いくつかの実装例では、データ管理システム300のデータ処理システムは、マッピング340を使用して、入力データセット310aからのデータを出力データセット320aにインポートし、入力データセット310aから出力データセット320aにインポートされるデータ(例えば、個別レコード)に変形を適用する。また、いくつかの実装例では、データ管理システム300のデータ処理システムは、マッピング340を使用して、より遅い時期にデータに適用される変形をユーザが設計するのを支援するか及び/又はデータをインポートするために異なるデータ処理システムを使用する。
[0065] これらの図では、実線が付いた先端閉鎖矢印はデータの流れを示し、点線が付いた先端開放矢印は図の説明に指定されているように他の種類の関連づけを示している。
[0066] いくつかの入力がいくつかの出力に直接マッピングする場合がある。例えば、データ管理システム300は変形せずに入力312aを出力322aに直接渡す。入力312aは「ラストネーム(Last Name)」というフィールドに対応することができ、出力322aは「Lネーム(LName)」というフィールドに対応することができ、どちらのフィールドも同じフォーマットで同じデータ論理データ値を記憶するためのものであるので、入力データセット310aのレコードが出力データセット320aにインポートされる時にデータ値の変形はまったく不要になる。いくつかの入力が1つの出力にマッピングする場合があり、データ管理システム300はその入力に関連するデータを変形することができる。例えば、入力312cを介してデータ管理システム300によってマッピングされる要素は、計算を実行するか又は式を適用してその要素に関連するデータ値又はその要素に関連する特性を変更することにより変形されうる(例えば、入力データセット310a内のレコードの所与のフィールド内のデータ値は、そのレコードが出力データセット320aにインポートされる時に変形される)。この変形は、データ値を同じ状態に保持しながらデータ・タイプを変形することを含む場合もあれば、例えば、測定単位又は大文字使用などの特性を変更するためにデータ値を変形することを含む場合もある。いくつかの入力が1つの出力にマッピングする場合があり、データ管理システム300は、所定の基準に依存する変動方式で入力を変形することができる。例えば、入力312dを介してデータ管理システム300によってマッピングされる要素に関連するデータの一部は所与の基準に基づいて、ある変形が適用される可能性があり、同じ入力312dを介してデータ管理システム300によってマッピングされる要素に関連するその他のデータは所与の基準に基づいて、異なる変形が適用される可能性がある。どの変形がそのデータに適用されるかを決定するための基準は、例えば、データ管理システム300内の計算ロジック302によって決定することができる。計算ロジック302は、例えば、以下により詳細に記載されているように、ユーザがユーザ・インターフェースで式を入力するか又は規則を定義することによって提供することができる。さらに、これらの例では、出力322bにマッピングされたデータを生成するために入力312b及び312cからのデータが使用されるなど、単一出力にマッピングされたデータを生成するために2つ以上の入力からのデータに対して変形を行うことができる。例えば、出力322bは、その値が入力312b及び312cに対応するフィールドの値の関数であるフィールドに対応することができる。従って、所与の1つの出力と1つ又は複数の入力とのマップ済み関係は、単一入力の識別情報又は1つ又は複数の識別された入力に適用される変形の指定を含むことができる。1つ又は複数の入力を1つの出力にマッピングする際に使用される変形は、以下により詳細に記載されているように、適用すべき式又は実行すべき計算を定義するデータ構造の形を取ることができ、様々なデータ処理コンテキストで使用可能なトランスフォームと呼ばれるものである。データ管理システム300内のマッピング340は、1組のトランスフォーム130a、130b、130c、130dを使用して実現される。
[0067] トランスフォームは、1つ又は複数の可能な出力を生成するために1つ又は複数の入力に対して実行される動作を定義する。いくつかの実装例では、トランスフォームは、最初に所定のフォーマットを有するデータ構造として記憶され、その後、実行可能な形にコンパイルされる。トランスフォームは、データフローを表す要素をリンクすることによりデータ処理コンポーネントが接続されたデータフロー・グラフなど、グラフベースの計算のコンテキストで使用することができる。例えば、図3Aの単純なデータフロー・グラフ130は、入力として2つのデータセット132、134(例えば、常連搭乗客データ及び定期便予約データ)を取り、まとめて使用できるように個別のフォーマット・コンポーネント136、138で各セット内のデータをフォーマットし、結合コンポーネント140でそれらを結合して出力データセット142を生成する。トランスフォーム自体は、グラフ130内のようにグラフベースの計算によって実現される場合もあれば、それによってグラフ130が構成される個別コンポーネント136、138、及び140など、グラフのコンポーネント内に実現される場合もある。
[0068] トランスフォームはまた、「ビジネス・ルール」と呼ばれるデータ処理構成体を使用して実現することもできる。ビジネス・ルールは、例えば、あるフォーマットから他のフォーマットにデータを変換するため、データに関する決定を行うため、又は1組の入力データに基づいて新しいデータを生成するために使用可能な1組の基準として表すことができる。例えば、図3Bでは、定期便予約システムのレコード102は、乗客の名前104、その乗客が今年航空機を利用したマイル数106、この乗客のチケットのクラス108、並びにこの乗客が着席した座席の列110を示している。ビジネス・ルールは、このような乗客を搭乗グループ1に入れなければならないことを示している。ビジネス・ルールは一般に人間にとって理解しやすいものであり、即ち、「ファーストクラスの乗客はグループ1に入る」などであるが、データを操作するために使用するには、その前にコンピュータが理解できるものに変換する必要がある可能性がある。ビジネス・ルールは、1つ又は複数のデータ・ソース、例えば、入力データセット100からレコード102などの入力レコードを受信し、乗客の名前104並びにその乗客が入るグループ118を示す出力レコード、例えば、レコード114を出力データセット120に挿入するトランスフォーム112を使用して実現することができる。入力及び出力データセットはデータ・ストリームと呼ぶこともできる。
[0069] 非専門ユーザに関するビジネス・ルールを実現するトランスフォームの作成及び操作を単純にするために、このようなユーザがトランスフォームに何を実行して欲しいかをコンピュータ・システムに指示するツールであって、このようなユーザが熟知しているフォーマットでルール・セット(rule set)と呼ばれる1つ又は複数のビジネス・ルールのセットを処理するためのツールが提供される。ルール・セットは、単一トランスフォームを生成するルールのセットである。1つのルールは、入力次第でそのルールの出力について種々の値を計算する1つ又は複数のルール・ケース(rule case)で構成することができる。また、1つのルールは他のルールも含むことができる。1つのルール・セット内のいくつかのルールは追加又は代替出力に関する値を生成することができる。1つのルール・セットは他のルール・セットを含むことができ、このような他のルール・セットは「含まれる(included)」ルール・セットと呼ぶ。
[0070] 図4はビジネス・ルール・エディタ200を示しており、これは、ビジネス・ルールの特性を指定するためのユーザ・インターフェースの一例である。ビジネス・ルール・エディタ200は、入力データセットの要素を出力データセットの要素にマッピングし、データ管理システム300で使用される対応マッピング340を生成するためのユーザ・インターフェースのコンポーネントにすることができる。ビジネス・ルールの入力は左側にリストされ、ビジネス・ルールの出力は右側にリストされる。ビジネス・ルール・エディタ200内のトリガ列202、204、206、208は使用可能なデータ値に対応し、行210a〜210hはルール・ケース、即ち、使用可能なデータ値を関連させる基準のセットに対応する。あるルール・ケースが基準を有する各トリガ列について、所与のレコード(例えば、図3Bの102)のデータ値がトリガ基準を満たす場合、そのルール・ケースはそのレコードに適用される。あるルール・ケースが適用される場合、1つ又は複数の出力列212に基づいて出力が生成される。その入力関係のすべてが満足されているルール・ケースは「トリガ済み(triggered)」と呼ぶことができる。それぞれの出力列212は潜在的な出力変数に対応し、適用可能な行210a〜210hの対応するセル内の値は、その変数に関する出力がある場合に、その出力を決定する。セルは、変数に割り当てられる値を含む場合もあれば、以下に述べるように、出力値を生成するために評価しなければならない式を含む場合もある。図4には1つしか示されていないが、2つ以上の出力列が存在する可能性もある。
[0071] ビジネス・ルールの編集に関しては、出力変数は「デフォルト値」を有し、これは式であり、単純に入力変数の名前である式を含む。出力変数はまた、より複雑なロジックを表すルールによって計算することもできる。ユーザがビジネス・ルールを編集する場合、ユーザは出力変数を表示し、出力変数に対応するデフォルト値セル上にサイドバーから入力変数をドラッグすることによってマッピングを確立することができる。また、ユーザは、出力変数に関するデフォルト値式を直接編集することもできる。さらに、特定の出力を計算するためにより高度なロジックが必要な場合、ユーザはその出力を計算するために1つ又は複数のルールを作成することができる。
[0072] ビジネス・ルールを編集する場合、ユーザは、出力変数に関する技術情報を含む出力変数グリッド内のデフォルト値を割り当てることができる。例えば、ユーザは、ルール・セットを示す主要書式から出力に関するルールを作成することができる。マッピング340を生成するためのユーザ・インターフェースのいくつかの実装例では、ユーザがルールを作成する時に、ユーザがデフォルト値を確認する可能性があり、ユーザがデフォルト値を割り当てる時に、対応するルールが使用可能である可能性がある。
[0073] ビジネス・ルールは非専門ユーザが作成し操作することができるので、複数ユーザのグループでは、意図した通りに機能するルールを作成し操作するユーザの能力が様々になる可能性がある。ビジネス・ルールを作成し操作する方法について初歩的に又は不完全に理解しているユーザがいる可能性もあれば、技術的に熟練し、ビジネス・ルールの作成及び操作のあらゆる面を完全に理解しているユーザがいる可能性もある。また、ビジネス・ルールの根底にある意味、例えば、その実世界適用について知識があるユーザがいる可能性もあれば、ビジネス・ルールが適用される方法についてまったく知識がないユーザがいる可能性もある。例えば、所得税に関する知識が限られているか又はまったくないユーザは、所得税の申告書を処理するために使用されるビジネス・ルールの目的を完全に理解していない可能性がある。ビジネス・ルールの実世界適用に関するユーザの知識は、ビジネス・ルールに関するユーザの技術知識とは無関係である可能性がある。例えば、高い技術知識を有するが適用知識は低いユーザはビジネス・ルールを作成することができ、高い適用知識を有するユーザは、そのビジネス・ルールを再検討して、そのビジネス・ルールが利用される時に意図された目的を達成すること確認できるであろう。この例では、高い技術知識を有するユーザはビジネス・ルールの適用に関して初心者ユーザと見なされる可能性があり、高い適用知識を有するユーザはビジネス・ルールの適用に関して経験豊富なユーザと見なされる可能性がある。他の例では、技術的に熟練しているユーザは、技術知識が限られているユーザによって作成されたビジネス・ルールを再検討して、そのビジネス・ルールが技術的要件を満たすかどうかを判断することができるであろう。これらの例では、技術的に熟練しているユーザは経験豊富なユーザと見なされる可能性があり、技術知識が限られているユーザは初心者ユーザと見なされる可能性がある。さらに、システムによっては、多数のユーザによって多数のビジネス・ルールが生成され、それぞれのユーザがルール全体のごく一部しか生成しない場合もある。それぞれのルールの機能はそれぞれの作成者操縦者の熟練度を反映することになる。
[0074] ユーザ・インターフェースは、入力レコードからのフィールドと出力レコード内のフィールドとのマッピングなど、入力データセットと出力データセットの要素間のマッピング340の生成を可能にすることができる。例えば、データ・フィードをデータ・ウェアハウスにロードする時に、このフィード(入力)が100個のフィールドを有する可能性がある。フィード内のデータを使用して、データ・ウェアハウス(出力)内の50個のフィールドを埋めることになる。この例のマッピング340は、入力フィールドが出力フィールドにどのようにマッピングするかという指定を提供する。
[0075] いくつかのケースでは、個別入力フィールドが個別出力フィールドに直接マッピングする。従って、出力の多くは、単純にユーザ・インターフェース内で特定の入力フィールドの値をそれに割り当てることによって計算される。その他の出力は、式、定数、入力フィールドの単純な組み合わせ(例えば、文字列連結)、或いはif/then/elseロジック又は関数呼び出しを含む、より複雑なロジックによって計算することができる。また、一部の出力はビジネス・ルールを使用して計算することができる。ユーザ・インターフェースは、ビジネス・ルール・エディタ200を含む、適切なエディタを提供することができる。
[0076] いくつかの実装例では、データ管理システム300は、より複雑なタスクに関連するユーザ・インターフェース内で直接フィードバックを受信しながら、ユーザがより単純なタスクを実行できるようにするユーザ・インターフェースを含む。例えば、以下により詳細に記載されているように、妥当性検査のタスクは、より経験豊富なユーザによって前もって準備された妥当性検査指定を介して組み込むことができる。複数の関連タスクを容易にする単一ユーザ・インターフェースは、所望のマッピングを提供するようにトランスフォームを操作又は変更することにより、ユーザが入力データセットの要素を出力データセットの要素にマッピングできるようにする。さらに、ユーザは、トランスフォームを操作することが入力と出力とのマッピングにどのように影響するかを1つの位置で確認することができる。例えば、ユーザ・インターフェースを使用して、ユーザは、トランスフォームが意図した通りに機能するようにエラーを捕捉し修正することができる。
[0077] テスト・データは、1つ又は1組のトランスフォームが意図した通りに機能するかどうかを評価するのを支援することができる。テスト・データは、例えば、1組のプロトタイプ入力及び予想出力を使用して提供することができる。
[0078] いくつかの例では、ユーザはテスト・データを生成するために使用することができる実データを有する。ユーザがテストするための実データを持たないケースを処理するために、システムは、例えば、一度にレコード1つずつ、テスト・データを入力するためのデータ入力書式を提供することができる。ユーザは、入力データセット内のフィールドのそれぞれについて値をタイプ入力することができ、これらのレコードはテスト・データセットに追加される。
[0079] データ管理システム300は、トランスフォームに関する構文規則を提供することができる。構文規則は、適切にコンパイル及び/又は実行することになるトランスフォームの構造を示す。データ管理システムを操作するユーザがいずれかのトランスフォームを変更する場合、ユーザの変更は構文規則に適合しなければならない。さらに、データ管理システム300は、トランスフォームの出力に関する妥当性検査規則を提供することができる。妥当性検査規則は、出力データセットの所望のフォーマット又はその他の特性により有効なものとして受け入れられる出力のタイプを示す。ユーザがいずれかのトランスフォームを実データ又はテスト・データに適用する場合、トランスフォームの出力は妥当性検査規則に適合しなければならない。妥当性検査規則及び構文規則は、上記の通り、ルール・セットとして提供するか、トランスフォームの出力に適用可能なその他の形の実行可能ロジックとして提供することができる。
[0080] いくつかの例では、ユーザは、単一ユーザ・インターフェースで1つ又は複数のトランスフォームにアクセスすることができる。このユーザ・インターフェースは、マッピング340に関連するトランスフォームの一部又は全部のビューをユーザに提供する。さらに、単一インターフェースは、トランスフォームのいずれかが変更又は実行される時に、トランスフォーム並びにテスト・データに対して構文規則及び妥当性検査規則を自動的に適用することもできる。
[0081] 従って、このインターフェースにより、ユーザは、入力の集合がどのように評価され変形されるかを含み、マッピングが入力の集合を出力の集合にどのように関連させるかを表示することができる。
[0082] 図5は、必ずしも重要な専門技術を備えていない初心者ユーザ402によって操作可能なマッピング・ビュー・インターフェース500の一例を示している。マッピング・ビュー・インターフェース500は、それぞれが1つ又は複数の入力と所与の出力とのマップ済み関係を指定する行を提示する。インターフェース500は、入力し表示し編集することができる変形式の形で表示されたトランスフォーム502に関する列を含む。変形式は入力データセットのフィールドにマッピングされた入力変数を指す。いかなる変形もなく入力が出力に直接マッピングされる場合、トランスフォーム列は、いずれの変形式も含まずに、単純に入力を識別することができる。いくつかの実装例では、トランスフォーム502は一定値を出力に直接マッピングすることができ、結果として得られる出力はいずれかの入力変数に基づいて変化しない値を有することになる。
[0083] トランスフォーム502は、インターフェースから自動的に実行するとともに、変更し、その変更を使用して再実行することができる。初心者ユーザ402は、自分が生成するか又は変更するトランスフォーム502の出力の妥当性を保証するための専門技術を備えていない可能性があるが、マッピング・ビュー・インターフェース500は、より経験豊富なユーザの専門技術を取り入れる追加情報を初心者ユーザ402に提供し、初心者ユーザ402による潜在的エラーから保護するための追加の安全措置も提供する。
[0084] トランスフォームは、1つ又は複数のコンポーネントを含むデータフロー・グラフ130によって実装され得る。データフロー・グラフ130は、そのトランスフォームの機能を実行する実行可能コードを含む。マッピング・ビュー・インターフェース500は、そのコードを抽出し、それを直接実行することができる。
[0085] 初心者ユーザ402がトランスフォーム502を変更すると、マッピング・ビュー・インターフェース500は、その変更が受け入れ可能であるかどうかを評価するために変更済みトランスフォームに構文規則510を適用することができる。構文規則510は、トランスフォームについて有効な構造を指定する。不適切に構造化されたトランスフォームは適切に実行できない可能性がある。トランスフォームに無効な構造を与えるように初心者ユーザ402がトランスフォームを変更する場合、トランスフォーム・ビュー・インターフェースは、構文規則を使用して無効性を識別し、その問題をユーザに示すことになる。構文規則510は、トランスフォームの構造及び実行に向けられた専門技術を備えた経験豊富なユーザ404bが定義することができ、その結果、初心者ユーザ402はトランスフォームについて経験豊富なユーザのより優れた理解の恩恵を受けることになる。
[0086] 使用中は、少数の経験豊富なユーザ404a、404b、404cが存在する可能性があるが、多数の初心者ユーザ402は、いずれもマッピング・ビュー・インターフェース500のインスタンスを使用して同様のデータセットに対して機能するトランスフォームを操作する。経験豊富なユーザ404a、404b、404cは、多くの潜在的な操作シナリオにおいて多くの潜在的な初心者ユーザが使用する構文規則及び妥当性検査規則を定義することができる。このようにして、多くの潜在的な初心者ユーザはいずれも、経験豊富なユーザの知識及び専門技術を手元に備えることになる。
[0087] さらに図5を参照すると、各トランスフォーム502は出力名508に関連付けられている。出力名508は、データ管理システム自体が使用する変数名又は他の識別名とは対照的に、変形された出力の「実世界」の機能を表すように選択することができる。出力名508は、トランスフォーム502がデータを提供する出力データセット320内のフィールドに対応する。例えば、トランスフォーム502が飛行機利用者のデータベース向けのデータを処理する場合、出力名508は、航空会社、定期便、乗客識別名、又は他の実世界の概念を扱う必要があるデータベース内のフィールドを表すことができる。
[0088] 各トランスフォーム502はテスト値504に関連付けることもできる。ユーザは、そのトランスフォームが実行されるテスト・データ512を選択することができ、その結果、テスト・データは、トランスフォーム502用の入力データセット310として使用するためにフォーマットされる。テスト・データ512内の所与のレコード(例えば、初期レコード)に対して実行されたトランスフォームの結果はテスト値504として示されている。テスト・データ512は、初心者ユーザ402によるか、又は様々なテスト・シナリオを定義するための専門技術を有する経験豊富なユーザ404a、404b、404cによって生成することができ、その結果、初心者ユーザ402は単純にトランスフォーム502を編集し、その結果を表示することができる。
[0089] 各トランスフォームは妥当性検査506に関連付けることもできる。初心者ユーザ402がテスト・データ512を使用してトランスフォームを実行する場合、マッピング・ビュー・インターフェース500は妥当性検査規則514を適用して、結果として得られるテスト値504が有効であるかどうかを判断することができる。トランスフォーム502の出力は、そのフォーマット又は内容に関する制約を有する可能性があり(例えば、出力データセット320の特性に基づく)、妥当性検査規則514は、出力についてどのフォーマット又は内容が有効であるかを指定する。例えば、トランスフォームは、特定の範囲内に留まらなければならない数の形で出力を提供する場合もあれば、特定の長さであるか、辞書通りに正しく綴られているか、又はその他の特徴を備えていなければならない単語の形で出力を提供する場合もある。妥当性検査規則514は、出力が所定の1組の可能値のうちの1つでなければならないことを指定することができる。妥当性検査規則514は、出力がブランク又はヌル値に対応してはならないことを指定することができ、これは、ブランク又はヌル値を発生する出力に入力を接続するトランスフォームによって引き起こされる場合もあれば、いずれの入力にもマッピングされない出力によって引き起こされる倍もある。妥当性検査規則514は、種々の出力間の制約が満足されることを保証するためにマップ済み出力にまとめて適用することができる。例えば、2つの出力は個々に有効値を有する可能性があるが、その合計が所与の制約を満足しない場合もあれば、一方の出力値が有効であるかどうかの判断が他の出力の値に依存する場合もある(例えば、「育児休暇」フィールドの有効値は「性別」フィールドが男性という値を有するか又は女性という値を有するかに依存する可能性がある)。いくつかの実装例では、妥当性検査規則514は、2次又は外部情報源に併せて機能する可能性がある。例えば、トランスフォーム502を使用して、第1のフォーマットから第2のフォーマットにデータを変換することができる。妥当性検査規則は、第1のフォーマットで表されたデータに関する有効値を示し、第2のフォーマットで表されたデータに関する有効値も示す、テーブルなどのデータ構造を参照することができる。
[0090] テスト値504が妥当性検査規則514によって指定されたフォーマット又は内容の制約の範囲外である場合、妥当性検査506はテスト値504に関する問題があり、従って、潜在的にトランスフォーム502に関する問題があることを示すことになる。経験豊富なユーザ404a、404b、404cは、所与のデータセットを分析し、何がそのデータセットに関する有効データを構成するかを決定する方法に関する経験豊富なユーザの知識を参考にして、妥当性検査規則514を定義することができる。また、経験豊富なユーザは、技術的プログラミング及びデータ管理知識も参考にして、実行可能コードとして記憶し、トランスフォームの出力に適用することができる妥当性の制約を妥当性検査規則514に体系化することもできる。従って、マッピング・ビュー・インターフェース500を操作する初心者ユーザ402は、必ずしも、テスト・データ512の結果として得られるテスト値504を注意深く調べる必要はなく、むしろ、妥当性検査506を頼りにして、さらに注意を払わなければならない問題が存在するかどうかを確認することができる。
[0091] 図6は、ユーザがマッピング・ビュー・インターフェース500を使用してマッピング及びその関連トランスフォームを表示し操作できるようにするためにシステム300によって使用される模範的な手順600に関するフローチャートを示している。この手順は、602で、所与のトランスフォームの入力にマッピングされた入力データセットの要素(例えば、フィールド)に対応する入力データ値を提供するための1つ又は複数のレコードを含むテスト・データを取得する。次にこの手順は、604で、所与のトランスフォームの出力にマッピングされた出力データセットの要素に対応するデータ宛先(例えば、フィールド)を識別する。次にこの手順は、606で、トランスフォームの最新バージョンを含むマッピングの最新バージョンを取得する。「レコード・テスト・モード」では、この手順は入力データセットの単一テスト・レコードに妥当性検査規則を適用する。「データセット・テスト・モード」では、この手順は入力データセットの複数テスト・レコード(場合によっては、入力データセット内のすべてのレコード)に妥当性検査規則を適用する。
[0092] この手順は、608で、トランスフォームのうちの1つ又は複数に対する変更を表す新しい入力をユーザが入力したかどうかを判断する。ユーザが新しい入力を入力していない場合、この手順は、610で、トランスフォームの現行バージョンをテスト・データに適用する。次にこの手順は、612で、トランスフォームからの出力として受信された結果のテスト値に妥当性検査規則を適用する。この手順は、614で、変更済みトランスフォームを表示し、616で、変更済みトランスフォームから結果として得られるテスト値も表示する。さらに、この手順は、618で、テスト値が有効であるかどうかをユーザが評価できるように、妥当性検査規則を適用した結果に基づく妥当性検査情報を表示する。その出力が妥当性検査基準を満足しない特定のトランスフォームに妥当性検査情報が関連付けられる場合、妥当性検査情報は、(例えば、妥当性検査列の対応する行内のアイコン及び/又は説明文により)そのトランスフォームに視覚的に関連付けることができる。場合によっては、妥当性検査情報は、複数のトランスフォームの無効な出力又は複数のトランスフォーム間の無効な関係に関連付けられる可能性があり、その場合、妥当性検査情報は必ずしも任意の特定のトランスフォームに関連付けられない。また、この手順は、620で、トランスフォームによって使用される宛先の出力名も表示する。次にこの手順は、608に戻り、トランスフォームを変更する新しい入力をユーザが入力したかどうかを判断する。
[0093] 結果的に1つ又は複数の変更済みトランスフォームが得られる新しい入力をユーザが入力した場合、この手順は、622で、新しい入力に基づくトランスフォームを再コンパイルするトランスフォーム・コンパイラから変更済みトランスフォームを受信し、この手順は、624で、変更済みトランスフォームの構文もチェックする。構文が構文規則により無効である場合、この手順は、625で、ユーザが新しい入力の形で構文を訂正できるようにユーザに警告する。構文が有効である場合、この手順は、626で、変更済みトランスフォームを受け入れ、610でトランスフォームをテスト・データに適用することから始めて、上記の諸ステップを続行する。レコード・テスト・モードでは、変更済みトランスフォームを再コンパイルし、テスト・レコードに適用することは、ほとんどリアルタイムで(例えば、1秒未満で)行うことができ、トランスフォームが編集されるとユーザが構文規則及び妥当性検査規則に基づくフィードバックをライブで経験することになる。データセット・テスト・モードでは、変更済みトランスフォームを再コンパイルし、テスト・レコードに適用することは、ユーザ要求に応じて開始することができる。
[0078] 図7A〜図7Hは、マッピング・ビュー・インターフェース500との様々なユーザ対話の例を示している。このインターフェースは、変形式702(トランスフォームのテキスト表現)、テスト値704、妥当性検査712、及び出力708を含む。
[0079] 図7Aを参照すると、ユーザは変形式702を変更する。この変更によって形状不良の変形式が生成される場合、インターフェースは、供給された構文規則により感嘆符710が付いた形状不良の変形式を示す。
[0080] 図7Bを参照すると、構文を訂正した変更済み変形式702をユーザが提供したことに応じて、テスト値704が提供される。
[0081] 図7Cを参照すると、ユーザは、式によって変形された入力データに基づいて出力708用の値を計算する変形式702を入力する。
[0082] 図7Dを参照すると、ユーザは、複数の変形式702b、702cのうちの1つに基づいて出力708用の値を計算する変形式702aを入力する。
[0083] 図7Eを参照すると、ユーザは、その出力708用の値を計算するために他の変形式702bに依存する変形式702a入力する。
[0084] 図7Fを参照すると、ユーザは、他の変形式702aが依存する変形式702bを変更する。第1の変形式の出力708は、それに応じて更新される。
[0085] 図7Gを参照すると、変形式702が構文上、正しい場合でも、妥当性検査通知712はその変形式の出力に関する問題を示す。
[0086] 図7Hを参照すると、ユーザはテスト・データ708を表示する。妥当性検査通知712は、変形式702をテスト・データに適用する場合に関する問題を示す。
[0087] 図8は、納税申告用紙用の値を計算するための変形式を管理するために使用されるマッピング・ビュー・インターフェース500の実装例を表す模範的なマッピング・ビュー・インターフェース800を示している。マッピング・ビュー・インターフェース800は多くの行802a、802b、802cを有し、それぞれが出力フィールド804(例えば、この例では納税申告用紙の行)の名前、出力フィールド804に対応する出力値を計算するために実行される変形式806、テスト・データ(例えば、図5に示されているようなテスト・データ512)に適用される変形式806の計算値808の形のテスト値を含む。計算値808の1つが妥当性検査規則(例えば、図5に示されている妥当性検査規則514)の1つをトリガする場合、マッピング・ビュー・インターフェース800は計算値の近くに妥当性検査インジケータ810を表示して妥当性検査規則がトリガされたことを示し、ユーザは計算値を調査して、それが無効であるかどうか及び/又は関連変形式806を変更する必要があるかどうかを判断することができる。いくつかの実装例では、妥当性検査インジケータ810は計算値808と期待値との差を示す。例えば、変形式806は、前のある時点で適用されて出力値を生成している可能性がある。変形式806が同じ入力データに適用されると、計算値808は前に生成された出力値と同じになると予想することができる。いくつかの実装例では、計算値808の1つが構文規則(例えば、図5に示されている構文規則510)の1つをトリガする場合、マッピング・ビュー・インターフェース800はシンタックスエラー・インジケータ(図示せず)を表示する。
[0088] マッピング・ビュー・インターフェース500は、1つ又は複数のデータフロー・グラフによって実行された動作シーケンスにおいて複数の時点のいずれかで変形式、出力フィールド、及び計算値を表示するために使用することができる。マッピング・ビュー・インターフェース500は、1つ又は複数の変形式により変形されたデータの種々のフィールド内の値に関する情報を表示するために使用可能なリネージ・ダイアグラムを生成することができる。時には、データベース・ユーザは、特定のデータが種々のデータ・ソースからどのように導出されるかを調査したいと希望する場合がある。例えば、データベース・ユーザは、データセット又はデータ・オブジェクトがどのように生成されたか或いはどのソースからデータセット又はデータ・オブジェクトがインポートされたかを把握したいと希望する場合がある。データセットが導出されたソースまでデータセットを追跡することはデータ・リネージ追跡(又は「アップストリーム・データ・リネージ追跡」)と呼ばれる。時には、データベース・ユーザは、特定のデータセットがどのように使用されたか、例えば、どのアプリケーションが所与のデータセットを読み取ったかを調査したい(「ダウンストリーム・データ・リネージ追跡」又は「影響分析」と呼ばれる)と希望する場合がある。また、データベース・ユーザは、あるデータセットがどのように他のデータセットに関連するかを把握することに関心がある場合がある。例えば、ユーザは、データセットが変更される場合にどのテーブルが影響を受けるかを把握したいと希望する場合がある。
[0089] 図9は、(例えば、データフロー・グラフ内の種々のコンポーネントによって)適用された変形式を表すノード904a、904b、904c並びにアップストリーム入力テスト・データセット908からダウンストリーム出力データセット912へのアップストリーム及びダウンストリーム依存関係を表すノード同士を接続するリンク906を含むことを表すリネージ・ダイアグラム(lineage diagram)900を示している。入力データセット908からのテスト・データは、テスト・データを処理するために使用される変形式の適用を表すノード904a、904bに提供することができ、その結果はノード904cに伝搬され、そのノードは同様に変形式を適用し、テスト・データはリネージ・ダイアグラム900の一連のノード内のノードによってさらに変形され続ける。ユーザは、ノードのうちのいずれか1つを選択し、そのノードに関連する出力フィールド及び変形式を表示できるとともに、リンク906によって表された依存関係により、そのノードによって表された変形式によって処理されたデータに変形式を適用することに基づく出力フィールドの計算値も表示することができる。
[0090] 1つ又は複数のデータフロー・グラフが入力テスト・データセット908内のデータを処理している時に、リネージ・ダイアグラムを生成するために必要な情報を記憶することができる。リネージ・ダイアグラム内の各ノードは、変形式を適用した結果得られる計算式に関連付けることができる。いくつかのケースでは、ノード904d、904e、904fのうちの1つ又は複数は、そのノードに関連する妥当性検査規則のうちの1つ又は複数をトリガする計算値に関連付けられる。このような場合、リネージ・ダイアグラム900は、それについて妥当性検査規則がトリガされたノード904d、904e、904f上に妥当性検査インジケータ910a、910b、910cを表示する。ユーザは、マッピング・ビュー・インターフェース500を使用して、これらのノードのいずれかの出力フィールド、変形式、及び計算値を表示し、問題があるかどうか、例えば、変形式が無効なデータを生成するかどうかを判断することができる。いくつかのケースでは、リネージ・ダイアグラム900は、これらのノードのうちの1つが構文規則(例えば、図5の構文規則510のうちの1つ)をトリガした時期に関するインジケータも表示する。
[0091] また、ユーザは、リネージ・ダイアグラム900のビューも使用して、いくつかのノードが順に妥当性検査規則をトリガしたかどうかを判断し、無効なデータなどの妥当性検査問題の初期発生源を決定することができる。この例では、インジケータ910a、910b、910cによって示されるように、3つのノード904d、904e、904fのすべてが妥当性検査規則をトリガしている。ノード904d、904e、904fと、それに対応してノード904dからノード904eへ並びにノード904eからノード904fへのリネージ関係について、潜在的な妥当性検査問題があるかどうかを調べることができる。ノード904d内の変形式が無効なデータを生成し、そのデータが次にノード904e及び904fに伝搬し、これらのノードにおいて同様の妥当性検査規則もトリガすることは起こり得ることである。このような可能性を考慮すると、ユーザはまず、第1のノード904dの変形式及び計算値を表示して、それが3つのノードすべてに関する問題の発生源であるかどうかを判断することができる。
[0092] 図10は、多くの出力フィールド及び計算値を直ちに表示するために使用可能なテスト結果インターフェース1000を示している。例えば、テスト結果インターフェース1000は、データセット・テスト・モードでテスト・データに変形式を適用した結果を表示するために使用することができる。テスト結果インターフェース1000は、(行としての)テスト・データの複数のレコード1004a、1004b、1004cにそれぞれの関連変形式を適用したことを表す複数の出力フィールド1002a、1002b、1002cを(列見出しに)表示する。ユーザは、テスト結果インターフェース1000を表示して、テスト・データのいずれかが任意の妥当性検査規則をトリガするかどうかを含み、テスト・データの多くのレコードに対する多くの変形式を適用した効果を確認することができる。テスト結果インターフェース1000は、どのデータ(特定のレコード内の計算値)が妥当性検査規則をトリガし、無効になる可能性があるかを示す妥当性検査インジケータ1006aを表示することができる。また、テスト結果インターフェース1000は、それぞれの列(又は行)内の少なくとも1つのデータが妥当性検査規則をトリガしたことをユーザに示すために、その列(又は行)見出しに妥当性検査インジケータ1006bも表示することができる。この形式の表示は、テスト結果インターフェース1000によって提示されたデータのビューが非常に大きい時に、ユーザが個々のデータに関する妥当性検査インジケータ1006aを探し出すのを支援することができる。いくつかの実装例では、テスト結果インターフェース1000は、そのデータのうちのいくつのデータが妥当性検査規則をトリガしたか並びにいくつの異なる規則がトリガされたかなど、提示されたデータに関する統計1008も(例えば、ヒストグラムの形で)提示する。いくつかの例では、統計1008はテスト・データに対する変形式の種々の適用に応じて毎時又は毎日などの一定の間隔で計算され、その他の例では、統計はデータが表示される時に変形式を適用することによりリアルタイムで計算される。例えば、経験豊富なユーザ(例えば、図5の経験豊富なユーザ404b)は、毎日、テスト結果インターフェース1000を使用して、その日の間に他のユーザによって行われた変更によっていずれかの妥当性検査規則がトリガされたかどうかを確認することができる。
[0093] 図11は、ユーザが1組の妥当性検査規則1104a、1104b、1104cのトリガ条件1102a、1102b、1102cを表示し変更できるようにする、妥当性検査規則インターフェース1100を示している。いくつかの実装例では、妥当性検査規則は、例えば、本質的な情報の省略又は出力フィールドによって表された情報間の不一致など、妥当性検査規則が表すエラーのタイプを示す関連エラー・コード1106も有する。いくつかの実装例では、妥当性検査規則インターフェース1100は、ユーザが妥当性検査規則のいずれかによって使用される所与の入力に関する情報1110にアクセスできるようにし、その結果、ユーザはこの情報を入手するために異なるインターフェースにアクセスする必要がなくなる。
[0094] 妥当性検査規則は、ユーザが妥当性検査規則のトリガの特定のインスタンスに関する追加情報を探す時にユーザに対して関連のカスタム・エラー・メッセージ1108を表示させることもできる。例えば、ユーザは妥当性検査インジケータ(例えば、図9の妥当性検査インジケータ910a)をクリックする可能性があり、その場合、ユーザ・インターフェースはその妥当性検査規則に関する適切なカスタム・エラー・メッセージ1108を表示することになるか、又はユーザ・インターフェースは1組のデータによってトリガされた妥当性検査規則に関連するすべてのカスタム・エラー・メッセージのリストを表示する可能性がある。いくつかの例では、経験豊富なユーザ(例えば、図5の経験豊富なユーザ404c)は、妥当性検査規則に不慣れである可能性があり、ユーザ・インターフェースを操作している他のユーザに対して人間が読める情報を提供するためのエラー・メッセージを定義する。
[0095] 上記のマッピング手法は、コンピュータ上で実行するためのソフトウェアを使用して実現することができる。例えば、このソフトウェアは、1つ又は複数のプログラムされたか又はプログラム可能なコンピュータ・システム(分散、クライアント/サーバ、又はグリッドなど、様々なアーキテクチャのものにすることができる)上で実行される1つ又は複数のコンピュータ・プログラム内の手順を形成し、それぞれのコンピュータ・システムは、少なくとも1つのプロセッサと、少なくとも1つのデータ記憶システム(揮発性及び不揮発性のメモリ及び/又は記憶素子を含む)と、少なくとも1つの入力装置又はポートと、少なくとも1つの出力装置又はポートを含む。このソフトウェアは、例えば、データフロー・グラフの設計及び構成に関連する他のサービスを提供する、より大きいプログラムの1つ又は複数のモジュールを形成することができる。このグラフのノード(「コンポーネント」と呼ばれる)及びリンク(「データ・フロー」と呼ばれる)は、コンピュータ可読媒体に記憶されたデータ構造又はデータ・リポジトリに記憶されたデータ・モデルに適合するその他の編成済みデータとして実現することができる。
[0096] このソフトウェアは、汎用又は専用プログラマブル・コンピュータによって読み取り可能であるCD−ROMなどの記憶媒体上で提供するか、或いはそれが実行されるコンピュータに対しネットワークの通信媒体により配信(伝搬信号としてコード化)することができる。すべての機能は、専用コンピュータ上で、又はコプロセッサなどの専用ハードウェアを使用して、実行することができる。このソフトウェアは、ソフトウェアによって指定された計算の種々の部分が種々のコンピュータによって実行される分散方式で実現することができる。このようなコンピュータ・プログラムはそれぞれ、本明細書に記載された手順を実行するために記憶メディア又はデバイスがコンピュータ・システムによって読み取られた時にコンピュータを構成し操作するために、好ましくは、汎用又は専用プログラマブル・コンピュータによって読み取り可能な記憶メディア又はデバイス(例えば、ソリッドステート・メモリ又はメディア、或いは磁気又は光メディア)上に記憶されるか又はそれにダウンロードされる。また、本発明のシステムは、コンピュータ・プログラムとともに構成されたコンピュータ可読記憶媒体として実現されるものと見なすこともでき、このように構成された記憶媒体により、コンピュータ・システムは本明細書に記載された機能を実行するように特定かつ定義済みの方式で動作する。
[0097] 本発明のいくつかの実施形態について説明してきた。それにもかかわらず、本発明の精神及び範囲を逸脱せずに様々な変更が可能であることが理解されるであろう。例えば、上記のステップのいくつかは、順序とは無関係なものにすることができ、従って、上記のものとは異なる順序で実行することができる。
[0098] 上記の説明は例示のためのものであって、特許請求の範囲によって定義される本発明の範囲を限定するためのものではないことを理解されたい。例えば、上記の機能ステップのいくつかは、全体的な処理に実質的に影響を及ぼさずに異なる順序で実行することができる。その他の実施形態は以下の特許請求の範囲の範囲内である。

Claims (102)

  1. ユーザーインターフェースに視覚フィードバックを提示するためにコンピュータシステムによって実行される方法であって、
    所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係を受信することであって、前記マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、前記変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、
    それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素を識別することと、
    前記入力変数にマッピングされた前記入力データセットの前記要素に関連する前記入力データセットからの入力データに基づいて、前記変形式により前記データ処理システムから出力データを生成することと、
    前記出力データセットの前記識別済み要素のうちの1つ又は複数に関連付けられた有効値の1つ又は複数の特性を定義する妥当性検査基準を受信することと、
    前記妥当性検査基準に基づいて、前記生成された出力データに応じて妥当性検査情報を決定することと、
    前記決定された妥当性検査情報に基づいて視覚フィードバックを提示すること
    を含み、
    前記視覚フィードバックは、前記妥当性検査情報を表すインジケータであって、出力データとして今回提供された計算値と、所定の基準の前記妥当性検査基準に基づく期待される出力との差を示すインジケータを含む、方法。
  2. 前記マップ済み関係により、前記入力データセットから前記出力データセットに入力データをインポートすることをさらに含む、請求項1記載の方法。
  3. 前記入力データをインポートすることが、前記入力データセットの入力レコードのそれぞれのフィールド内の入力値に前記変形式を適用し、前記出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することを含み、前記入力レコードの少なくともいくつかのフィールドが前記入力変数にマッピングされた前記入力データセットの前記要素に対応し、前記出力レコードの少なくともいくつかのフィールドがそれぞれのマップ済み関係の出力にマッピングされた前記出力データセットの前記要素に対応する、請求項2記載の方法。
  4. 前記入力データセットの入力レコードのそれぞれのフィールド内の入力値に前記変形式を適用し、前記出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力レコードのデータフローを提供する前記入力データセットを表すノードと、前記出力レコードのデータフローを受信する前記出力データセットを表すノードとを含むデータフロー・グラフを実行することを含む、請求項3記載の方法。
  5. 前記マップ済み関係を指定するマッピングを記憶することをさらに含む、請求項1記載の方法。
  6. 前記妥当性検査情報を決定することが、前記妥当性検査基準の指定に基づいて決定することを含む、請求項1記載の方法。
  7. 前記ユーザーインターフェースが前記データ処理システムによって提供され、第1のユーザに提示され、前記妥当性検査基準の前記指定が第2のユーザから受信される、請求項6記載の方法。
  8. 前記生成された出力データを表す値を前記ユーザーインターフェースに提示することをさらに含む、請求項1記載の方法。
  9. 前記妥当性検査情報を決定することが、変形式を含む変形中のマップ済み関係のそれぞれについて生成された出力データを、前記変形中のマップ済み関係における前記出力データを有する前記出力データセットの前記識別済み要素に関連する前記妥当性検査基準に基づいて評価することを含む、請求項1記載の方法。
  10. 前記マップ済み関係が、変形式を含む複数の変形中のマップ済み関係を含む、請求項9記載の方法。
  11. 前記妥当性検査基準が、第1の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第1の識別済み要素に関連する第1の妥当性検査基準と、第2の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第2の識別済み要素に関連する第2の妥当性検査基準とを含む、請求項9記載の方法。
  12. 妥当性検査情報が、前記第1の識別済み要素に対応する第1のフィールドと、前記第2の識別済み要素に対応する第2のフィールドとを含む、生成された出力レコードに応じて決定される、請求項11記載の方法。
  13. 前記第1の妥当性検査基準が前記出力レコードの前記第2のフィールド内の値に依存する、請求項12記載の方法。
  14. 前記妥当性検査情報が、前記出力レコードの前記第1のフィールド内の値と、前記出力レコードの前記第2のフィールド内の値に依存する、請求項12記載の方法。
  15. 変形式について有効な構造を示す構文情報を提供することをさらに含む、請求項1記載の方法。
  16. 前記提供された構文情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項15記載の方法。
  17. 前記変形式に対するユーザから受信した変更に基づいて変更済み変形式を受け入れることをさらに含む、請求項1記載の方法。
  18. 前記入力データセットからの前記入力データに基づいて、前記変更済み変形式により前記データ処理システムから変更済み出力データを生成することをさらに含む、請求項17記載の方法。
  19. 前記妥当性検査基準に基づいて、前記生成された変更済み出力データに応じて変更済み妥当性検査情報を決定し、前記変更済み妥当性検査情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項18記載の方法。
  20. 前記変更済み出力データを生成し、前記変更済み妥当性検査情報に基づいて前記視覚フィードバックを提示することが、前記変形式がユーザ要求に応じて変更されている間に行われる、請求項19記載の方法。
  21. 前記変更済み出力データを生成し、前記変更済み妥当性検査情報に基づいて前記視覚フィードバックを提示することが、前記変形式が変更された後でユーザ要求に応じて行われる、請求項19記載の方法。
  22. 前記入力データセットからの前記入力データが、前記変形式を適用するデータフロー・グラフのデータ処理コンポーネントへのデータの流れを表すリンクに従って受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項1記載の方法。
  23. 前記生成された出力データが、前記変形式を適用するデータフロー・グラフのコンポーネントからのデータの流れを表すリンクに従って前記出力データセットに提供され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項1記載の方法。
  24. 少なくとも第1のマップ済み関係が、前記第1のマップ済み関係を適用するデータフロー・グラフのコンポーネントの選択に応じて受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力レコードのデータフローを受信する前記出力データセットを表すノードとを含む、請求項1記載の方法。
  25. 前記視覚フィードバックが、前記ユーザーインターフェース上に表示されたリネージ・ダイアグラムの複数のノードのうちの1つに関する妥当性検査情報を表すインジケータを含み、前記ノードが前記出力データセットの前記1つ又は複数の識別済み要素に関連する少なくとも1つの変形を表す、請求項1記載の方法。
  26. 前記視覚フィードバックが、複数の前記インジケータを含み、前記複数のインジケータのそれぞれが前記ユーザーインターフェース上に表示された前記リネージ・ダイアグラムの前記複数のノードのうちの1つのノードに関連する、請求項25記載の方法。
  27. 前記インジケータに関連する前記ノードのうちの少なくともいくつかが、前記ノードによって表される前記変形式間の依存関係を表すリンクによって接続される、請求項26記載の方法。
  28. 前記視覚フィードバックが、前記出力データセットの1つ又は複数の前記識別済み要素を表す少なくとも1つの出力要素を含み、前記ユーザーインターフェース上に表示された複数の出力要素のうちの1つの出力要素にそれぞれが関連する複数のインジケータを含む、請求項1記載の方法。
  29. 前記ユーザーインターフェース上に表示された前記複数の出力要素が、前記入力データのレコードに変形式を適用した結果を表すフィールドに対応する、請求項28記載の方法。
  30. 少なくとも1つのインジケータが、前記複数フィールド用の値の行に関する妥当性検査情報を示し、前記行が前記入力データの単一レコードに変形式を適用した結果として得られる出力値を表す、請求項29記載の方法。
  31. 少なくとも1つのインジケータが、1つのフィールド用の値の列に関する妥当性検査情報を示し、前記列に関する妥当性検査情報は、前記入力データのそれぞれのレコードに変形式を適用したときの妥当性検査情報を表す、請求項29記載の方法。
  32. 前記視覚フィードバックが前記妥当性検査情報に基づいて計算された統計を含み、前記統計が前記出力データの複数レコードに前記妥当性検査基準を適用した結果を表す、請求項1記載の方法。
  33. 前記統計が一定の時間間隔で計算される、請求項32記載の方法。
  34. 前記視覚フィードバックが前記妥当性検査基準に関連するカスタム・エラー・メッセージを含み、前記カスタム・エラー・メッセージが前記入力データのレコードに前記妥当性検査基準を適用した特定のインスタンス関する情報を示す、請求項1記載の方法。
  35. 前記入力変数とは関係なく少なくとも1つの定数として定義された出力を前記ユーザーインターフェースで受信することをさらに含む、請求項1記載の方法。
  36. 変形式の結果を表す期待値を受信することをさらに含み、前記妥当性検査情報を決定することが、変形式を含変形中のマップ済み関係のそれぞれについて生成された出力データと前記期待値とを比較することを含む、請求項1記載の方法。
  37. ユーザーインターフェースに視覚フィードバックを提示するためのシステムであって、前記システムが、
    入力データセットを記憶する入力データ記憶システムと、
    出力データセットを記憶する出力データ記憶システムと、
    ユーザ入力を受信し、データ処理の結果を提示するための前記ユーザーインターフェースを提供するように構成されたデータ処理システムであって、
    所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係を受信することであって、前記マップ済み関係のうちの少なくとも1つが前記データ処理システム上で実行可能な変形式を含み、前記変形式が前記入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、
    それぞれのマップ済み関係の出力にマッピングされた前記出力データセットの要素を識別することと、
    前記入力変数にマッピングされた前記入力データセットの前記要素に関連する前記入力データセットからの入力データに基づいて、前記変形式により前記データ処理システムから出力データを生成することと、
    前記出力データセットの前記識別済み要素のうちの1つ又は複数に関連付けられた有効値の1つ又は複数の特性を定義する妥当性検査基準を受信することと、
    前記妥当性検査基準に基づいて、前記生成された出力データに応じて妥当性検査情報を決定することと、
    前記決定された妥当性検査情報に基づいて視覚フィードバックを提示することを含み、
    前記視覚フィードバックは、前記妥当性検査情報を表すインジケータであって、出力データとして今回提供された計算値と、所定の基準の前記妥当性検査基準に基づく期待される出力との差を示すインジケータを含む、データ処理システムと
    を含む、システム。
  38. ユーザーインターフェースに視覚フィードバックを提示するためのシステムであって、前記システムが、
    入力データセットを記憶するための手段と、
    出力データセットを記憶するための手段と、
    ユーザ入力を受信し、データ処理の結果を提示するための前記ユーザーインターフェースを提供するための手段であって、
    所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係を受信することであって、前記マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、前記変形式が前記入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、
    それぞれのマップ済み関係の出力にマッピングされた前記出力データセットの要素を識別することと、
    前記入力変数にマッピングされた前記入力データセットの前記要素に関連する前記入力データセットからの入力データに基づいて、前記変形式により前記データ処理システムから出力データを生成することと、
    前記出力データセットの前記識別済み要素のうちの1つ又は複数に関連付けられた有効値の1つ又は複数の特性を定義する妥当性検査基準を受信することと、
    前記妥当性検査基準に基づいて、前記生成された出力データに応じて妥当性検査情報を決定することと、
    前記決定された妥当性検査情報に基づいて視覚フィードバックを提示することを含み、
    前記視覚フィードバックは、前記妥当性検査情報を表すインジケータであって、出力データとして今回提供された計算値と、所定の基準の前記妥当性検査基準に基づく期待される出力との差を示すインジケータを含む、手段と
    を含む、システム。
  39. ユーザーインターフェースにおいて視覚フィードバックを提示するためにコンピュータシステムによって実行されるためのコンピュータ・プログラムを記憶するコンピュータ可読媒体であって、前記コンピュータ・プログラムが、
    所与の出力と、入力変数によって表された1つ又は複数の入力との間の1つ又は複数のマップ済み関係を受信することであって、前記マップ済み関係のうちの少なくとも1つがデータ処理システム上で実行可能な変形式を含み、前記変形式が入力データセットの要素にマッピングされた少なくとも1つの入力変数に基づいてマップ済み関係の出力を定義することと、
    それぞれのマップ済み関係の出力にマッピングされた出力データセットの要素を識別することと、
    前記入力変数にマッピングされた前記入力データセットの前記要素に関連する前記入力データセットからの入力データに基づいて、前記変形式により前記データ処理システムから出力データを生成することと、
    前記出力データセットの前記識別済み要素のうちの1つ又は複数に関連付けられた有効値の1つ又は複数の特性を定義する妥当性検査基準を受信することと、
    前記妥当性検査基準に基づいて、前記生成された出力データに応じて妥当性検査情報を決定することと、
    前記決定された妥当性検査情報に基づいて視覚フィードバックを提示すること
    をコンピュータに実行させるための命令を含み、
    前記視覚フィードバックは、前記妥当性検査情報を表すインジケータであって、出力データとして今回提供された計算値と、所定の基準の前記妥当性検査基準に基づく期待される出力との差を示すインジケータを含む、コンピュータ可読媒体。
  40. 前記妥当性検査基準に基づいて決定した前記妥当性検査情報は、複数の前記変形式により生成された前記出力データに応じて決定される、請求項1記載の方法。
  41. 前記妥当性検査規則が、出力データセットの所望のフォーマットにより有効なものとして受け入れられる出力データのタイプを示す、請求項40記載の方法。
  42. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの要素のフォーマットに関する制約を指定する、請求項1記載の方法。
  43. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの複数要素に基づいて有効値の特性を指定する、請求項1記載の方法。
  44. 前記妥当性検査基準のうちの少なくともいくつかが、複数フォーマットで表されたデータに関する有効値を示すデータ構造を参照し、前記複数フォーマットが出力データセットの複数要素のそれぞれのフォーマットに対応する、請求項1記載の方法。
  45. 前記マップ済み関係により、前記入力データセットから前記出力データセットに入力データをインポートすることをさらに含む、請求項37記載のシステム。
  46. 前記入力データをインポートすることが、前記入力データセットの入力レコードのそれぞれのフィールド内の入力値に前記変形式を適用し、前記出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することを含み、前記入力レコードの少なくともいくつかのフィールドが前記入力変数にマッピングされた前記入力データセットの前記要素に対応し、前記出力レコードの少なくともいくつかのフィールドがそれぞれのマップ済み関係の出力にマッピングされた前記出力データセットの前記要素に対応する、請求項45記載のシステム。
  47. 前記ユーザーインターフェースが前記データ処理システムによって提供され、第1のユーザに提示され、前記妥当性検査基準の前記指定が第2のユーザから受信される、請求項46記載のシステム。
  48. 前記生成された出力データを表す値を前記ユーザーインターフェースに提示することをさらに含む、請求項37記載のシステム。
  49. 前記妥当性検査情報を決定することが、変形式を含む変形中のマップ済み関係のそれぞれについて生成された出力データを、前記変形中のマップ済み関係における前記出力データを有する前記出力データセットの前記識別済み要素に関連する前記妥当性検査基準に基づいて評価することを含む、請求項37記載のシステム。
  50. 前記マップ済み関係が、変形式を含む複数の変形中のマップ済み関係を含む、請求項49記載のシステム。
  51. 前記妥当性検査基準が、第1の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第1の識別済み要素に関連する第1の妥当性検査基準と、第2の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第2の識別済み要素に関連する第2の妥当性検査基準とを含む、請求項50記載のシステム。
  52. 変形式について有効な構造を示す構文情報を提供すること、
    前記提供された構文情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項37記載のシステム。
  53. 前記変形式に対するユーザから受信した変更に基づいて変更済み変形式を受け入れること、
    前記入力データセットからの前記入力データに基づいて、前記変更済み変形式により前記データ処理システムから変更済み出力データを生成すること、
    前記妥当性検査基準に基づいて、前記生成された変更済み出力データに応じて変更済み妥当性検査情報を決定し、前記変更済み妥当性検査情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項37記載のシステム。
  54. 前記入力データセットからの前記入力データが、前記変形式を適用するデータフロー・グラフのデータ処理コンポーネントへのデータの流れを表すリンクに従って受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項37記載のシステム。
  55. 前記生成された出力データが、前記変形式を適用するデータフロー・グラフのコンポーネントからのデータの流れを表すリンクに従って前記出力データセットに提供され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項37記載のシステム。
  56. 少なくとも第1のマップ済み関係が、前記第1のマップ済み関係を適用するデータフロー・グラフのコンポーネントの選択に応じて受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力レコードのデータフローを受信する前記出力データセットを表すノードとを含む、請求項37記載のシステム。
  57. 前記視覚フィードバックが、前記ユーザーインターフェース上に表示されたリネージ・ダイアグラムの複数のノードのうちの1つに関する妥当性検査情報を表すインジケータを含み、前記ノードが前記出力データセットの前記1つ又は複数の識別済み要素に関連する少なくとも1つの変形式を表す、請求項37記載のシステム。
  58. 前記視覚フィードバックが、複数の前記インジケータを含み、前記複数のインジケータのそれぞれが前記ユーザーインターフェース上に表示された前記リネージ・ダイアグラムの前記複数のノードのうちの1つのノードに関連する、請求項57記載のシステム。
  59. 前記インジケータに関連する前記ノードのうちの少なくともいくつかが、前記ノードによって表される前記変形式間の依存関係を表すリンクによって接続される、請求項58記載のシステム。
  60. 前記視覚フィードバックが、前記出力データセットの1つ又は複数の前記識別済み要素を表す少なくとも1つの出力要素を含み、前記ユーザーインターフェース上に表示された複数の出力要素のうちの1つの出力要素にそれぞれが関連する複数のインジケータを含む、請求項37記載のシステム。
  61. 前記ユーザーインターフェース上に表示された前記複数の出力要素が、前記入力データのレコードに変形式を適用した結果を表すフィールドに対応する、請求項60記載のシステム。
  62. 少なくとも1つのインジケータが、前記複数フィールド用の値の行に関する妥当性検査情報を示し、前記行が前記入力データの単一レコードに変形式を適用した結果として得られる出力値を表す、請求項61記載のシステム。
  63. 少なくとも1つのインジケータが、1つのフィールド用の値の列に関する妥当性検査情報を示し、前記列に関する妥当性検査情報は、前記入力データのそれぞれのレコードに変形式を適用したときの妥当性検査情報を表す、請求項62記載のシステム。
  64. 前記視覚フィードバックが前記妥当性検査情報に基づいて計算された統計を含み、前記統計が前記出力データの複数レコードに前記妥当性検査基準を適用した結果を表す、請求項37記載のシステム。
  65. 前記統計が一定の時間間隔で計算される、請求項64記載のシステム。
  66. 前記視覚フィードバックが前記妥当性検査基準に関連するカスタム・エラー・メッセージを含み、前記カスタム・エラー・メッセージが前記入力データのレコードに前記妥当性検査基準を適用した特定のインスタンス関する情報を示す、請求項37記載のシステム。
  67. 前記入力変数とは関係なく少なくとも1つの定数として定義された出力を前記ユーザーインターフェースで受信することをさらに含む、請求項37記載のシステム。
  68. 変形式の結果を表す期待値を受信することをさらに含み、前記妥当性検査情報を決定することが、変形式を含変形中のマップ済み関係のそれぞれについて生成された出力データと前記期待値とを比較することを含む、請求項37記載のシステム。
  69. 前記妥当性検査基準に基づいて決定した前記妥当性検査情報は、複数の前記変形式により生成された前記出力データに応じて決定される、請求項37記載のシステム。
  70. 前記妥当性検査規則が、出力データセットの所望のフォーマットにより有効なものとして受け入れられる出力データのタイプを示す、請求項69記載のシステム。
  71. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの要素のフォーマットに関する制約を指定する、請求項37記載のシステム。
  72. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの複数要素基づいて有効値の特性を指定する、請求項37記載のシステム。
  73. 前記妥当性検査基準のうちの少なくともいくつかが、複数フォーマットで表されたデータに関する有効値を示すデータ構造を参照し、前記複数フォーマットが出力データセットの複数要素のそれぞれのフォーマットに対応する、請求項37記載のシステム。
  74. 前記マップ済み関係により、前記入力データセットから前記出力データセットに入力データをインポートすることをさらに含む、請求項38記載のシステム。
  75. 前記入力データをインポートすることが、前記入力データセットの入力レコードのそれぞれのフィールド内の入力値に前記変形式を適用し、前記出力データセットの出力レコードのそれぞれのフィールドに出力値を記憶することを含み、前記入力レコードの少なくともいくつかのフィールドが前記入力変数にマッピングされた前記入力データセットの前記要素に対応し、前記出力レコードの少なくともいくつかのフィールドがそれぞれのマップ済み関係の出力にマッピングされた前記出力データセットの前記要素に対応する、請求項74記載のシステム。
  76. 前記ユーザーインターフェースが前記データ処理システムによって提供され、第1のユーザに提示され、前記妥当性検査基準の前記指定が第2のユーザから受信される、請求項75記載のシステム。
  77. 前記生成された出力データを表す値を前記ユーザーインターフェースに提示することをさらに含む、請求項38記載のシステム。
  78. 前記妥当性検査情報を決定することが、変形式を含む変形中のマップ済み関係のそれぞれについて生成された出力データを、前記変形中のマップ済み関係における前記出力データを有する前記出力データセットの前記識別済み要素に関連する前記妥当性検査基準に基づいて評価することを含む、請求項38記載のシステム。
  79. 前記マップ済み関係が、変形式を含む複数の変形中のマップ済み関係を含む、請求項78記載のシステム。
  80. 前記妥当性検査基準が、第1の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第1の識別済み要素に関連する第1の妥当性検査基準と、第2の識別済み要素に関連する有効値の1つ又は複数の特性を定義する前記出力データセットの前記第2の識別済み要素に関連する第2の妥当性検査基準とを含む、請求項78記載のシステム。
  81. 変形式について有効な構造を示す構文情報を提供すること、
    前記提供された構文情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項38記載のシステム。
  82. 前記変形式に対するユーザから受信した変更に基づいて変更済み変形式を受け入れること、
    前記入力データセットからの前記入力データに基づいて、前記変更済み変形式により前記データ処理システムから変更済み出力データを生成すること、
    前記妥当性検査基準に基づいて、前記生成された変更済み出力データに応じて変更済み妥当性検査情報を決定し、前記変更済み妥当性検査情報に基づいて視覚フィードバックを前記ユーザーインターフェースに提示することをさらに含む、請求項81記載のシステム。
  83. 前記入力データセットからの前記入力データが、前記変形式を適用するデータフロー・グラフのデータ処理コンポーネントへのデータの流れを表すリンクに従って受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項38記載のシステム。
  84. 前記生成された出力データが、前記変形式を適用するデータフロー・グラフのコンポーネントからのデータの流れを表すリンクに従って前記出力データセットに提供され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力データのデータフローを受信する前記出力データセットを表すノードとを含む、請求項38記載のシステム。
  85. 少なくとも第1のマップ済み関係が、前記第1のマップ済み関係を適用するデータフロー・グラフのコンポーネントの選択に応じて受信され、前記データフロー・グラフが、データ処理コンポーネントを表すノードと、前記データ処理コンポーネント間のデータフローを表すリンクと、前記入力データのデータフローを提供する前記入力データセットを表すノードと、前記出力レコードのデータフローを受信する前記出力データセットを表すノードとを含む、請求項38記載のシステム。
  86. 前記視覚フィードバックが、前記ユーザーインターフェース上に表示されたリネージ・ダイアグラムの複数のノードのうちの1つに関する妥当性検査情報を表すインジケータを含み、前記ノードが前記出力データセットの前記1つ又は複数の識別済み要素に関連する少なくとも1つの変形式を表す、請求項38記載のシステム。
  87. 前記視覚フィードバックが、複数の前記インジケータを含み、前記複数のインジケータのそれぞれが前記ユーザーインターフェース上に表示された前記リネージ・ダイアグラムの前記複数のノードのうちの1つのノードに関連する、請求項86記載のシステム。
  88. 前記インジケータに関連する前記ノードのうちの少なくともいくつかが、前記ノードによって表される前記変形式間の依存関係を表すリンクによって接続される、請求項87記載のシステム。
  89. 前記視覚フィードバックが、前記出力データセットの1つ又は複数の前記識別済み要素を表す少なくとも1つの出力要素を含み、前記ユーザーインターフェース上に表示された複数の出力要素のうちの1つの出力要素にそれぞれが関連する複数のインジケータを含む、請求項38記載のシステム。
  90. 前記ユーザーインターフェース上に表示された前記複数の出力要素が、前記入力データのレコードに変形式を適用した結果を表すフィールドに対応する、請求項89記載のシステム。
  91. 少なくとも1つのインジケータが、前記複数フィールド用の値の行に関する妥当性検査情報を示し、前記行が前記入力データの単一レコードに変形式を適用した結果として得られる出力値を表す、請求項90記載のシステム。
  92. 少なくとも1つのインジケータが、1つのフィールド用の値の列に関する妥当性検査情報を示し、前記列に関する妥当性検査情報は、前記入力データのそれぞれのレコードに変形式を適用したときの妥当性検査情報を表す、請求項91記載のシステム。
  93. 前記視覚フィードバックが前記妥当性検査情報に基づいて計算された統計を含み、前記統計が前記出力データの複数レコードに前記妥当性検査基準を適用した結果を表す、請求項38記載のシステム。
  94. 前記統計が一定の時間間隔で計算される、請求項93記載のシステム。
  95. 前記視覚フィードバックが前記妥当性検査基準に関連するカスタム・エラー・メッセージを含み、前記カスタム・エラー・メッセージが前記入力データのレコードに前記妥当性検査基準を適用した特定のインスタンス関する情報を示す、請求項38記載のシステム。
  96. 前記入力変数とは関係なく少なくとも1つの定数として定義された出力を前記ユーザーインターフェースで受信することをさらに含む、請求項38記載のシステム。
  97. 変形式の結果を表す期待値を受信することをさらに含み、前記妥当性検査情報を決定することが、変形式を含それぞれの変形中のマップ済み関係のそれぞれについて生成された出力データと前記期待値とを比較することを含む、請求項38記載のシステム。
  98. 前記妥当性検査基準に基づいて決定した前記妥当性検査情報は、複数の前記変形式により生成された前記出力データに応じて決定される、請求項38記載のシステム。
  99. 前記妥当性検査規則が、出力データセットの所望のフォーマットにより有効なものとして受け入れられる出力データのタイプを示す、請求項98記載のシステム。
  100. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの要素のフォーマットに関する制約を指定する、請求項38記載のシステム。
  101. 前記妥当性検査基準のうちの少なくともいくつかが、出力データセットの複数要素に基づいて有効値の特性を指定する、請求項38記載のシステム。
  102. 前記妥当性検査基準のうちの少なくともいくつかが、複数フォーマットで表されたデータに関する有効値を示すデータ構造を参照し、前記複数フォーマットが出力データセットの複数要素のそれぞれのフォーマットに対応する、請求項38記載のシステム。
JP2012529903A 2009-09-16 2010-09-16 データセット要素のマッピング Active JP6121163B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US24313209P 2009-09-16 2009-09-16
US61/243,132 2009-09-16
PCT/US2010/049142 WO2011035039A1 (en) 2009-09-16 2010-09-16 Mapping dataset elements

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015165472A Division JP6395680B2 (ja) 2009-09-16 2015-08-25 データセット要素のマッピング

Publications (2)

Publication Number Publication Date
JP2013505502A JP2013505502A (ja) 2013-02-14
JP6121163B2 true JP6121163B2 (ja) 2017-04-26

Family

ID=43731502

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2012529903A Active JP6121163B2 (ja) 2009-09-16 2010-09-16 データセット要素のマッピング
JP2015165472A Active JP6395680B2 (ja) 2009-09-16 2015-08-25 データセット要素のマッピング
JP2018135304A Pending JP2018185858A (ja) 2009-09-16 2018-07-18 データセット要素のマッピング

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2015165472A Active JP6395680B2 (ja) 2009-09-16 2015-08-25 データセット要素のマッピング
JP2018135304A Pending JP2018185858A (ja) 2009-09-16 2018-07-18 データセット要素のマッピング

Country Status (8)

Country Link
US (2) US8825695B2 (ja)
EP (1) EP2478433A4 (ja)
JP (3) JP6121163B2 (ja)
KR (4) KR101660348B1 (ja)
CN (2) CN102656554B (ja)
AU (2) AU2010295547B2 (ja)
CA (1) CA2771899C (ja)
WO (1) WO2011035039A1 (ja)

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7849075B2 (en) 2003-09-15 2010-12-07 Ab Initio Technology Llc Joint field profiling
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
EP2370892B1 (en) * 2008-12-02 2020-11-04 Ab Initio Technology LLC Mapping instances of a dataset within a data management system
US20120309363A1 (en) 2011-06-03 2012-12-06 Apple Inc. Triggering notifications associated with tasks items that represent tasks to perform
KR101660348B1 (ko) * 2009-09-16 2016-09-27 아브 이니티오 테크놀로지 엘엘시 데이터세트 요소의 매핑
US8296694B1 (en) * 2009-12-30 2012-10-23 Cadence Design Systems, Inc. System and method for automated synthesis of circuit wrappers
EP2633398B1 (en) 2010-10-25 2020-05-27 Ab Initio Technology LLC Managing data set objects in a dataflow graph that represents a computer program
US9542662B2 (en) * 2010-12-30 2017-01-10 Sap Se Lineage information for streaming event data and event lineage graph structures for visualization
CA2824282C (en) 2011-01-14 2019-05-21 Ab Initio Technology Llc Managing changes to collections of data
KR101889120B1 (ko) 2011-01-28 2018-08-16 아브 이니티오 테크놀로지 엘엘시 데이터 패턴 정보 생성
CN102722412A (zh) 2011-03-31 2012-10-10 国际商业机器公司 组合计算装置和方法
US8745034B1 (en) 2011-05-04 2014-06-03 Google Inc. Selectively retrieving search results in accordance with predefined sort criteria
US8930330B1 (en) * 2011-06-27 2015-01-06 Amazon Technologies, Inc. Validation of log formats
JP5613118B2 (ja) * 2011-07-22 2014-10-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 変換規則生成支援装置、方法、およびプログラム
CN102902685B (zh) * 2011-07-27 2016-04-20 阿里巴巴集团控股有限公司 基于数据库的工具系统的测试方法及装置
US8763093B2 (en) * 2011-09-12 2014-06-24 Microsoft Corporation Access control management
US10546057B2 (en) * 2011-10-28 2020-01-28 Microsoft Technology Licensing, Llc Spreadsheet program-based data classification for source target mapping
US9148329B1 (en) 2011-11-30 2015-09-29 Google Inc. Resource constraints for request processing
US9235607B1 (en) * 2012-03-29 2016-01-12 Google Inc. Specifying a predetermined degree of inconsistency for test data
US20130268855A1 (en) * 2012-04-10 2013-10-10 John O'Byrne Examining an execution of a business process
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9659042B2 (en) * 2012-06-12 2017-05-23 Accenture Global Services Limited Data lineage tracking
CN103678353B (zh) * 2012-09-11 2017-06-20 北京大学 用于稿件中的职务信息的检查方法和装置
US10489360B2 (en) 2012-10-17 2019-11-26 Ab Initio Technology Llc Specifying and applying rules to data
US9075860B2 (en) * 2012-10-18 2015-07-07 Oracle International Corporation Data lineage system
KR102129643B1 (ko) 2012-10-22 2020-07-02 아브 이니티오 테크놀로지 엘엘시 소스 추적으로 데이터 프로파일링
US9703822B2 (en) * 2012-12-10 2017-07-11 Ab Initio Technology Llc System for transform generation
US9892026B2 (en) 2013-02-01 2018-02-13 Ab Initio Technology Llc Data records selection
EP3809407A1 (en) 2013-02-07 2021-04-21 Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9928283B2 (en) * 2013-04-15 2018-03-27 Validus Solutions, Inc. Tracing data through a transformation process using tracer codes
CN104123309B (zh) * 2013-04-28 2017-08-25 国际商业机器公司 用于数据管理的方法和系统
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9384231B2 (en) * 2013-06-21 2016-07-05 Bank Of America Corporation Data lineage management operation procedures
CA2924826A1 (en) 2013-09-27 2015-04-02 Ab Initio Technology Llc Evaluating rules applied to data
EP3373134B1 (en) * 2013-12-06 2020-07-22 Ab Initio Technology LLC Source code translation
US11487732B2 (en) 2014-01-16 2022-11-01 Ab Initio Technology Llc Database key identification
JP6427592B2 (ja) 2014-03-07 2018-11-21 アビニシオ テクノロジー エルエルシー データ型に関連するデータプロファイリング操作の管理
WO2015139016A1 (en) * 2014-03-14 2015-09-17 Ab Initio Technology Llc Mapping attributes of keyed entities
US9607073B2 (en) * 2014-04-17 2017-03-28 Ab Initio Technology Llc Processing data from multiple sources
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
US10552439B2 (en) * 2014-05-11 2020-02-04 Informatica Llc Grid format data viewing and editing environment
US20150331875A1 (en) * 2014-05-16 2015-11-19 Syntel, Inc. System and method for validating integrated data recasting objects
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10290126B2 (en) 2014-07-01 2019-05-14 Oath Inc. Computerized systems and methods for graph data modeling
SG11201700384WA (en) * 2014-07-18 2017-02-27 Ab Initio Technology Llc Managing parameter sets
EP3189419B1 (en) * 2014-09-02 2023-01-25 AB Initio Technology LLC Managing invocation of tasks
US9626393B2 (en) 2014-09-10 2017-04-18 Ab Initio Technology Llc Conditional validation rules
US11354755B2 (en) 2014-09-11 2022-06-07 Intuit Inc. Methods systems and articles of manufacture for using a predictive model to determine tax topics which are relevant to a taxpayer in preparing an electronic tax return
US9720958B2 (en) 2014-10-24 2017-08-01 International Business Machines Corporation User driven business data aggregation and cross mapping framework
CN104361047B (zh) * 2014-10-29 2019-12-24 中国建设银行股份有限公司 一种客户端中的数据展示方法及装置
US10255641B1 (en) 2014-10-31 2019-04-09 Intuit Inc. Predictive model based identification of potential errors in electronic tax return
US10176234B2 (en) * 2014-11-05 2019-01-08 Ab Initio Technology Llc Impact analysis
US10521460B2 (en) * 2015-02-11 2019-12-31 Ab Initio Technology Llc Filtering data lineage diagrams
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10740853B1 (en) 2015-04-28 2020-08-11 Intuit Inc. Systems for allocating resources based on electronic tax return preparation program user characteristics
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10409802B2 (en) * 2015-06-12 2019-09-10 Ab Initio Technology Llc Data quality analysis
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10366073B2 (en) * 2015-06-30 2019-07-30 Bank Of America Corporation System for automating data validation
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10650020B1 (en) * 2015-09-17 2020-05-12 Trifacta Inc. Analyzing transformations for preprocessing datasets
US10740854B1 (en) 2015-10-28 2020-08-11 Intuit Inc. Web browsing and machine learning systems for acquiring tax data during electronic tax return preparation
US20170124154A1 (en) 2015-11-02 2017-05-04 International Business Machines Corporation Establishing governance rules over data assets
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10528328B2 (en) 2015-12-08 2020-01-07 Microsoft Technology Licensing, Llc Learning from input patterns in Programing-By-Example
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10410295B1 (en) * 2016-05-25 2019-09-10 Intuit Inc. Methods, systems and computer program products for obtaining tax data
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10007674B2 (en) * 2016-06-13 2018-06-26 Palantir Technologies Inc. Data revision control in large-scale data analytic systems
US10853376B2 (en) 2016-06-19 2020-12-01 Data.World, Inc. Collaborative dataset consolidation via distributed computer networks
US11755602B2 (en) * 2016-06-19 2023-09-12 Data.World, Inc. Correlating parallelized data from disparate data sources to aggregate graph data portions to predictively identify entity data
US10452625B2 (en) * 2016-06-30 2019-10-22 Global Ids, Inc. Data lineage analysis
US10915545B2 (en) * 2016-09-29 2021-02-09 Microsoft Technology Licensing, Llc Systems and methods for dynamically rendering data lineage
KR101862614B1 (ko) * 2016-10-05 2018-05-31 한국전력공사 프로그램 유효성 검증 장치 및 컴퓨터 판독가능 기록 매체
US11138676B2 (en) 2016-11-29 2021-10-05 Intuit Inc. Methods, systems and computer program products for collecting tax data
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10755051B2 (en) * 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10698884B2 (en) 2017-11-06 2020-06-30 Bank Of America Corporation Dynamic lineage validation system
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
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US11176104B2 (en) 2018-04-16 2021-11-16 Bank Of America Corporation Platform-independent intelligent data transformer
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
JP7464543B2 (ja) 2018-07-19 2024-04-09 アビニシオ テクノロジー エルエルシー データウェアハウスへの発行
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11645425B2 (en) 2019-07-03 2023-05-09 Beyond Semiconductor, d.o.o. Systems and methods for data-driven secure and safe computing
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US20220366249A1 (en) * 2019-10-22 2022-11-17 Shenzhen Corerain Technologies Co., Ltd. Method and device for adjusting deep learning network, server, and storage medium
US11514072B1 (en) 2019-12-31 2022-11-29 Cigna Intellectual Property, Inc. Computerized system for programmatic mapping of record lineage based on data flow through data storage components
US11086848B1 (en) * 2020-02-11 2021-08-10 Bank Of America Corporation Dynamic data transformation system
CN113360363B (zh) * 2020-03-04 2024-04-02 腾讯科技(深圳)有限公司 微服务系统的测试方法、装置、设备和计算机存储介质
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
CN111930532B (zh) * 2020-07-09 2023-11-17 智盈未来(西安)信息技术有限公司 航电数据集成方法及装置
US11797541B1 (en) 2020-10-23 2023-10-24 State Farm Mutual Automobile Insurance Company Systems and methods for enhanced rules conflict checking with data validation
CA3209125A1 (en) 2021-01-31 2022-08-04 Ab Initio Technology Llc Data processing system with manipulation of logical dataset groups
CN112882705B (zh) * 2021-03-01 2024-03-19 浪潮通用软件有限公司 基于界面更新的表达式计算方法、装置、设备及介质
US11567998B2 (en) * 2021-03-25 2023-01-31 Databricks, Inc. Dataflow graph processing
US11461297B1 (en) 2021-06-09 2022-10-04 T-Mobile Usa, Inc. Ensuring database integrity using a data flow in a graph, such as for use by a wireless telecommunications service provider
US11533235B1 (en) 2021-06-24 2022-12-20 Bank Of America Corporation Electronic system for dynamic processing of temporal upstream data and downstream data in communication networks
TWI792684B (zh) * 2021-11-17 2023-02-11 瑞昱半導體股份有限公司 資料傳輸方法以及資料傳輸系統
US11907241B2 (en) * 2022-06-17 2024-02-20 Hewlett Packard Enterprise Development Lp Data recommender using lineage to propagate value indicators

Family Cites Families (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758351A (en) * 1995-03-01 1998-05-26 Sterling Software, Inc. System and method for the creation and use of surrogate information system objects
US5966072A (en) 1996-07-02 1999-10-12 Ab Initio Software Corporation Executing computations expressed as graphs
US6216131B1 (en) 1998-02-06 2001-04-10 Starfish Software, Inc. Methods for mapping data fields from one data set to another in a data processing environment
US6948154B1 (en) 1999-03-22 2005-09-20 Oregon State University Methodology for testing spreadsheets
US7120638B1 (en) 1999-09-21 2006-10-10 International Business Machines Corporation Method, system, program, and data structure for cleaning a database table
US6865566B2 (en) * 2000-05-09 2005-03-08 Fair Isaac Corporation Approach for re-using business rules
US7164422B1 (en) 2000-07-28 2007-01-16 Ab Initio Software Corporation Parameterized graphs with conditional components
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US6708186B1 (en) * 2000-08-14 2004-03-16 Oracle International Corporation Aggregating and manipulating dictionary metadata in a database system
CN1339756A (zh) * 2000-08-23 2002-03-13 松下电器产业株式会社 文档检索和分类方法及其装置
US9836257B2 (en) * 2001-01-19 2017-12-05 Flexiworld Technologies, Inc. Mobile information apparatus that includes intelligent wireless display, wireless direct display, or transfer of digital content for playing over air the digital content at smart televisions, television controllers, or audio output devices
US7117430B2 (en) 2001-02-27 2006-10-03 Microsoft Corporation Spreadsheet error checker
JP2002279147A (ja) * 2001-03-22 2002-09-27 Sharp Corp 内製化判断支援装置、内製化判断支援方法および内製化判断支援プログラムを記録した機械読取可能な記録媒体および内製化判断支援プログラム
US7614036B2 (en) 2001-03-22 2009-11-03 Robert D Bjornson Method and system for dataflow creation and execution
US7853553B2 (en) * 2001-03-26 2010-12-14 Siebel Systems, Inc. Engine for converting data from a source format to a destination format using user defined mappings
US6494159B2 (en) 2001-05-11 2002-12-17 The United States Of America As Represented By The Secretary Of The Navy Submarine launched unmanned combat vehicle replenishment
US7099885B2 (en) * 2001-05-25 2006-08-29 Unicorn Solutions Method and system for collaborative ontology modeling
US6868526B2 (en) 2001-07-18 2005-03-15 The Mathworks, Inc. Graphical subclassing
AUPR966001A0 (en) * 2001-12-20 2002-01-24 Canon Information Systems Research Australia Pty Ltd A microprocessor card defining a custom user interface
US7080088B1 (en) 2002-01-30 2006-07-18 Oracle International Corporation Automatic reconciliation of bindable objects
US7110924B2 (en) * 2002-05-15 2006-09-19 Caterpillar Inc. Method for controlling the performance of a target system
US7574652B2 (en) * 2002-06-20 2009-08-11 Canon Kabushiki Kaisha Methods for interactively defining transforms and for generating queries by manipulating existing query data
JP2004110182A (ja) * 2002-09-13 2004-04-08 Toshiba Corp データ変換装置およびデータ変換方法およびデータ変換プログラム
US7167850B2 (en) 2002-10-10 2007-01-23 Ab Initio Software Corporation Startup and control of graph-based computation
US7739223B2 (en) * 2003-08-29 2010-06-15 Microsoft Corporation Mapping architecture for arbitrary data models
US20050060317A1 (en) * 2003-09-12 2005-03-17 Lott Christopher Martin Method and system for the specification of interface definitions and business rules and automatic generation of message validation and transformation software
US7865507B2 (en) 2003-09-15 2011-01-04 Oracle International Corporation Data quality analyzer
US7849075B2 (en) 2003-09-15 2010-12-07 Ab Initio Technology Llc Joint field profiling
US7765529B1 (en) 2003-10-31 2010-07-27 The Mathworks, Inc. Transforming graphical objects in a graphical modeling environment
US7840949B2 (en) * 2003-11-03 2010-11-23 Ramal Acquisition Corp. System and method for data transformation using dataflow graphs
US20050187984A1 (en) 2004-02-20 2005-08-25 Tianlong Chen Data driven database management system and method
US8165853B2 (en) * 2004-04-16 2012-04-24 Knowledgebase Marketing, Inc. Dimension reduction in predictive model development
JP4275013B2 (ja) * 2004-06-21 2009-06-10 三洋電機株式会社 データフローグラフ処理装置、処理装置、リコンフィギュラブル回路。
US20060007464A1 (en) * 2004-06-30 2006-01-12 Percey Michael F Structured data update and transformation system
US7353227B2 (en) 2004-07-23 2008-04-01 Sap Aktiengesellschaft Conflict resolution engine
US7848578B2 (en) * 2004-09-13 2010-12-07 Nokia Corporation Methods, devices and computer program products for capture and display of visually encoded data and an image
US7899833B2 (en) 2004-11-02 2011-03-01 Ab Initio Technology Llc Managing related data objects
WO2006096681A1 (en) * 2005-03-07 2006-09-14 Computer Associates Think, Inc. System and method for data manipulation
JP4817697B2 (ja) * 2005-03-30 2011-11-16 富士通株式会社 変換規則評価プログラム及び変換規則評価装置
JP4550641B2 (ja) * 2005-03-30 2010-09-22 大陽日酸エンジニアリング株式会社 データ照合装置及び方法
US8630917B2 (en) 2005-06-09 2014-01-14 At&T Intellectual Property Ii, L.P. Arrangement for guiding user design of comprehensive product solution using on-the-fly data validation
US7877350B2 (en) 2005-06-27 2011-01-25 Ab Initio Technology Llc Managing metadata for graph-based computations
US7716630B2 (en) 2005-06-27 2010-05-11 Ab Initio Technology Llc Managing parameters for graph-based computations
US7464105B2 (en) 2005-07-06 2008-12-09 International Business Machines Corporation Method for performing semi-automatic dataset maintenance
US7870162B2 (en) 2005-07-29 2011-01-11 Sap Ag Method for generating properly formed expressions
US20070050750A1 (en) 2005-08-31 2007-03-01 Microsoft Corporation Extensible data-driven setup application for operating system
EP1941432A4 (en) * 2005-10-25 2011-04-20 Angoss Software Corp STRATEGY TREES FOR DATA MINING
US8060821B2 (en) * 2005-12-09 2011-11-15 Apple Inc. Enhanced visual feedback of interactions with user interface
US7761586B2 (en) 2006-02-06 2010-07-20 Microsoft Corporation Accessing and manipulating data in a data flow graph
US7661067B2 (en) 2006-02-21 2010-02-09 International Business Machines Corporation Method for providing quick responses in instant messaging conversations
US7647298B2 (en) * 2006-03-23 2010-01-12 Microsoft Corporation Generation of query and update views for object relational mapping
US20070294119A1 (en) 2006-03-30 2007-12-20 Adaptive Alpha, Llc System, method and computer program product for evaluating and rating an asset management business and associate investment funds using experiential business process and performance data, and applications thereof
US8868577B2 (en) 2006-03-31 2014-10-21 Sap Se Generic database manipulator
US7797319B2 (en) * 2006-05-15 2010-09-14 Algebraix Data Corporation Systems and methods for data model mapping
US7870556B2 (en) 2006-05-16 2011-01-11 Ab Initio Technology Llc Managing computing resources in graph-based computations
US8572236B2 (en) 2006-08-10 2013-10-29 Ab Initio Technology Llc Distributing services in graph-based computations
US7890509B1 (en) * 2006-12-05 2011-02-15 First American Real Estate Solutions Llc Parcel data acquisition and processing
GB0700450D0 (en) 2007-01-10 2007-02-21 Radiation Watch Ltd The RWL threat engine
US9430552B2 (en) * 2007-03-16 2016-08-30 Microsoft Technology Licensing, Llc View maintenance rules for an update pipeline of an object-relational mapping (ORM) platform
US20080243765A1 (en) * 2007-03-29 2008-10-02 Ariel Fuxman Method for generating nested mapping specifications in a schema mapping formalism
US7603368B2 (en) * 2007-03-30 2009-10-13 Fmr Llc Mapping data on a network
US8069129B2 (en) * 2007-04-10 2011-11-29 Ab Initio Technology Llc Editing and compiling business rules
US8032404B2 (en) 2007-06-13 2011-10-04 International Business Machines Corporation Method and system for estimating financial benefits of packaged application service projects
US8694518B2 (en) * 2007-06-14 2014-04-08 Colorquick, L.L.C. Method and apparatus for database mapping
US8566296B2 (en) 2007-09-14 2013-10-22 Oracle International Corporation Support for compensation aware data types in relational database systems
EP2191362B1 (en) 2007-09-20 2015-08-19 Ab Initio Technology LLC Managing data flows in graph-based computations
US8445669B2 (en) * 2008-04-10 2013-05-21 Hamari Chemicals, Ltd. Production process of ethynylthymidine compounds from 5-methyluridine as a starting material
JP4224126B1 (ja) 2008-06-09 2009-02-12 パナソニック株式会社 データベース管理サーバ装置、データベース管理システム、データベース管理方法およびデータベース管理プログラム
US20090319494A1 (en) * 2008-06-20 2009-12-24 Microsoft Corporation Field mapping for data stream output
CN104679807B (zh) * 2008-06-30 2018-06-05 起元技术有限责任公司 基于图的计算中的数据日志记录
US8082228B2 (en) 2008-10-31 2011-12-20 Netapp, Inc. Remote office duplication
CA3042068C (en) * 2008-11-12 2022-09-20 Ab Initio Technology Llc Managing and automatically linking data objects
EP2370892B1 (en) * 2008-12-02 2020-11-04 Ab Initio Technology LLC Mapping instances of a dataset within a data management system
CA2749538A1 (en) * 2009-01-30 2010-08-05 Ab Initio Technology Llc Processing data using vector fields
EP2221733A1 (en) 2009-02-17 2010-08-25 AMADEUS sas Method allowing validation in a production database of new entered data prior to their release
US8935702B2 (en) 2009-09-04 2015-01-13 International Business Machines Corporation Resource optimization for parallel data integration
KR101660348B1 (ko) * 2009-09-16 2016-09-27 아브 이니티오 테크놀로지 엘엘시 데이터세트 요소의 매핑
US8583664B2 (en) 2010-05-26 2013-11-12 Microsoft Corporation Exposing metadata relationships through filter interplay
US8732143B2 (en) 2010-08-27 2014-05-20 Microsoft Corporation Reducing locking during database transactions
EP2633398B1 (en) 2010-10-25 2020-05-27 Ab Initio Technology LLC Managing data set objects in a dataflow graph that represents a computer program
US8949166B2 (en) 2010-12-16 2015-02-03 International Business Machines Corporation Creating and processing a data rule for data quality
CA2824282C (en) * 2011-01-14 2019-05-21 Ab Initio Technology Llc Managing changes to collections of data

Also Published As

Publication number Publication date
KR101631978B1 (ko) 2016-06-20
CN102656554A (zh) 2012-09-05
KR101660348B1 (ko) 2016-09-27
US20110066602A1 (en) 2011-03-17
KR20150040387A (ko) 2015-04-14
KR20150038759A (ko) 2015-04-08
JP2018185858A (ja) 2018-11-22
KR101688555B1 (ko) 2016-12-21
CN110516209A (zh) 2019-11-29
KR101656813B1 (ko) 2016-09-12
CA2771899C (en) 2017-08-01
JP2016015155A (ja) 2016-01-28
US8825695B2 (en) 2014-09-02
US20130318062A1 (en) 2013-11-28
AU2015203037B1 (en) 2015-08-20
KR20150027838A (ko) 2015-03-12
EP2478433A4 (en) 2016-09-21
EP2478433A1 (en) 2012-07-25
JP2013505502A (ja) 2013-02-14
CN102656554B (zh) 2019-09-10
KR20120080572A (ko) 2012-07-17
AU2010295547B2 (en) 2015-05-07
US8930337B2 (en) 2015-01-06
WO2011035039A1 (en) 2011-03-24
JP6395680B2 (ja) 2018-09-26
CA2771899A1 (en) 2011-03-24
AU2010295547A1 (en) 2012-03-08

Similar Documents

Publication Publication Date Title
JP6395680B2 (ja) データセット要素のマッピング
US10540436B2 (en) Evaluating rules applied to data
US9589232B2 (en) Editing and compiling business rules
JP2020504862A (ja) 実行可能データフローグラフの差分
AU2018203660A1 (en) Editing and compiling business rules

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140811

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141107

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150428

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150828

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150908

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20151211

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20161014

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170329

R150 Certificate of patent or registration of utility model

Ref document number: 6121163

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