(57)【特許請求の範囲】
【請求項１】
データを利用する処理を表す変換オブジェクトと、格納されたデータを表す１つ以上のデータオブジェクトと、前記変換オブジェクト及び前記１つ以上のデータオブジェクトにつながるデータ系統とをデータ格納システムに格納すること、
前記データ格納システムに格納されたデータオブジェクトの要約データを計算することであって、データの品質、及び前記データオブジェクトにより表される前記データのソースからなるグループから選択された少なくとも１つの特徴を計算すること、
前記データ系統の情報の性状を説明する視覚的表現を発生すること、を含む方法であって、
前記性状は、
前記１つ以上のデータオブジェクト、
前記変換オブジェクト、及び
前記データオブジェクトと前記データ系統の情報に従う前記１つ以上のデータオブジェクトとの間の関係であって、前記１つ以上のデータオブジェクトを表す複数のノードと前記変換オブジェクトを表すノードとの間に表される関係を含み、
前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に、前記要約データの表現を前記視覚的表現に補足することを含む方法。
【請求項２】
前記視覚的表現は、同表現を分類する凡例と関連付けられる、請求項１に記載の方法。
【請求項３】
カーソルを前記視覚的表現の上でうろつかせることにより前記視覚的表現に関係した情報を含むウィンドウを発生する、請求項１に記載の方法。
【請求項４】
前記視覚的表現は、ユーザによって選択可能な特徴を表す、請求項１に記載の方法。
【請求項５】
ユーザからの選択を受けて、前記要約データによって特定された複数の特徴のうちのいずれが、その表現が前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に補足される特徴であるかを決定することをさらに含む、請求項１に記載の方法。
【請求項６】
前記少なくとも１つの特徴は、品質の１つ、新しさ、又は記録情報のソースを含む、請求項１に記載の方法。
【請求項７】
前記要約データは、前記１つ以上のノード上に図形的に重ね合わせられる、請求項１に記載の方法。
【請求項８】
前記要約データの前記表現に含まれる前記情報の少なくともいくつかは、表においてユーザによって別々にアクセス可能である、請求項１に記載の方法。
【請求項９】
前記要約データによって特定される複数の特徴のうちの何れを前記視覚的表現に補足するかは、デフォルトの設定によって決定される、請求項１に記載の方法。
【請求項１０】
前記少なくとも１つの特徴は、前記データオブジェクトがどのくらい最近に更新されたかに関連する、請求項１に記載の方法。
【請求項１１】
前記視覚的表現は、色コード化される、請求項１に記載の方法。
【請求項１２】
前記視覚的表現の色によって表される意味は、前記視覚的表現に関する凡例により決められる、請求項１１に記載の方法。
【請求項１３】
前記データの前記品質は、前記データにおける無効な値の比率によって表される、請求項１に記載の方法。
【請求項１４】
前記データに含まれる無効な値の前記比率が閾値より高いデータを検出することをさらに含む、請求項１３に記載の方法。
【請求項１５】
前記データの前記ソースは、前記ソースの種類に関連する情報を含む、請求項１に記載の方法。
【請求項１６】
前記データの前記ソースは、前記データがソースから自動的にインポートされたどうかに関する情報を含む、請求項１に記載の方法。
【請求項１７】
メモリと、
プロセッサと、を含み、前記プロセッサは、
データを利用する処理を表す変換オブジェクトと、格納されたデータを表す１つ以上のデータオブジェクトと、前記変換オブジェクト及び前記１つ以上のデータオブジェクトにつながるデータ系統とをデータ格納システムに格納し、
前記データ格納システムに格納されたデータオブジェクトの要約データを計算することであって、データの品質、及び前記データオブジェクトにより表される前記データのソースからなるグループから選択された少なくとも１つの特徴を計算し、
前記データ系統の情報の性状を説明する視覚的表現を発生し、
前記性状は、
前記１つ以上のデータオブジェクト、
前記変換オブジェクト、及び
前記データオブジェクトと前記データ系統の情報に従う前記１つ以上のデータオブジェクトとの間の関係であって、前記１つ以上のデータオブジェクトを表す複数のノードと前記変換オブジェクトを表すノードとの間に表される関係を含み、
前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に、前記要約データの表現を前記視覚的表現に補足するように構成された、コンピュータシステム。
【請求項１８】
前記視覚的表現は、同表現を分類する凡例と関連付けられる、請求項１７に記載のコンピュータシステム。
【請求項１９】
カーソルを前記視覚的表現の上でうろつかせることにより前記視覚的表現に関係した情報を含むウィンドウを発生する、請求項１７に記載のコンピュータシステム。
【請求項２０】
前記視覚的表現は、ユーザによって選択可能な特徴を表す、請求項１７に記載のコンピュータシステム。
【請求項２１】
ユーザからの選択を受けて、前記要約データによって特定された複数の特徴のうちのいずれが、その表現が前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に補足される特徴であるかを決定することをさらに含む、請求項１７に記載のコンピュータシステム。
【請求項２２】
前記少なくとも１つの特徴は、品質の１つ、新しさ、又は記録情報のソースを含む、請求項１７に記載のコンピュータシステム。
【請求項２３】
前記要約データは、前記１つ以上のノード上に図形的に重ね合わせられる、請求項１７に記載のコンピュータシステム。
【請求項２４】
前記少なくとも１つの特徴は、前記データオブジェクトがどのくらい最近に更新されたかに関連する、請求項１７に記載のコンピュータシステム。
【請求項２５】
前記視覚的表現は、色コード化される、請求項１７に記載のコンピュータシステム。
【請求項２６】
前記視覚的表現の色によって表される意味は、前記視覚的表現に関する凡例により決められる、請求項２５に記載のコンピュータシステム。
【請求項２７】
コンピュータプログラムを格納するコンピュータ読み出し可能媒体であって、実行可能な命令を含む前記コンピュータプログラムは、コンピュータに、
データを利用する処理を表す変換オブジェクトと、格納されたデータを表す１つ以上のデータオブジェクトと、前記変換オブジェクト及び前記１つ以上のデータオブジェクトにつながるデータ系統とをデータ格納システムに格納させ、
前記データ格納システムに格納されたデータオブジェクトの要約データを計算させることであって、データの品質、及び前記データオブジェクトにより表される前記データのソースからなるグループから選択された少なくとも１つの特徴を計算させ、
前記データ系統の情報の性状を説明する視覚的表現を発生させ、
前記性状は、
前記１つ以上のデータオブジェクト、
前記変換オブジェクト、及び
前記データオブジェクトと前記データ系統の情報に従う前記１つ以上のデータオブジェクトとの間の関係であって、前記１つ以上のデータオブジェクトを表す複数のノードと前記変換オブジェクトを表すノードとの間に表される関係を含み、
前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に、前記要約データの表現を前記視覚的表現に補足させる、
コンピュータ読み出し可能媒体。
【請求項２８】
前記視覚的表現は、同表現を分類する凡例と関連付けられる、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項２９】
カーソルを前記視覚的表現の上でうろつかせることにより前記視覚的表現に関係した情報を含むウィンドウを発生する、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３０】
前記視覚的表現は、ユーザによって選択可能な特徴を表す、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３１】
ユーザからの選択を受けて、前記要約データによって特定された複数の特徴のうちのいずれが、その表現が前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に補足される特徴であるかを決定することをさらに含む、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３２】
前記少なくとも１つの特徴は、品質の１つ、新しさ、又は記録情報のソースを含む、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３３】
前記要約データは、前記１つ以上のノード上に図形的に重ね合わせられる、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３４】
前記要約データの前記表現に含まれる前記情報の少なくともいくつかは、表においてユーザによって別々にアクセス可能である、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３５】
前記要約データによって特定される複数の特徴のうちの何れを前記視覚的表現に補足するかは、デフォルトの設定によって決定される、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３６】
前記少なくとも１つの特徴は、前記データオブジェクトがどのくらい最近に更新されたかに関連する、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３７】
前記視覚的表現は、色コード化される、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項３８】
前記視覚的表現の色によって表される意味は、前記視覚的表現に関する凡例により決められる、請求項３７に記載のコンピュータ読み出し可能媒体。
【請求項３９】
前記データの前記品質は、前記データにおける無効な値の比率によって表される、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項４０】
前記データに含まれる無効な値の前記比率が閾値より高いデータを検出することをさらに含む、請求項３９に記載のコンピュータ読み出し可能媒体。
【請求項４１】
前記データの前記ソースは、前記ソースの種類に関連する情報を含む、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項４２】
前記データの前記ソースは、前記データがソースから自動的にインポートされたどうかに関する情報を含む、請求項２７に記載のコンピュータ読み出し可能媒体。
【請求項４３】
少なくとも１つのプロセッサと、
データを利用する処理を表す変換オブジェクトと、格納されたデータを表す１つ以上のデータオブジェクトと、前記変換オブジェクト及び前記１つ以上のデータオブジェクトにつながるデータ系統とをデータ格納システムに格納する手段と、
前記データ格納システムに格納されたデータオブジェクトの要約データを計算する手段であって、データの品質、及び前記データオブジェクトにより表される前記データのソースからなるグループから選択された少なくとも１つの特徴を計算する手段と、
前記データ系統の情報の性状を説明する視覚的表現を発生する手段と、
前記性状は、
前記１つ以上のデータオブジェクト、
前記変換オブジェクト、及び
前記データオブジェクトと前記データ系統の情報に従う前記１つ以上のデータオブジェクトとの間の関係であって、前記１つ以上のデータオブジェクトを表す複数のノードと前記変換オブジェクトを表すノードとの間に表される関係を含み、
前記変換オブジェクトを表すノード又は前記１つ以上のデータオブジェクトを表す１つ以上のノードの近傍に、前記要約データの表現を前記視覚的表現に補足する手段と、を含む、システム。
【請求項４４】
前記データのソース又はデータの品質のレベルを表す図形オーバレイを、複数のデータオブジェクトを表す複数のノードの上部に重ねることを含む、請求項１に記載の方法。
【請求項４５】
前記プロセッサは、前記データのソース又はデータの品質のレベルを表す図形オーバレイを、複数のデータオブジェクトを表す複数のノードの上部に重ねるように構成された、請求項１７に記載のコンピュータシステム。
【請求項４６】
前記コンピュータプログラムは、前記コンピュータに、前記データのソース又はデータの品質のレベルを表す図形オーバレイを、複数のデータオブジェクトを表す複数のノードの上部に重ねるように実行可能な命令をさらに含む、請求項２７に記載のコンピュータ読み出し可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ要素とデータ要素の属性のグラフ表現との関係を視覚化することに関する。
【背景技術】
【０００２】
企業は複雑なデータ処理システム、たとえば、データ倉庫保管システム、顧客関係管理システム及びデータマイニング（採掘、mining）等を用いてデータを扱う。多くのデータ処理システムにおいて、データは、多くの異なるデータソース、たとえばデータベースファイル、運用（オペレーショナル）システム、フラットファイル、インターネット等から中央保管所（セントラル・レポジトリ、central repository）に引き出される。しばしば、データはデータシステムにロードされる前に変換される。変換には、クリーンシング（cleansing）、統合及び抽出を含むことができる。データ、そのデータのソース及びデータシステムに格納されたデータに対して発生した変換を追跡するには、メタデータを用いることができる。メタデータ（ときおり、「データについてのデータ」と呼ばれる。）は、データの属性、フォーマット、起源（origin)、履歴、相互関係等を記述するデータである。メタデータ管理は複雑なデータ処理システムにおいて中心的役割を果たすことができる。
【０００３】
場合により、データベースユーザは、データが異なるデータソースからどのように引き出されたかについての調査を希望する。たとえば、データベースユーザは、データセット又はデータオブジェクトがどのように発生されたのか、或いは、データセット又はデータオブジェクトがどのソースからインポートされたのか、を知ることを望む。データセットが引き出されたソースまで遡ってそのデータセットを追跡することは、データ系統（lineage）追跡（又は「上流データ系統追跡」）と称呼される。場合により、データベースユーザは、あるデータセットがどのように使用されたか（「下流データ系統追跡」又は「インパクト解析」と称呼される。）、たとえば、どのアプリケーションが所与のデータセットを読んだか、についての調査を希望する。また、データベースユーザは、データセットが他のデータセットにどのように関係しているかを知ることに興味があるであろう。たとえば、ユーザは、データセットが修正されたか否か、又は、どのテーブルが影響を受けたか、を知ることを欲する場合がある。
【発明の概要】
【０００４】
＜関連出願の相互参照＞
本願は、２００８年１２月２日出願の米国特許出願第６１／１１９，２０１の優先権を主張するものであり、この出願はここに引用されて組み込まれる。
概略において、方法は、メタデータをデータ格納システムに格納することを含む。そのデータ格納システムに格納された複数のメタデータオブジェクトの各々についての１つ以上の特徴を特定（識別）する要約データ（summary data）が計算され、所与のメタデータオブジェクトに関連付けてこの所与のメタデータオブジェクトを特徴付ける要約データが格納される。メタデータオブジェクトの各々を表すノード及びそのノード間の関係を含む線図（ダイアグラム、diagram）の視覚的表現が発生される。その視覚的表現を発生することは、所与のメタデータオブジェクトを特徴付ける前記要約データによって特定される特徴の表現を、その所与のメタデータオブジェクトを表すノードの近傍に重ねる（superimpose）ことを含む。
【０００５】
複数の態様は、以下の１つ以上の特徴を含むことができる。前記表現はメタデータオブジェクトの質（属性）を表す。前記表現はメタデータオブジェクトが最近更新されたか否かを表す。前記表現はメタデータオブジェクトが最後に更新されたソースを表す。前記表現はこの表現を分類する凡例（legend）に関連付けられる。カーソルを視覚的な表現上でうろつかせることにより前記表現に関係した情報を含むウィンドウを発生する。前記表現はユーザによって選択可能な特徴を表す。
【０００６】
全体的な態様において、システムは、メタデータをデータ格納システムに格納する手段と、前記データ格納システムに格納された複数のメタデータオブジェクトの各々の１つ以上の特徴を特定する要約データを計算する手段と、を含む。また、システムは、所与のメタデータオブジェクトに関連付けてこの所与のメタデータオブジェクトを特徴付ける要約データを格納する手段と、対応するメタデータオブジェクトを表す（複数の）ノード及びそれらのノード間の関係を含む線図（ダイアグラム）の視覚的表現を発生する手段と、を含む。その視覚的表現を発生することは、所与のメタデータオブジェクトを特徴付ける前記要約データによって特定される特徴の表現を、その所与のメタデータオブジェクトを表すノードの近傍に重ねる(superimpose)ことを含む。
【０００７】
全体的な態様において、コンピュータシステムは、メタデータをデータ格納システムに格納し、且つ、前記データ格納システムに格納された複数のメタデータオブジェクトの各々の１つ以上の特徴を特定する要約データを計算するように構成される。所与のメタデータオブジェクトに関連付けてこの所与のメタデータオブジェクトを特徴付ける前記要約データが格納され、メタデータオブジェクトの各々を表す（複数の）ノード及びそれらのノード間の関係を含む線図の視覚的表現が発生される。前記視覚的表現を発生することは、所与のメタデータオブジェクトを特徴付ける前記要約データによって特定される特徴の表現を、その所与のメタデータオブジェクトを表すノードの近傍に重ねることを含む。
【０００８】
全体的な態様において、コンピュータ読み出し可能媒体は、コンピュータプログラムを格納し、そのコンピュータプログラムは、メタデータをデータ格納システムに格納させるようにコンピュータシステムを動作させる命令を含む。前記データ格納システムに格納された複数のメタデータオブジェクトの各々の１つ以上の特徴を特定する要約データが計算され、所与のメタデータオブジェクトに関連付けてこの所与のメタデータオブジェクトを特徴付ける前記要約データが格納される。メタデータオブジェクトの各々を表すノード及びそのノード間の関係を含む線図の視覚的表現が発生される。その視覚的表現を発生することは、所与のメタデータオブジェクトを特徴付ける前記要約データによって特定される特徴の表現を、その所与のメタデータオブジェクトを表すノードの近傍に重ねることを含む。
【０００９】
複数の態様は以下の１つ以上の利点を有する。
【００１０】
本システムはユーザが（複数の）オブジェクト間の関係を視覚化することを可能にし、更に、ユーザがコンテクストの設定（contextual setting）においてオブジェクトのある属性を見ることを可能にする。メタデータと連携することにより、ユーザは、ある動作を行う前にオブジェクトの起源（発生元）を理解することができる。ユーザは、任意の特定のオブジェクトの操作によってどのオブジェクトが影響されるかを知ることができる。また、ユーザは、所与の複数のオブジェクトの間の関係が明白に示される環境において、そのオブジェクトの属性を見ることができる。
【図面の簡単な説明】
【００１１】
【図１】計算システムのブロック線図である。
【図２Ａ】データのノード間の関係を示す線図である。
【図２Ｂ】データのノード間の関係を示す線図である。
【図２Ｃ】データのノード間の関係を示す線図である。
【図２Ｄ】データのノード間の関係を示す線図である。
【図２Ｅ】データのノード間の関係を示す線図である。
【図３】データのノード上に重ねられた図形のオーバーレイ（overlay）を示す線図である。
【図４】データのノード上に重ね合わされた図形のオーバーレイを示す線図である。
【図５】データのノード上に重ね合わされた図形のオーバーレイを示す線図である。
【発明を実施するための形態】
【００１２】
本システムは、ユーザが、幅広い種類のデータ格納システムに格納された（複数の）オブジェクトの間の関係を視覚化することを可能にする。その（複数の）オブジェクトの間の関係は、それらのデータオブジェクトが使用されるアプリケーションに適切な種々の従属性（dependencies）及び／または関連（associations）を表すことができる。このような技術が使用され得るこの種のシステムの一例として、そのオブジェクトがグラフに基づく（グラフベースの）計算環境の要素を表すシステムを説明する。
【００１３】
図１はグラフに基づく計算の開発、実行及び管理のための計算システム１００のパーツの相互関係を示すブロック線図である。グラフに基づく計算は、構成要素（データファイル又は処理）を表すグラフにおける頂点を伴う有向グラフによって表現される「データフローグラフ」と、構成要素の間のデータの流れを表すグラフにおける有向リンクつまり「辺（edge）」と、を用いて実現される。グラフ開発環境（ＧＤＥ）１０２は、実行可能なグラフを特定しかつグラフ構成要素用のパラメータを定義するユーザインターフェースを提供する。ＧＤＥは、たとえばＡｂ Ｉｎｉｔｉｏから入手可能なＣＯ＞ＯＰＥＲＡＴＩＮＧ ＳＹＳＴＥＭ（登録商標）ＧＤＥとすることができる。ＧＤＥ１０２は、保管所（repository）１０４及び並列オペレーティング環境１０６と通信する。また、保管所１０４及び並列オペレーティング環境１０６には、ユーザインターフェースモジュール１０８及び実行部（executive）１１０が接続されている。
【００１４】
幾つかの例において、保管所１０４は、ベースデータ格納部（store）１０５Ａ及びインターフェースデータ格納部（store）１０５Ｂの両方を含む。ベースデータ格納部は、技術上のメタデータを記憶し、また、たとえばグラフ及び変換などのアプリケーションを、それらのアプリケーションに関連付けられるメタデータとともに含むことができる。技術上のメタデータを記憶することに加え、ベースデータ格納部は、従属性解析（たとえば、後に詳述するように、データ系統を計算すること）を含む種々の解析を実行することができ、或いは、そのような解析の結果を受け取って格納することができる。幾つかの例において、ベースデータ格納部１０５Ａ及びインターフェースデータ格納部１０５Ｂは結合されて単一のデータ格納部として実現することができる。
【００１５】
技術上のメタデータは開発者にとって種々の機能において役立つが、よりハイレベルのメタデータが解析されかつ操作される必要があるという多くの場合がある。この、よりハイレベルのメタデータは、時々「企業」メタデータまたは「ビジネス」メタデータと称呼されることがあり、データ解析においてしばしば有用である。ビジネスメタデータの幾つかの例は、どの従業員がデータに対して責任を有しているかを示すデータ管理職務（stewardship）と、ファイル及びファイル内のフィールドに対するビジネス上の定義であるデータ辞書と、を含む。ビジネスメタデータはデータの技術上の記述を超え、ベースデータ格納部１０５Ａとは別の、たとえばインターフェースデータ格納部１０５Ｂのようなプラットフォーム上に格納することができる。
【００１６】
インターフェースデータ格納部１０５Ｂは、ビジネスメタデータを格納する役目を主として果たす関係型データベース（リレーショナルデータベース）とすることができる。インターフェースデータ格納部は、ベースデータ格納部と通信してそのメタデータを引き出すことができ、更に、様々な他のソース（たとえばグラフ、スプレッドシート（マトリックス計算表）、論理モデル、データベースのテーブル、又は、増設の第３者のデータソース等）から情報を引き出すことができる。
【００１７】
幾つかの例において、ベースデータ格納部１０５Ａは、拡張性のある（スケーラブルな）オブジェクト指向型データベースシステムであり、グラフに基づくアプリケーションの開発及び実行を支援し、且つ、グラフに基づくアプリケーションと他のシステム（たとえば、他のオペレーティングシステム）との間のメタデータの交換を支援するように設計されている。保管所１０４は、ドキュメンテーション、レコードフォーマット（たとえば、テーブル内のレコードのフィールド及びデータのタイプ）、変換関数、グラフ、ジョブ及び監視情報等を含む総ての種類のメタデータ用の格納システムである。また、保管所１０４は、計算システム１００によって処理されるべき実際のデータ（外部のデータ格納部１１２に格納されたデータを含む。）を表すメタデータオブジェクトを格納する。種々のソースからメタデータをインポートして管理するための特徴を含む保管所の一例は、２００８年１２月２日出願の同時係属米国仮特許出願第６１/１１９，１４８号、発明の名称「データ保守システム」に記載されており、本明細書に引用され組み込まれる。類似の特徴は保管所１０４に組み込むことができる。
【００１８】
並列オペレーティング環境１０６は、ＧＤＥ１０２において発生されたデータフローグラフの仕様を受理し、そのグラフによって規定された処理ロジック及びリソースに対応するコンピュータ命令を発生する。並列オペレーティング環境１０６は、次いで、一般に、複数のプロセッサ（同種である必要ない）上にてそれらの命令を実行する。適切な並列オペレーティング環境の一例はＣＯ＞ＯＰＥＲＡＴＩＮＧ ＳＹＳＴＥＭ（登録商標）である。
【００１９】
ユーザインターフェースモジュール１０８は、保管所１０４の内容のウェブブラウザベースの表示を提供する。ユーザ１０３は、ユーザインターフェースモジュール１０８を用いて、オブジェクトを閲覧でき、新しいオブジェクトを作り出すことができ、現存するオブジェクトを変更することができ、アプリケーションのパラメータを特定することができ、更に、ジョブのスケジューリングをすることができる。ユーザインターフェース１０８は、ユーザが、保管所１０４に格納された「オブジェクト及びオブジェクトについての情報」を検索し且つ見るための書式ベース（forms-based)の探索画面を発生する。
【００２０】
保管所１０４は、グラフの構成要素を含むグラフに基づくアプリケーションのためのメタデータオブジェクト、及び、計算グラフを構築するための他の関数（functional）オブジェクト、を含むメタデータを格納する。上述したように、保管所１０４のベースデータ格納部１０５Ａに格納されたメタデータは、たとえば、「技術上の」メタデータ（たとえば、アプリケーションに関係するビジネス規則、レコードフォーマット及び実行統計）を含み、他方、インターフェースデータ格納部１０５Ｂはビジネスメタデータ、たとえば職務権限、役割及び責任のユーザが定義するドキュメンテーション、を含むことができる。
【００２１】
メタデータオブジェクトの形式にて保管所１０４に格納された情報は、アプリケーション及びこれらのアプリケーションによって処理されるデータに関する種々の解析を可能にする。この情報のサブセットはインターフェースデータ格納部１０５Ｂに格納され得る。たとえば、さらに後に詳述するように、ユーザは、データ系統についての質問に対する回答を得ることができる（たとえば、所与の値はどこから来たのか？その出力値はどのように計算されたのか？どのアプリケーションがこのデータを作成し、このデータに依存するか？）。開発者は提案された変更の論理的結論を理解することができる（たとえば、この部分が変化したならば、他のどの部分が影響を受けるのか？このソースフォーマットが変化したならば、どのアプリケーションが影響を受けるのか？）。また、ユーザ／開発者は、技術上のメタデータ及びビジネスメタデータの両方に関係する質問（たとえば、このデータを発生し用いることに対してどのグループが責任を有するのか？このアプリケーションを最後に変更したのは誰か？彼らはどのような変更をしたのか？）に対する回答を得ることができる。
【００２２】
また、保管所１０４は、格納されたメタデータオブジェクトの状態を追跡できる。保管所１０４に格納されたオブジェクトはバージョン化され、それにより、先週、先月又は昨年の時点における状態を調べることができ、この状態を今日の状態と比較することができる。保管所１０４は、ジョブ追跡、又は、実行情報を収集する。ジョブ追跡又は実行情報は、動向分析（たとえば、我々のデータがどの速度で成長しているか？）及び能力の計画（たとえば、そのアプリケーションが実行するのにどのくらいの時間がかかったか？アプリケーションはどのくらいの量のデータを処理したか、また、処理速度は？そのアプリケーションはどのリソースを消費したか？何時、別のサーバの追加を必要とするか？）を可能にする。
【００２３】
ユーザは、格納されたメタデータに含まれる情報及び／または格納されたメタデータに関連付けられた情報をユーザインターフェースモジュール１０８を介して見ることができ（更に、オプションとしてその情報を編集できる）。メタデータビューイング環境（メタデータを見る環境）は、ディスプレ上にユーザインターフェースモジュール１０８によって表されたアイコン及びアイコンのグルーピング（grouping）を含む種々の図形的表現を用いて種々のメタデータオブジェクトを示すことができる。メタデータオブジェクトは、異なるタイプのデータ要素（たとえば実行可能なプログラムの入力又は出力として使用されるデータ）及び/または変換（たとえば、データを処理する構成要素であってたとえばデータを処理するか又はデータを発生するデータフローグラフ等に関連付けられた任意のタイプのデータ操作）を表すことができる。ビューイング環境は、後に詳述するように、複数のメタデータオブジェクト又は複数のメタデータオブジェクトの複数グループを表す図形上のノード同士を接続する線として関係を示すことができる。幾つかの場合において、インターフェースデータ格納部１０５Ｂは、ベースデータ格納部１０５又は他のデータソースから関係（たとえば系統情報等）を引き出すことができる。インターフェースデータ格納部１０５Ｂはデータ系統のハイレベルの概要（summary）を保持することができる。その系統情報（又は他のデータ従属性解析）は、システム１００内において自動的に計算されることができ、或いは、外部システムから又は手動入力から受け取られることができる。たとえば、システム１００は、今まで集められ且つ人的にコードを解析することによって準備された系統情報を受け取ることができる。系統情報は、種々の予め定められたフォーマット形式（たとえば、スプレッドシート形式）にて、ファイルから保管所１０４へインポートされ得る。
【００２４】
図２Ａはメタデータビューイング環境の例を示す。幾つかの例において、メタデータビューイング環境は、ブラウザの上部にて実行するインターフェースである。図２Ａの例では、メタデータビューイング環境は、データ系統図２００Ａに関係する情報を表示する。メタデータビューイング環境の一例は、ユーザがメタデータを見ることができ且つ編集することを可能とするウェブベースのアプリケーションである。メタデータビューイング環境を用いると、ユーザは、企業内のどこからでも標準的なウェブブラウザを用いて、メタデータを探索、解析及び管理することができる。メタデータオブジェクトの各タイプは、１つ以上のビューつまり視覚的表現を有する。図２Ａのメタデータビューイング環境は、目標要素２０６Ａへの系統図を図示する。
【００２５】
たとえば、前記系統図は、保管所１０４に格納されたメタデータオブジェクトを表すデータ及び／または処理ノードに対する先端から末端までの系統を表示する。即ち、前記系統図は、所与の開始オブジェクトが依存するオブジェクト（ソース）と、所与の開始オブジェクトが影響を及ぼすオブジェクト（ターゲット）と、を表示する。この例においては、データ要素２０２Ａと変換２０４Ａとの間、つまり、２つのメタデータオブジェクト例の間、の接続が示されている。メタデータオブジェクトは線図におけるノードによって表現されている。データ要素２０２Ａは、例えば、データセット、データセット内のテーブル、テーブル内の列、ファイル内のフィールド、メッセージ及びレポート等を表す。変換２０４Ａの一例は、どのようにしてデータ要素の単一の出力が生成されるかを記述する実行ファイル（executables）の要素である。ノード間の接続はメタデータオブジェクト間の関係に基づく。
【００２６】
図２Ｂは、各要素２０２Ｂがグループ化され且つコンテクスト（前後関係）に基づくグループ内に示されている点を除き、図２Ａに示されたものと同一のターゲット要素２０６Ａへの対応する系統図２００Ｂを図示する。たとえば、データ要素２０２Ｂは、データセット２０８Ｂ（たとえば、テーブル、ファイル、メッセージ及びレポート）、アプリケーション２１０Ｂ（たとえばグラフ、計画及びプログラムのような実行ファイル、さらに、それらが影響するデータセットを含む）、及びシステム２１２Ｂ、にグループ化されている。システム２１２Ｂは、データ及びこのデータを処理するアプリケーションの機能グループ、つまり、アプリケーション及びデータグループ（たとえば、データベース、ファイルグループ、メッセージングシステム、及びデータセットのグループ）よりなるシステムである。変換２０４Ｂは、実行ファイル２１４Ｂ、アプリケーション２１０Ｂ及びシステム２１２Ｂにグループ化される。たとえば、グラフ、計画及びプログラム等の実行ファイルは、データセットを読出しかつ書込む。パラメータは、デフォルト設定により、どのグループが展開されるか、及び、どのグループが畳み込まれるか、を設定できる。これにより、ユーザは、不要なレベルの詳細を取り除くことによって、ユーザにとって重要なグループのみの詳細を見ることができる。
【００２７】
メタデータビューイング環境を用いてデータ系統計算を実行することは、多くの点で有用である。たとえば、データ要素と変換との間の関係を計算して図示することは、ユーザが、報告値が所与のフィールドレポートのためにどのように計算されたかを決定することを助けることができる。また、ユーザは、どのデータセットが特定のタイプのデータを格納しているか、及び、どの実行ファイルがそのデータセットを読出し且つ書込むか、を見ることができる。ビジネス用語の場合においては、データ系統図はどのデータ要素（たとえば、列及びフィールド）があるビジネス用語（企業における定義）に関連するかを図示ことができる。
【００２８】
また、メタデータビューイング環境内に示されたデータ系統図は、ユーザがインパクト解析を行うことを支援することができる。具体的には、ユーザは、列またはフィールドがデータセットに追加された場合に下流側の実行ファイルのどれが影響を受けるのか、及び、誰に通知する必要があるのか、について知ることを希望することがある。インパクト解析は、所与のデータ要素がどこで使用されているかを決定でき、また、そのデータ要素の変更の悪影響（ramifications）を決定することもできる。同様に、ユーザは、実行ファイルの変更によってどのデータセットが影響を受けるか、或いは、生成から「あるデータベーステーブル」を削除することは安全か否か、を視覚的に見ることができる。
【００２９】
メタデータビューイング環境を用いてデータ系統図発生用のデータ系統計算を実行することは、ビジネス用語を管理する上で有用である。たとえば、企業内の従業者が、その企業全体に渡るビジネス用語の意味、これらの用語間の関係、及び、これらの用語が参照するデータ、について合意することがしばしば望まれる。ビジネス用語の一貫性のある使用は、企業データの透明性を高め、且つ、ビジネス上の要求の伝達を促進する。従って、ビジネス用語の基礎となる物理的なデータがどこで発見できるか、及び、どのビジネスロジックが計算に用いられるか、を知ることは重要である。
【００３０】
また、データノード間の関係を見ることは、メタデータを管理し保守する上で有益である。たとえば、ユーザは、だれがメタデータの一部を変更したのか、どのソース（即ち、「レコードのソース」）がメタデータの一部に対応しているのか、或いは、外部ソースからメタデータをロードするとき又は再ロードするときにどんな変更がなされたのか、を知ることを希望することがある。メタデータを保守する場合、指定されたユーザが、メタデータオブジェクト（たとえばビジネス用語）を創出することができ、メタデータオブジェクトの特徴（たとえばオブジェクトの他のオブジェクトに対する記述及び関係）を編集することができ、或いは、もはやサポートされていない（旧式な）メタデータオブジェクトを削除することがでることが望ましい。
【００３１】
メタデータビューイング環境は、オブジェクトの多数の図形的ビューを提供し、それにより、ユーザはメタデータを探索し且つ解析することができる。たとえば、ユーザは、システム及びアプリケーションの内容を視覚的に見て、任意のオブジェクトの詳細を探索し、更に、データ系統ビューを用いてオブジェクト間の関係を見ることができる。これにより、ユーザは、上述したデータ系統解析及びインパクト解析のような種々のタイプの従属性の解析を容易に実行することができる。また、オブジェクトの階層も見られることができ、また、その階層は特定のオブジェクトを見つけるために探索されることができる。オブジェクトが一旦見つけられたならば、そのオブジェクトに対するしおりが生成され得る。これにより、ユーザはそれらのオブジェクトに簡単に戻ることができる。
【００３２】
正式な許可を有するユーザは、メタデータビューイング環境においてメタデータを編集することができる。たとえば、ユーザはオブジェクトの記述を更新することができ、ビジネス用語を創出することができ、（ビジネス用語をレポート内のフィールド又はテーブル内の列にリンクさせるような）オブジェクト間の関係を定義することができ、（たとえば、データセットを１つのアプリケーションから他のアプリケーションへ移動するような）オブジェクトの移動を実行することができ、或いは、オブジェクトを削除することができる。
【００３３】
図２Ｃにおいては目標要素２０６Ａについての対応する系統図２００Ｃが図示されているが、解像度のレベルは目標データ要素２０６Ａについての計算に参加しているアプリケーション（のレベル）に設定されている。具体的に述べると、アプリケーション２０２Ｃ、２０４Ｃ、２０６Ｃ、２０８Ｃ及び２１０Ｃのみが目標データ要素２０６Ａに対する計算に直接参加しているので、これらのアプリケーションが図示されている。ユーザが、異なる解像度レベルにてその系統図のある部分を見ることを望めば（たとえば、線図において、より詳細に又はより簡素に表示することを望む場合）、そのユーザは対応する展開／折り畳みボタン２１２Ｃをアクティブにする（activate）ことができる。
【００３４】
図２Ｄは解像度レベルが異なる対応する系統図２００Ｄを示す。この例においては、展開／折り畳みボタン２１２Ｃがユーザによってアクティブにされており、メタデータビューイング環境は現時点にて同一の系統図を表示しているが、アプリケーション２０２Ｃはアプリケーション２０２Ｃ内においてデータセット２１４Ｄ及び実行ファイル２１６Ｄを示すように展開されている。
【００３５】
図２Ｅは、解像度レベルが異なる対応する系統図２００Ｅを示す。この例において、ユーザはカスタム展開（あつらえの展開、custom expansion）により展開された総てを示すことを選択している。データの最終的なソースであるフィールド又は列（たとえば、それは上流のシステムを有しない。）が展開されている。加えて、特定のフラグのセット（集合）を有するフィールドも展開されている。この例では、系統における重要な中間点にて特定のフラグがデータセット及びフィールド上に設定されており、また、一つの列はその系統が示されている列である。ユーザインターフェースモジュール１０８は、どのノードが折り畳まれる必要があるか、どのノードが線図から完全に除外される必要があるか、を決定する。
【００３６】
また、ユーザは自身の線図を構築することができる。たとえば、線図がメタデータにおける主キー／外部キーの関係を辿ることができるように構築されることができる。また、フィルタを従属性の解析に適用して系統図から情報を排除することもできる。たとえば、ユーザが系統図から拒否ファイルであるデータセットを除外することを望む場合、そのユーザはその系統図内の拒否ファイルの表示をオン・オフに切り替えることができる。
【００３７】
メタデータビューイング環境において要素及び関係を見る場合、各ノードを表すノードに関係する情報を付加することによってさらに有益になる。ノードに関係情報を付加する方法の一例は、所定のノードの上部に情報を図形的に重複（overlay)させることである。これらの図形は、ノードによって表わされたデータの値又は特徴、更にはメタデータ内のいかなる特徴をも、示すことができる。このやり方は、通常は完全に別の２つ以上の情報（データのノード間の関係及びそのノードによって表わされたデータの特徴）を結びつける点で有利であり、「コンテクスト（前後関係）」内に有益な情報を置くように努める。たとえば、メタデータの質（属性）、メタデータの新しさ、又は、レコード情報のソースのような特徴は、データノードの間の関係の視覚的な描写とともに表示され得る。この情報のいくつかは表形式にてアクセスすることができるが、データの異なるノード間の関係とともにそのデータの特徴を見ることができることはユーザにとって一層有益であろう。ユーザは、メタデータビューイング環境内において、データのどの特徴がデータ要素及び／または変換ノードの上部に示されるのかを選択することができる。また、どの特徴を示すのかは初期設定システム（デフォルトシステム）の設定に従って設定することもできる。
【００３８】
図３の例において、ノード３００は、そのノードによって表わされたメタデータの新しさに係る情報を含む図形オーバレイ３０２を表示する。「メタデータの新しさ」は、そのメタデータの更新又は外部からの変更がどのくらい最近に行われたのかを意味する。カーソルを図形オーバレイ３０２上にてうろつかせる（hover）ことにより、図形オーバレイ３０２により現時点にて表示されている特徴についての更なる詳細を含むウィンドウ３０４が画面に呼び出される。図形オーバレイは、凡例（legend）３０６を介して異なる意味に対応付けられた図形の異なる色をもって色コード化され得る。
【００３９】
図４の例において、メタデータの質のレベルを表示する図形オーバレイが、ノード４００上のオーバレイ４０２を含むデータ要素ノードの上部に重ねられている。メタデータの質の測定は、ビジネスによって用いられ、たとえばデータをインポート又は処理する前にビジネスパートナーから送られてきた周期的（たとえば月毎）データ入力の輪郭を描く（profile）ことができる。これにより、ビジネスは、「悪い」データ（たとえば閾値より高い無効な値の比率を有するデータ）を発見し、この結果、悪いデータが、操作によって元にもどすことが困難な現存のデータ格納部を汚染しない。先に述べた例と同様、カーソルを図形オーバレイ４０２上にてうろつかせる（hover）ことにより、図形オーバレイ４０２によって現時点において表示されている特徴についての更なる詳細を含むウィンドウ４０４が画面上に呼び出される。
【００４０】
図５の例においては、レコードのソースのタイプを表す図形オーバレイがデータ要素のノード及び変換ノードの上部に重ねられている。ノード５００は、レコードのソースが「アクティブなインポートソース」であることを示すオーバレイ５０２を有する。これは、メタデータがソース（たとえばスプレッドシート）から自動的にインポートされたことを意味する。カーソルを図形オーバレイ５０２の上でうろつかせることにより、そのインポートに使用されたファイルのタイプ（この例では、エクセルのスプレッドシート）、ファイル名、ファイル所有者及びインポート日付のような詳細を含むウィンドウ５０４が呼び出される。ノード５０６は、レコードのソースが「手動によって保守される」ことを示すオーバレイ５０８を有する。これは、メタデータが（たとえば、ユーザインターフェースモジュール１０８を用いて）ユーザによって手動にて修正されたことを意味する。カーソルを図形オーバレイ５０８の上でうろつかせることにより、メタデータを修正したユーザ名及びその修正の日付のような詳細を含むウィンドウ５１０が呼び出される。
【００４１】
システム１００のモジュール及びシステム１００によって実行される手続を含む上述したレコード記憶及び検索のアプローチは、コンピュータ上で実行されるソフトウェアを用いて実現できる。たとえば、このソフトウェアは、１つ以上のプログラムされたコンピュータシステム又はプログラム可能なコンピュータシステム（分散型、クライアント/サーバ型又はグリッド型等の種々アーキテクチャ型である）上で実行される１つ以上のコンピュータプログラムにおける手続を形成する。この各コンピュータシステムは、少なくとも１つのプロセッサ、（揮発性メモリ及び不揮発性メモリ、及び／または、記憶素子を含む）少なくとも１つの記憶システム、少なくとも１つの入力装置またはポート、並びに、少なくとも１つの出力装置またはポートを含む。そのソフトウェアは、たとえば、計算グラフの設計及び構成に関係した他のサービスを提供するより大きなプログラムの１つ以上のモジュールを形成できる。グラフのノード及び要素は、コンピュータ読出し可能媒体に格納されたデータ構造、または、データ保管所に格納されたデータモデルに合致する他の系統的なデータでもよい。
【００４２】
上述したアプローチは、コンピュータ上で実行されるソフトウェアを用いて実現できる。たとえば、このソフトウェアは、１つ以上のプログラムされたコンピュータシステム又はプログラム可能なコンピュータシステム（分散型、クライアント/サーバ型又はグリッド型等の種々アーキテクチャ型である）上で実行される１つ以上のコンピュータプログラムにおける手続を形成する。この各コンピュータシステムは、少なくとも１つのプロセッサ、（揮発性メモリ及び不揮発性メモリ、及び／または、記憶素子を含む）少なくとも１つの記憶システム、少なくとも１つの入力装置またはポート、並びに、少なくとも１つの出力装置またはポートを含む。そのソフトウェアは、たとえば、計算グラフの設計及び構成に関係した他のサービスを提供するより大きなプログラムの１つ以上のモジュールを形成できる。グラフのノード及び要素は、コンピュータ読出し可能媒体に格納されたデータ構造、または、データ保管所に格納されたデータモデルに合致する他の系統的なデータでもよい。
【００４３】
ソフトウェアは、汎用または専用のプログラマブルコンピュータによって読み出し可能なＣＤ−ＲＯＭ等の記憶媒体上に提供され、或いは、そのソフトウェアが実行されるコンピュータにネットワークの通信媒体を用いて配信される。すべての機能は、専用のコンピュータ、または、コプロセッサのような専用ハードウェアを用いて実行され得る。ソフトウェアは、ソフトウェアによって特定された異なる計算の部分が異なるコンピュータによって実行されるという分散方式によって実行され得る。好ましくは、上述の各コンピュータプログラムは、汎用または専用プログラマブルコンピュータによって読み出し可能な記憶媒体またはデバイス（たとえば、固体メモリまたは媒体、もしくは磁気的または光学的媒体）に格納され或いはダウンロードされ、記憶媒体またはデバイスがコンピュータシステムによって読み出されて上述した手順を実行するときに、コンピュータを構築及び動作させる。また、本発明のシステムは、コンピュータプログラムとともに構築されたコンピュータ読み出し可能記憶媒体として実現されることが考えられる。ここで、そのように構築された記憶媒体は、上述の機能を実行するために特別且つ予め定義された様式でコンピュータシステムを作動させる。
【００４４】
多くの本発明の実施例を記載した。しかしながら、本発明の精神及び範囲から逸脱することなく多種の変更がなされ得ることが理解されよう。たとえば上述のいくつかのステップは、順序が独立であり、従って上述の順序と異なる順序で実行され得る。
【００４５】
上述の記述は説明のためであり、添付された本発明の特許請求の範囲によって定義される発明の範囲を限定する意図はないことが理解されるべきである。たとえば、上述の機能ステップの多くは、全体の処理に実質的に影響を及ぼすことなく異なる順序で実行され得る。他の実施例は特許請求の範囲の請求項の範囲内にある。
【図１】
0005944973.tif 000002
【図２Ａ】
0005944973.tif 000003
【図２Ｂ】
0005944973.tif 000004
【図２Ｃ】
0005944973.tif 000005
【図２Ｄ】
0005944973.tif 000006
【図２Ｅ】
0005944973.tif 000007
【図３】
0005944973.tif 000008
【図４】
0005944973.tif 000009
【図５】
0005944973.tif 000010