(57)【特許請求の範囲】
【請求項１】
コンピュータが、階層により関係付けられる多数のコンテクストの仕様を受け取ること、
前記コンピュータが、３つ以上のメタデータオブジェクト間の関係性を決定すること、
前記コンピュータが、少なくともいくつかの前記メタデータオブジェクトを、１つ以上の個々のグループにグループ化することであって、少なくともいくつかの前記グループはそれぞれ、前記コンテクストから選択された１つに基づいていて、データ系統ダイヤグラム内のノードにより表され、前記データ系統ダイヤグラムは、所与のメタデータオブジェクトについて、当該所与のメタデータオブジェクトが依存するメタデータオブジェクトと、当該所与のメタデータオブジェクトが影響を与えるメタデータオブジェクトとを示し、少なくともいくつかの前記メタデータオブジェクトは、データ要素を表し、少なくともいつくかの前記メタデータオブジェクトは、前記データ要素によって提供されたデータを変換する変換要素を表すこと、
前記コンピュータが、前記ノードで表される前記グループ内の前記メタデータオブジェクト間の関係性に基づいて前記ノード間の関係性を決定すること、
前記コンピュータが、前記ノードと前記ノード間の関係性とを含む前記データ系統ダイヤグラムの視覚表示を生成することであって、前記データ系統ダイヤグラムは、第１のコンテクストに基づく１つ以上のメタデータオブジェクトの第１のセットの第１のグループ、第２のコンテクストに基づく１つ以上のメタデータオブジェクトの第２のセットの第２のグループ、及び第３のコンテクストに基づく前記第１及び第２のセットのメタデータオブジェクトの第３のグループを示すこと、を含む方法。
【請求項２】
前記メタデータオブジェクトは、データ要素またはデータの変換を表す、
請求項１の方法。
【請求項３】
前記データ要素は、データセット、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項２の方法。
【請求項４】
前記データの変換は、実行ファイル、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項２の方法。
【請求項５】
前記ノードは拡張または圧縮されて、様々な解決レベルを表示するように構成される、
請求項１の方法。
【請求項６】
ユーザーが前記解決レベルを選択して表示する、
請求項５の方法。
【請求項７】
ユーザーが関係性を計算する特定のノードを選択する、
請求項５の方法。
【請求項８】
前記選択したデータノードを含まない各ノードは、アルゴリズムにより最小明細の解決レベルに圧縮される、
請求項７の方法。
【請求項９】
予め選択した条件を満たすノードは前記視覚表示から除外される、
請求項１の方法。
【請求項１０】
階層により関係付けられる多数のコンテクストの仕様を受け取る手段と、
３つ以上のメタデータオブジェクト間の関係性を決定する手段と、
少なくともいくつかの前記メタデータオブジェクトを１つ以上の個々のグループにグループ化する手段であって、少なくともいくつかの前記グループはそれぞれ、前記コンテクストの選択された１つに基づいていて、データ系統ダイヤグラム内のノードにより表され、前記データ系統ダイヤグラムは、所与のメタデータオブジェクトについて、当該所与のメタデータオブジェクトが依存するメタデータオブジェクトと、当該所与のメタデータオブジェクトが影響を与えるメタデータオブジェクトとを示し、少なくともいくつかの前記メタデータオブジェクトは、データ要素を表し、少なくともいつくかの前記メタデータオブジェクトは、前記データ要素によって提供されたデータを変換する変換要素を表す、グループ化手段と、
前記ノードで表される前記グループ内の前記メタデータオブジェクト間の関係性に基づいて前記ノード間の関係性を決定する手段と、
前記ノードと前記ノード間の関係性とを含む前記データ系統ダイヤグラムの視覚表示を生成する手段であって、前記データ系統ダイヤグラムは、第１のコンテクストに基づく１つ以上のメタデータオブジェクトの第１のセットの第１のグループ、第２のコンテクストに基づく１つ以上のメタデータオブジェクトの第２のセットの第２のグループ、及び第３のコンテクストに基づく前記第１及び第２のセットのメタデータオブジェクトの第３のグループを示す、生成手段とを備えるシステム。
【請求項１１】
階層により関係付けられる多数のコンテクストの仕様を受け取り、
３つ以上のメタデータオブジェクト間の関係性を決定し、
少なくともいくつかの前記メタデータオブジェクトを、１つ以上の個々のグループにグループ化し、少なくともいくつかの前記グループはそれぞれ、前記コンテクストの選択された１つに基づいていて、データ系統ダイヤグラム内のノードにより表され、前記データ系統ダイヤグラムは、所与のメタデータオブジェクトについて、当該所与のメタデータオブジェクトが依存するメタデータオブジェクトと、当該所与のメタデータオブジェクトが影響を与えるメタデータオブジェクトとを示し、少なくともいくつかの前記メタデータオブジェクトは、データ要素を表し、少なくともいつくかの前記メタデータオブジェクトは、前記データ要素によって提供されたデータを変換する変換要素を表し、
前記ノードで表される前記グループ内の前記メタデータオブジェクト間の関係性に基づいて前記ノード間の関係性を決定し、
前記ノードとノード間の関係性とを含む前記データ系統ダイヤグラムの視覚表示を生成し、前記データ系統ダイヤグラムは、第１のコンテクストに基づく１つ以上のメタデータオブジェクトの第１のセットの第１のグループ、第２のコンテクストに基づく１つ以上のメタデータオブジェクトの第２のセットの第２のグループ、及び第３のコンテクストに基づく前記第１及び第２のセットのメタデータオブジェクトの第３のグループを示すよう構成されるコンピューターシステム。
【請求項１２】
コンピュータープログラムを格納するコンピュータで読取り可能な媒体であって、前記コンピュータープログラムは、
コンピュータが、
階層により関係付けられる多数のコンテクストの仕様を受け取って、
３つ以上のメタデータオブジェクト間の関係性を決定し、
少なくともいくつかの前記メタデータオブジェクトを１つ以上の個々のグループにグループ化し、少なくともいくつかの前記グループはそれぞれ、前記コンテクストの選択された１つに基づいていて、データ系統ダイヤグラム内のノードにより表され、前記データ系統ダイヤグラムは、所与のメタデータオブジェクトについて、当該所与のメタデータオブジェクトが依存するメタデータオブジェクトと、当該所与のメタデータオブジェクトが影響を与えるメタデータオブジェクトとを示し、少なくともいくつかの前記メタデータオブジェクトは、データ要素を表し、少なくともいつくかの前記メタデータオブジェクトは、前記データ要素によって提供されたデータを変換する変換要素を表し、
前記ノードで表される前記グループ内の前記メタデータオブジェクト間の関係性に基づいて前記ノード間の関係性を決定し、
前記ノードと前記ノード間の関係性とを含む前記データ系統ダイヤグラムの視覚表示を生成し、前記データ系統ダイヤグラムは、第１のコンテクストに基づく１つ以上のメタデータオブジェクトの第１のセットの第１のグループ、第２のコンテクストに基づく１つ以上のメタデータオブジェクトの第２のセットの第２のグループ、及び第３のコンテクストに基づく前記第１及び第２のセットのメタデータオブジェクトの第３のグループを示すよう、コンピュータに与える命令を含むコンピュータープログラム。
【請求項１３】
前記メタデータオブジェクト間の関係性は、前記メタデータオブジェクト間の従属性に基づく、
請求項１の方法。
【請求項１４】
前記メタデータオブジェクトの内の所与のメタデータオブジェクトに関して、
前記メタデータオブジェクト間の関係性は、前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトが従属する１つ以上のメタデータオブジェクトとの間の関係性、および前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトに従属する１つ以上のメタデータオブジェクトとの間の関係性の内の１つ以上を含む、
請求項１３の方法。
【請求項１５】
前記メタデータオブジェクトは、データ要素またはデータの変換を表す、
請求項１０のシステム。
【請求項１６】
前記データ要素は、データセット、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項１５のシステム。
【請求項１７】
前記データの変換は、実行ファイル、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項１５のシステム。
【請求項１８】
前記ノードは拡張または圧縮されて、様々な解決レベルを表示するように構成される、
請求項１０のシステム。
【請求項１９】
ユーザーが前記解決レベルを選択して表示する、
請求項１８のシステム。
【請求項２０】
ユーザーが関係性を計算する特定のノードを選択する、
請求項１８のシステム。
【請求項２１】
前記選択したデータノードを含まない各ノードは、アルゴリズムにより最小明細の解決レベルに圧縮される、
請求項２０のシステム。
【請求項２２】
予め選択した条件を満たすノードは前記視覚表示から除外される、
請求項１０のシステム。
【請求項２３】
前記メタデータオブジェクト間の関係性は、前記メタデータオブジェクト間の従属性に基づく、
請求項１０のシステム。
【請求項２４】
前記メタデータオブジェクトの内の所与のメタデータオブジェクトに関して、
前記メタデータオブジェクト間の関係性は、前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトが従属する１つ以上のメタデータオブジェクトとの間の関係性、および前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトに従属する１つ以上のメタデータオブジェクトとの間の関係性の内の１つ以上を含む、
請求項２３のシステム。
【請求項２５】
前記メタデータオブジェクトは、データ要素またはデータの変換を表す、
請求項１１のコンピューターシステム。
【請求項２６】
前記データ要素は、データセット、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項２５のコンピューターシステム。
【請求項２７】
前記データの変換は、実行ファイル、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項２５のコンピューターシステム。
【請求項２８】
前記ノードは拡張または圧縮されて、様々な解決レベルを表示するように構成される、
請求項１１のコンピューターシステム。
【請求項２９】
ユーザーが前記解決レベルを選択して表示する、
請求項２８のコンピューターシステム。
【請求項３０】
ユーザーが関係性を計算する特定のノードを選択する、
請求項２８のコンピューターシステム。
【請求項３１】
前記選択したデータノードを含まない各ノードは、アルゴリズムにより最小明細の解決レベルに圧縮される、
請求項３０のコンピューターシステム。
【請求項３２】
予め選択した条件を満たすノードは前記視覚表示から除外される、
請求項１１のコンピューターシステム。
【請求項３３】
前記メタデータオブジェクト間の関係性は、前記メタデータオブジェクト間の従属性に基づく、
請求項１１のコンピューターシステム。
【請求項３４】
前記メタデータオブジェクトの内の所与のメタデータオブジェクトに関して、
前記メタデータオブジェクト間の関係性は、前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトが従属する１つ以上のメタデータオブジェクトとの間の関係性、および前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトに従属する１つ以上のメタデータオブジェクトとの間の関係性の内の１つ以上を含む、
請求項３３のコンピューターシステム。
【請求項３５】
前記メタデータオブジェクトは、データ要素またはデータの変換を表す、
請求項１２のコンピュータで読取り可能な媒体。
【請求項３６】
前記データ要素は、データセット、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項３５のコンピュータで読取り可能な媒体。
【請求項３７】
前記データの変換は、実行ファイル、アプリケーション、またはシステムを含むコンテクストにグループ化される、
請求項３５のコンピュータで読取り可能な媒体。
【請求項３８】
前記ノードは拡張または圧縮されて、様々な解決レベルを表示するように構成される、
請求項１２のコンピュータで読取り可能な媒体。
【請求項３９】
ユーザーが前記解決レベルを選択して表示する、
請求項３８のコンピュータで読取り可能な媒体。
【請求項４０】
ユーザーが関係性を計算する特定のノードを選択する、
請求項３８のコンピュータで読取り可能な媒体。
【請求項４１】
前記選択したデータノードを含まない各ノードは、アルゴリズムにより最小明細の解決レベルに圧縮される、
請求項４０のコンピュータで読取り可能な媒体。
【請求項４２】
予め選択した条件を満たすノードは前記視覚表示から除外される、
請求項１２のコンピュータで読取り可能な媒体。
【請求項４３】
前記メタデータオブジェクト間の関係性は、前記メタデータオブジェクト間の従属性に基づく、
請求項１２のコンピュータで読取り可能な媒体。
【請求項４４】
前記メタデータオブジェクトの内の所与のメタデータオブジェクトに関して、
前記メタデータオブジェクト間の関係性は、前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトが従属する１つ以上のメタデータオブジェクトとの間の関係性、および前記所与のメタデータオブジェクトと、前記所与のメタデータオブジェクトに従属する１つ以上のメタデータオブジェクトとの間の関係性の内の１つ以上を含む、
請求項４３のコンピュータで読取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願のクロスリファレンス
本願は、引用して本明細書に組み込む、２００８年１２月２日に出願された米国特許出願第６１／１１９，２０１号の優先権を主張する。
【０００２】
発明の背景
本記述はデータ要素間の関係性の視覚化に関する。
【０００３】
企業は、データウェアハウジング、カスタマー関係性管理、およびデータマイニング等の複雑なデータ処理システムを使用してデータを管理している。多くのデータ処理システムでは、データベースファイル、オペレーショナルシステム、フラットファイル、インターネット等の各種データソースからデータが中央保管庫へ引き出される。データは変換されてからデータシステムにロードされることが多い。変換には、クレンジング、統合、および抽出が含まれる。メタデータを使用して、データ、そのソース、およびデータシステムに格納されているデータに起きた変換、の追跡を維持することができる。メタデータ（「データに関するデータ」と呼ばれることもある）は、他のデータの属性、フォーマット、発信元、履歴、相互関係等を記述するデータである。メタデータ管理は、複雑なデータ処理システムの中心的な役割を演じる。
【０００４】
データベースユーザーが、様々なデータソースから特定のデータを得る方法を調べたいことが時々ある。例えば、データベースユーザーが、データセットまたはデータオブジェクトがどのように生成されたか、またはデータセットおよびデータオブジェクトがどのソースからインポートされたかを知りたいことがある。それが導き出されたソースまで遡ってデータセットを追跡することをデータ系統追跡（または、「上流データ系統追跡」）と呼ぶ。時には、データベースユーザーが、特定のデータセットがどのように使用されたのか、例えばどのアプリケーションが所与のデータセットを読み出したのか、を調べたいこともある（「下流データ系統追跡」または「インパクト解析」と呼ぶ）。データベースユーザーは、データセットが他のデータセットとどのように関係しているかに関心を持つこともある。例えば、ユーザーは、あるデータセットが修正された場合、どのテーブルが影響を受けるかを知りたいと思うかもしれない。
【発明の概要】
【０００５】
一般的な態様での、一方法には、階層により関係付けられる多数のコンテクストの仕様を受け取ることが含まれる。関係性は３つ以上のメタデータオブジェクト間で決定され、少なくともいくつかのメタデータオブジェクトは、１つ以上の個々のグループにグループ化され、少なくともいくつかのグループはそれぞれ、選択された１つのコンテクストに基づき、ダイヤグラム内のノードによって表される。関係性は、ノードで表されるグループ内のメタデータオブジェクト間の関係性に基づいてノード間で決定され、ノードとノード間の関係性とを含むダイヤグラムの視覚表示が生成される。
【０００６】
各態様は以下の特徴の１つ以上を含むことができる。メタデータオブジェクトはデータ要素またはデータの変換を表す。データ要素は、データセット、アプリケーション、またはシステムを含むコンテクストにグループ化される。データの変換は、実行ファイル、アプリケーション、またはシステムを含むコンテクストにグループ化される。ノードは、様々な解決レベルを表示するために拡張または圧縮するよう構成される。ユーザーは解決レベルを選択して表示する。ユーザーは関係性を計算する特定のノードを選択する。選択したデータノードを含まない各ノードは、アルゴリズムにより最小明細の解決レベルまで圧縮される。予め選択した条件を満たすノードは視覚表示から除外する。
【０００７】
一般的な態様において、システムは、階層により関係付けられる多数のコンテクストの仕様を受け取る手段を含む。一システムはさらに、３つ以上のメタデータオブジェクト間の関係性を決定する手段と、少なくともいくつかのメタデータオブジェクトを１つ以上の個々のグループにグループ化する手段とを含み、少なくともいくつかのグループはそれぞれ、選択された１つのコンテクストがベースであり、ダイヤグラム内のノードにより表される。また、別の一システムはさらに、ノードで表されるグループ内のメタデータオブジェクト間の関係性に基づいてノード間の関係性を決定する手段と、ノードおよびノード間の関係性とを含むダイヤグラムの視覚表示を生成する手段とを含む。
【０００８】
一般的な態様において、コンピューターシステムは、階層により関係付けられる多数のコンテクストの仕様を受け取り、３つ以上のメタデータオブジェクト間の関係性を決定するよう構成される。少なくともいくつかのメタデータオブジェクトは１つ以上の個々のグループにグループ化され、少なくともいくつかのグループはそれぞれ、選択された１つのコンテクストに基づいていて、ダイヤグラム内のノードにより表される。関係性は、ノードで表されるグループ内のメタデータオブジェクト間の関係性に基づいてノード間で決定され、ノードとノード間の関係性とを含むダイヤグラムの視覚表示が生成される。
【０００９】
一般的な態様において、コンピュータで読取り可能な媒体は、コンピュータープログラムを格納し、コンピュータープログラムは、階層により関係付けられる多数のコンテクストの仕様をコンピュータに受け取らせる命令を含む。関係性は３つ以上のメタデータオブジェクト間で決定される。少なくともいくつかのメタデータオブジェクトは、１つ以上の個々のグループにグループ化され、少なくともいくつかのグループはそれぞれ、選択された１つのコンテクストに基づいていて、ダイヤグラム内のノードにより表される。関係性は、ノードで表されるグループ内のメタデータオブジェクト間の関係性に基づいてノード間で決定され、ノードとノード間の関係性とを含むダイヤグラムの視覚表示が生成される。
【００１０】
各態様は以下の利点の内の１つ以上を有する。
【００１１】
本システムにより、ユーザーは、オブジェクト間の関係性を視覚で認識でき、コンテクスト設定において特定の属性のオブジェクトを見ることができるようになる。メタデータと連携させると、ユーザーは、オブジェクトの発信元を把握してから特定のアクションをとることができる。ユーザーは、何れか特定のオブジェクトを操作するとどのオブジェクトが影響を受けるか知ることができる。ユーザーは、これらのオブジェクト間の関係性が明瞭に示される環境で、特定オブジェクトの属性も見ることができる。
【図面の簡単な説明】
【００１２】
【図１】計算システムのブロック図である。
【図２Ａ】データのノード間の関係性を示すダイヤグラムである。
【図２Ｂ】データのノード間の関係性を示すダイヤグラムである。
【図２Ｃ】データのノード間の関係性を示すダイヤグラムである。
【図２Ｄ】データのノード間の関係性を示すダイヤグラムである。
【図２Ｅ】データのノード間の関係性を示すダイヤグラムである。
【図３】データのノード上に重ね合わせるグラフィックオーバーレイを示すダイヤグラムである。
【図４】データのノード上に重ね合わせるグラフィックオーバーレイを示すダイヤグラムである。
【図５】データのノード上に重ね合わせるグラフィックオーバーレイを示すダイヤグラムである。
【発明を実施するための形態】
【００１３】
本システムにより、ユーザーは、多種類のデータ格納システムに格納される、オブジェクト間の関係性を視覚化できる。オブジェクト間の関係性は、データオブジェクトを使用するアプリケーションに適した各種の従属性および／または関連性を表すことができる。これらの技法を使用できるシステムの１形式の実施例として、オブジェクトがグラフベース計算環境の要素を表すシステムを説明する。
【００１４】
図１Ａは、グラフベース計算を展開し、実行し、管理する計算システム１００の各部の相互関係性を示すブロック図である。グラフベース計算は、コンポーネント（データファイルまたはプロセス）を表すグラフ内の頂点と、コンポーネント間のデータフローを表すグラフ内の有向リンクまたは「辺」とを有する有向グラフにより表される「データフローグラフ」を用いて実行される。グラフ開発環境（ＧＤＥ）１０２は、実行ファイルグラフを規定し、グラフコンポーネントのパラメータを定義するためのユーザーインターフェースを提供する。ＧＤＥは、例えば、ＡｂＩｎｉｔｉｏから入手可能なＣＯ＞ＯＰＥＲＡＴＩＮＧ  ＳＹＳＴＥＭ（登録商標）ＧＤＥでもよい。ＧＤＥ１０２は保管庫１０４および並列オペレーティング環境１０６と通信する。同様に、ユーザーインターフェースモジュール１０８および実行部１１０が、保管庫１０４および並列オペレーティング環境１０６に接続される。
【００１５】
いくつかの実施例において、保管庫１０４は、ベースデータ格納部１０５Ａおよびインターフェースデータ格納部１０５Ｂの両方を含む。ベースデータ格納部は技術メタデータを格納し、グラフおよび変換等の、関係メタデータを伴うアプリケーションを含んでもよい。技術メタデータの格納に加え、ベースデータ格納部は、従属性解析（例えば、詳細に後述するデータ系統の計算）を含む各種解析を実行したり、そのような解析の結果を受け取って、格納したりすることができる。いくつかの実施例において、ベースデータ格納部１０５Ａとインターフェースデータ格納部１０５Ｂとを組み合せて単一のデータ格納部として実装してもよい。
【００１６】
技術メタデータは、多様な機能という点で開発者にとって有用であるが、一方では、よりハイレベルなメタデータを解析し、操作する必要がある事例が多い。「企業」メタデータまたは「ビジネス」メタデータと呼ばれることもあるこのハイレベルメタデータは、データ解析にとって有用であることが多い。ビジネスメタデータのいくつかの実施例には、データと、ファイル用およびファイル内フィールド用のビジネス定義であるデータ辞書とに対する責任者が誰であるかを示すデータ受託責任（data  stewardship）が含まれる。ビジネスメタデータはデータの技術的記述を越えて、ベースデータ格納部１０５Ａとは別のプラットフォーム、例えばインターフェースデータ格納部１０５Ｂに格納できる。
【００１７】
インターフェースデータ格納部１０５Ｂは、主にビジネスメタデータを格納する役割を担うリレーショナルデータベースでもよい。このインターフェースデータ格納部は、ベースデータ格納部と通信し、そのメタデータを抽出でき、グラフ、スプレッドシート、論理モデル、データベーステーブル、または付加的な第三者のデータソース等の多様な他のソースからその情報を引き出すこともできる。
【００１８】
いくつかの実施例において、ベースデータ格納部１０５Ａは、グラフベースアプリケーションの開発および実行、グラフベースアプリケーションと他のシステム（例えば、他のオペレーティングシステム）との間のメタデータ交換をサポートするように設計される拡張可能なオブジェクト指向データベースシステムである。保管庫１０４は、様々な種類のメタデータのための格納システムであり、文書、記録フォーマット（例えば、テーブル内記録のフィールド形式およびデータ形式）、変換関数、グラフ、ジョブ、およびモニタ情報が含まれる。保管庫１０４は、外部データ格納部１１２内に格納されるデータを含む計算システム１００の処理対象である実際のデータを表すメタデータオブジェクトも格納する。多様なソースからメタデータをインポートし、管理する機能を含む保管庫の実施例は、引用して本明細書に組み込む同時係属中の２００８年１２月２日に出願された米国特許仮出願第６１／１１９，１４８号、発明の名称「ＤＡＴＡ  ＭＡＩＮＴＥＮＡＮＣＥ  ＳＹＳＴＥＭ（データメンテナンスシステム）」に記載されている。保管庫１０４には、類似の機能を組み込んでもよい。
【００１９】
並列オペレーティング環境１０６は、ＧＤＥ１０２で生成されたデータフローグラフの仕様を受け入れ、グラフが定義する処理ロジックおよびリソースに対応するコンピュータ命令を生成する。次に、並列オペレーティング環境１０６は、複数のプロセッサ（同質でなくてもよい）上でこれらの命令を実行するのが典型的である。適切な並列オペレーティング環境の例は、ＣＯ＞ＯＰＥＲＡＴＩＮＧ  ＳＹＳＴＥＭ（登録商標）がある。
【００２０】
ユーザーインターフェースモジュール１０８は、保管庫１０４のコンテンツのウェブブラウザベースビューを提供する。ユーザーインターフェースモジュール１０８を用いて、ユーザー１０３はオブジェクトを閲覧し、新規オブジェクトを作成し、既存オブジェクトを変更し、アプリケーションパラメータを規定し、ジョブの予定表他を作成できる。ユーザーインターフェースモジュール１０８は、保管庫１０４に格納しているオブジェクトとオブジェクトに関する情報とをユーザーが検索し、閲覧するためのフォームベースのブラウザースクリーンを生成する。
【００２１】
保管庫１０４は、計算グラフを構築するためのグラフコンポーネントと他の機能オブジェクトとを含むグラフベースアプリケーションのためにメタデータオブジェクトを含むメタデータを格納する。上記のように、保管庫１０４のベースデータ格納部１０５Ａ内に格納されたメタデータには、例えば、「技術」メタデータ（例えば、アプリケーション関連のビジネス規則、記録フォーマット、および実行統計データ）が含まれる一方、インターフェースデータ格納部１０５Ｂには、職務権限、役割、および責任のユーザー定義文書等、ビジネスメタデータを含むことができる。
【００２２】
メタデータオブジェクトの形式で保管庫１０４内に格納される情報により、アプリケーションおよびこれらのアプリケーションが処理するデータに関する多様な解析が可能になる。この情報のサブセットは、インターフェースデータ格納部１０５Ｂ内に格納できる。例えば、後述のように、ユーザーは、データ系統（例えば、与えられた値はどこから来たか？出力値はどのように計算されたか？どのアプリケーションがこのデータを生成し、それに依存しているか？）に関する質問の回答を得ることができる。開発者は、提案された修正の影響（例えば、この部分が変化した場合、他に何が影響を受けるのか？このソースフォーマットを変更した場合、どのアプリケーションが影響を受けるのか？）を把握できる。ユーザー／開発者は、技術メタデータおよびビジネスメタデータの両方に関する質問をもらって、これに回答することもできる（例えば、このデータを生成し、使用する責任をどのグループが持つのか？最後にこのアプリケーションを変更したのは誰なのか？何を変更したのか？）。
【００２３】
保管庫１０４は、格納されているメタデータオブジェクトの状態を追跡できる。保管庫１０４に格納されているオブジェクトはバージョン管理され、先週、先月、または昨年時点のオブジェクト状態を検査し、それを現在のオブジェクト状態と比較できる。保管庫１０４は、ジョブ追跡情報すなわち実行情報を収集し、この情報によりトレンド解析（例えば、我々のデータはどのくらい速く成長しているか？）および能力計画立案（例えば、そのアプリケーションはどのくらい実行時間がかかるか？それが処理するデータ量は？実行速度は？アプリケーションはどのリソースを消費したか？我々が別のサーバをいつ追加する必要があるか？）が可能になる。
【００２４】
ユーザーは、ユーザーインターフェースモジュール１０８を介し、格納されたメタデータに含まれる情報、および／または、そのメタデータに関係する情報を見る（そしてオプションで編集する）ことができる。メタデータビュー環境は、ディスプレイ上でユーザーインターフェースモジュール１０８により表されるアイコンおよびアイコングループを含む多様なグラフィック表現を用いて、各種のメタデータオブジェクトを表示できる。メタデータオブジェクトは、様々な種類のデータ要素（例えば、実行可能プログラムの入力または出力として使用されるデータ）および／または変換（例えば、データを処理または生成する、データフローグラフ等のデータ処理エンティティに関連する任意の種類のデータ操作）を表示できる。ビュー環境は、より詳細に後述するように、メタデータオブジェクトまたはメタデータオブジェクトグループを表すグラフィックノードを接続する線として、関係性を示すことができる。場合によっては、インターフェースデータ格納部１０５Ｂは、ベースデータ格納部１０５Ａから、または他のデータソースから関係性（系統情報等）を抽出できる。インターフェースデータ格納部１０５Ｂは、データ系統のハイレベルの要約を保持できる。系統情報（または、他のデータの従属性解析）は、システム１００内で自動的に計算でき、または外部システムから、もしくは手動入力から受け取ることができる。例えば、システム１００は、コードを解析する人が集め、準備した系統情報を受け取ることができる。系統情報は、多様な所定フォーマットの内の何れかのフォーマット（例えばスプレッドシート）で、ファイルから保管庫１０４内にインポートできる。
【００２５】
図２Ａは、メタデータビュー環境の実施例を示す。いくつかの実施例において、メタデータビュー環境は、ブラウザ上で実行されるインターフェースである。図２Ａの実施例では、メタデータビュー環境は、データ系統ダイヤグラム２００Ａに関係する情報を表示する。メタデータビュー環境の一実施例は、ユーザーによるメタデータの視覚化および編集を可能にするウェブベースアプリケーションである。メタデータビュー環境を用いて、ユーザーは、企業内のあらゆる場所から標準のウェブブラウザを用いてメタデータを検索、解析、管理することができる。メタデータオブジェクトの形式はそれぞれ、１つ以上のビューまたは視覚表示を有する。図２Ａのメタデータビュー環境は、ターゲット要素２０６Ａ用の系統ダイヤグラムを示す。
【００２６】
例えば、系統ダイヤグラムは、データの端から端までの系統および／または保管庫１０４内に格納されるメタデータオブジェクトを表す処理ノード、すなわち、与えられた開始オブジェクトが依存するオブジェクト（そのソース）と、与えられた開始オブジェクトが影響を与えるオブジェクト（そのターゲット）とを表示する。この実施例では、メタデータオブジェクトの２つの例であるデータ要素２０２Ａと変換２０４Ａとの間の接続を示す。メタデータオブジェクトはダイヤグラム内のノードで表す。データ要素２０２Ａは、例えば、データセット、データセット内のテーブル、テーブル内の列、ファイル内のフィールド、メッセージ、およびレポートを表す。変換２０４Ａの一例は、データ要素の単一出力がどのように生成されるかを記述する実行ファイルの一要素である。ノード間の接続は、メタデータオブジェクト間の関係性に基づく。
【００２７】
図２Ｂは、図２Ａに示す同じターゲット要素２０６Ａの対応する系統ダイヤグラム２００Ｂを示す。但し、各要素２０２Ｂはグループ化され、コンテクストに基づくグループで示されている。例えば、データ要素２０２Ｂは、データセット２０８Ｂ（例えば、テーブル、ファイル、メッセージ、およびレポート）、アプリケーション２１０Ｂ（グラフおよび計画およびプログラム等の実行ファイル、更にそれらが作用するデータセットを含む）、およびシステム２１２Ｂにグループ化される。システム２１２Ｂは、データおよびデータを処理するアプリケーションからなる機能グループ（例えば、データベース、ファイルグループ、メッセージシステム、およびデータセットグループ）である。変換２０４Ｂは、実行ファイル２１４Ｂ、アプリケーション２１０Ｂ、およびシステム２１２Ｂにグループ化される。グラフ、計画またはプログラム等の実行ファイルはデータセットを読み出し、書き込む。パラメータは、どのグループを拡張し、どのグループを圧縮するかを既定値により設定できる。これにより、ユーザーは、不要なレベルの詳細を除外して、ユーザーにとって重要なグループだけの詳細を見ることができるようになる。
【００２８】
メタデータビュー環境を使用してデータ系統計算を実行するのは、いくつかの理由で有益である。例えば、データ要素間の関係性と変換とを計算し、図示することにより、与えられたフィールドレポートに対してレポートされた値がどのように計算されたかをユーザーが判定するのを支援できる。ユーザーは、どのデータセットが特定の形式のデータを格納するか、どの実行ファイルがそのデータセットを読み出し、書き込むかを見ることもできる。ビジネス用語の場合には、データ系統ダイヤグラムは、どのデータ要素（列およびフィールド等）が特定のビジネス用語（企業内の定義）と関連しているかを図示できる。
【００２９】
メタデータビュー環境内に示されるデータ系統ダイヤグラムは、インパクト解析でユーザーを支援できる。詳細には、列またはフィールドをデータセットに追加した場合、下流のどの実行ファイルが影響を受けるか、誰に通知すべきかをユーザーが知りたい場合がある。インパクト解析は、与えられたデータ要素が使用される場所を特定でき、そのデータ要素の変更に伴う影響を特定することもできる。同様に、ユーザーは、実行ファイル内の変更によりどのデータセットが影響を受けるのか、または製品から特定のデータベーステーブルを削除するのが安全かどうかを見ることができる。
【００３０】
メタデータビュー環境を使用して、データ系統ダイヤグラムを生成するためにデータ系統計算を実行するのは、ビジネス用語管理に有益である。例えば、その企業全体で使われるビジネス用語の意味、これらの用語間の関係性、および用語が参照するデータに、企業内の従業員が合意することが望ましい場合が多い。ビジネス用語の使用に一貫性を持たせると、企業データの透明性を強化でき、ビジネス要件の連絡が容易になる。従って、ビジネス用語の基底にある物理データを見つけることができる場所、およびどのようなビジネス論理を計算に使用するかを知ることは重要である。
【００３１】
データノード間の関係性を見ることは、メタデータを管理し、保守する際にも有用である。例えば、ユーザーは、一片のメタデータを変更したのは誰か、一片のメタデータソースのソース（もしくは、記録のソース）は何か、または外部ソースからメタデータをロードまたは再ロードした時、どのような変更がなされたか、について知りたい場合がある。メタデータのメンテナンスにおいて、指名されたユーザーが、メタデータオブジェクト（ビジネス用語等）を創成でき、メタデータオブジェクト（他のオブジェクトに対するオブジェクトの記述および関係性等）の特性を編集でき、または使用していないメタデータオブジェクトを削除できるようにすることが望ましい。
【００３２】
メタデータビュー環境はオブジェクトのいくつかのグラフィカルビューを提供し、ユーザーがメタデータを探索し、解析できるようにする。例えば、ユーザーは、システムおよびアプリケーションのコンテンツを見て、どれかのオブジェクトの詳細を探索し、データ系統ビューを用いてオブジェクト間の関係性を見ることもでき、それにより、ユーザーは、上記のデータ系統解析およびインパクト解析等の、様々な形式の従属性解析を容易に実行できるようになる。オブジェクトの階層を見ることもでき、特定のオブジェクトの階層を検索することもできる。オブジェクトが見つかると、オブジェクトのブックマークを創成できるので、ユーザーはオブジェクトに容易に戻ることができる。
【００３３】
適切な許可により、ユーザーはメタデータビュー環境でメタデータを編集できる。例えば、ユーザーは、オブジェクトの記述を更新し、ビジネス用語を創成し、オブジェクト間の関係性を定義し（ビジネス用語をレポート内のフィールドまたはテーブル内の列にリンクする等）、オブジェクトを移動し（例えば、あるアプリケーションから別のアプリケーションにデータセットを移動する）、またはオブジェクトを削除する。
【００３４】
図２Ｃに、ターゲット要素２０６Ａの対応する系統ダイヤグラム２００Ｃを示すが、解決レベルは、ターゲットデータ要素２０６Ａの計算に参加しているアプリケーションに対して設定される。具体的には、アプリケーション２０２Ｃ、２０４Ｃ、２０６Ｃ、２０８Ｃ、および２１０Ｃを示すが、これらのアプリケーションだけが、ターゲットデータ要素２０６Ａの計算に直接参加しているからである。ユーザーが、異なる解決レベルにある何れかの系統ダイヤグラムの一部を見たい場合（例えば、ダイヤグラム内の詳細表示を増やすか減らしたい場合）、ユーザーは、対応する拡張／圧縮ボタン２１２Ｃを起動することができる。
【００３５】
図２Ｄは、対応する系統ダイヤグラム２００Ｄを異なる解決レベルで示す。この実施例は、拡張／圧縮ボタン２１２Ｃをユーザーがクリックしたところであり、メタデータビュー環境は、今は同じ系統ダイヤグラムを表示しているが、アプリケーション２０２Ｃは拡張されて、アプリケーション２０２Ｃ内のデータセット２１４Ｄおよび実行ファイル２１６Ｄを示している。
【００３６】
図２Ｅは、対応する系統ダイヤグラム２００Ｅを異なる解決レベルで示す。この実施例において、ユーザーは、カスタム拡張により拡張された全てのものを示すよう選択している。究極のデータソース（例えば、上流システムを持たないデータソース）である任意のフィールドまたは列が拡張されている。更に、特定のフラグセットを有するフィールドも拡張されている。この実施例では、特定のフラグが、系統内の主要な中間点でデータセットおよびフィールド上に設定され、１つの列は、系統が示されている列である。ユーザーインターフェースモジュール１０８は、そしてどのノードを圧縮する必要があるか、どのノードをダイヤグラムから完全に除外する必要があるかを決定する。
【００３７】
ユーザーは、ユーザー自身のダイヤグラムを構成することもできる。例えば、ダイヤグラムは、メタデータ内の基本キー／外部キーの関係性に従うように構成できる。フィルタを従属性解析に適用して系統ダイヤグラムからの情報を除外してもよい。例えば、ユーザーが系統ダイヤグラムから却下ファイルであるデータセットを除外したい場合、ユーザーは、系統ダイヤグラム内の却下ファイルの表示をＯＮ、ＯＦＦして切り替えることができる。
【００３８】
メタデータビュー環境内で要素および関係性を見るのを、それらを表す各ノードに関連する情報を追加することにより、更に有益にすることができる。ノードに関連情報を追加する１つの例示の方法は、特定ノード上に情報をグラフィックオーバーレイすることである。これらのグラフィックは、ノードで表されるデータの何らかの値または特性を表示してもよく、メタデータのデータベース内の何らかの特性としてもよい。このアプローチは、２つ以上の普通は無関係な情報片（データのノード間の関係性、およびノードが表すデータの特徴）を組み合せるという利点を有し、「コンテクスト内に」有益な情報を置くように努めることになる。例えば、メタデータ品質、メタデータの新鮮さ、または記録情報のソース等の特徴を、データノード間の関係性の視覚表示と併せて表示できる。これらの情報のいくつかは、表形式でアクセス可能であるが、ユーザーが、データの異なるノード間の関係性とともにデータの特徴を見る助けになる。ユーザーは、メタデータビュー環境内のデータ要素および／または変換ノードの上に、データのどの特徴を表示するかを選択できる。どの特徴を表示するかは、既定のシステム設定に従って設定できる。
【００３９】
図３の実施例において、ノード３００は、ノードにより表されるメタデータの新鮮さに関連する情報を含むグラフィックオーバーレイ３０２も表示する。「メタデータの新鮮さ」は、そのメタデータが、最近になってどのように外部ソースから更新されたか、または修正されたかについて述べる。カーソルをグラフィックオーバーレイ３０２上にかざすと、グラフィックオーバーレイ３０２により現在表示される特徴に関する詳細な情報を含む窓３０４を呼び出すことができる。グラフィックオーバーレイは、凡例３０６を介して、様々な意味に対して異なる色のグラフィックマッピングで色分けしてもよい。
【００４０】
図４の実施例において、メタデータの品質レベルを表すグラフィックオーバーレイが、ノード４００上のオーバーレイ４０２を含むデータ要素ノード上にスーパーインポーズされる。メタデータ品質の測定をビジネスで使用して、例えば、ビジネスパートナーから送られる周期的な（例えば、毎月の）データフィードをプロファイルしてから、データをインポートしたり、処理したりすることができる。これにより、ビジネスで「悪い」データ（例えば、しきい値より不当に高いパーセンテージを持つデータ）を検出することが可能になるので、やり直しがきかない対処により既存のデータ格納部を汚染することがない。上記実施例と同様に、カーソルをグラフィックオーバーレイ４０２上にかざすことにより、現時点で表示される特徴に関する詳細情報を含む窓４０４をグラフィックオーバーレイ４０２により呼び出すことができる。
【００４１】
図５の実施例において、記録のソース形式を表すグラフィックオーバーレイがデータ要素および変換ノード上にスーパーインポーズされる。ノード５００は、記録のソースが「アクティブなインポートソース」であることを示すオーバーレイ５０２を有する。これは、そのメタデータがスプレッドシートファイル等のソースから自動的にインポートされたことを意味する。カーソルをグラフィックオーバーレイ５０２上にかざすことにより、インポートに使用されたファイル形式（この実施例ではＥｘｃｅｌスプレッドシート）、ファイル名、ファイル所有者、およびインポート日付等の詳細情報を含む窓５０４を呼び出すことができる。ノード５０６は、記録のソースが「手動でメンテナンスされている」ことを示すオーバーレイ５０８を有する。この意味は、メタデータがユーザーにより手動で（例えば、ユーザーインターフェースモジュール１０８を用いて）修正されたということである。カーソルをグラフィックオーバーレイ５０８上にかざすことにより、メタデータを修正したユーザー名、および修正日付等の詳細情報を含む窓５１０を呼び出すことができる。
【００４２】
システム１００のモジュールとシステム１００により実行される手順とを含む上記の記録格納および検索アプローチは、コンピュータ上の実行用ソフトウエアを用いて実装できる。例えば、そのソフトウエアは、プログラムされるか、プログラム可能な１台以上のコンピューターシステム（分散型、クライアント／サーバ、またはグリッド型等の各種アーキテクチャから構成されてもよい）上で実行される１つ以上のコンピュータープログラム内の手順を形成し、それぞれのコンピューターシステムは、少なくとも一つのプロセッサ、少なくとも一つのデータ格納システム（揮発性および不揮発性メモリおよび／またはストレージ要素を含む）、少なくとも一つの入力装置またはポート、および少なくとも一つの出力装置またはポートを含む。ソフトウエアは、例えば、計算グラフの設計および構成に関連する他のサービスを提供する更に大規模なプログラムの内の１つ以上のモジュールを形成してもよい。グラフのノードおよび要素は、コンピュータで読取り可能な媒体に格納されるデータ構造、またはデータ保管庫内に格納されるデータモデルに適合する他の組織化されたデータとして実装できる。
【００４３】
上記アプローチは、コンピュータ上で実行するソフトウエアを用いて実装できる。例えば、ソフトウエアは、プログラムされるか、プログラム可能な１台以上のコンピューターシステム（分散型、クライアント／サーバ、またはグリッド型等の各種アーキテクチャから構成されてもよい）上で実行される１つ以上のコンピュータープログラム内の手順を形成し、それぞれのコンピューターシステムは、少なくとも一つのプロセッサ、少なくとも一つのデータ格納システム（揮発性および不揮発性メモリおよび／またはストレージ要素を含む）、少なくとも一つの入力装置またはポート、および少なくとも一つの出力装置またはポートを含む。ソフトウエアは、例えば、計算グラフの設計および構成に関連する他のサービスを提供する更に大規模なプログラムの内の１つ以上のモジュールを形成してもよい。グラフのノードおよび要素は、コンピュータで読取り可能な媒体に格納されるデータ構造、またはデータ保管庫内に格納されるデータモデルに適合する他の組織化されたデータとして実装できる。
【００４４】
ソフトウエアは、汎用または専用のプログラム可能コンピュータにより読出し可能な、ＣＤ−ＲＯＭ等の、格納媒体上で提供されてもよく、またはネットワークの通信媒体により、ソフトウエアが実行されるコンピュータに配布されて（伝搬信号で符号化されて）もよい。全ての機能を専用コンピュータ上で実行してもよく、コプロセッサ等の専用ハードウエアを用いて実行してもよい。ソフトウエアは、ソフトウエアで規定される様々な計算部分を、様々なコンピュータで実行する分散法で実装してもよい。このようなコンピュータープログラムはそれぞれ、汎用または専用のプログラム可能なコンピュータにより読出し可能な格納媒体または装置（例えば、個体のメモリもしくは媒体、または磁気媒体もしくは光媒体）に格納するか、またはダウンロードするのが好ましく、格納媒体または装置をコンピューターシステムが読み出した時に、コンピュータを構成し、動作させて、本明細書で説明した手順を実行する。本発明のシステムは、コンピュータープログラムにより構成されるコンピュータで読取り可能な格納媒体として実装されると考えることもでき、そのように構成される格納媒体により、コンピューターシステムは、本明細書で説明した機能を実行するよう特定の、かつ所定の方法で動作する。
【００４５】
本発明のいくつかの実施の形態を説明してきた。にもかかわらず、本発明の精神および範囲から逸脱することなく、様々な変更を行えることは言うまでもない。例えば、上記ステップのいくいくつかは順序を無関係としてもよく、つまり、本説明と異なる順序で実行することができる。
【００４６】
言うまでもなく、これまでの記述は説明が目的であって本発明の範囲を制限するものではなく、本発明の範囲は付帯する請求項の範囲によって定義される。例えば、上記のいくつかの機能ステップは、全体処理に実質的に影響することなく異なる順序で実行できる。他の実施の形態は、付帯する請求項の範囲に含まれる。
【図１】
0005883648.tif 000002
【図２Ａ】
0005883648.tif 000003
【図２Ｂ】
0005883648.tif 000004
【図２Ｃ】
0005883648.tif 000005
【図２Ｄ】
0005883648.tif 000006
【図２Ｅ】
0005883648.tif 000007
【図３】
0005883648.tif 000008
【図４】
0005883648.tif 000009
【図５】
0005883648.tif 000010