(57)【特許請求の範囲】
【請求項１】
コンピューティングシステムにおいて系統情報を管理するための方法であって、
データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と前記計算の実行中に前記計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を入力デバイス又はポートを介して受け取るステップと、
少なくとも１つのプロセッサを使用して、前記有向グラフ内のパスに基づいて要約情報を計算し、前記要約情報を１又は２以上の要約オブジェクトに記憶するステップとを含み、前記計算が、
前記有向グラフの複数の前記ノードに関する関心の指定を受け取ることと、
関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、前記１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、前記残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない前記第１のノードと前記第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む、前記方法。
【請求項２】
第１の要約オブジェクトを生じさせることが、関心のある第１のノードと関心のある第２のノードとの間の第１のパスをトラバースして、関心があるものとして指定されていない１又は２以上の残りのノードを前記第１のパスに沿って特定することと、特定された１又は２以上の残りのノードに関する要約情報を形成することと含む、請求項１に記載の方法。
【請求項３】
要約オブジェクトのうちの１又は２以上に記憶された要約情報に従って、関心があるものとして指定されたそれぞれのノードが、独自のアイコンによって表され、複数の残りのノードが、関心のある複数のノードに接続された共通のアイコンによって表される、有向グラフの少なくとも一部の視覚的表現としてデータ系統図を生じさせるステップをさらに含む、請求項１に記載の方法。
【請求項４】
共通のアイコンに関連する詳細を見たいというユーザの望みを示すユーザ入力を受け取り、前記ユーザ入力に応じて、前記共通のアイコンによって表される複数の残りのノードをトラバースし、要約情報に関連する前記複数の残りのノードを含む有向グラフのパスのトラバースに基づいてデータ系統図において前記残りのノードを視覚的に表すステップをさらに含む、請求項３に記載の方法。
【請求項５】
１若しくは２以上のデータ変換ノードのうちの１つ又は１若しくは２以上のデータノードのうちの１つの目標ノードとしての指定を受け取るステップをさらに含み、
データ系統図を生じさせるステップが、有向グラフを通り抜ける１又は２以上のパスをトラバースすることを含み、前記１又は２以上のパスのうちのそれぞれのパスが、関心のある２又は３以上のノード及び前記目標ノードを含む、請求項３に記載の方法。
【請求項６】
有向グラフを通り抜ける１又は２以上のパスの少なくとも一部に関して、パスをトラバースすることが、目標ノードから上流方向に前記パスの第１の部分をトラバースすることと、前記目標ノードから下流方向に前記パスの第２の部分をトラバースすることとを含む、請求項５に記載の方法。
【請求項７】
パスの第１の部分をトラバースすることが、目標ノードに関心のあるノードであるものとして印が付けられているかどうかを決定すること、及び
前記目標ノードが関心のあるノードであると決定される場合に、前記目標ノードから関心のある第１の上流のノードまで前記目標ノードに関連する要約オブジェクトに対応するリンクをトラバースすること、そうでなければ、
前記目標ノードが関心のあるノードであると決定されない場合に、関心があるものとして指定されていない１又は２以上のデータ変換ノード又はデータノードをトラバースすることを含む、前記目標ノードと関心のある前記第１の上流のノードとの間の有向グラフの元のパスをトラバースすることを含む、請求項６に記載の方法。
【請求項８】
パスの第１の部分をトラバースすることが、関心のある第１の上流のノードから関心のある第２の上流のノードまで関心のある前記第１の上流のノードに関連する要約オブジェクトに対応するリンクをトラバースすることをさらに含む、請求項７に記載の方法。
【請求項９】
パスの第２の部分をトラバースすることが、目標ノードに関心のあるノードであるものとして印が付けられているかどうかを決定すること、及び
前記目標ノードが関心のあるノードであると決定される場合に、前記目標ノードから関心のある第１の下流のノードまで前記目標ノードに関連する要約オブジェクトに対応するリンクをトラバースすること、そうでなければ、
前記目標ノードが関心のあるノードであると決定されない場合に、関心があるものとして指定されていない１又は２以上のデータ変換ノード又はデータノードをトラバースすることを含む、前記目標ノードと関心のある前記第１の下流のノードとの間の有向グラフの元のパスをトラバースすることを含む、請求項６に記載の方法。
【請求項１０】
パスの第２の部分をトラバースすることが、関心のある第１の下流のノードから関心のある第２の下流のノードまで関心のある前記第１の下流のノードに関連する要約オブジェクトに対応するリンクをトラバースすることをさらに含む、請求項９に記載の方法。
【請求項１１】
１又は２以上の要約オブジェクトが、２又は３以上の要約オブジェクトを含み、系統図を生じさせるステップが、前記２又は３以上の要約オブジェクトの少なくとも一部を共通のアイコンによって表される要約ノードへと統合することをさらに含む、請求項３に記載の方法。
【請求項１２】
２又は３以上の要約オブジェクトの少なくとも一部を要約ノードへと統合することが、前記２又は３以上の要約オブジェクトの前記少なくとも一部によってリンクされた関心のあるノードの間の関係を分析して、前記２又は３以上の要約オブジェクトの前記少なくとも一部を統合することが可能であるかどうかを決定することを含む、請求項１１に記載の方法。
【請求項１３】
関心のあるノードの間の関係を分析することが、２又は３以上の要約オブジェクトの少なくとも一部が関心のある共通の下流のノードに関連付けられると決定することを含む、請求項１２に記載の方法。
【請求項１４】
ノードの少なくとも一部に関する関心の指定が、ユーザから受け取られる、請求項１に記載の方法。
【請求項１５】
ノードの少なくとも一部に関する関心の指定が、コンピューティングシステムによって生じさせられる、請求項１に記載の方法。
【請求項１６】
コンピューティングシステムが、関心があるものとして指定されたその他のノードの位置に対するノードの少なくとも一部の位置に基づいて前記ノードの前記少なくとも一部に関する関心の指定を生じさせる、請求項１５に記載の方法。
【請求項１７】
コンピューティングシステムが、ノードの少なくとも一部が関心があるものとして指定されたその他のノードとデータ構造を共有することに基づいて前記ノードの前記少なくとも一部に関する関心の指定を生じさせる、請求項１５に記載の方法。
【請求項１８】
コンピューティングシステムが、複数の別々の相互に接続されたサブシステムを含み、前記サブシステムの少なくとも一部が前記データ系統図に表され、前記有向グラフの一部が、前記データ系統図に表された前記サブシステムの少なくとも一部の間に分散される、請求項３に記載の方法。
【請求項１９】
前記データ系統図に表された前記サブシステムの少なくとも一部が、共通のアイコンによって表される、請求項１８に記載の方法。
【請求項２０】
コンピュータ可読媒体に非一時的形態で記憶された、コンピューティングシステムにおいて系統情報を管理するためのソフトウェアであって、コンピューティングシステムに、
データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と前記計算の実行中に前記計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を入力デバイス又はポートを介して受け取らせ、
少なくとも１つのプロセッサを使用して、前記有向グラフ内のパスに基づいて要約情報を計算し、前記要約情報を１又は２以上の要約オブジェクトに記憶させるための命令を含み、前記計算が、
前記有向グラフの複数の前記ノードに関する関心の指定を受け取ることと、
関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、前記１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、前記残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない前記第１のノードと前記第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む、前記ソフトウェア。
【請求項２１】
コンピューティングシステムにおいて系統情報を管理するためのコンピューティングシステムであって、
データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と前記計算の実行中に前記計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を受け取るための入力デバイス又はポートと、
前記有向グラフ内のパスに基づいて要約情報を計算し、前記要約情報を１又は２以上の要約オブジェクトに記憶するための少なくとも１つのプロセッサとを含み、前記計算が、
前記有向グラフの複数の前記ノードに関する関心の指定を受け取ることと、
関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、前記１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、前記残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない前記第１のノードと前記第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む、前記コンピューティングシステム。
【請求項２２】
コンピューティングシステムにおいて系統情報を管理するためのコンピューティングシステムであって、
データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と前記計算の実行中に前記計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を受け取るための手段と、
少なくとも１つのプロセッサを使用して、前記有向グラフ内のパスに基づいて要約情報を計算し、前記要約情報を１又は２以上の要約オブジェクトに記憶するための手段とを含み、前記計算が、
前記有向グラフの複数の前記ノードに関する関心の指定を受け取ることと、
関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、前記１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、前記残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない前記第１のノードと前記第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む、前記コンピューティングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１４年７月２４日に出願した米国特許出願第６２／０２８，４８５号明細書及び２０１５年２月１１日に出願した米国特許出願第６２／１１４，６８４号明細書の優先権を主張するものである。
【０００２】
この説明は、データ系統図の要約に関する。
【背景技術】
【０００３】
データ処理システムにおいては、データがシステムを通り抜けるときのそのデータの系統の視覚的表現に特定の種類のユーザがアクセスすることができることが望ましいことが多い。そのような「データ系統図」は、データ及びそれらのデータの間の依存関係を処理するためのシステムにおけるそれらのデータ及びエンティティの図式的表現を含む可能性がある。極めて広く、多くの用途の中でもとりわけ、そのようなデータ系統図は、リスクを減らし、規制遵守義務を確認し、ビジネスプロセスを能率化し、データを保護するために使用され得る。データ系統図は正しくかつ完全であることが重要である。
【０００４】
データ系統図を生じさせ、表示することができる一部のシステムは、データアイテムとそれらのデータアイテムを消費するか又は生じさせる処理エンティティを表すアイテムとの表現を示すエンドツーエンドのデータ系統図を自動的に提示することができる。特定のアイテムから上流のパスは、そのアイテムに関する「ディペンデンシー分析（dependency analysis）」と呼ばれることがあり、特定のアイテムから下流のパスは、そのアイテムに関する「インパクト分析（impact analysis）」と呼ばれることがある。本明細書において使用されるとき、「データ系統図」は、任意の所与のアイテムに関連する上流のディペンデンシー分析及び／又は下流のインパクト分析を含む可能性がある。データ系統図を生じさせ、表示することができる一部のシステムは、ユーザがデータ系統図内のアイテムの論理的及び／又は物理的グループを単一の要素にまとめることを可能にする。データ系統図を生じさせ、表示することができる一部のシステムは、データ品質の採点などの充実したデータ情報によってデータ系統図を改善することができる。
【発明の概要】
【課題を解決するための手段】
【０００５】
一態様においては、概して、コンピューティングシステムにおいて系統情報を管理するための方法が、データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と計算の実行中に計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を入力デバイス又はポートを介して受け取るステップと、少なくとも１つのプロセッサを使用して、有向グラフ内のパスに基づいて要約情報を計算し、要約情報を１又は２以上の要約オブジェクト（summary object）に記憶するステップとを含み、計算は、有向グラフの複数のノードに関する関心の指定を受け取ることと、関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない第１のノードと第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む。
【０００６】
態様は、以下の特徴のうちの１又は２以上を含み得る。
【０００７】
第１の要約オブジェクトを生じさせることは、関心のある第１のノードと関心のある第２のノードとの間の第１のパスをトラバースして、関心があるものとして指定されていない１又は２以上の残りのノードを第１のパスに沿って特定することと、特定された１又は２以上の残りのノードに関する要約情報を形成することとを含む。
【０００８】
前記方法は、要約オブジェクトのうちの１又は２以上に記憶された要約情報に従って、関心があるものとして指定されたそれぞれのノードが、独自のアイコンによって表され、複数の残りのノードが、関心のある複数のノードに接続された共通のアイコンによって表される、有向グラフの少なくとも一部の視覚的表現としてデータ系統図を生じさせるステップをさらに含む。
【０００９】
前記方法は、共通のアイコンに関連する詳細を見たいというユーザの望みを示すユーザ入力を受け取り、ユーザ入力に応じて、共通のアイコンによって表される複数の残りのノードをトラバースし、要約情報に関連する複数の残りのノードを含む有向グラフのパスのトラバースに基づいてデータ系統図において残りのノードを視覚的に表すステップをさらに含む。
【００１０】
前記方法は、１若しくは２以上のデータ変換ノードのうちの１つ又は１若しくは２以上のデータノードのうちの１つの目標ノードとしての指定を受け取るステップをさらに含み、データ系統図を生じさせるステップは、有向グラフを通り抜ける１又は２以上のパスをトラバースすることを含み、１又は２以上のパスのうちのそれぞれのパスは、関心のある２又は３以上のノード及び目標ノードを含む。
【００１１】
有向グラフを通り抜ける１又は２以上のパスの少なくとも一部に関して、パスをトラバースすることは、目標ノードから上流方向にパスの第１の部分をトラバースすることと、目標ノードから下流方向にパスの第２の部分をトラバースすることとを含む。
【００１２】
パスの第１の部分をトラバースすることは、目標ノードに関心のあるノードであるものとして印が付けられているかどうかを決定すること、及び目標ノードが関心のあるノードであると決定される場合に、目標ノードから関心のある第１の上流のノードまで目標ノードに関連する要約オブジェクトに対応するリンクをトラバースすること、そうでなければ、目標ノードが関心のあるノードであると決定されない場合に、関心があるものとして指定されていない１又は２以上のデータ変換ノード又はデータノードをトラバースすることを含む、目標ノードと関心のある第１の上流のノードとの間の有向グラフの元のパスをトラバースすることを含む。
【００１３】
パスの第１の部分をトラバースすることは、関心のある第１の上流のノードから関心のある第２の上流のノードまで関心のある前記第１の上流のノードに関連する要約オブジェクトに対応するリンクをトラバースすることをさらに含む。
【００１４】
パスの第２の部分をトラバースすることは、目標ノードに関心のあるノードであるものとして印が付けられているかどうかを決定すること、及び目標ノードが関心のあるノードであると決定される場合に、目標ノードから関心のある第１の下流のノードまで目標ノードに関連する要約オブジェクトに対応するリンクをトラバースすること、そうでなければ、目標ノードが関心のあるノードであると決定されない場合に、関心があるものとして指定されていない１又は２以上のデータ変換ノード又はデータノードをトラバースすることを含む、目標ノードと関心のある第１の下流のノードとの間の有向グラフの元のパスをトラバースすることを含む。
【００１５】
パスの第２の部分をトラバースすることは、関心のある第１の下流のノードから関心のある第２の下流のノードまで関心のある第１の下流のノードに関連する要約オブジェクトに対応するリンクをトラバースすることをさらに含む。
【００１６】
１又は２以上の要約オブジェクトは、２又は３以上の要約オブジェクトを含み、系統図を生じさせるステップは、２又は３以上の要約オブジェクトの少なくとも一部を共通のアイコンによって表される要約ノード（summary node）へと統合することをさらに含む。
【００１７】
２又は３以上の要約オブジェクトの少なくとも一部を要約ノードへと統合することは、２又は３以上の要約オブジェクトの少なくとも一部によってリンクされた関心のあるノードの間の関係を分析して、２又は３以上の要約オブジェクトの少なくとも一部を統合することが可能であるかどうかを決定することを含む。
【００１８】
関心のあるノードの間の関係を分析することは、２又は３以上の要約オブジェクトの少なくとも一部が関心のある共通の下流のノードに関連付けられると決定することを含む。
【００１９】
ノードの少なくとも一部に関する関心の指定は、ユーザから受け取られる。
【００２０】
ノードの少なくとも一部に関する関心の指定は、コンピューティングシステムによって生じさせられる。
【００２１】
コンピューティングシステムは、関心があるものとして指定されたその他のノードの位置に対するノードの少なくとも一部の位置に基づいてノードの少なくとも一部に関する関心の指定を生じさせる。
【００２２】
コンピューティングシステムは、ノードの少なくとも一部が関心があるものとして指定されたその他のノードとデータ構造を共有すること基づいてノードの少なくとも一部に関する関心の指定を生じさせる。
【００２３】
コンピューティングシステムは、複数の別々の相互に接続されたサブシステムを含み、有向グラフの一部は、サブシステムの少なくとも一部の間に分散される。
【００２４】
サブシステムの少なくとも一部は、共通のアイコンによって表される。
【００２５】
別の態様においては、概して、コンピューティングシステムにおいて系統情報を管理するためのソフトウェアが、コンピュータ可読媒体に非一時的形態で記憶され、ソフトウェアは、コンピューティングシステムに、データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と計算の実行中に計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を入力デバイス又はポートを介して受け取らせ、少なくとも１つのプロセッサを使用して、有向グラフ内のパスに基づいて要約情報を計算し、要約情報を１又は２以上の要約オブジェクトに記憶させるための命令を含み、計算は、有向グラフの複数のノードに関する関心の指定を受け取ることと、関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない第１のノードと第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む。
【００２６】
別の態様においては、概して、コンピューティングシステムにおいて系統情報を管理するためのコンピューティングシステムが、データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と計算の実行中に計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を受け取るための入力デバイス又はポートと、有向グラフ内のパスに基づいて要約情報を計算し、要約情報を１又は２以上の要約オブジェクトに記憶するための少なくとも１つのプロセッサとを含み、計算は、有向グラフの複数のノードに関する関心の指定を受け取ることと、関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない第１のノードと第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む。
【００２７】
別の態様においては、概して、コンピューティングシステムにおいて系統情報を管理するためのコンピューティングシステムが、データ要素を変換する計算を表す１又は２以上のデータ変換ノード、及びデータ要素を表す１又は２以上のデータノードを含み、計算と計算の実行中に計算によって受け取られるか又は生成されるデータ要素との間のそれぞれの系統の関係を表す有向リンクを含む有向グラフの識別情報を受け取るための手段と、少なくとも１つのプロセッサを使用して、有向グラフ内のパスに基づいて要約情報を計算し、要約情報を１又は２以上の要約オブジェクトに記憶するための手段とを含み、計算は、有向グラフの複数のノードに関する関心の指定を受け取ることと、関心のある複数のノードに含まれない残りのノードに関する１又は２以上の要約オブジェクトを生じさせることであって、１又は２以上の要約オブジェクトのうちの第１の要約オブジェクトが、残りのノードのうちの１又は２以上を確かに含み、関心のある第１のノード及び関心のある第２のノード以外に関心のあるいかなるノードも含まない第１のノードと第２のノードとの間の第１のパスに基づく要約情報を含む、生じさせることとを含む。
【００２８】
態様は、以下の利点のうちの１又は２以上を含む可能性がある。
【００２９】
データ処理システムの複雑さが増したので、データ系統図も次第に複雑になっており、単一のビューの中にそれぞれのアイコンによって表される多くのデータ系統ノード（例えば、データノード及びデータ変換ノード）を提示する。データ系統図においてユーザに対して提示されるデータノードの数が増えるにつれて、データ系統図は理解するのが難しくなる可能性がある。
【００３０】
本明細書において説明される手法は、所与のデータ処理システム内で、通常、特定のデータノードがユーザの特定の関心を集めるという認識を利用する。例えば、ユーザの特定の関心を集める一種のデータノードは、特定の種類の情報（例えば、個人を特定できる情報）を記憶することが知られている系統内の任意のデータノードである可能性がある。
【００３１】
本明細書において説明される手法においては、ユーザの関心を集めず、互いに関連するトポロジーを共有するデータ系統ノードの組が、データ系統図において単一のアイコンによって表される要約ノードにまとめられる。要約ノードに含まれないデータ系統図内の残りのノードは、ユーザの「大きな関心」を集める（つまり、「関心がある」ものとして指定されていないその他のノードとは対称的に「関心がある」ものとして指定されたノード）。結果は、要約ノードによって示されたユーザ（又は意図される観客）の関心を集めるものとして指定された詳細のみを示す要約されたデータ系統図であり、要約されたデータ系統図においては、すべての省略された詳細が、要約ノードによって示される。
【００３２】
一態様においては、概して、データ系統図生成システムが、そのデータ系統図生成システムが表示するデータ系統図の一部を要約するように構成される。データ系統図は、特定のトポロジーを有し、システムによってアクセスされ得る１又は２以上のデータ構造に記憶される対応する「データ系統グラフ」のスクリーン上の表現である。システムがデータ系統グラフ内の大きな関心のあるノードの指定を受け取った後、（下でより詳細に説明される）「要約オブジェクト」の形態で要約情報を記憶するように強化された「強化されたデータ系統グラフ」が生じさせられる。システムは、強化されたデータ系統グラフを使用して、表示するための要約されたデータ系統図を生じさせる。システムによって生じさせられた要約されたデータ系統図は、データ系統図の大きな関心のある部分だけを示し、データ系統図の関心の低い部分を要約し、それによって、データ系統図の複雑さを減らす。
【００３３】
利点の中でもとりわけ、手法は、関心の低いデータ系統ノードを抑制しながら大きな関心のあるデータ系統ノードを強調し、それによって、より理解しやすいデータ系統図を提供する。これは、例えば、潜在的にデータ系統図内に表示される可能性があるデータ系統ノードの数は非常に多い（例えば、数千又は数百万）ので、それらのデータ系統ノードは、実際に関心のある比較的少数のデータ系統ノード（例えば、数十又は数百）の位置を視覚的に分かりにくくする。したがって、結果として得られる要約された系統図は、人間のユーザの関心を集める可能性がある関連する系統情報の知覚を改善するために情報の人間の知覚及び受け取りの物理的条件を考慮に入れるようにして提示される。
【００３４】
説明される手法はデータ系統図内により少ないデータ系統ノードを表示するので、説明される手法によって生じさせられるデータ系統図は、以前の手法によって生じさせられるデータ系統図よりもより迅速に計算され、表示される。
【００３５】
本発明のその他の特徴及び利点は、以下の説明及び請求項から明らかになるであろう。
【図面の簡単な説明】
【００３６】
【図１】データ系統モジュールを含むコンピューティングシステムのブロック図である。
【図２】データ系統モジュールの図である。
【図３】要約リンク（summary link）計算方法の流れ図である。
【図４】要約されたデータ系統計算方法の流れ図である。
【図５】第１の例示的な印を付けられたデータ系統グラフである。
【図６】要約リンク計算方法によって生じさせられた要約リンクを含む第１の例示的な強化されたデータ系統グラフである。
【図７】図４の方法の適用後の第１の例示的な強化されたデータ系統グラフである。
【図８】第１の例示的な強化されたデータ系統グラフのための要約ノード生成のための方法を示す図である。
【図９】第１の例示的な印を付けられたデータ系統グラフに関する要約されたデータ系統図である。
【図１０】第２の例示的な印を付けられたデータ系統グラフである。
【図１１】要約リンク計算方法によって生じさせられた要約リンクを含む第２の例示的な強化されたデータ系統グラフである。
【図１２】図４の方法の適用後の第２の例示的な強化されたデータ系統グラフである。
【図１３】第２の例示的な強化されたデータ系統グラフのための要約ノード生成のための方法を示す図である。
【図１４】第２の例示的な印を付けられたデータ系統グラフに関する要約されたデータ系統図である。
【図１５】データ系統の要約の前の例示的なデータ系統レポートの図である。
【図１６】図１５のデータ系統レポートの要約されたバージョンの図である。
【図１７】展開可能なクラウドアイコンを含む要約されたデータ系統レポートの一部の図である。
【図１８】クラウドアイコンのうちの１つの展開後の図１７の要約されたデータ系統レポートの一部を示す図である。
【発明を実施するための形態】
【００３７】
図１は、データ系統要約技術が使用され得るコンピューティングシステム１００の例を示す。システム１００は、ストレージデバイス、又はオンラインデータストリームへの接続などのデータの１又は２以上のソースを含み得るデータソース１０２を含み、それらの１又は２以上のソースのそれぞれは、さまざまな記憶フォーマット（例えば、データベーステーブル、スプレッドシートファイル、フラットテキストファイル、又はメインフレームによって使用されるネイティブフォーマット）のいずれかでデータを記憶又は提供し得る。実行環境１０４は、データ処理システム１１２を含む。実行環境１０４は、例えば、ＵＮＩＸオペレーティングシステムのバージョンなどの好適なオペレーティングシステムの制御下の１又は２以上の多目的コンピュータを含むデータ処理システム１１２においてホストされる可能性がある。例えば、データ処理システム１１２は、ローカルの（例えば、対称型マルチプロセッシング（ＳＭＰ，symmetric multi-processing）コンピュータなどのマルチプロセッサシステム）又はローカルに分散された（例えば、クラスタ若しくは超並列処理（ＭＰＰ，massively parallel processing）システムとして接続された複数のプロセッサか、或いは遠隔の又は遠隔に分散された（例えば、ローカルエリアネットワーク（ＬＡＮ，local area network）及び／若しくは広域ネットワーク（ＷＡＮ，wide-area network）を介して接続された複数のプロセッサ）か、或いはこれらの任意の組合せかのいずれかの複数の中央演算処理装置（ＣＰＵ，central processing unit）或いはプロセッサコアを用いるコンピュータシステムの構成を含むマルチノード並列コンピューティング環境を含む可能性がある。
【００３８】
データソース１０２を提供するストレージデバイスは、実行環境１０４のローカルにあり、例えば、実行環境１０４をホストするコンピュータに接続されたストレージ媒体（例えば、ハードドライブ１０８）に記憶される可能性があり、又は実行環境１０４の遠隔にあり、例えば、（例えば、クラウドコンピューティングインフラストラクチャによって提供される）リモート接続を介して実行環境１０４をホストするコンピュータと通信する遠隔システム（例えば、メインフレーム１１０）においてホストされる可能性がある。
【００３９】
システム１００は、開発者がデータ処理コンピュータプログラム１１７（例えば、データフローグラフ）を規定し、実行環境１０４によってアクセスされ得るデータストレージシステム１１６にプログラムを記憶することができる開発環境１１８を含む。データ処理システム１１２は、コンピュータプログラム１１７に従ってデータソースからのデータを処理して出力データ１１４を生じさせる。出力データ１１４は、データソース１０２若しくはデータストレージシステム１１６に戻して記憶されるか、又はそうでなければ使用される可能性がある。開発環境１１８は、一部の実施形態において、（データ処理構成要素又はデータセットを表す）頂点間の（作業要素（work element）、すなわち、データのフローを表す）有向リンクによって接続された頂点を含むデータフローグラフとしてアプリケーションを開発するためのシステムである。例えば、そのような環境は、参照により本明細書に組み込まれる「Managing Parameters for Graph-Based Applications」と題された米国特許出願公開第２００７／００１１６６８号明細書により詳細に説明されている。そのようなグラフに基づく計算を実行するためのシステムは、参照により本明細書に組み込まれる「EXECUTING COMPUTATIONS EXPRESSED AS GRAPHS」と題された米国特許第５，９６６，０７２号明細書に説明されている。このシステムによって作成されるデータフローグラフは、プロセス間で情報を移動するため及びプロセスに関する実行の順序を定義するためにグラフの構成要素によって表される個々のプロセスに情報を出し入れするための方法を提供する。このシステムは、任意の利用可能な方法からプロセス間通信の方法を選択するアルゴリズムを含む（例えば、グラフのリンクに従った通信パスは、ＴＣＰ／ＩＰ若しくはＵＮＩＸドメインソケットを使用するか、又はプロセス間でデータを渡すために共有メモリを使用する可能性がある）。
【００４０】
システム１００は、ユーザ１２１（例えば、企業ユーザ又はデータ設計者）がデータ系統図を要求し、見ることができる企業環境１１９を含む。データ系統図を生じさせるために、企業環境１１９は、コンピュータプログラム１１７の異なる部分に対応する計算を表すデータ変換ノード（例えば、異なるデータフローグラフ又はデータフローグラフ内の異なる構成要素）を特徴付けるメタデータと、データ系統図を生じさせるためにコンピュータプログラム１１７によってアクセスされるか又は生じさせられるデータノード（例えば、データソース１０２からのデータセット又は出力データ１１４に対応するデータセット）を特徴付けるメタデータとを含むシステムメタデータ１２０を分析することができるデータ系統モジュール１１５を含む。場合によっては、データ系統モジュール１１５は、例えば、メタデータが利用可能でないか又は不完全である場合、コンピュータプログラム１１７及び記憶されたデータを直接分析することもできる。一部の実施形態において、システム１００は、そのようなメタデータのための別個のストレージシステムを含む。
【００４１】
図２を参照して、データ系統モジュール１１５は、入力としてユーザ１２１からシステムメタデータ１２０及び１又は２以上のコマンド１２３を受け取り、出力としてユーザ１２１に提示するための要約されたデータ系統図１２２を生じさせる。データ系統モジュール１１５は、印を付けられたデータ系統グラフ計算モジュール１２４及びデータ系統要約モジュール１２６を含む。データ系統要約モジュール１２６は、要約リンク計算モジュール１２８及び要約されたデータ系統図計算モジュール１３０を含む。
【００４２】
動作中、データ系統モジュール１１５によって受け取られたシステムメタデータ１２０は、ユーザ１２１からのコマンド１２３と一緒に、印を付けられたデータ系統グラフ計算モジュール１２４に提供される。ユーザ１２１からのコマンド１２３の少なくとも一部は、データ系統分析のための目標データノードの指示と、一部の例においては、大きな関心のある１又は２以上のデータノードの指示とを含む。極めて広く、用語「データノード」は、本明細書の一部の例において使用されるとき、データセット（例えば、データベース）及び／又はデータセットの特定のフィールドに関する。一部の例において、大きな関心があるものとして印を付けられるデータノードは、概して、企業システム１１９の２人以上のユーザの関心を集め、一方、目標データノードとして印を付けられるデータノードは、所与の時間に企業システム１１９の所与のユーザの特定の関心を集める。
【００４３】
印を付けられたデータ系統グラフ計算モジュール１２４は、ユーザ１２１からのコマンドに従ってシステムメタデータ１２０を処理して、印を付けられたデータ系統グラフ１２５を生じさせる。極めて広く、印を付けられたデータ系統グラフ１２５は、ノード間の依存関係を表すリンクによって１又は２以上の変換ノードと相互に接続された１又は２以上のデータノードを含む。ユーザ１２１が目標データノード又は大きな関心のあるデータノードであるものとして示したデータノードは、印を付けられたデータ系統グラフ１２５内でそのように（例えば、ブルズアイ記号によって）印を付けられる。
【００４４】
印を付けられたデータ系統グラフ１２５は、データ系統要約モジュール１２６に提供され、印を付けられたデータ系統グラフ１２５は、まず、要約リンク計算モジュール１２８に提供される。下でより詳細に説明されるように、要約リンク計算モジュール１２８は、ユーザ１２１が大きな関心があるものとして印をつけたノードの間のいくつかの要約リンクを生じさせる。要約リンクを特徴付ける情報は、要約オブジェクトに記憶される。それぞれの要約リンクは、２つの大きな関心のあるデータノードの間のデータの依存関係のパスを表し、パスに沿って存在する関心の低いすべてのデータ変換ノード又はデータノードを省略する。要約リンク計算モジュール１２８は、印を付けられたデータ系統グラフ１２５を記憶するデータ構造内に計算された要約リンクを特徴付ける要約オブジェクトを記憶することによって、強化されたデータ系統グラフ１２７を出力として生じさせる。
【００４５】
強化されたデータ系統グラフ１２７は、要約されたデータ系統図計算モジュール１３０に提供される。下でより詳細に説明されるように、要約されたリンク計算モジュール１３０は、強化されたデータ系統グラフ１２７を処理して、要約されたデータ系統図１２２を生じさせる。そのようにするために、要約されたデータ系統図計算モジュール１３０は、要約されたデータ系統図１２２内に大きな関心のあるノードを細大漏らさず表示しながら、（強化されたデータ系統グラフ１２７内の要約リンクを処理することに基づいて）関心が低いものとして示されたノードを「要約ノード」へとグループ化する。結果として得られた要約されたデータ系統図１２２は、データ系統モジュール１１５から出され、ユーザ１２１に提供される。
【００４６】
図３を参照すると、流れ図３００が、強化されたデータ系統グラフ１２７を生じさせるために図２の要約リンク計算モジュール１２８によって従われるステップを示す。第１のステップ３３４において、印を付けられたデータ系統グラフ１２５が受け取られる。印を付けられたデータ系統グラフ１２５は、大きな関心があるものとして印を付けられる印を付けられたデータ系統グラフ１２５内のそれぞれのデータノードに対して動作する処理ループ３３６に与えられる。
【００４７】
ステップ３３８において、大きな関心があるものとして印を付けられた（ノード「Ｘ」として指定された）それぞれのデータノードに関して、そのデータノードの上流の近隣のノード（すなわち、大きな関心のあるデータノードにデータを供給するデータノード）のすべてが、データノードのリストの一番下に追加される。それから、データノードのリストの一番上のデータノードが、ステップ３４０においてリストから削除され、データノード「Ｙ」として指定される。ステップ３４２において、テストが、データノードＹに大きな関心があるものとして印が付けられているかどうかを決定する。データノードＹに大きな関心があるものとして印が付けられていない場合、ステップ３４４において、データノードＹの上流の近隣のノードのすべてが、データノードのリストの一番下に追加される。そうでなければ、データノードＹに大きな関心があるものとして印が付けられている場合、ステップ３４６において、データノードＹとデータノードＸとの間の要約リンクが記憶される。上述のように、要約リンクは、データノードＹとデータノードＸとの間のデータの依存関係の特定のパスに沿ったすべての大きな関心のないノード（データノードと変換ノードとの両方）を省略することによってそのパスを要約する。
【００４８】
ステップ３４６において要約リンクを記憶するか又はステップ３４４においてデータノードＹの上流の近隣のノードを追加した後、データノードのリストが空であるかどうかを決定するために、ステップ３４８においてテストが実行される。リストが空でない場合、プロセスは、ステップ３４０にループして戻り、データノードのリストの一番上から次のデータノードを削除し、新しいデータノードを「Ｙ」として指定し、上述のステップを繰り返す。そうでなければ、データノードのリストが空である場合、プロセスは３５０において終了し、強化されたデータ系統グラフ１２７を生じさせるためのプロセスが完了する。
【００４９】
図４を参照すると、流れ図４５１は、要約されたデータ系統図１２２を生じさせるために図２の要約されたデータ系統図計算モジュール１３０によって従われるプロセスを示す。第１のステップ４５２において、強化されたデータ系統グラフ１２７中の目標データノードが特定される。それから、特定された目標データノードが、処理ループ４５４に与えられ、処理ループ４５４は、上流方向と下流方向との両方にそれぞれの特定された目標データノードに関して実行される。極めて広く、処理ループ４５４のそれぞれの反復は、目標データノードから強化されたデータ系統グラフ１２７の端のデータノードへのパスをトラバースする（つまり、歩く（walk））。ノード間のパスをトラバースすること（又はパスを「歩くこと」）は、パスに沿ったそれぞれのノードを調べて、特定の特性を有するそのパスに沿ったすべてのノードを特定することを含む。
【００５０】
処理ループ４５４内で、目標データノードに大きな関心があるものとして印が付けられているかどうかを決定するために、ステップ４５６においてテストが実行される。データノードに大きな関心があるものとして印が付けられている場合、ステップ４５８において、アルゴリズムは、目標データノードから次のデータノードに接続された要約リンクを歩く。データノードに大きな関心があるものとして印が付けられていない場合、ステップ４６０において、アルゴリズムは、次のデータノードまで元のリンク（すなわち、非要約リンク）を歩く。
【００５１】
ステップ４６２において、アルゴリズムが目標データノードに関するそのアルゴリズムの歩きの終わりに到達したかどうかを決定するためにテストが実行される。そうである場合、要約されたデータ系統図生成ステップ４６５による後の使用のために、ステップ４６４において、目標データノードに関する歩きに関連するリンクが記憶される。アルゴリズムが目標データノードに関するそのアルゴリズムの歩きの終わりに到達していなかった場合、アルゴリズムはステップ４５６に戻り、目標データノードから現在の歩きに沿った次のデータノードに関して上述のプロセスが繰り返される。上述のように、上述のプロセスは、目標データノードから上流方向と下流方向の両方に繰り返される。
【００５２】
特定された目標データノードのすべてが処理ループ４５４によって処理された後、処理ループ４５４の出力が、要約されたデータ系統図生成ステップ４６５に与えられる。概して、要約されたデータ系統図生成ステップは、処理ループの出力内の要約リンクを要約ノードにまとめて、要約されたデータ系統図１２２を生じさせる。要約リンクを要約ノードにまとめるためのプロセスは、下で提示される例においてより詳細に説明される。
【００５３】
ステップ４６６において、要約されたデータ系統図生成ステップ４６５によって生成された要約されたデータ系統図１２２が、ユーザ１２１に対して表示される。
【００５４】
１  例１
図５を参照すると、印を付けられたデータ系統グラフ５００の一例が、いくつかのデータノードＤ１−Ｄ８及びいくつかのデータ変換ノードＴ１−Ｔ６を含む。データノード及びデータ変換ノードは、ノード間のデータの依存関係を表すリンク５６８によって相互に接続される。概して、リンク５６８は、ページの左側からページの右側に向かう方向にデータが流れるという意味で方向がある。印を付けられたデータ系統グラフ５００において、特定のデータノード（すなわち、Ｄ２、Ｄ３、Ｄ４、Ｄ６、及びＤ８）は、大きな関心があるものとして印を付けられており、データノードのうちの２つ（すなわち、Ｄ３及びＤ４）は、目標データノードであるものとして印を付けられている。目標データノードＤ３及びＤ４の両方は、コンテナ５７０内に置かれる。概して、コンテナは、コンピュータプログラム内でシステム又はサブシステムの境界を表す構造である。所与のコンテナ内のノードの一部若しくはすべてが、ユーザ１２１の大きな関心を集める可能性があり、又は所与のコンテナ内のノードのいずれも、ユーザ１２１の大きな関心を集めない可能性がある。
【００５５】
図３と図６との両方を参照すると、印を付けられたデータ系統グラフ５００が図２の要約リンク計算モジュール１２８に与えられるとき、図３に示された手順が、要約リンクＳＡ−ＳＧを生じさせるために、印を付けられたデータ系統グラフに適用される。簡潔にするために、図３の手順の適用は、印を付けられたデータ系統グラフ５００内の大きな関心のあるデータノードのうちの１つ（すなわち、Ｄ８）に関してのみ説明される。しかし、手順は、印を付けられたデータ系統グラフ５００内の大きな関心のあるデータノードの各々に関して実行されることを理解されたい。
【００５６】
大きな関心のあるデータノードＤ８に関して、データノードＤ８は、まず、「Ｘ」として指定される。ステップ３３８において、Ｘの上流の近隣のノードＤ７及びＤ５が、データノードのリストに追加される。ステップ３４０において、Ｄ７が、リストから削除され、「Ｙ」として指定される。ステップ３４２において、Ｙに大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、答えＮＯを返す。テストがＮＯを返したので、手順はステップ３４４に進み、Ｙの上流の近隣のノードＤ３及びＤ４がデータノードのリストの一番下に追加される。ステップ３４８において、データノードのリストが空であるかどうかを決定するためにテストが実行される。テストは、答えＮＯを返す。
【００５７】
テストがＮＯを返したので、手順はステップ３４０にループして戻り、Ｄ５がデータノードのリストから削除され、「Ｙ」として指定される。ステップ３４２において、Ｙに大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、答え「ＮＯ」を返す。テストがＮＯを返したので、手順はステップ３４４に進み、Ｙの上流の近隣のノードＤ２がデータノードのリストの一番下に追加される。ステップ３４８において、データノードのリストが空であるかどうかを決定するためにテストが実行される。テストは、答えＮＯを返す。
【００５８】
テストがＮＯを返したので、手順はステップ３４０にループして戻り、Ｄ３がリストから削除され、「Ｙ」として指定される。ステップ３４２において、Ｙに大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、答え「ＹＥＳ」を返す。テストがＹＥＳを返したので、手順はステップ３４６に進み、Ｙ（Ｄ３）とＸ（Ｄ８）との間の要約リンク（ＳＤ）が記憶される。ステップ３４８において、データノードのリストが空であるかどうかを決定するためにテストが実行される。テストは、答えＮＯを返す。
【００５９】
テストがＮＯを返したので、手順はステップ３４０にループして戻り、Ｄ４がリストから削除され、「Ｙ」として指定される。ステップ３４２において、Ｙに大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、答え「ＹＥＳ」を返す。テストがＹＥＳを返したので、手順はステップ３４６に進み、Ｙ（Ｄ４）とＸ（Ｄ８）との間の要約リンク（ＳＧ）が記憶される。ステップ３４８において、データノードのリストが空であるかどうかを決定するためにテストが実行される。テストは、答え「ＮＯ」を返す。
【００６０】
テストがＮｏを返したので、手順はステップ３４０にループして戻り、Ｄ２がリストから削除され、「Ｙ」として指定される。ステップ３４２において、Ｙに大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、答え「ＹＥＳ」を返す。テストがＹＥＳを返したので、手順はステップ３４６に進み、Ｙ（Ｄ２）とＸ（Ｄ８）との間の要約リンク（ＳＣ）が記憶される。ステップ３４８において、データノードのリストが空であるかどうかを決定するためにテストが実行される。テストは、答え「ＹＥＳ」を返す。
【００６１】
リストは空であり、手順はＤ８データノードに関する要約リンクを計算することを終了しており、Ｄ８に関する要約ノードのリストは、ＳＤ＝Ｄ８→Ｄ３、ＳＧ＝Ｄ８→Ｄ４、及びＳＣ＝Ｄ８→Ｄ２である。
【００６２】
要約リンク計算モジュール１２８は、印を付けられたデータ系統グラフ５００内で大きな関心があるものとして印を付けられたすべてのデータノードに関して上の要約リンク計算手順を実行する。
【００６３】
図６を参照すると、要約リンクを含む強化されたデータ系統グラフ１２７が、要約リンクの結果として得られたリストがＳＡ＝Ｄ４→Ｄ２、ＳＢ＝Ｄ４→Ｄ２、ＳＣ＝Ｄ８→Ｄ２、ＳＤ＝Ｄ８→Ｄ３、ＳＥ＝Ｄ６→Ｄ３、ＳＦ＝Ｄ６→Ｄ４、及びＳＧ＝Ｄ８→Ｄ４であることを示す。
【００６４】
ここで図４と図７との両方を参照すると、強化されたデータ系統グラフ１２７が、図２の要約されたデータ系統図計算モジュール１３０に与えられ、要約されたデータ系統図計算モジュール１３０が、図４に示された手順を適用して、要約されたデータ系統図１２２を生じさせる。最初、手順のステップ４５２において、強化されたデータ系統グラフ１２７内の目標データノードが、データノードＤ３及びＤ４として特定される。Ｄ３及びＤ４の各々に関して、上流方向と下流方向との両方に、図４のステップ４５４の手順が実行される。簡潔にするために、図４の手順の適用は、強化されたデータ系統グラフ１２７内の目標データノードのうちの１つ（すなわち、Ｄ４）に関してのみ説明される。しかし、手順は、強化されたデータ系統グラフ１２７内の目標データノードの各々に関して上流方向と下流方向との両方に実行されることを理解されたい。
【００６５】
目標データノードＤ４に関して、Ｄ４に大きな関心があるものとして印が付けられているかどうかを決定するために、ステップ４５６においてテストが実行される。Ｄ４に大きな関心があるものとして印がつけられるので、テストは答え「ＹＥＳ」を返す。Ｄ４に大きな関心があるものとして印がつけられるので、手順はステップ４５８に進み、Ｄ４に接続された要約リンク（すなわち、ＳＡ、ＳＢ、ＳＦ、ＳＧ）の各々が「歩かれる」。特に、下流方向に、２つの要約リンクＳＦ及びＳＧがある。ステップ４５８において、要約リンクＳＦが、データノードＤ６まで歩かれる。ステップ４６２において、Ｄ６が強化されたデータ系統グラフ１２７の端（つまり、歩きの終わり）にあるかどうかを決定するためにテストが実行される。Ｄ６が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答えＹＥＳを返したので、歩かれたリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。同様に、ステップ４５８において、要約リンクＳＧが、データノードＤ８まで歩かれる。ステップ４６２において、Ｄ８が強化されたデータ系統グラフ１２７の端にあるかどうかを決定するためにテストが実行される。Ｄ８が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答えＹＥＳを返したので、歩かれたリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００６６】
上流方向に、２つの要約リンクＳＡ及びＳＢがある。ステップ４５８において、要約リンクＳＡが、データノードＤ２まで歩かれる。ステップ４６２において、Ｄ２が強化されたデータ系統グラフ１２７の端（つまり、歩きの終わり）にあるかどうかを決定するためにテストが実行される。Ｄ２が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答えＹＥＳを返したので、歩かれたリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。同様に、ステップ４５８において、要約リンクＳＢが、データノードＤ２まで歩かれる。ステップ４６２において、Ｄ２が強化されたデータ系統グラフ１２７の端にあるかどうかを決定するためにテストが実行される。Ｄ２が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答えＹＥＳを返したので、歩かれたリンクが、後の要約されたデータ系統図生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００６７】
図４の手順が目標データノードＤ３に関して繰り返され、Ｄ３からＤ６までの要約リンクＳＥが歩かれ、Ｄ３からＤ８までの要約リンクＳＤが歩かれる結果となる。歩かれたリンクが、要約された系統生成ステップ４６５によって後で使用するために記憶される。図７を参照すると、強化されたデータ系統グラフ１２７は、太破線で示される、図４の手順によって歩かれた要約リンクを示す。
【００６８】
目標データノードＤ３及びＤ４に関してステップ４６４によって記憶された歩かれた要約リンクは、記憶された要約リンクから要約ノードを生じさせるステップ４６５に与えられる。要約ノードは、要約されたデータ系統図１２２をユーザに対して表示するデータ系統表示ステップ４６６に与えられる。
【００６９】
図８を参照すると、要約されたデータ系統図生成ステップ４６５が、図４の手順のループ４５４の出力を受け取る。手順のループ４５４の出力は、印を付けられたデータ系統グラフからの大きな関心のあるデータノードと、目標データノードＤ３及びＤ４と、この場合はたまたますべて要約リンクである図４のステップ４６４によって記憶されたリンクとを含む。一部の例においては、それぞれの要約リンクに関して、要約されたデータ系統図生成ステップ４６５が、リンクのそれぞれの終わり（すなわち、右端の終わり及び左端の終わり）を同じラベル（例えば、要約リンクの名前）でラベル付けする。この例において、要約リンクＳＡは、ＳＡとラベル付けされたその要約リンクＳＡの右端の終わり及びＳＡとラベル付けされたその要約リンクＳＡの左端の終わりを有する。要約リンクＳＢ、ＳＤ、ＳＥ、ＳＦ、及びＳＧは、同じ方法でラベル付けされる。
【００７０】
それぞれの大きな関心のあるデータノードに関して、大きな関心のあるデータノードにリンクの右端の終わりを接続された（１又は２以上の）すべての要約リンクが特定される。２つ以上の要約リンクの右端の終わりが大きな関心のあるデータノードに接続される場合、大きな関心のあるデータノードに接続されたそれぞれの要約リンクの右端の終わりは、それらの右端の終わりのそれぞれのラベルを要約ノードのラベルによって置き換える。例えば、要約リンクＳＡ及びＳＢの右端の終わりは、大きな関心のあるデータノードＤ４に接続される。要約リンクＳＡ及びＳＢの右端の終わりのラベルは、両方とも要約ノードのラベル「Ｘ」によって置き換えられる。同様に、要約リンクＳＥ及びＳＦの右端の終わりのラベルは、要約ノードのラベル「Ｙ」によって置き換えられ、要約リンクＳＤ及びＳＧの右端の終わりのラベルは、要約ノードのラベル「Ｚ」によって置き換えられる。
【００７１】
それぞれの大きな関心のあるデータノードに関して、大きな関心のあるデータノードにリンクの左端の終わりを接続された（１又は２以上の）すべての要約リンクが特定される。リンクの右端の終わりに同じ要約ノードのラベルを有する特定された要約リンクのうちの２又は３以上の任意の組に関して、要約リンクの左端の終わりのラベルが、要約リンクの右端の終わりの要約ノードのラベルによって置き換えられる。例えば、要約リンクＳＡ及び要約リンクＳＢは、それら要約リンクの左端の終わりを大きな関心のあるデータノードＤ２に接続されている。ＳＡとＳＢとの両方の右端の終わりのラベルは、両方とも（上述のように）要約ノードのラベル「Ｘ」を割り当てられる。この状況を特定すると、要約されたデータ系統図生成ステップ４６５は、要約リンクＳＡ及び要約リンクＳＢの左端の終わりのラベルを要約ノードのラベル「Ｘ」によって置き換える。
【００７２】
図８と図９との両方を参照すると、それぞれの一意の要約ノードのラベルに関して、要約されたデータ系統図生成ステップ４６５が、ラベルに対応する要約ノードを生じさせる。右端の終わりが所与の要約ノードのラベルを有するすべての要約リンクに関して、要約リンクの右端の終わりは、要約ノードから適切な大きな関心のあるデータノードまで延びる単一の出力リンクにまとめられる。
【００７３】
例えば、要約リンクＳＡと要約リンクＳＢとの両方は、それらの要約リンクの右端の終わりを要約ノードのラベル「Ｘ」によってラベル付けされている。図９において、要約ノードＸ  ９７２は、要約ノードＸ  ９７２から大きな関心のあるデータノードＤ４まで延びる単一の出力リンクを用いて生じさせられる。単一の出力リンクは、要約リンクＳＡの右端の終わり及び要約リンクＳＢの右端の終わりの組合せを表す。同様に、図９において、要約ノードＹ  ９７４は、大きな関心のあるデータノードＤ６まで延びる単一の出力リンクを用いて生じさせられる。要約ノードＹ  ９７４と大きな関心のあるデータノードＤ６との間の単一の出力リンクは、要約リンクＳＥの右端の終わり及び要約リンクＳＦの右端の終わりの組合せを表す。また、図９において、要約ノードＺ  ９７６は、大きな関心のあるデータノードＤ８まで延びる単一の出力リンクを用いて生じさせられる。要約ノードＺ  ９７６と大きな関心のあるデータノードＤ８との間の単一の出力リンクは、要約リンクＳＤの右端の終わり及び要約リンクＳＧの右端の終わりの組合せを表す。
【００７４】
左端の終わりが所与の要約ノードのラベルを有するすべての要約リンクに関して、要約リンクの左端の終わりは、適切な大きな関心のあるデータノードから要約ノードへと延びる単一の入力リンクにまとめられる。例えば、図８においては、要約リンクＳＡの左端の終わりと要約リンクＳＢの左端の終わりとの両方が、要約ノードのラベル「Ｘ」によってラベル付けされる。図９においては、単一の入力リンクが、大きな関心のあるデータノードＤ２から要約ノードＸ  ９７２へと延びる。単一の入力リンクは、要約リンクＳＡの左端の終わり及び要約リンクＳＢの左端の終わりの組合せを表す。
【００７５】
最後に、左端の終わりが要約リンクの元の要約リンクのラベルを有するそれぞれの要約リンクに関して、要約リンクの左端の終わりに接続されたデータノードとデータノードから下流の隣の構成要素との間に、その隣の構成要素が大きな関心のあるデータノードであるか又は要約ノードであるかにかかわらず、リンクが生じさせられる。
【００７６】
図９から分かるように、結果として得られる要約されたデータ系統図１２２は、大きな関心のあるデータノード及び目標データノードに関するデータ系統の全体的な要約を保ちながら、関心の低いデータノード及びデータ変換ノードを要約ノード９７２、９７４、９７６内に隠す。図９においては、コンテナ５７０が展開された状態で示されていることに留意されたい。一部の例においては、要約されたデータ系統図１２２がユーザ１２１に対して表示されるとき、目標ノードを含むすべてのコンテナが展開された状態で示され、一方、目標ノードを含まないすべてのコンテナは縮約された状態で示される。
【００７７】
２  例２
一部の例においては、印を付けられたデータ系統グラフ内の目標データノードに大きな関心があるものとして印が付けられていない場合、目標データノードは、目標データノードと大きな関心のあるすべての近隣のデータノードとの間の元のリンクと一緒に、要約から除外される。例えば、図１０を参照すると、印を付けられたデータ系統グラフ１０００の第２の例は、図５の印を付けられたデータ系統グラフ５００と同じデータノードＤ１−Ｄ８、データ変換ノードＴ１−Ｔ６、及びリンク１１６８を含む。図１０の印を付けられたデータ系統グラフ１０００は、データノードＤ３には図１０においては大きな関心のあるデータノードであるものとして印が付けられておらず、図１０の印を付けられたデータ系統グラフが、図５の印を付けられたデータ系統グラフ５００の場合のようにデータノードＤ３及びＤ４ではなくＤ７に目標データノードとして印を付けているという点で図５の印を付けられたデータ系統グラフ５００と異なる。データノードＤ７は、目標データノードとして印を付けられているが、大きな関心のあるデータノードであるものとして印を付けられてはいないことに留意されたい。大きな関心のあるデータノードＤ４は、コンテナ１０７０内に置かれる。
【００７８】
図１１を参照すると、印を付けられたデータ系統グラフ１０００が図２の要約リンク計算モジュール１２８に与えられるとき、図３に示された手順が、要約リンクＳＡ−ＳＥを生じさせるために、印を付けられたデータ系統グラフに適用される。簡潔にするために、印を付けられたデータ系統グラフ１０００に関する要約リンクの生成の詳細な説明は、この第２の例に関しては省略される。
【００７９】
ここで図４と図１２との両方を参照すると、強化されたデータ系統グラフ１１２７が、図２の要約されたデータ系統図計算モジュール１３０に与えられ、要約されたデータ系統図計算モジュール１３０が、図４に示された手順を適用して、要約されたデータ系統図１２２を生じさせる。最初、手順のステップ４５２において、強化されたデータ系統グラフ１１２７内の目標データノードが、データノードＤ７として特定される。Ｄ７から上流方向と下流方向との両方に関して、図４の手順４５４が、強化されたデータ系統グラフ１１２７に対して実行される。
【００８０】
初めに、ステップ４５６において、Ｄ７に大きな関心があるものとして印が付けられているかどうかを決定するためにテストが実行される。Ｄ７に大きな関心があるものとして印がつけられていないので、テストは答え「ＮＯ」を返す。Ｄ７に大きな関心があるものとして印がつけられていないので、手順はステップ４６０に進み、Ｄ７に接続された元のリンクの各々が歩かれる。特に、下流方向に、歩くべき（つまり、変換ノードＴ６を経由するデータノードＤ７からデータノードＤ８までの）単一のリンクが存在する。Ｄ７からＤ８までのリンクが歩かれ、ステップ４６２において、Ｄ８が強化されたデータ系統グラフ１１２７の端（つまり、歩きの終わり）にあるかどうかを決定するためにテストが実行される。Ｄ８が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答えＹＥＳを返したので、変換ノードＴ６を含む歩かれた元のリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００８１】
上流方向には、歩くべき３つのリンク（データノードＤ７からデータノードＤ１までの第１のリンク、データ変換ノードＴ２を経由するデータノードＤ７からデータノードＤ２までの第２のリンク、及びデータ変換Ｔ３を経由するデータノードＤ７からデータノードＤ２までの第３のリンク）が存在する。手順４５４は、まず、第１のリンクを歩く。Ｄ７に大きな関心があるものとして印がつけられていないので、手順はステップ４６０に進み、データノードＤ３まで元のリンクを歩く。ステップ４６２において、データノードＤ３が現在の歩きの終わりであるかどうかを決定するためにテストが実行される。テストは、答え「ＮＯ」を返し、手順は、データノードＤ３に大きな関心があるものとして印が付けられているかどうかを決定するためのステップを実行するステップ４５６にループして戻る。テストは、答え「ＮＯ」を返し、手順は、データ変換ノードＴ１を経由してデータノードＤ３からデータノードＤ１まで元のリンクを歩くステップ４６０に進む。ステップ４６２において、データノードＤ１が強化されたデータ系統グラフ１１２７の端にあるかどうかを決定するためにテストが実行される。Ｄ１が端にあるので、テストは答え「ＹＥＳ」を返す。テストが答え「ＹＥＳ」を返したので、変換ノードＴ５及びＴ１を含む歩かれた元のリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００８２】
それから、手順４５４は、第２のリンクを歩く。Ｄ７に大きな関心があるものとして印がつけられていないので、手順４５４はステップ４６０に進み、ステップ４６０において、データ変換ノードＴ５を経由してデータノードＤ７からデータノードＤ４まで元のリンクを歩く。ステップ４６２において、データノードＤ４が現在の歩きの終わりであるかどうかを決定するためにテストが実行される。テストは、「ＮＯ」を返し、手順は、ステップ４５６にループして戻り、データノードＤ４に大きな関心のあるデータノードであるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、「ＹＥＳ」を返し、手順は、ステップ４５８に進み、要約リンクＳＡがデータノードＤ２まで歩かれる。ステップ４６２において、データノードＤ２が強化されたデータ系統グラフ１１２７の端にあるかどうかを決定するためにテストが実行される。Ｄ２が端にあるので、テストは「ＹＥＳ」を返す。テストが答え「ＹＥＳ」を返したので、（データ変換ノードＴ５を含む）Ｄ７からＤ４までの元のリンク及び要約リンクＳＡを含む歩かれたリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００８３】
最後に、手順４５４は、第３のリンクを歩く。Ｄ７に大きな関心があるものとして印がつけられていないので、手順４５４はステップ４６０に進み、ステップ４６０において、データ変換ノードＴ５を経由してデータノードＤ７からデータノードＤ４まで元のリンクを歩く。ステップ４６２において、データノードＤ４が現在の歩きの終わりであるかどうかを決定するためにテストが実行される。テストは、「ＮＯ」を返し、手順は、ステップ４５６にループして戻り、データノードＤ４に大きな関心のあるデータノードであるものとして印が付けられているかどうかを決定するためにテストが実行される。テストは、「ＹＥＳ」を返し、手順は、ステップ４５８に進み、要約リンクＳＢがデータノードＤ２まで歩かれる。ステップ４６２において、データノードＤ２が強化されたデータ系統グラフ１２７の端にあるかどうかを決定するためにテストが実行される。Ｄ２が端にあるので、テストは「ＹＥＳ」を返す。テストが答え「ＹＥＳ」を返したので、（データ変換ノードＴ５を含む）Ｄ７からＤ４までの元のリンク及び要約リンクＳＢを含む歩かれたリンクが、後の要約された系統生成ステップ４６５において使用するためにステップ４６４において記憶される。
【００８４】
目標データノードＤ７に関してステップ４６４によって記憶された歩かれたリンクは、記憶された要約リンクから要約ノードを生じさせるステップ４６５に与えられる。それから、ステップ４６５は、生じさせられた要約ノードをステップ４６４において記憶された元のリンクと統合して、要約されたデータ系統図１２２を生じさせる。要約されたデータ系統図１２２は、要約されたデータ系統図１２２をユーザに対して表示するデータ系統表示ステップ４６６に与えられる。
【００８５】
図１３を参照すると、要約されたデータ系統図生成ステップ４６５が、図４の手順のループ４５４の出力を受け取る。手順のループ４５４の出力は、印を付けられたデータ系統グラフからの大きな関心のあるデータノードと、目標データノードＤ７と、図４のステップ４６４によって記憶されたリンク（要約リンクと元のリンクとの両方）とを含む。前の例の場合と同様に、それぞれの要約リンクに関して、要約されたデータ系統図生成ステップ４６５は、リンクのそれぞれの終わり（すなわち、右端の終わり及び左端の終わり）を同じラベル（例えば、要約リンクの名前）でラベル付けする。この例において、要約リンクＳＡは、ＳＡとラベル付けされたその要約リンクＳＡの右端の終わり及びＳＡとラベル付けされたその要約リンクＳＡの左端の終わりを有する。同様に、要約リンクＳＢは、ＳＢとラベル付けされたその要約リンクＳＢの右端の終わり及びＳＢとラベル付けされたその要約リンクＳＢの左端の終わりを有する。Ｄ１、Ｔ１、及びＴ３は、ステップ４６４によって記憶された歩かれたリンクの一部であるが、Ｄ１、Ｔ１、及びＤ３のいずれも２つの大きな関心のあるデータノードの間のパス上にないので、Ｄ１、Ｔ１、及びＴ３は、図１３の図に含まれないことに留意されたい。
【００８６】
それぞれの大きな関心のあるデータノードに関して、大きな関心のあるデータノードにリンクの右端の終わりを接続された（１又は２以上の）すべての要約リンクが特定される。２つ以上の要約リンクの右端の終わりが大きな関心のあるデータノードに接続される場合、大きな関心のあるデータノードに接続されたそれぞれの要約リンクの右端の終わりは、それらの右端の終わりのそれぞれのラベルを要約ノードのラベルによって置き換える。例えば、要約リンクＳＡ及びＳＢの右端の終わりは、大きな関心のあるデータノードＤ４に接続される。要約リンクＳＡ及びＳＢの右端の終わりのラベルは、両方とも要約ノードのラベル「Ｘ」によって置き換えられる。
【００８７】
それぞれの大きな関心のあるデータノードに関して、大きな関心のあるデータノードにリンクの左端の終わりを接続された（１又は２以上の）すべての要約リンクが特定される。リンクの右端の終わりに同じ要約ノードのラベルを有する特定された要約リンクのうちの２又は３以上の任意の組に関して、要約リンクの左端の終わりのラベルが、要約リンクの右端の終わりの要約ノードのラベルによって置き換えられる。例えば、要約リンクＳＡ及び要約リンクＳＢは、それら要約リンクの左端の終わりを大きな関心のあるデータノードＤ２に接続されている。ＳＡとＳＢとの両方の右端の終わりのラベルは、両方とも（上述のように）要約ノードのラベル「Ｘ」を割り当てられる。この状況を特定すると、要約されたデータ系統図生成ステップ４６５は、要約リンクＳＡ及び要約リンクＳＢの左端の終わりのラベルを要約ノードのラベル「Ｘ」によって置き換える。
【００８８】
図１３と図１４との両方を参照すると、それぞれの一意の要約ノードのラベルに関して、要約されたデータ系統図生成ステップ４６５が、ラベルに対応する要約ノードを生じさせる。右端の終わりが所与の要約ノードのラベルを有するすべての要約リンクに関して、要約リンクの右端の終わりは、要約ノードから適切な大きな関心のあるデータノードまで延びる単一の出力リンクにまとめられる。
【００８９】
例えば、要約リンクＳＡと要約リンクＳＢとの両方は、それらの要約リンクの右端の終わりを要約ノードのラベル「Ｘ」によってラベル付けされている。図１４において、要約ノードＸ  １４７２は、要約ノードＸ  １４７２から大きな関心のあるデータノードＤ４まで延びる単一の出力リンクを用いて生じさせられる。単一の出力リンクは、要約リンクＳＡの右端の終わり及び要約リンクＳＢの右端の終わりの組合せを表す。
【００９０】
左端の終わりが所与の要約ノードのラベルを有するすべての要約リンクに関して、要約リンクの左端の終わりは、適切な大きな関心のあるデータノードから要約ノードへと延びる単一の入力リンクにまとめられる。例えば、図１３においては、要約リンクＳＡの左端の終わりと要約リンクＳＢの左端の終わりとの両方が、要約ノードのラベル「Ｘ」によってラベル付けされる。図１４においては、単一の入力リンクが、大きな関心のあるデータノードＤ２から要約ノードＸ  １４７２へと延びる。単一の入力リンクは、要約リンクＳＡの左端の終わり及び要約リンクＳＢの左端の終わりの組合せを表す。
【００９１】
データ変換ノードＴ６を経由するデータノードＤ７とデータノードＤ８との間のリンク及びデータ変換ノードＴ５を経由するデータノードＤ７とデータノードＤ４との間のリンクなどのすべての元のリンクが、印を付けられたデータ系統グラフ１０００のそれらのリンクの元の形態で含まれる。
【００９２】
図１４から分かるように、結果として得られる要約されたデータ系統図１２２は、大きな関心のあるデータノード及び目標データノードに関するデータ系統の全体的な要約を保ちながら、関心の低いデータノード及び関心の低いデータ変換ノードをＸ要約ノード１４７２内に隠す。図１４においては、コンテナ１０７０が展開された状態で示されていることに留意されたい。一部の例においては、要約されたデータ系統図１２２がユーザ１２１に対して表示されるとき、コンテナ１０７０は、いかなる目標データノードも含まないので、縮約された状態で示される可能性がある。
【００９３】
３  例３
上述の例は系統要約メカニズムを示すのに有用であるが、実世界の実施形態においては、系統要約手法が働くデータフローグラフは例で説明されたデータフローグラフよりもずっと大きく、ずっと複雑であることに留意することが重要である。
【００９４】
例えば、図１５を参照すると、例示的なデータフローグラフに関するデータ系統レポート１５００がいくつかのコンテナオブジェクト１５０２を含み、それらのコンテナオブジェクト１５０２の一部は入れ子にされる。コンテナオブジェクトの各々は、１又は２以上のデータフローグラフ構成要素１５０４を含む。データフロー１５０６の複雑な網目が、データフローグラフ構成要素１５０４を相互に接続する。データフローグラフ構成要素１５０４の数の多さ及び構成要素１５０４を相互に接続するデータフロー１５０６の複雑さが原因で、例示的なデータ系統レポート１５００は、データ系統の要約のための理想的な候補である。
【００９５】
図１６を参照すると、要約されたデータ系統レポート１６００は、図１５のデータ系統レポート１５００に対してデータ系統の要約を実行した結果である。要約されたデータ系統レポート１６００は、要約されたデータフローグラフ構成要素、データフロー、及びコンテナオブジェクトを象徴するいくつかのクラウドアイコン１６０８を含む。図から明らかなように、要約されたデータ系統レポート１６００は、より少ないデータフローグラフ構成要素及びより少ないデータフローを含み、単純化された、より容易に理解されるデータ系統レポートをもたらす。
【００９６】
図１７を参照すると、要約されたデータ系統レポート１７００の別の例の一部の詳細なビューが、第１のクラウドアイコン１７１０を含むクラウドアイコン１６０８のより詳細なビューを示す。特に、それぞれのクラウドアイコン１６０８は、テキスト「．．．」を有するハイパーリンクを含み、「＋」記号を含むことが示される。所与のクラウドアイコン１６０８のこれらの態様のどちらかをクリックすることは、クラウドアイコン１６０８の展開を引き起こし、所与のクラウドアイコンによって表されるデータフローグラフ構成要素、データフロー、及びコンテナオブジェクトを露わにする。例えば、図１８を参照すると、ユーザが第１のクラウドアイコン１７１０を展開するために「＋」記号をクリックするとき、第１のクラウドアイコン１７１０が展開され、データ系統レポート１７００において第１のクラウドアイコン１７１０によって要約されたコンテナオブジェクト、データフローグラフ構成要素、及びデータフローのすべてを示す。第１のクラウドアイコン１７１０によって前に要約されたそれぞれの構成要素は、データフローグラフ構成要素がクラウドアイコン（すなわち、第１のクラウドアイコン１７１０）によって前に要約されたことを示すより小さなバージョンのクラウドアイコン１７１２を含むことに留意されたい。
【００９７】
一部の例において、要約されたデータ系統は、１又は２以上のその他の形態の系統明確化メカニズムと一緒に系統図内に含まれる可能性がある。例えば、系統図は、ユーザが関心のないノードを含むレンダリングされた系統図の部分をまとめるためのユーザの入力に動的に応答する反復的な明確化メカニズムを含む可能性がある。再び図１７を参照すると、クラウドアイコン１６０８によって表された要約された部分を展開する（及びまとめる）能力に加えて、ユーザは、（参照により本明細書に組み込まれる「VISUALIZING RELATIONSHIPS BETWEEN DATA ELEMENTS AND GRAPHICAL REPRESENTATIONS OF DATA ELEMENT ATTRIBUTES」と題された米国特許出願公開第２０１０／０１３８４３１号明細書として公開された米国特許出願第１２／６２９，４６６号明細書により詳細に説明されているように）「−」記号によって表されるユーザインターフェース要素１７１４及びデータセットノード１７１６などの内側に入れ子にされたデータセットノードを有するコンテナオブジェクト１５０２をまとめ、まとめられた部分を展開する能力を有する。含まれ得る明確化メカニズムの別の例は、（参照により本明細書に組み込まれる「FILTERING DATA LINEAGE DIAGRAMS」と題された米国特許第６２／１１４，６８４号明細書により詳細に説明されているように）ノードに関連するタグ（tag）値に基づいて系統図にノードを追加するか又は系統図からノードを除外するフィルタリング機能である。これらの３つのメカニズムのうちの任意の２つ又はさらにはこれらのメカニズムのうちの３つすべてを組み合わせることによって、結果として得られる系統図を明確化する力は、メカニズムが互いを補足し合い、データ系統図のどの部分がレンダリングされるかに関するユーザの細かな制御を可能にする相乗的な柔軟性を与えるので大きく高められる。
【００９８】
異なる明確化メカニズムが、同時に使用される可能性があり、それぞれのメカニズムが、その特定のメカニズムが系統の特定の部分に適用されるかどうかをユーザが明示的に制御することを可能にする。例えば、系統図の左側に、ユーザは、ユーザが展開する可能性があり、又は展開しない可能性がある、クラウドオブジェクトを中に含むコンテナオブジェクトを展開する可能性があり、右側に、ユーザは、ユーザが展開する可能性があり、又は展開しない可能性がある、コンテナオブジェクトを中に含むクラウドオブジェクトを展開する可能性がある。この細かな制御は、系統図の異なる部分において再帰的に適用される可能性があり、システムは、ユーザのインタラクションに基づいて更新された系統図を動的にレンダリングする。フィルタリングは、系統図の選択された部分にのみ適用されるようにフィルタリングを制限することによって細かなレベルで制御される可能性もある。また、これらの３つの例以外の明確化メカニズムが、より一層の制御のために含まれる可能性もある。例えば、系統図のレンダリングは、（目標ノードからのホップを単位とする）最大半径、又はユーザの制御の下で一度にレンダリングされる連続的なホップにのみ制限される。
【００９９】
４  メタデータの連合
一部の例において、上述の系統の要約は、連合させられたメタデータの提示を簡略化するために使用され得る。例えば、特定の組織は、メタデータを保持するためのいくつかの個々のリポジトリを有する。個々のリポジトリに分散されるメタデータの少なくとも一部を管理するために中央リポジトリが使用される。一部の例において、個々のリポジトリのうちの１つが、中央リポジトリとして指定される。その他の例においては、別個のエンティティが、中央リポジトリとして指定される。
【０１００】
概して、中央リポジトリは、企業資産（例えば、企業のグロッサリー（corporate glossary）又はその他の企業資産）を管理し、必要に応じて企業資産を個々のリポジトリの間に分散させる。企業資産を中央リポジトリにおいて管理させることによって、企業の用語（corporate terminology）を含む企業資産の一貫性が組織をまたがって保たれる。
【０１０１】
特定の高レベルのユーザは、中央リポジトリを使用して高レベルのデータ系統図を得ることができ、高レベルのデータ系統図は、単一のデータ系統図へと組み合わされる個々のリポジトリのメタデータの系統のすべてを含む。そのような高レベルのデータ系統図を生じさせるために、中央リポジトリは、複数の個々のリポジトリからメタデータを取り出す。
【０１０２】
上述のデータ系統要約手法は、個々のリポジトリの一部又は個々のリポジトリ全体を要約ノードにグループ化し、グループ化された部分がユーザの関心が低いことを示すために使用され得る。一部の例において、グループ化された部分に関するメタデータの系統は、ユーザがグループに関する要約ノードを展開し、個々のリポジトリに関する系統への関心を示すまで個々のリポジトリから取得されない。
【０１０３】
５  代替形態
一部の例において、印を付けられたデータ系統グラフ内のすべてのノードは、初め、関心が低いものとして印を付けられる。それから、ユーザが、特定のデータノードを大きな関心があるものとして選択的に（例えば、ユーザインターフェースを通じてか又はプログラム的にかのどちらかで）指定する。一部の例において、手法は、データ系統内のノードとデータ系統内のその他のノードとの間の関係に基づいてそのノードに大きな関心があるものとして自動的に印をつける。例えば、ノードが大きな関心のあるノードと同じデータセット内にある場合、ノードはやはり大きな関心があるものとして印を付けられる可能性がある。一部の例においては、特定のノードが、データ系統内の大きな関心のあるノードに対するその特定のノードの相対的な位置が原因で大きな関心があるものとして印を付けられる可能性がある。例えば、大きな関心があるノードに隣接する特定のノードも、大きな関心があるものとして印を付けられる可能性がある。
【０１０４】
一部の例においては、ユーザが、それぞれのデータノードを２つのカテゴリ、すなわち、「詳細」（つまり、データ系統図の詳細なビューにおいてのみ表示される関心の低いデータノード）又は「要約」（つまり、データ系統図の詳細なビューと要約されたビューとの両方において表示される大きな関心のあるノード）のうちの１つに分類する。一部の例において、ノードが関心が低いものであるのか又は大きな関心があるものであるのかを決定するカテゴリは、「システムアーキテクチャ」又は「規制（regulatory）」などの、ノードが表すアイテムの性質を特徴付けるカテゴリに基づく。
【０１０５】
一部の例においては、トポロジー内の関心の低いデータノードの集合を特定するために、データノードが、データノード間のいかなる階層とも無関係にまとめられる。出力データセット毎に関心の低いノードの単一の組が存在することを必要とする規則が、実装される。一部の例において、組は、重複する要素を含む可能性がある。一部の例において、要約ノードは、単一の出力データノードに関連付けられた物理的／論理的グループに関連付けられる。その他の例において、要約ノードは、出力ノードの物理的／論理的グループに関連付けられた関心の低いノードが存在しない場合、最も関心の低いノードを含む物理的／論理的グループに関連付けられる。
【０１０６】
一部の例において、要約ノードは、クラウドアイコンによってデータ系統図内に表される。その他の例においては、その他の種類の要約ノードアイコンが使用される。一部の例において、要約ノードは、その要約ノードの中身についての情報をほとんど又は全く表示しない。その他の例において、要約ノードは、それらの要約ノードの内容について限られた量の情報（例えば、それらの要約ノードに含まれるノードの数、それらの要約ノードに含まれるシステムの数など）を表示する。一部の例において、ユーザは、要約ノード内のリンクをクリックして、系統の要約されたセクションに関する情報の吹き出しを表示することができる。それから、ユーザは、それぞれの要約されたセクションを展開して、要約ノードについての展開された詳細を見ることができる。一部の例においては、ユーザがデータ系統図の要約されたセクションを展開するとき、要約リンクによって要約され、データ系統図の要約されたセクションに関連付けられた元のリンクが、データ系統図の要約されたセクションに関するデータ系統図を決定するために歩かれる。そして、要約されたセクションのデータ系統図が、ユーザに対して表示される。それから、ユーザは、展開された詳細をクリックして、要約された系統に戻ることができる。つまり、ユーザが、詳細をドリルダウンし（つまり、要約ノードを展開し）、要約ノード毎に再びまとめることを可能にされる。このようにして、ユーザは、それらのユーザがそのようにすることを選択する場合、特定の詳細にナビゲートすることができる。
【０１０７】
６  実施形態
上述のデータ系統要約手法は、例えば、好適なソフトウェア命令を実行するプログラミング可能なコンピューティングシステムを用いて実装される可能性があり、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ，field-programmable gate array）などの好適なハードウェアで、若しくは何らかの混成の形態で実装される可能性がある。例えば、プログラミングされる手法において、ソフトウェアは、それぞれが少なくとも１つのプロセッサ、（揮発性及び／又は不揮発性メモリ及び／又はストレージ要素を含む）少なくとも１つのデータストレージシステム、（少なくとも１つの入力デバイス又はポートを用いて入力を受け取るため、及び少なくとも１つの出力デバイス又はポートを用いて出力を与えるための）少なくとも１つのユーザインターフェースを含む（分散、クライアント／サーバ、又はグリッドなどのさまざまなアーキテクチャである可能性がある）１又は２以上のプログラミングされた又はプログラミング可能なコンピューティングシステムで実行される１又は２以上のコンピュータプログラムの手順を含み得る。ソフトウェアは、例えば、データフローグラフの設計、構成、及び実行に関連するサービスを提供するより大きなプログラムの１又は２以上のモジュールを含む可能性がある。プログラムのモジュール（例えば、データフローグラフの要素）は、データリポジトリに記憶されたデータモデルに準拠するデータ構造又はその他の編成されたデータとして実装され得る。
【０１０８】
ソフトウェアは、ＣＤ−ＲＯＭ又は（例えば、多目的若しくは専用のコンピューティングシステム若しくはデバイスによって読み取り可能な）その他のコンピュータ可読媒体などの有形の非一時的媒体上に提供されるか、或いはそのソフトウェアが実行されるコンピューティングシステムの有形の非一時的媒体にネットワークの通信媒体を介して配信される（例えば、伝搬信号に符号化される）可能性がある。処理の一部又はすべては、専用のコンピュータで、又はコプロセッサ若しくはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）若しくは専用の特定用途向け集積回路（ＡＳＩＣ，application-specific integrated circuit）などの専用のハードウェアを用いて実行される可能性がある。処理は、ソフトウェアによって規定された計算の異なる部分が異なるコンピューティング要素によって実行される分散された方法で実装される可能性がある。それぞれのそのようなコンピュータプログラムは、本明細書において説明された処理を実行するためにストレージデバイスの媒体がコンピュータによって読み取られるときにコンピュータを構成し、動作させるために、多目的又は専用のプログラミング可能なコンピュータによってアクセスされ得るストレージデバイスのコンピュータ可読ストレージ媒体（例えば、ソリッドステートメモリ若しくは媒体、又は磁気式若しくは光学式媒体）に記憶されるか又はダウンロードされることが好ましい。本発明のシステムは、コンピュータプログラムで構成された有形の非一時的媒体として実装されると考えられる可能性もあり、そのように構成された媒体は、本明細書において説明された処理ステップのうちの１又は２以上を実行するために特定の予め定義された方法でコンピュータを動作させる。
【０１０９】
本発明のいくつかの実施形態が、説明された。しかしながら、上述の説明は、添付の請求項の範囲によって定義される本発明の範囲を例示するように意図されており、限定するように意図されていないことを理解されたい。したがって、その他の実施形態も、添付の請求項の範囲内にある。例えば、本発明の範囲を逸脱することなくさまざまな修正がなされ得る。さらに、上述のステップの一部は、順序に依存しない可能性があり、したがって、説明された順序とは異なる順序で実行される可能性がある。
【図１】
0006594950.tif 000002
【図２】
0006594950.tif 000003
【図３】
0006594950.tif 000004
【図４】
0006594950.tif 000005
【図５】
0006594950.tif 000006
【図６】
0006594950.tif 000007
【図７】
0006594950.tif 000008
【図８】
0006594950.tif 000009
【図９】
0006594950.tif 000010
【図１０】
0006594950.tif 000011
【図１１】
0006594950.tif 000012
【図１２】
0006594950.tif 000013
【図１３】
0006594950.tif 000014
【図１４】
0006594950.tif 000015
【図１５】
0006594950.tif 000016
【図１６】
0006594950.tif 000017
【図１７】
0006594950.tif 000018
【図１８】
0006594950.tif 000019