(57)【要約】  現代のコンピュータシステムは、データファイル、アプリケーションバイナリ、データベースオブジェクト、電子メールシステム等のアプリケーションによって管理される専用オブジェクト、及びシステム設定情報等の大量の様々なタイプのデータオブジェクトのセットを含んでいる。アーカイビング操作及び同期化操作等の複雑な操作の、大量かつ多様なデータオブジェクトへの適用は、手作業またはスクリプトで実行するのは困難である。より有利な手法は、データオブジェクトマネージャをデータオブジェクトセットに適用することを含む。このようなデータオブジェクトマネージャは、データオブジェクトセット内の様々なデータオブジェクトタイプに、操作の進行のためにデータオブジェクトにおいて実行されるべきタスクを含む様々なルールを適用する。さらに、データオブジェクトセットは、階層的データオブジェクトセットマップとしてモデリングされ、さらに一定の態様にて、ルールを、データオブジェクトマネージャを介して階層的データオブジェクトセットマップに適用することができる。
2010541078.tif 000002
【特許請求の範囲】
【請求項１】
データオブジェクトセット（５４）において操作（３４）を実行する方法（１０）であって、
少なくとも１つのデータオブジェクトマネージャ（４８）を前記データオブジェクトセット（５４）に適用するステップ（１４）を含み、
前記少なくとも１つのデータオブジェクトマネージャ（４８）が、前記データオブジェクトセット（５４）内の少なくとも１つのデータオブジェクトタイプに、前記操作（３４）を進行するために前記データオブジェクトタイプのデータオブジェクトにおいて実行されるべきタスク（３８）を含む少なくとも１つのルール（３６）を適用することを特徴とする方法。
【請求項２】
前記操作は、データオブジェクトセットの解析、複数のデータオブジェクトセットの同期化、データオブジェクトセットにおけるデータアーカイビング操作、データオブジェクトセットにおけるデータ復元操作、データオブジェクトセットにおけるサーバ配置操作、少なくとも１つの宛先データオブジェクトセットへのソースデータオブジェクトセットのミラーリング、及び新しいアプリケーションバージョンとの互換性を取得するためのデータオブジェクトセットの移行、のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記適用するステップは、前記ルールを前記データオブジェクトに順次適用するステップを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記適用するステップは、前記ルールを前記データオブジェクトにパラレルに適用するステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記適用するステップは、前記ルールの各々を、以前に適用されたルールによっては取り扱われないデータオブジェクトに階層的に適用するステップを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記データオブジェクトにおいてジェネリックなタスクを実行する少なくとも１つのジェネリックタスクタイプと、
前記データオブジェクトにおいて実行されるべき少なくとも１つのジェネリックタスクタイプを特定する少なくとも１つのルールと
を含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記データオブジェクトにおいてジェネリックなルールを実行する少なくとも１つのジェネリックルールタイプと、
前記データオブジェクトに適用されるべき少なくとも１つのジェネリックルールタイプを特定する少なくとも１つの操作と
を含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記データオブジェクトを示す階層的データオブジェクトセットマップを生成するステップを含み、
前記少なくとも１つのデータオブジェクトマネージャが、前記階層的データオブジェクトセットマップを介して、前記少なくとも１つのルールを前記データオブジェクトに適用することを特徴とする請求項１に記載の方法。
【請求項９】
前記階層的データオブジェクトセットマップは、階層的データオブジェクトセット定義に従って、前記データオブジェクトセットから生成されることを特徴とする請求項８に記載の方法。
【請求項１０】
前記データオブジェクトセットは、取得されたデータオブジェクト、データオブジェクトグループ及びリンクデータオブジェクトのうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記データオブジェクトマネージャは、少なくとも１つのカスタムデータオブジェクトマネージャを含むことを特徴とする請求項１に記載の方法。
【請求項１２】
データオブジェクトセット（５４）における操作（３４）を実行する方法（１０）を実行するプロセッサ実行可能命令（３２６）を含むコンピュータ可読媒体（３２２）であって、前記方法（１０）が、
少なくとも１つのデータオブジェクトマネージャ（４８）を前記データオブジェクトセット（５４）に適用するステップ（１４）を含み、
前記少なくとも１つのデータオブジェクトマネージャ（４８）が、前記データオブジェクトセット（５４）内の少なくとも１つのデータオブジェクトタイプに、前記操作（３４）を進行するために前記データオブジェクトタイプのデータオブジェクトにおいて実行されるべきタスク（３８）を含む少なくとも１つのルール（３６）を適用することを特徴とするコンピュータ可読媒体。
【請求項１３】
データオブジェクトセット（５４）における操作（３４）を実行するシステム（３０）であって、前記システム（３０）が、
前記操作（３４）を進行させるために前記データオブジェクトセット（５４）内の少なくとも１つのデータオブジェクトタイプのデータオブジェクトにおいて実行されるべき少なくとも１つのタスク（３８）を含む少なくとも１つのルール（３６）と、
前記少なくとも１つのデータオブジェクトタイプのデータオブジェクトに前記少なくとも１つのルール（３６）を適用する少なくとも１つのデータオブジェクトマネージャ（４８）と、
前記少なくとも１つのデータオブジェクトマネージャ（４８）と前記少なくとも１つのルール（３６）とを前記データオブジェクトセット（５４）に適用する操作調整コンポーネント（３２）と、
を含むことを特徴とするシステム。
【請求項１４】
前記操作は、データオブジェクトセットの解析、複数のデータオブジェクトセットの同期化、データオブジェクトセットにおけるデータアーカイビング操作、データオブジェクトセットにおけるデータ復元操作、データオブジェクトセットにおけるサーバ配置操作、少なくとも１つの宛先データオブジェクトセットへのソースデータオブジェクトセットのミラーリング、及び新しいアプリケーションバージョンとの互換性を取得するためのデータオブジェクトセットの移行、のうちの少なくとも１つを含むことを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記データオブジェクトにおいてジェネリックなタスクを実行する少なくとも１つのジェネリックタスクタイプと、
前記データオブジェクトに適用されるべき少なくとも１つのジェネリックタスクタイプを特定する少なくとも１つのルールと
を含むことを特徴とする請求項１３に記載のシステム。
【請求項１６】
前記データオブジェクトにおいてジェネリックなルールを実行する少なくとも１つのジェネリックルールタイプと、
前記データオブジェクトに適用されるべき少なくとも１つのジェネリックルールタイプを特定する少なくとも１つの操作と
を含むことを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記データオブジェクトセットから階層的データオブジェクトセットマップを生成する階層的データオブジェクトセットマップ生成コンポーネントをさらに含み、
前記少なくとも１つのデータオブジェクトマネージャが、前記階層的データオブジェクトセットマップを介して、前記少なくとも１つのルールを前記データオブジェクトセット内の少なくとも１つのデータオブジェクトタイプのデータオブジェクトに適用することを特徴とする請求項１３に記載のシステム
【請求項１８】
前記階層的データオブジェクトセットマップ生成コンポーネントは、階層的データオブジェクトセット定義に従って前記階層的データオブジェクトセットマップを生成することを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記データオブジェクトセットは、取得されたデータオブジェクト、データオブジェクトグループ及びリンクデータオブジェクトのうちの少なくとも１つを含むことを特徴とする請求項１３に記載のシステム。
【請求項２０】
前記少なくとも１つのデータマネージャに少なくとも１つのカスタムデータオブジェクトマネージャを含めるカスタムデータオブジェクトマネージャインタフェースコンポーネントを含むことを特徴とする請求項１３に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
現代のコンピュータシステムは、様々な種類のデータを含む多様なファイルを含む１または複数のファイルストア等のデータオブジェクトの広範な組み合わせを示す。様々なデータオブジェクトには、様々なアプリケーションのためにコンパイルされたコードを含むバイナリ、バージョン付けされたオブジェクトを含むアセンブリキャッシュ、様々な種類のデータを示す１または複数のデータベースを含む１または複数のデータベースシステム、コンピュータシステムのハードウェア及びソフトウェアコンポーネントを設定するデータを含むシステム設定データセット（例えばシステムレジストリ）、プロパティデータオブジェクトを含む１または複数のアプリケーション（例えば、電子メールデータストア内のアイテムへのアクセスを管理する電子メールサーバアプリケーション）が含まれる。これらのデータオブジェクトは、様々なサブシステムによって保存及びアクセスされる。例えば、データベース管理システムは、１または複数のデータベースを含むデータを管理してもよく、ファイルシステムインタフェースがファイルストアのデータファイルを管理してもよく、電子メールサーバシステムが１または複数の電子メールのメールボックスを示す専用のデータオブジェクト（ｐｒｏｐｒｉｅｔａｒｙ  ｄａｔａ  ｏｂｊｅｃｔ）を管理してもよい。現代のコンピュータ技術の複雑さは、広範なタスクを完遂するべく大量かつ多様なデータオブジェクトを管理するコンピュータを必要とするだろう。
【発明の概要】
【課題を解決するための手段】
【０００２】
この発明の概要は、以下の発明を実施するための形態においてさらに説明されるいくつかの概念を単純化した形式で紹介すべく提供される。この発明の概要は、本発明の重要な要素または本質的な特徴を特定することを意図しておらず、本発明の範囲を限定するために使用されることも意図していない。
【０００３】
様々な操作のためのデータオブジェクトセットの管理（例えば、データオブジェクトセット解析、データオブジェクトセットのアーカイビング（ａｒｃｈｉｖｉｎｇ）、またはデータオブジェクトセットの同期化）は、操作に関与する幅広いデータや大量のデータによって困難にされる。例えば、データオブジェクトセットのアーカイビングは、ファイルストア内の数百万のデータファイルのアーカイビング、様々なデータベース内に保存されている数テラバイトのデータのアーカイビング、アセンブリキャッシュまたはアプリケーションに固有のデータストア内に保存されているデータオブジェクトのいくつかの管理されたアクセスのサブセットのアーカイビング、及びシステムレジストリを含む多量のデータセットのアーカイビングを伴うこともある。このようなデータオブジェクトのサイズおよび多様性は、手作業の調整によって、またはデータオブジェクトセットの大量かつ多様なオブジェクトにおける一般的な操作（ｇｅｎｅｒｉｃ  ｏｐｅｒａｔｉｏｎ）（例えば、「アーカイブデバイスへのコピー」）の実行を試行する低水準のタスクスクリプトによっては管理不能であろう。
【０００４】
データオブジェクトセットを管理するための代替手法は、１または複数のデータオブジェクトマネージャを、操作を進行させるためにデータオブジェクトにおいて実行されるべきタスクを特定する１または複数のルールとともに、データオブジェクトセットのデータオブジェクトに適用することを含む。従って、操作を進めるために様々なデータオブジェクトにおいて実行されるべき様々なタスクを特定するルールのセット、当該ルールをデータオブジェクトセット内の特定のデータオブジェクトに適用するように構成されたデータオブジェクトマネージャのセット、及び当該データオブジェクトマネージャを様々なルールとともに当該データオブジェクトセットに適用するように構成された操作調整コンポーネントを含むシステムが案出されるだろう。このようなシステムは、操作を進めるために大量のデータオブジェクト内の非常に多様なデータオブジェクトにおいて高度な操作を行うことを可能とするだろう。
【０００５】
上述の目的及び関連する目的の完遂のために、以下の発明を実施するための形態及び添付の図面において、いくつかの例示の特徴及び実施例が説明される。これらは、１または複数の特徴が使用することができる様々な方法のほんの一例を示す。本開示の他の態様、利点及び新規の特徴は、添付の図面とともに検討された場合に、以下の発明を実施するための形態から明らかになるだろう。
【図面の簡単な説明】
【０００６】
【図１】データオブジェクトセットにおいて操作を実行する方法の一例を示すフロー図である。
【図２】データオブジェクトセットにおいて操作を実行する方法の他の例を示すフロー図である。
【図３】データオブジェクトセットにおいて操作を実行するシステムの一例を示すコンポーネントブロック図である
【図４】様々なコンピュータシステム内に示されかつ再組織化されたデータオブジェクトセットとして表されたアクセス可能データオブジェクトのセットの一例を示す図である。
【図５】様々なコンピュータシステム内に示されかつ階層的データオブジェクトセットマップとして表されたアクセス可能データオブジェクトのセットの一例を示す図である。
【図６】データオブジェクトセットに適用するルールセットの一例を示す図である。
【図７】データオブジェクトセットに適用するルールセットの他の例を示す図である。
【図８】データオブジェクトセットに適用するルールセットのさらに他の例を示す図である。
【図９】データオブジェクトセットに適用するルールセットのさらに他の例を示す図である。
【図１０】データオブジェクトセットにおける操作の実行システムの他の例を示すコンポーネントブロック図である。
【図１１】データオブジェクトセットにおける操作の実行システムのさらに他の例を示すコンポーネントブロック図である。
【図１２】データオブジェクトセットにおける操作の実行システムのさらに他の例を示すコンポーネントブロック図である。
【図１３】本明細書に開示されている方法またはシステムを実行または実装すべく構成されたプロセッサ実行可能命令を含むコンピュータ可読媒体の一例を示す図である。
【発明を実施するための形態】
【０００７】
本発明は、添付の図面を参照してここで説明される。全体を通して、同一の参照符号は同一の要素を参照するために使用される。以下の記述において、説明のために、多数の具体的な詳細が記載されて本発明の全体的理解が提供される。しかし、本発明がこれらの具体的な詳細無しに実施することができることは明白である。他の例において、周知の構造及びデバイスが、本発明の説明を容易にするべくブロック図の形式で示される。
【０００８】
現代のコンピュータシステムは、様々なタイプのデータオブジェクトの管理を伴って動作させられる。ファイルサーバは、各々が様々なサイズの数十億のファイルを潜在的に含む１または複数のファイルストアへのアクセスを管理し、様々なセキュリティ及び承認パラメータに基づいて、何千ものユーザのためにこのようなファイルにおける様々な態様のアクセス（例えば、よくアクセスされるファイルへのキャッシュを介した高速アクセス、多数のユーザに同時に使用されるファイルへの並列アクセス、及び大きなファイルへのストリーミングアクセス）を提供しようと試みる。データベースサーバは、各々が数十億のレコードをホスティングする数千のテーブルを潜在的に含む複数のデータベースへのアクセスを管理し、データベース主導型のウェブサイト等のデータ主導型のアプリケーションの広範な仕分けのために、このようなデータベースにおいて様々なタスク（例えば、マルチステップ操作の複雑なトランザクション、複数のテーブルにおける拡張処理を要求する複雑なクエリ、及び保存された手順内に組み込まれた高度なロジック）を実行しようと試みる。電子メールサーバは、数千のメールボックスへのアクセスを管理し、数十億の電子メールメッセージに様々な処理（例えば、電子メールグループロジック、添付ファイルスキャン、及び高度なスパム及びサービス妨害防御アルゴリズム）を適用しようとする。さらに、コンピュータシステムは、多量の設定データ及び管理データを含むことができる。例えば、コンピュータシステムは、数十億のレジストリキーを含むシステムレジストリを使用でき、当該レジストリキーは、コンピュータシステム、当該コンピュータシステムによって保持されるアプリケーション及び当該コンピュータシステムに包含されるデバイスコントローラを含む多種多様な処理を設定する拡張情報セットを含む。
【０００９】
このようなデータオブジェクトセットの複雑さ（コンピュータシステムを含むデータオブジェクトセット全体等のデータオブジェクトセット内に含まれるデータオブジェクトの大量で及び広範な組み合わせ）は、管理機能の障害となる。例えば、システム管理者は、コンピュータシステムを含む様々なデータオブジェクトのアーカイブイメージを生成することを望むだろう。しかし、ファイルシステムに亘るデータファイルオブジェクトのアーカイビング、データベースシステムに亘るデータベースオブジェクトのアーカイビング、電子メールシステムに亘る専用の電子メールデータオブジェクトのアーカイビング、及びシステムレジストリ管理システムに亘るシステム設定情報のアーカイビングを調整することは非常に難しいであろう。同様に、ウェブサーバ管理者は、ウェブサーバファーム（ｗｅｂ  ｓｅｒｖｅｒ  ｆａｒｍ）において２つのサーバを同期化することを望むだろう。しかし、異なる仮想マッピングのセットを有するシステム及びウェブコンテンツデータセットの各々の下で設けられているデータベース（例えば、一方のウェブサーバが、イントラネット内の保護されたファイルストアへの様々なマッピングを有する中継／開発（ｓｔａｇｉｎｇ／ｄｅｖｅｌｏｐｍｅｎｔ）サーバで、他方のウェブサーバが、パブリックにアクセス可能なファイルストアへの様々なマッピングを有するパブリック／プロダクション（ｐｕｂｌｉｃ／ｐｒｏｄｕｃｔｉｏｎ）サーバ）に対する同期化処理を構成するのは難しいであろう。大量のデータオブジェクトを含むデータオブジェクトセットに対し、かつ多様なデータオブジェクト（ファイルストア、データベース、電子メールサーバシステム、及びシステムレジストリ等）を含むデータオブジェクトセットに対するシステム管理者によるこのようなデータオブジェクトセットの手動操作は、多くの時間を浪費しかつ間違いを起こしやすい。システム管理者は、スクリプトを記述していくつかのタスクを自動的にかつジェネリックな態様で実行させようとする。しかし、このような手法は不適切であろう。例えば、システム管理者は、「全てのデータオブジェクトをアーカイブデバイスにコピー」というスクリプトを用いてデータオブジェクトセットのアーカイブを生成しようとするかもしれない。しかし、このスクリプトは、オブジェクト毎のアクセスができない電子メールシステムを含む専用データオブジェクトのアーカイビングに失敗するだろう。また、リレーショナルにリンク付けされたデータオブジェクトをアーカイビングしかつ復元するように特別に構成されたデータベースシステム内に保存されているアーカイビング作業の開始に失敗するだろう。システム管理者は、手作業またはスクリプトによって、多数の要素（データオブジェクトタイプ及びサイズ、バージョニングレコード（ｖｅｒｓｉｏｎｉｎｇ  ｒｅｃｏｒｄ）、最後に変更された日及び最後にアクセスされた日、ユーザ及びコードアクセスセキュリティデータ等）に基づいて相違するデータオブジェクトを調整する多変量同期化処理等のさらに高度な操作を実行することもできないかもしれない。
【００１０】
データオブジェクトセットにおいて管理操作を実行する代替手法は、操作の様々な特徴のさらに抽象的で特別な（ａｄ−ｈｏｃ）モデリング、及びさらに正確な結果を達成するために様々な特徴を共同使用することを含む。例えば、データオブジェクトセット内の様々なデータオブジェクトは、データオブジェクトセットのデータオブジェクトを表す階層的データオブジェクトセットのノードのように、さらに一様な態様でモデリングすることができる。その後、データオブジェクトは、実行されるべき管理操作に関連する様々な特徴に従って記載されるだろう。例えば、特定のウェブサイトのためのウェブサーバ等の特定のデータ主導型アプリケーションを含む全てのデータオブジェクト（コンテンツファイル、アプリケーションバイナリ、データベースオブジェクト、電子メールボックス、及びレジストリ設定情報）等の、様々な特徴を示すデータオブジェクトのグループが考えられる。管理操作は、データオブジェクトに高度なロジックを適用するさらに抽象的で特別なモデルとして表すことができる。例えば、当該操作は、ウェブサーバのコンテンツを含む全てのデータオブジェクトが、中継／開発ウェブサーバを含むコンピュータシステム内でサンドボックス（ｓａｎｄｂｏｘ）領域にコピーされてデバッガに記録されるべきこと、並びに、パブリック／プロダクションウェブサーバを含むコンピュータシステム内でインデックス化された高速アクセス領域にコピーされてアーカイブデバイスに記録されるべきことを特定できる。操作の抽象化モデルは、１または複数のデータオブジェクトマネージャを介して、モデリングされたデータオブジェクトセットにも適用することができる。ここで、データオブジェクトマネージャの各々は、操作を進行するために特定のタイプのデータオブジェクトと対話するように構成される。例えば、ＯＤＢＣデータオブジェクトマネージャを、操作のパラメータに基づいて、１または複数のＯＤＢＣアクセス可能なデータベース内でモデリングされたデータオブジェクトを操作するべく提供できる。また、ＩＭＡＰサーバデータオブジェクトマネージャを、１または複数のＩＭＡＰ準拠電子メールサーバ内でモデリングされたデータオブジェクトを取り扱って操作を行うために提供することができる。
【００１１】
これらの手法は、データオブジェクトセットにおける操作の実行方法に含まれ、このような手法を使用する方法の一例が図１に示されている。この方法１０は、１２で開始し、データオブジェクトセットへの少なくとも１つのデータオブジェクトマネージャの適用を行う。ここで、このようなデータオブジェクトマネージャは、操作１４を進行するためにデータオブジェクトセット上で実行されるべきタスクを含む少なくとも１つのルールをデータオブジェクトセット内の少なくとも１つのデータオブジェクトタイプに適用するように構成されている。１または複数のデータオブジェクトマネージャによってデータオブジェクトセットに当該ルールを適用することは、データオブジェクトセットを含むデータオブジェクトにおいて当該ルールによって特定されるタスクを実行することに帰結する。このような適用は、当該データオブジェクトの各々のタイプに対応するデータオブジェクトマネージャを介して様々なタイプのデータオブジェクト（データファイル、データベース関連データオブジェクト、及びレジストリエンティティ）に対して適切に実行することができる。操作を進行するために１又は複数のタスクを示すルールが、データオブジェクトマネージャを介してデータオブジェクトセットへ適用され、それによって方法１０は、当該記述されている操作をデータオブジェクトセットにおいて実行する。そして、例示の方法１０は１６で終了する。
【００１２】
データオブジェクトセットにおいて操作を実行する方法の他の例を図２に示す。この方法２０は、２２で開始し、データオブジェクトセットのデータオブジェクトを示す階層的データオブジェクトセットマップの作成２４を行う。階層的なデータオブジェクトマップは、さらに一様な情報のセットを提供するために有用であり、当該一様な情報のセットにおいて、ルールは実行可能な操作を含んでいる。例えば、階層的なデータオブジェクトセットマップは、データシステム（データベース、データテーブル、及びレコード等）、電子メールシステム（電子メールボックス及び電子メールメッセージ）及びファイルシステム（ファイルフォルダ及び個々のデータファイル）のデータオブジェクトを示すノードを含むことができる。図１の例示の方法１０の適用１４と同様に、図２の例示の方法２０は、少なくとも１つのデータオブジェクトマネージャをデータオブジェクトセットに適用し、このようなデータオブジェクトマネージャは、操作２６を進行するためにデータオブジェクトセットにおいて実行されるべきタスクを含む少なくとも１つのルールをデータオブジェクトセット内の少なくとも１つのデータオブジェクトタイプに適用するように構成されている。しかし、この例示の方法２０は、階層的なデータオブジェクトセットマップを介して、このようなデータオブジェクトマネージャをデータオブジェクトセットに適用する。例えば、階層的なデータオブジェクトセットマップは、様々なデータオブジェクトを識別する。これらのデータオブジェクトには、特定のデータ主導型アプリケーションに関するとしてコンテンツファイル、アプリケーションバイナリ、データベースオブジェクト、電子メールのメールボックスを示す専用のデータオブジェクト、及びレジストリ設定情報が含まれる。この情報は方法２０によって使用されて、様々なルール（例えば、「データ主導型アプリケーションに付随するデータオブジェクトの全てをアーカイブデバイスにコピー」）がこれらの全てのデータオブジェクトに適用することができる。従って、当該情報は、システム管理者に、さらに適切な基準に基づいたルールの特定及び手作業での操作を可能にする。少なくとも１つのデータオブジェクトマネージャ及び少なくとも１つのルールを階層的なデータオブジェクトセットマップを介してデータオブジェクトセットに適用すること（２６）で、例示の方法２０は、記載されている操作をデータオブジェクトセットにおいて実行する。そして、例示の方法２０は２８で終了する。
【００１３】
様々なデータオブジェクトマネージャを介して高いレベルの基準を広範で多様なデータオブジェクトセットに適用するために、システム管理者が従来から利用できた管理ツールを使用することは困難かもしれない。従って、データオブジェクトセット内のデータオブジェクトのモデリングと、データオブジェクトにおいて抽象的に定義された操作の適用とを、１または複数のデータオブジェクトマネージャを介して調整するシステムを考え出すことができる。図１及び図２の例示の方法等によって、データオブジェクトセットにおける操作を実行するためのシステムを考え出すことが望ましいだろう。この態様にて操作すべく構成されたシステムは、操作を進行するためにデータオブジェクトセットにおいて実行されるべき少なくとも１つのタスクを含む少なくとも１つのルール、データオブジェクトセット内の少なくとも１つのデータオブジェクトタイプに少なくとも１つのルールを適用するべく構成された少なくとも１つのデータオブジェクトマネージャ、及び少なくとも１つのルールを用いて少なくとも１つのデータオブジェクトマネージャをデータオブジェクトセットに適用するべく構成された操作調整コンポーネントを含むことができる。
【００１４】
この種の例示のシステムを図３に示す。図３において、システム３０は、ファイルシステム５６と、第１のデータベースシステム５８及び第２のデータベースシステム６０と、ウェブサーバシステム６２と、の中に保存されている様々なデータオブジェクトを含むデータオブジェクトセット５４において動作する。例示のシステム３０は、定期的に（例えば毎日）実行されるべき一連の管理タスクを含む保守操作３４をデータオブジェクトセット５４において実行してデータオブジェクトセット５４を保守するルーチンタスクを実行するように構成されている。この例示のシステムの保守操作３４は、保守操作の進行のためにデータオブジェクトセット５４において実行される様々なタスクを含む２つの保守ルールを含む。当該保守ルールは、ルーチンデータアーカイビング操作を実行するためのデータアーカイブルール３６を含む。この例示のシステム３０において、データアーカイブルール３６は、ファイルシステム５６内のデータオブジェクトをアーカイブデバイスにコピーすることを特定する第１のタスク３８、及びデータベースシステム５８、６０内のデータオブジェクトのためのデータベースアーカイビング機能の起動を特定する第２のタスク４０を含む。当該保守ルールは、ウェブサーバ機能を含むシステムの保守に関するタスクを実行するためのウェブ配置（ｗｅｂ  ｄｅｐｌｏｙｍｅｎｔ）ルール４２も含む。この例示のシステム３０において、ウェブ配置ルール４２は、ファイルシステム５６の一部内／ファイルシステム５６のウェブ部分内のデータオブジェクトとウェブサーバシステム６２との同期化を特定する第３のタスク４４、及び、例えばウェブサーバのバックエンドでのデータベースサポートのために提供できる第２のデータベースシステム６０におけるインデックス化機能の起動を特定する第４のタスク４６を含む。
【００１５】
図３の例示のシステム３０は、データアーカイブルール３６及びウェブ配置ルール４２をデータオブジェクトセット５４内の様々なデータオブジェクトタイプに適用するように構成されたデータオブジェクトマネージャのセットも含む。このデータオブジェクトマネージャは、様々なルールをファイルシステム５６内のデータオブジェクトに適用するように構成されたファイルシステムデータオブジェクトマネージャ４８、様々なルールを第１のデータベース５８及び第２のデータベース６０内のデータオブジェクトに適用するように構成されたデータベースシステムデータオブジェクトマネージャ５０、及び様々なルールをウェブサーバシステム６２内のデータオブジェクトに適用するように構成されたウェブサーバシステムデータオブジェクトマネージャ５２を含む。
【００１６】
例示のシステム３０は、データアーカイブルール３６及びウェブ配置ルール４２を伴ってデータオブジェクトマネージャ４８、５０、５２をデータオブジェクトセット５４に適用するように構成された操作調整コンポーネント３２も含む。例えば、操作調整コンポーネント３２は、第１のタスク３８（ファイルシステムアーカイビング操作を含む）を伴ってファイルシステムマネージャ４８をファイルシステム５６内のデータオブジェクトに適用する。操作調整コンポーネント３２は、データベースシステムデータオブジェクトマネージャ５０を、第２のタスク４０（データベースアーカイビング機能の起動を含む）を伴って第１のデータベースシステム５８及び第２のデータベースシステム６０のデータオブジェクトに適用し、第４のタスク（データベースインデックス化機能６０の起動を含む）を伴って第２のデータベースシステム６０のデータオブジェクトに適用する。この態様において、操作調整コンポーネントは、データオブジェクトマネージャ４８、５０、５２のルールと、保守操作３４を含むルール３６、４２と、データオブジェクトセット５４を構成するシステム５６、５８、６０、６２とを、保守操作３４を進めるために動作可能に結合している。
【００１７】
図３の例示のシステム３０は、他のシステム及び従来の手法に対する利点を提供しかつ／または他のシステム及び従来の手法に対する欠点を緩和する追加のコンポーネントを用いて拡張できる。例えば、例示のシステム３０は、階層的なデータオブジェクトセットマップ生成コンポーネント（図示せず）も含むことができる。当該階層的なデータオブジェクトセットマップ生成コンポーネントは、データオブジェクトセットと動作可能に結合され、階層的なデータオブジェクトセットマップを生成するように構成される。図２の例示の方法２０と同様に、この態様にて構成されているシステムは、階層的なデータオブジェクトセットマップを介し、ルールを伴ってデータオブジェクトマネージャをデータオブジェクトセットに適用できる。このことは、操作のパフォーマンスをより正確にまたは堅牢にすることができる。
【００１８】
当業者が、多くの実施形態において、図１及び２の例示の方法１０、２０、並びに図３の例示のシステム３０に記載されたものを含む手法を適用できることが理解されるだろう。このような多くの実施形態は、データオブジェクトセットと、データオブジェクトマネージャと、操作を記述するルールとの性質及び構成において変形例を示すことができ、このような変形例は、他の実施形態及びさらに従来的な手法に対する利点を提供しかつ／またはこれらに対する欠点を緩和するだろう。さらに、データオブジェクトセット、データオブジェクトマネージャ、及びルール（例えば、図３の例示のシステム３０内の操作調整コンポーネント３２等の操作調整コンポーネントによって達成される様なもの）の動作可能な結合は、他の変形例及びさらに従来的な手法に対する利点を提供しかつ／またはこれらに対する欠点を緩和する様々な特徴を用いて実装できる。
【００１９】
本明細書において示される手法は、多くのタイプのデータオブジェクトセットに適用できる。一例として、データオブジェクトセットは、コンピュータシステムによって利用可能かつ管理されるデータオブジェクトを含むことができる。当該データオブジェクトには、データファイル、バイナリ、デバイスコントローラ、データベースオブジェクト及びシステム設定情報等を含む。他の例において、データオブジェクトセットは、コンピュータシステムがアクセス可能なオブジェクトのサブセット内のデータオブジェクトを含むことができる。例えばこのような手法は、ウェブサーバアプリケーション等の特定のアプリケーションに関連する様々な形式のデータオブジェクトを管理すべく適用できる。データオブジェクトセットは、コンピュータシステムにおけるデータオブジェクト（ウェブサーバ処理のコードを含むバイナリ、ウェブサーバ設定データオブジェクト、いくつかのコンテンツデータファイル及びデータベース）のサブセクションのみを含んでもよい。さらに他の例において、データオブジェクトセットは、複数のコンピュータシステムに保存されるデータオブジェクトを含むことができる。例えば、図３は、例示のシステム３０を示し、システム３０において、データオブジェクトセット５４は、ファイルシステム５６、第１のデータベースシステム５８、第２のデータベースシステム６０、及びウェブサーバシステム６２によって共同で管理されるデータオブジェクトを含む。データオブジェクトセットのアーキテクチャ及び性質の多くの変形例は、本明細書内に記載の手法に従って管理できる。
【００２０】
これらの手法は、多くのタイプのデータオブジェクトにも適用できる。以下の変形例は、図４及び図５を参照することでより良く理解できる。これらの図面に示された例は、ファイルシステム５６によって管理されるデータファイル、第１のデータベースシステム５８及び第２のデータベースシステム６０によって管理されるデータベースオブジェクト、並びにウェブサーバシステム６２によって管理されるいくつかのウェブオブジェクトを含む。しかし、アクセス可能データオブジェクト７０は、少々異なって構成されたデータオブジェクトセット７２として概念化される。従って、データベースオブジェクトセット７２は、様々なセマンティックな（ｓｅｍａｎｔｉｃ）概念に従って、アクセス可能なデータオブジェクト７０を構成する。このようなデータオブジェクトセット７２に適用されるルールは、これらのセマンティクス（ｓｅｍａｎｔｉｃｓ）を特定でき、それによって、操作のさらに高度な実行を可能とする高いレベルの抽象化においてルール及びタスクを示すことができる。
【００２１】
本明細書において説明された手法が適用できるデータオブジェクトは、１または複数のファイルシステム内に保存されるデータファイル、オペレーティングシステム及びオペレーティングシステムにおいて利用可能なアプリケーションを含むバイナリ、アセンブリキャッシュ内に保存されるバージョンオブジェクト、電子メール管理システムのような様々なアプリケーションによって管理される専用のデータオブジェクト、アクセス可能な周辺ハードウェア及びソフトウェアデバイスのためのデバイスコントローラ、並びに設定ファイルまたはシステムレジストリを含むキー及び値等のシステム設定情報を含む。このようなデータオブジェクトは、様々なデータオブジェクトタイプであることが理解されるだろう。様々なデータオブジェクトタイプには、データファイル、データベーステーブルまたはデータベーステーブル内のレコード、電子メールアカウントまたは電子メールメッセージ、設定ファイルまたは設定情報のユニットを示すシステムレジストリエントリを含む。様々なデータオブジェクトタイプは、操作のルールにおける要素として使用できる（例えば、「特定のデータベースシステム内のデータベースレコードのデータオブジェクトタイプのデータオブジェクトに関して、データベースアーカイビング機能を起動」）。例えば、図４のアクセス可能データオブジェクト７０は、第１のデータオブジェクト７４、第２のデータオブジェクト７６及び第３のデータオブジェクト７８をファイルシステム５６内に含む。これらのデータオブジェクトは、データオブジェクトセット７２において及びデータオブジェクトセット７２に適用されるルールにおいて各々参照できる（例えば「第１のデータファイル７４をアーカイビングする」）。代替的または追加的に、これらのデータオブジェクト７４、７６、７８は、データオブジェクトセット７２において、並びにデータオブジェクトタイプ「データファイル」に基づいてデータオブジェクトセット７２に共同に適用されるルール（例えば「データファイル７４、７６、７８の全てをアーカイビング」）、及び／または当該オブジェクトへのアクセスのためのメカニズムに基づいてデータオブジェクトセット７２に共同に適用されるルール（例えば「システム５６によって管理されるデータオブジェクト全てをアーカイビングする」）において参照できる。
【００２２】
データオブジェクトは、コンピュータシステム及びそのコンテンツに関して検出されたかまたは取得された情報も含む。例えば、データオブジェクトは、コンピュータシステム内のセマンティック値を有する様々なファイルシステムロケーション（ウェブサーバによって公開されたコンテンツファイルシステムのルート（ｒｏｏｔ）を示すファイルシステムの位置等）を示すこれらの手法の処理中に構築されかつ含まれる（例えば、１または複数のルールの中で特定できる）。このようなセマンティック情報は、データファイルまたはレジストリエントリ等のデータオブジェクトに直接対応しないであろうが、このセマンティック情報は、コンピュータシステム及びそれらのコンテンツから取得された情報を含むデータオブジェクトとして示すことができる。そして、この取得されたデータオブジェクトは、特定された操作（例えば「ウェブサーバのコンテンツファイルシステム内にある全てのファイルをアーカイブデバイスにコピーする」等）を実行する際に１または複数のルールによって参照されてもよい。取得されたデータオブジェクトは、これらの手法において従来のデータオブジェクトタイプとして、例えば「データファイル」データオブジェクトタイプとして（このようなデータファイルがファイルシステム内に存在していなくとも）示されてもよい。代替的または追加的に、取得されたデータオブジェクトは、これらの手法において、新しいデータオブジェクトタイプ及びカスタムされたデータオブジェクトタイプとして、例えば「仮想ディレクトリ識別子」として認識されるデータオブジェクトタイプとして処理されてもよい。図４において、データオブジェクトセット７２は、第１のウェブサーバパス（ｗｅｂ  ｓｅｒｖｅｒ  ｐａｔｈ）９８を示す取得データオブジェクトを含む。これは、ウェブサーバシステム６２がパブリックに公開しているローカルファイルシステム５６内のロケーションを特定する（例えば「Ｃ：＼ｉｎｔｅｒｐｕｂ＼ｗｗｗｒｏｏｔ＼」）。この第１のウェブサーバパス９８を示す情報は、アクセス可能データオブジェクト７０から、例えばウェブサーバシステム６２に関する設定情報に基づいて取得されてもよい。さらに、第１のウェブサーバパス９８は、これに適用されるルール内で特定される取得されたデータオブジェクトとして示される。（例えば「第１のウェブサーバパス９８をアーカイブデバイスに記録」）。
【００２３】
様々なデータオブジェクトは、データオブジェクトグループとして集合させられてもよく、これらはルールによってまとめて参照できかつ当該ルールに従って同様のマナーにて操作させられる。例えば、データ主導型のアプリケーションは、データファイルの集合、バイナリの集合、データベースオブジェクトの集合及びシステム設定情報の集合等の、大量かつ多様なデータオブジェクトを含むことができる。データオブジェクトのグループが形成されて、データ主導型アプリケーションに付随するこのような全てのデータオブジェクトが示される。このグループは、データブジェクトの同種のセット（例えば、同一のデータオブジェクトタイプのデータオブジェクト、同様のタイプのデータファイル等、または同一のデータシステムによって管理されるデータオブジェクト）、またはデータオブジェクトの異種のセット（例えば、異なったタイプのデータオブジェクト、データベースレコード及びデータベースレコードに概念的に関連するデータファイルのセット等）を含むことができる。このようなグループは、データオブジェクトグループを構成する全てのデータオブジェクトに関連するルールの開発を容易にできる。従って、ルールは、概念的グループに基づいてデータオブジェクトを参照でき、これは、個別のデータオブジェクト及び／またはデータオブジェクトタイプの特定よりも構文的にさらに正確かつ堅牢である。図４において、例示のデータオブジェクトセット７２は、ウェブサイトオブジェクトグループ１００を示すデータオブジェクトを含む。ウェブサイトオブジェクトグループ１００は、ウェブサーバシステム６２がパブリックなアクセスを提供するデータオブジェクトとして概念的に関連するデータオブジェクトを含む。図４の例示のデータオブジェクトセット７２は、異種のデータオブジェクトグループも含む。ここで、第１のウェブオブジェクト９２及び第２のウェブオブジェクト９４の両方並びにデータベースオブジェクト８８を含むウェブアプリケーショングループ１０２は、データオブジェクトセット７２内の単一のデータオブジェクトとして概念化される。従って、ルールが記述（ｆｏｒｍｕｌａｔｅ）されて、当該ルールが概念的グループを含む異なったタイプのデータオブジェクトを特定できる（例えば「ウェブアプリケーションを含む様々なデータオブジェクト９２、９４、８８をアーカイビングする」）。
【００２４】
他のタイプのデータオブジェクトは、特定の概念的関係においてデータオブジェクトの役割を特徴付けるデータオブジェクトセット内に含まれる。例えば、２以上のデータオブジェクトは、概念的にグループ化されるだけではなく、マルチオブジェクトの概念において異なった役割として相互に関連付けられる。例えば、リンクデータオブジェクトは、文書データオブジェクト内に含まれる画像等のリソースからなるデータオブジェクトを有する文書を含むデータファイルに関連する。このようなリンク関係は、リンクデータオブジェクトとして示されてもよく、リンクデータオブジェクトは、当該リンク関係においてデータオブジェクトの役割に加えて様々なデータオブジェクトを特定する。そして、リンクデータは、データオブジェクトセットに適用されるルールにおいて特定される（例えば「ファイルシステム内の文書をアーカイビングし、当該ファイルシステム内の文書内に含まれるリソースを含むデータファイルもアーカイビングする」）。このようなリンクデータオブジェクトは、さらに正確かつ堅牢な記述（ｆｏｒｍｕｌａｔｉｏｎ）にてデータオブジェクトセット適用するルールの開発をさらに容易にできる。例えば、図４において、データオブジェクトセット７２は、ウェブオブジェクト仮想マッピング１０４を示すリンクデータオブジェクトを含む。ウェブオブジェクト仮想マッピング１０４は、ウェブサーバシステム６２によって保持される第１のウェブオブジェクト９２に第１のウェブサーバパス９８によって概念的にリンクしており、第１のウェブサーバパス９８によって第１のウェブオブジェクト９２はローカルにアクセス可能である。そして、ウェブオブジェクト仮想マッピング１０４は、抽象化の比較的高いレベルにおいてデータオブジェクトに適用されるルール内で特定される（例えば「ウェブアプリケーショングループ１０２（第１のウェブオブジェクト９２等）を含むデータオブジェクトの各々に関して、ウェブオブジェクト仮想マッピングにおいて特定されたデータオブジェクト（ウェブオブジェクト仮想マッピング１０４内の第１のウェブオブジェクト９２に対して特定された第１のウェブサーバパス９８等）に関するローカルファイルシステムパスをウェブサーバログ内に記録する」）。
【００２５】
図４の検討を通して、アクセス可能データ７０が、本明細書において説明された手法に対して、いくらか異なって構成されたデータオブジェクトセット７２として提供されることが明らかであろう（例えば、第１のウェブオブジェクト９２は、個別のデータオブジェクトとして、ウェブサイトオブジェクトグループ１００のコンポーネントとして、ウェブアプリケーショングループ１０２を含むデータオブジェクトとして、及びウェブオブジェクト仮想マッピング１０４のオブジェクトとして公開される）。これらの手法のいくつかの実施形態において、これらの概念的な再編成は、ジャスト・イン・タイムベースで、例えば、様々なルールを解釈して適用するために必要な場合に、コンピュータ処理される。例えば、あるルールが「ウェブアプリケーションを含むデータオブジェクト」等のさらに抽象的かまたは概念的なタイプのデータオブジェクトを特定していない限り、ルールは様々なアクセス可能なデータオブジェクトに適用でき、この場合、アクセス可能データオブジェクトは、どのデータオブジェクトがウェブアプリケーションを有しているのかを判定すべくクエリされる。他の実施形態において、概念的に再組織化されたデータオブジェクトセットは、任意のルールの評価前にアクセス可能データオブジェクトを解析して再組織化することによって取得される。１つの実施形態において、アクセス可能データオブジェクトは、階層的データオブジェクトセットマップ内に構築でき、この階層的データオブジェクトセットマップは、階層的なマップで、アクセス可能データオブジェクト、データオブジェクトグループ及びリンクデータオブジェクトの全てを示す。
【００２６】
図５は、階層的データオブジェクトマップ１０６の表現の一例を示している。この階層的データオブジェクトマップ１０６は、アクセス可能なデータオブジェクト７０のセット（取得されたデータオブジェクト９８、データオブジェクトグループ１００、１０２及びこれらに関連するリンクデータオブジェクト１０４を含む）の、統合された階層的データオブジェクトセットとしての再組織化を示しており、この統合された階層的データオブジェクトセットにルールが適用される。この手法は、さらに整然とした態様で様々なデータオブジェクトを組織化できるので、データオブジェクトセットにルールを適用すべく案出されたシステムには、当該整然と組織化された階層的データオブジェクトセットマップに対して処理ロジックを実行する方が、異なるコンピュータシステム５６、５８、６２内に保存された様々なデータオブジェクトタイプのデータオブジェクトのさらに無秩序な配置に対して、及びこれらに関連する概念的オブジェクトに対して処理ロジックを実行するよりもさらに容易である。概念的オブジェクトは、例えば、第１のウェブサーバパス９８等の取得されたデータオブジェクト、ウェブサイトオブジェクトグループ１００及びウェブアプリケーショングループ１０２等のデータオブジェクトグループ、及びウェブオブジェクト仮想マッピング１０４等のリンクデータオブジェクトである。従って、システムがこの手法に従って（図２の例示の方法を実行することによって）案出されて、データオブジェクトセットにデータオブジェクトマネージャがルールとともに適用される前に、データオブジェクトセットのデータオブジェクトを表す階層的データオブジェクトセットが生成される。
【００２７】
多くの手法が、アクセス可能データオブジェクトのセットから階層的データオブジェクトセットマップを形成するために使用される。１つの例として、階層的データオブジェクトマップは、リレーショナルデータベースとして形成できる。当該リレーショナルデータベースは、データオブジェクト、データオブジェクトグループ、及び様々なアクセス可能データオブジェクトとのリンクデータオブジェクトをマッピングし、かつ取得されたデータオブジェクトを示す追加のデータオブジェクトを含む。この例は、選択されたレコードへの迅速なアクセスを提供するＳＱＬ形成（ＳＱＬ−ｆｏｒｍｕｌａｔｅｄ）クエリ及びデータベースレコードインデックス等の様々なリレーショナルデータベースクエリ及びリレーショナルデータベース操作手法と有利に互換性がある。他の例として、階層的データオブジェクトセットマップは、ＸＳＬ変換及びＸＰａｔｈクエリ等の様々なＸＭＬクエリ及びＸＭＬ操作手法と有利に互換性を有する特定のＸＭＬスキーマに基づいているＸＭＬファイル等のような、構造化された文書として形成される。当業者は、本明細書において説明されている手法に従って、階層的データオブジェクトセットマップを形成するためのこのような多くの手法を案出することが可能であろう。
【００２８】
本明細書内で説明された手法は、操作を進めるためにデータオブジェクトセットに適用される１または複数のルールも含む。ルールの各々は、当該ルールをデータセットに適用するために実行される１または複数のタスクを特定できる。例えば、図３の例示のシステム３０は、アーカイブデバイスの様々なデータオブジェクトの画像を保存するために案出されたデータアーカイブルール３６を有する保守操作を実行すべく構成されている。データアーカイブルール３６は、ファイルシステム５６内のデータオブジェクトをアーカイブデバイスにコピーするためのタスク３８と、第１のデータベースシステム５８及び第２のデータベースシステムを含むデータオブジェクトにおいてデータベースアーカイビング機能を起動するための第２のタスクと、を含む。この態様にて様々なルールを含むタスクを特定することによって、これらの手法は、様々なデータオブジェクトの大量のセットに堅牢にかつ正確に適用される様々な抽象的な法則に従った操作の明瞭化を可能にできる。
【００２９】
このような手法が操作を進行するためにデータオブジェクトセットに適用するルールは、多様に組織化される。１つの例が図６に示される。図６において、例示の操作セット１１０は、図４及び図５においてファイルシステム５６、第１のデータベースシステム５８、第２のデータベースシステム６０及びウェブサーバシステム６２によって管理されるアクセス可能データオブジェクト７０のセット等のデータオブジェクトセットにおいて保守操作を実行することに関する保守操作ルールセット１１２を特定する。図６の例における保守操作ルールセット１１２は、２つのルールを含む。当該２つのルールは、データアーカイブルール１１４及びウェブ配置ルール１２０である。データアーカイブルール１１４は、２つのタスクを含む。当該２つのタスクは、ファイルシステム内のデータオブジェクトのアーカイブデバイスへのコピーを特定する第１のタスク１１６、およびデータベースシステム内のデータオブジェクトにおいてデータベースアーカイビング機能を起動することを特定する第２のタスク１１８である。ウェブ配置ルール１２０は、２つのタスクを含む。当該２つのタスクは、ウェブサーバシステムとファイルシステムのフォルダ／ウェブフォルダ内のデータオブジェクトとを同期化することを特定する第３のタスク、及び第２のデータベースシステム内のデータオブジェクトにおけるデータベースインデックス化機能の起動を特定する第４のタスク１２４である。
【００３０】
図６の例示の操作セット１１０における組織化のような、様々なルール内の様々なタスクの組織化は、データオブジェクトセットにおいて実行される操作の非常に直接的な記述を可能にする。しかし、ルール内で実行されるタスクはそこで完全に特定され、これらのタスクの各々を実行するための操作の特注セット（custom-built sets）として実装される（例えば、第１のタスク１１６は、アーカイブデバイスへのファイルシステムデータオブジェクトのコピー操作を実行するように構成されたコンピュータ実行可能命令のセットとして実装される）。ルール内の各々のタスクに関するコンピュータ実行可能命令のセットのアドホックな記述は、命令のセットの保守または再使用を容易には促さない。例えば、あるタイプのタスクの構造の調整（例えば、ルールを新しいタイプのファイルシステムに適用するために、新しい情報が「コピー」タスクに追加されるべき場合）は、「コピー」タスクの各々を含む命令のセットの変更を伴うことができる。
【００３１】
対照的に、図７において、操作の実行の特定において様々なルールに使用されるタスクタイプのセット１６２を含む他の例示のルールセットが示されている。図７の例示の操作セット１３０は、図４及び図５に示されたようなデータオブジェクトセットへの適用に関する保守操作ルールセット１３２を特定する。保守操作ルールセット１３２は、ファイルシステムアーカイブタスク及びデータベースアーカイブタスクを含むデータアーカイブルール１３４と、同期化タスク及びデータベースインデックス化タスクを含むウェブ配置ルール１４８と、を含む。しかし、この例示の操作セット１３０において、タスク１３６、１４２、１４８、１５６は、図６のようにコンピュータ実行可能命令のタスク毎のセットとしては実装されておらず、保守操作ルールセット１３２内に含まれたタスクタイプ１６２のアプリケーションとして実装されている。例えば、データアーカイブルール１３４は、「コピー」タスクタイプ１６４に基づいてコピータスク１３６を含む。コピータスク１３６は、特定されたデータオブジェクトを特定された宛先にコピーするようにジェネリックに構成される。データアーカイブルール１３４は、さらに、「データベース機能起動」タスクタイプ１６８に基づいて機能起動タスク１４２を含む。機能起動タスク１４２は、特定されたデータオブジェクトに関するデータベース機能を起動するようにジェネリックに構成されている。同様に、図７の保守操作ルールセット１３２内に示されているウェブ配置ルール１４８を含むタスクは、「同期化」タスクタイプ１６６に基づいて同期化タスク１５０として特定され、同期化タスク１５０は、２セットのデータオブジェクト（しかし、対象のファイルシステムの部分／ウェブ部分内のデータオブジェクトのみに対して）を同期化させるようにジェネリックに構成される。図７の保守操作ルールセット１３２内に示されているウェブ配置ルール１４８を含むタスクは、さらに、「データベース機能起動」タスクタイプ１６８に基づいてインデックス化機能タスク１５６として特定されるが、タスクタイプ１６８は、このタスクのために、様々データオブジェクトに対して（しかし、第２のデータベースシステム内に保存されたデータオブジェクトに対してのみ）データベース機能を起動する。保守操作ルールセット１３２に使用可能なタスクタイプ１６２に基づいて様々なタスクを特定することによって、例示の操作セット１３０は、さらに容易に様々なコンピュータシステムに提供される。例えば、ルールは、「コピー」タスクタイプ１６４等の、ファイルシステムとジェネリックに対話するタスクタイプ１６２を含む操作命令を更新することによって、新しいファイルシステムに適用される。
【００３２】
この態様にて案出されたルールは、データオブジェクトセットにおける多くのタイプの操作をサポートすべく適用される。例えば、コンピュータシステムの管理は、データオブジェクトセットの解析操作（データダンプ等）、様々なタイプのアーカイブデバイスに関与するデータアーカイビング操作及びデータ復元操作、サーバ配置操作（コンテンツデータオブジェクトセット、様々なウェブアプリケーション及びウェブサーバ設定情報のセットを有するウェブサーバの配置等）、一方向または双方向同期化操作（１つのデータオブジェクトセットの他方へのミラーリング、様々な基準に基づいた相違データオブジェクトセットの結合等）、保守操作（データオブジェクトセットを保守するために定期的に実行されるタスクのセット等）、並びに移行（ｍｉｇｒａｔｉｏｎ）操作（新しいアプリケーションのバージョンへの移行をサポートするためのデータオブジェクトセットの再設定、例えば、ウェブサーバソフトウェアの１つのバージョンから当該ウェブサーバソフトウェアの新しいバージョンへの移行）を含むことができる。多くのこのような操作は、データオブジェクトセットのために提供でき、操作を進行するために多くのタスクを含む多くのルールを含むことができる。
【００３３】
タスクタイプがジェネリックに示されかつ再利用されるのと同様に、ルールはジェネリックに示されかつ再利用されるので、特定のルールは、様々なルール内に含まれる。操作の各々を実行するための一連のアドホックなルールの提供に代えて、操作ルールセットが一連のジェネリックなルールタイプを定義してもよく、操作は、特定のコンテキスト内のルールタイプを起動することによって特定されてもよい。例えば、いくつかの動作がデータオブジェクトセットのアーカイビングの実行に基づいている場合、ルールタイプはデータオブジェクトセット全体のデータオブジェクトアーカイビングを実行するために生成でき、操作の各々が当該データオブジェクトアーカイビングを実行するためにデータオブジェクトアーカイブルールタイプを起動してもよい。この組織化は、ルールタイプの管理を容易にできる。例えば、データオブジェクトセットのアーカイビングに関するルールの調整（例えば、使用されるタスク及びタスクタイプ）は、データオブジェクトセットアーカイブルールタイプに適用でき、データオブジェクトセットアーカイブルールタイプはデータオブジェクトセットアーカイブルールを起動する全ての操作に対して有効になるだろう。
【００３４】
図８は、ジェネリックなルールタイプに従った操作の形成の一例を示している。上述の例のように、例示の操作セット１７０は、図４及び図５に示された様なデータオブジェクトセットへの適用のために保守操作ルールセット１８６を特定し、図７の例のように、ルールはジェネリックなタスクタイプ２１４に関して特定される。しかし、サーバ配置操作ルールセット１７２も含まれる。サーバ配置操作ルールセット１７２は、現在のウェブサーバのコンテンツに基づいた新しいウェブサーバの配置のために、ソースウェブサーバシステムと宛先ウェブサーバシステムとの同期化等によって提供される。保守操作ルールセット１８６と同様に、サーバ配置操作ルールセット１７２も、（ソース）ウェブサーバシステムのコンテンツを更新するためにウェブ配置ルール１７４を起動し、その後、（ソース）ウェブサーバシステムと新しい（宛先）ウェブサーバシステムとの同期化をするサーバ配置ルールを起動する。さらに、図８の例示の操作セット１７０において、操作ルールセット１７２、１８６を含むルールがジェネリックなルールタイプ１９６を起動し、当該操作ルールは、ジェネリックなタスクタイプ２１４に基づいて様々なタスクのセットを起動するように構成されている。例えば、ウェブ配置ルールタイプ２００は、ウェブサーバのコンテンツを更新するためのジェネリックなルールとして示され、ウェブサーバとファイルストアの特定された部分とを同期化させるタスクを（同期化タスクルールタイプ２０２を介して）含み、データベースインデックス化機能２０４を起動し、ウェブサーバによって使用されていてデータベースに保存されているデータオブジェクトに関するデータベースシステム内のインデックスを更新する。その後、ウェブ配置ルールタイプ２００は、サーバ配置操作ルールセット１７２及び保守操作ルールセット１８６の両方において使用される。さらに、サーバ配置操作ルールセット１７２は、ソースウェブサーバ１８２と宛サーバウェブ１８４とを同期化させるためにサーバ配置ルール１８０を使用し、サーバ配置ルール１８０は、特定されたソースサーバ２１０及び宛先サーバ２１２において（ジェネリックなタスクタイプ２１４において定義された同期化タスクタイプに基づいて）同期化タスク２０８を起動するサーバ配置ルールタイプ２０６に基づいている。ジェネリックルールタイプ１９６に基づく操作ルールセット１７２、１８６の特定によって、図８の例示の操作セット１７０は、このような操作ルールセット内に含まれるルールセットの保守及び再利用を容易にする。
【００３５】
図６、図７及び図８に示されたルールの例示の組織は、他の方法で変更される。１つの例として、ルールが様々な手法に従ってデータオブジェクトセット内のオブジェクトを特定できるのは、図４に例示したシステムを参照して説明した通りである。１つの例として、ルールは、データオブジェクトセット内の個別のデータオブジェクトを特定できる（例えば「特定の情報をファイルシステム５６内の第３のデータファイル７８に書き込む」）。他の例として、ルールは、データオブジェクトタイプ（例えば「『ファイル』タイプのデータオブジェクト全てをアーカイビングする」これには第１のデータファイル７４、第２のデータファイル及び第３のデータファイルが含まれている。）、名前（例えば「『Ｐｒｏｊｅｃｔ  ７』と名付けられたデータオブジェクトの全てをアーカイビングする」）、またはデータオブジェクトを管理するコンピュータシステム（例えば「ウェブサーバシステム６２によって管理されるデータオブジェクトの全てをアーカイビングする」これには、第１のウェブオブジェクト９２、第２のウェブオブジェクト９４及び第３のウェブオブジェクト９６が含まれる）等の共通の特徴に基づいてデータオブジェクトのセットを特定する。さらに他の例として、ルールは、データオブジェクトのグループを示すデータオブジェクトグループを特定できる（例えば「ウェブアプリケーショングループ１０２をアーカイビングする」これには、第１のウェブオブジェクト９２、第２のウェブオブジェクト９４及び第５のデータベースオブジェクト８８が含まれる）。さらに他の例として、ルールは、リンクデータオブジェクト内で参照される１または複数のデータオブジェクトを特定できる（例えば「ウェブオブジェクト仮想マッピングデータオブジェクト内で特定される全てのマッピングをシステムログに書き込む」これには、ウェブオブジェクト仮想マッピング１０４内で認識される第１のウェブサーバパス９８が含まれる）。さらに他の例において、ルールセットは、ＸＰａｔｈ、ＳＱＬまたは正規表現構文（ｒｅｇｕｌａｒ  ｅｘｐｒｅｓｓｉｏｎ  ｓｙｎｔａｘ）等の高度な情報クエリシステムを包含してもよく、ルールは、構造化クエリに従って１または複数のデータオブジェクトを特定できる（例えば「第２のデータベースシステムへの以下のクエリによって返答されたデータオブジェクトをアーカイビング：ｓｅｌｅｃｔ＊  ｆｒｏｍ  ［Ｔａｂｌｅ］  ｗｈｅｒｅ  ［Ｐｒｏｊｅｃｔ＿Ｎａｍｅ］＝‘Ｐｒｏｊｅｃｔ  ７’．．．」）。本技術分野の当業者は、本明細書に記載された手法に従って、様々なルールが適用されるべきデータオブジェクトを識別する多くの手法を案出できる。
【００３６】
図９は、操作におけるルールの適用のためにデータオブジェクトを識別する態様におけるさらに実質的な変形例を示す。ルールセットは、図２の例示の方法２０内の２４において生成されかつ図５の１０６として示されているような階層的データオブジェクトセットマップの生成を含む。１つの実施形態において、操作及びルールセットは、ルールが適用されるべき階層的データオブジェクトセットマップの作成に関する基準を提供できる。例えば、操作及びルールセットは、階層的データオブジェクトセット内に示されるデータオブジェクトタイプを定義でき、ルールセットにおいて特定されるルールの適用のために、生成において、階層的データオブジェクトセットマップへのデータオブジェクトセットのマッピングを特定できる。図９に示された例は、特別な態様にて生成される階層的データオブジェクトマップを介して例示のデータオブジェクトセット７０等をデータオブジェクトセットへ適用するための例示の操作及びルールセット２２０を含む。従って、この例示の操作及びルールセット２２０は、階層的データオブジェクトセット定義２２２を特定し、階層的データオブジェクトセット定義２２２は階層的なデータオブジェクトセットマップの生成態様を記述する。階層的データオブジェクトセット定義２２２は、階層的データオブジェクトセットマップ内でデータファイル２２６、データベースオブジェクト２２８、レジストリキー２３０及びウェブオブジェクト２３２等として示されるデータオブジェクトタイプ２２４のセットを特定する。階層的データオブジェクトセット定義２２２は、階層的データオブジェクトセットマップ内で取得データ２３４（例えば、図４に示される第１のウェブサーバパス９８）、データオブジェクトグループ２３６（例えば、図４に示されたウェブアプリケーショングループ１０２）、及びリンクデータオブジェクト２３８（例えば、図４に示されたウェブオブジェクト仮想マッピング１０４）等として示すことができる概念的データオブジェクトも特定する。
【００３７】
図９にさらに示されているように、階層的なデータオブジェクトセット定義２２２は、１または複数のデータオブジェクトマッピング２４０も特定できる。データオブジェクトマッピング２４０は、階層的なデータオブジェクトセットマップ内のデータオブジェクトを示し、データオブジェクトとアクセス可能データオブジェクトとを関連付ける。例えば、いくつかのアクセス可能データオブジェクトは、階層的データオブジェクトセットマップ内で直接に認識できる。例えば、アクセス可能データオブジェクト７０を階層的データオブジェクトセット定義２２２へ適用することによって生成された階層的データオブジェクトセットマップにおいて、第１のデータファイル７４、第２のデータファイル７６、及び第３のデータファイル７８は、「データファイル」タイプのデータオブジェクト２４２、２４４、２４６としてそれぞれ示される。データオブジェクトマッピング２４０は、データオブジェクトが異なったデータタイプとして階層的データオブジェクセットマップ内に表されるべきことを示すことができる。例えば、第５のデータベースオブジェクト８８は、データベースオブジェクト２５０及びウェブオブジェクト２５４として階層的データオブジェクトセットマップ内に表されるべきである（上述の例において説明されたように、特定のデータ主導型ウェブアプリケーション内における第５のデータベースオブジェクト８８の関与の故である）。階層的データオブジェクトセット定義２２２は、データオブジェクトのセットが、階層的データオブジェクトセットマップにおいて、特定のデータオブジェクトタイプとして表されることも示す。例えば、当該２つのマッピング２４８、２５０に従って、第１のデータベースシステム５８及び第２のデータベースシステム６０（の各々）内のデータベースオブジェクトを含む全てのデータオブジェクトが、階層的データオブジェクトセットマップの中で「データベースオブジェクト」タイプのデータオブジェクトとして表されるべきである。階層的データオブジェクトセット定義２２２内のデータオブジェクトマッピング２４０は、概念的データオブジェクトの基準も特定する。例えば、データオブジェクトマッピング２４０は、ウェブアプリケーショングループ２５６に関するデータオブジェクトグループの基準を特定し、第１のウェブオブジェクト９２、第２のウェブオブジェクト９４及び第５のデータベースオブジェクト８８がウェブアプリケーショングループ内でマッピング２５８、２６０、２６２されるべきことも特定される。従って、操作及びルールセットをデータオブジェクトセットへ適用するように構成されたコンピュータシステムは、最初に同一のルールセットによって階層的データオブジェクトセットマップを生成するように指示され、本明細書に記載された階層的データオブジェクトセットマップを介して当該ルールをデータオブジェクトセットに適用する。
【００３８】
これらの手法の実装の間で変化できる特定されるルールセットの他の特徴は、ルールが適用される順序に関連する。１つの実施形態において、操作を含むルールは、全てのルールが完了するまでシリアル（順次的）に適用でき、他の実施形態においては、ルールは、パラレル（並列）に起動されかつ完了するまで適用させられる。第３の実施形態において、ルールは階層的な順序にて適用できる。この実施形態の１つの例として、第１のルールによって扱われるデータオブジェクトは、解決させられたと考えられ、後続の特定されたルールに従った処理から隠蔽できる。この構成は、様々なルールが特定されていくつかのタイプのデータオブジェクトにおいてアーカイビング操作が実行されるアーカイビング操作等において有用である。この構成において、あるルールによって完全にアーカイビングされたデータオブジェクトは、後続のルールの適用から除かれる。この実施形態の他の例において、ルールは、特定種類のデータオブジェクトにのみ明示的に適用できる。例えば、図７のデータアーカイブルール１３４は、データベース内及びファイルシステム内のデータオブジェクトにのみ関連付けられ、システム設定情報を含むデータオブジェクトには関連付けられないであろう。従って、この態様にて認識されたルールは、適切なデータオブジェクトに選択的に適用でき、それによって、適当でないデータオブジェクトに対してルールを適用する試行における非効率性を減少させることができる。さらに他の例として、ルールは、いくつかのデータオブジェクトが他のルールによって処理されることから除外されることを示すことができ、これは、特定のデータオブジェクトへの当該他のルールの適用を除外すること等によって示すことができる。操作実行におけるルールの適用の順序における多くの変形例は、本明細書に記載された手法に基づいて当業者によって案出される。
【００３９】
本明細書内で説明されかつ図６、図７及び図８において示されたルールセットは、様々に構成することができる。１つの実施形態において、操作、ルール及びタスクは部分的または全体的にコンパイルされた形式、例えば、操作、ルール及びタスクを実行するためのコンピュータ実行可能命令を含む１または複数のコンパイル済みバイナリ（マシンコードまたは中間言語コード）形式で特定することができる。この実施形態は、コンピュータによる適切な実行という利点を示すことができるが、システム管理者が１または複数のソースコードからバイナリを再コンパイルすること無しに解釈または調整することが困難である。代替の実施形態において、操作、ルール及びタスクは、ＸＭＬデータファイル等の人間が可読なテキストとして構成され、これらはデータオブジェクトセットへルールを適用する間に（例えば、図３の例示のシステム３０内の操作調整コンポーネント３２等の操作調整コンポーネントによって）構文解析される。人間が可読なテキストとしてのルールの構成は、操作、ルール及びタスクの論理的操作の容易な認知という利点、並びに容易化されたルールの保守という利点を示すことができる。例えば、システム管理者は、ＸＭＬベースのルールセットを読むことによって操作において実行されるメソッドを理解でき、標準テキストエディタによって新しいルールを追加するかまたは現存のルールを調整することによって更新することができる。それによって包含されたタスクは、外部からコンパイルされたコードを参照することによって実行することができる（例えば「同期化」タスクは、オペレーティングシステムもしくはアプリケーション、または同期化を実行するためのコンパイルされた命令を含むダイナミックリンクライブラリという名前等のコードモジュールによって提供される同期化機能を参照できる）。代替的または追加的に、人間が可読なテキストは、タスクの実行においてコンピュータシステムによって解釈することができる人間が可読なスクリプト、例えば、オペレーティングシステムが解釈して特定のタスクを実行するだろうバッチスクリプトを含むことができる。人間及びコンピュータ用の、様々な操作、ルール及びタスクを特定する命令の構成における多くの変形例は、本明細書に記載された手法に従って当業者によって案出することができる。
【００４０】
操作及びルールはデータオブジェクトセットに適用でき（場合によって階層的データオブジェクトマップを介して）、この適用は、図３の例示のシステム３０内の操作調整コンポーネント３２等の操作調整コンポーネントによって実行することができる。しかし、このようなコンポーネントが、様々なルールをデータオブジェクトに、これらのデータオブジェクトを管理するシステムによって提供される様々なインタフェースを介して適用するのは困難であろう。例えば、様々なデータオブジェクトをコピーすることを特定するルールは、ファイルシステム５６、第１のデータベース５８及び第２のデータベース６０、並びにウェブサーバシステム６２からのいくつかのオブジェクトをコピーすることを含むだろう。１または複数のデータオブジェクトマネージャを構成するのは有利である。ここで、データオブジェクトマネージャの各々は、特定のデータオブジェクトタイプにルールを適用する様に構成される。例えば、ファイルシステムデータオブジェクトマネージャ４８は、ルールをデータファイルに、例えばデータファイルへのアクセスを管理するファイルシステム５６によって提供されるインタフェースを介して適用されるように構成でき、データベースシステムデータオブジェクトマネージャ５０は、ルールをデータオブジェクトに、例えば様々なデータベースシステム５８、６０によって提供されたインタフェースを介して適用するように構成することができる。従って、操作調整コンポーネント３２は、データオブジェクトマネージャ４８、５０、５２に依存して、データオブジェクトタイプの各々に対して適切にルールを解釈し、データオブジェクトが公開されるアクセスメカニズム及びコンピュータシステムに関係なく操作及びルールを処理できる。データマネージャオブジェクト４８、５０、５２は、データオブジェクトタイプが占有している特化したコンテキストにおける様々なデータオブジェクト間の関係に内々に関与できる。例えば、ファイルシステムデータオブジェクトマネージャ４８は、２つのデータファイルが関連付けられており、かつ１つのユニットとして操作されるべき情報にアクセス可能であるので、このようなデータオブジェクトタイプのデータオブジェクトと対話して、このようなコンテキスト上の関係情報に従って当該データオブジェクトにルールを適用可能である。
【００４１】
データオブジェクトマネージャは、ルール及びタスクをデータオブジェクトセット内の特定のデータオブジェクトタイプに適用するように様々な態様で構成でき、このような変形例は、他の構成及び／または従来の手法に対する利点を示し、その短所を軽減できる。１つの実施形態において、データオブジェクトタイプは、複数の特化レベル（levels of specialization）を含むことができ、データオブジェクトマネージャは、データオブジェクトタイプ間の様々な特化度（degrees of specializing）を扱うために階層状に組織化することができる。図１０は、データオブジェクトタイプ特化度の様々なレベルを通してデータオブジェクトタイプを管理すべく構成されたデータオブジェクトマネージャの階層構成の一例を示している。図１０の例示のデータオブジェクトマネージャセット２７０において、操作調整コンポーネント３２は、操作のルール（印刷デバイスにおける様々なデータオブジェクトのレンダリングを命令する「印刷」タスク等）を伴ってデータオブジェクトマネージャ２７２、２７４、２７６のセットを複数のデータオブジェクト２９０、２９２、２９４、２９６に適用しようとする。操作調整コンポーネント３２は、これら４つのデータオブジェクトが特定のデータファイルオブジェクトタイプであることを判定し、「印刷」タスクを伴うファイルシステムデータオブジェクトマネージャ２７２をデータオブジェクト２９０、２９２、２９４、２９６に適用する。ファイルシステムデータオブジェクトマネージャ２７２は、２つのさらなる特別なデータオブジェクトマネージャと動作可能に結合される。当該２つのデータオブジェクトマネージャは、ルールをバイナリデータオブジェクトに適用する様に構成されたファイルシステムバイナリデータオブジェクトマネージャ２７８、およびルールをユーザデータオブジェクトに適用するように構成されたファイルシステムユーザデータオブジェクトマネージャ２８０である。第１のデータファイル２９０は、バイナリデータファイルであると判定され、ファイルシステムデータオブジェクトマネージャ２７２は、第１のデータファイル２９０をファイルシステムバイナリデータオブジェクトマネージャ２７８に適用し、ファイルシステムバイナリデータオブジェクトマネージャ２７８は、当該バイナリファイルに「印刷」タスクを適用する（例えば、ファイルマニフェスト（ｆｉｌｅ  ｍａｎｉｆｅｓｔ）から導出されるいくつかのメタデータを表示することによって、または印刷不可能なバイナリデータオブジェクトに関して印刷操作を全てスキップすることによって）。他のデータオブジェクト２９２、２９４、２９６は、ユーザオブジェクトと判定され、ファイルシステムユーザデータオブジェクトマネージャ２８０に提供される。同様の態様にて、ファイルシステムユーザデータオブジェクトマネージャ２８０は、第２のユーザデータファイル２９２が画像を表すことを判定し、第２のユーザデータファイル２９２にファイルシステムユーザイメージデータオブジェクトマネージャ２８２を提供し、ファイルシステムユーザイメージデータオブジェクトマネージャ２８２は、表された画像に「印刷」タスクを適用可能である。残りのユーザデータファイル２９４、２９��は、テキストを含むと判定され、ファイルシステムユーザテキストデータオブジェクトマネージャ２８４に提供される。このデータオブジェクトマネージャは、第３のユーザテキストデータファイル２９４をＸＭＬテキストデータを含むとして認識する。第３のユーザテキストデータファイル２９４は、ユーザＸＭＬテキストデータに「印刷」タスクを適用可能なファイルシステムユーザＸＭＬテキストデータオブジェクトマネージャ２８６に提供される。また、このデータオブジェクトマネージャは、第４のユーザテキストデータファイル２９６を非ＸＭＬテキストデータを含むとして認識する。第４のユーザテキストデータファイル２９６は、ユーザ非ＸＭＬテキストデータに「印刷」タスクを適用可能なファイルシステムユーザ非ＸＭＬテキストデータオブジェクトマネージャ２８８に提供される。この態様にて、複数のデータオブジェクトマネージャが、様々な特化したデータオブジェクトタイプにルール及びタスクを適用するように構成できかつ相互利用可能に結合することができる。
【００４２】
様々な態様で実装することができるデータオブジェクトマネージャの第２の特徴は、非標準データオブジェクトタイプへのルールの適用に関する。この特徴は、ファイルシステム内に保存された認識不能なタイプのデータファイル等の未知のデータオブジェクトにルールが適用される場所に関連する。この特徴は、階層的データオブジェクトセットマップが、データオブジェクトマネージャが管理するようには特に構成されていないタイプのデータオブジェクト、例えば新しいタイプのリンクデータオブジェクト、を提供する場所にも関連する。これらの状況において、当該非標準データオブジェクトタイプのオブジェクトを処理するように構成されているデータオブジェクトマネージャの存在無しにルールをデータオブジェクトに適用するのは困難である。いくつかの手法がこの様な状況を扱うべく実装することができる。１つの実施形態において、認識不能データオブジェクトは、単にルール処理及びデータオブジェクト管理から除外することができるか、警告または例外を提起できるか、またはシステム管理者からの入力を通知または要求できる。他の実施形態において、あるデータオブジェクトマネージャが、ジェネリックなデータオブジェクト、非標準データオブジェクトまたは認識不能データオブジェクトを含む全てのタイプのデータオブジェクトに対するデフォルトデータオブジェクトマネージャとして指定することができる。例えば、デフォルトデータオブジェクトマネージャは、ビット単位またはフィールド単位コピーコンストラクタを適用することによって「コピー」ルールを未知のデータオブジェクトに適用しようとする。第３の実施形態において、コンピュータシステムのコンポーネント（操作調整コンポーネント等）は、認識不能データオブジェクトを解析して、ヒューリスティクス（統計解析等）を適用することによってまたはリフレクションＡＰＩによる当該未知のデータオブジェクトタイプの解析を要求することによって、そのデータオブジェクトタイプの識別を試行するように構成することができる。当該コンポーネントは、解析が成功した場合にデータオブジェクトを適切なデータオブジェクトマネージャに提供できるか、またはデータオブジェクト解析が失敗した場合に他の手法を使用できる。
【００４３】
この特徴の変形例を含む第４の実施形態において、コンピュータシステムは、非標準またはカスタムデータオブジェクトタイプを取り扱う様に構成されたカスタマイズされたデータオブジェクトマネージャを許容するように構成された「プラグイン」アーキテクチャとして案出することができる。このアーキテクチャは、図３の例示のシステム４０等の技術を実装するシステム内で達成することができる。このことは、少なくとも１つのデータマネージャに、データオブジェクトセットへのルールの適用に関与する少なくとも１つのカスタムデータオブジェクトマネージャを含めるように構成されたカスタムデータオブジェクトマネージャインタフェースコンポーネントを組み込むことによって達成することができる。例えば、図１０の例示のデータオブジェクトマネージャセット２７０に関して、操作調整コンポーネント３２は、ファイルシステム内にあってオーディオファイルを含むユーザデータファイルに「印刷」タスクを適用するように構成されたデータオブジェクトマネージャを発見することはできないであろう。しかし、システム管理者は、様々なルール及びタスクをオーディオファイルに適用するように構成されたカスタムデータオブジェクトマネージャを提供するだろう（例えば、操作調整コンポーネント３２を有する動作可能構成等によって、コンピュータシステムに組み込むことができる）。従って、カスタムデータオブジェクトマネージャは、オーディオファイル内に保存されている様々なメタデータ部分（オーディオ録音の録音日、長さ、サンプリングレート等）を印刷することによって「印刷」タスクをユーザのオーディオデータファイルに適用可能である。当業者は、本明細書に記載された手法に従って、このような非標準データオブジェクトタイプを取り扱う多くの手法を案出可能である。新しいデータオブジェクトマネージャを含むためのプラグインアーキテクチャは、ルールを新しいタイプのコンピュータシステムに適用することにも有利である。１つの例として、データファイルが新しいすなわち未知のファイルシステム内に保存されている場合、ルールセットは、ファイルシステムデータオブジェクトマネージャを介しては適用不可能である。このような操作不能性は、当該新しいファイルシステムを介してファイルにアクセス可能であるカスタムデータオブジェクトマネージャを、システムに組み込むことによって解決することができる。他の例において、データオブジェクトマネージャは、データオブジェクトセットへのルールのさらに正確で高度な適用を提供するカスタムデータオブジェクトマネージャによって置換または上書きすることができる。例えば、カスタムデータオブジェクトマネージャは、ファイルストア内の、システム管理者によってのみ変更可能とされているセキュリティファイル（システムパスワードハッシュファイル等）等の、特定のデータファイルのセットへのルールの適用を拒否できる。それによって、当該カスタムデータオブジェクトマネージャは、コンピュータシステムのセキュリティポリシーに抵触する一般目的のファイルストアデータオブジェクトマネージャによる当該ファイルの変更を前もって回避する。
【００４４】
上述の例では、データオブジェクトセットのデータオブジェクトへの、操作を含む１または複数のルールを伴ったデータオブジェクトマネージャの適用を説明した。しかし、当該適用の処理フローが多くの変形例において実装でき、これらの手法を実装するシステム内に含まれる操作調整コンポーネントは、様々な態様において、データオブジェクトセットに、ルールを伴うデータオブジェクトマネージャを適用するように構成することができる。このようないくつかの変形例は、他の変形例及び従来の手法に対する利点を示しかつ／またはその欠点を軽減するだろう。
【００４５】
１つのこのような変更可能な特徴は、対比的に図１及び図２に示されている。図１においては、データオブジェクトマネージャが、操作１４を進行させるためにルールとともにデータオブジェクトセットに適用され、図２において、階層的データオブジェクトセットマップがデータオブジェクトセット２４に関して最初に生成され、その後、データオブジェクトマネージャが当該データオブジェクトセットのルールとともに階層的データオブジェクトマップ２６を介して適用される。各々の実施形態は、相対的な利点を有することができる。例えば、図１の例示の方法１０は、早急にデータオブジェクトの処理を開始するだろうし、図２の例示の方法２０は、データオブジェクトセットにおける操作のさらに堅牢な実行を許容できるいくつかの事前処理を含む。
【００４６】
操作実行と、データオブジェクトセットマネージャと、操作を含むルールと、データオブジェクトセット内のデータオブジェクトと、の調整の他の変更可能な特徴は、様々なシーケンスでこれらの要素を一緒に処理することに関連している。１つの例として、第１のデータオブジェクトマネージャは、データオブジェクトセット内のデータオブジェクトの各々に第１のルールを適用でき、次に、当該データオブジェクトの各々に第２のルールを適用できる。そして、第１のデータオブジェクトマネージャが完了すると、第２のデータオブジェクトマネージャが同一の処理シーケンスで起動することができる。第２の例として、操作における第１のルールが、データオブジェクトマネージャの各々によってデータオブジェクトセットにおいて実行でき、その後に、データオブジェクトマネージャの各々によって第２のルールが当該データオブジェクトセット内のデータオブジェクトの各々に適用することができる。第３の例として、ルールの各々による処理のために、第１のデータオブジェクトがデータオブジェクトマネージャの各々に提供でき、その後に、第２のデータオブジェクトがデータオブジェクトマネージャの各々に提供することができる。当業者は、本明細書に記載された手法を適用しつつ、データオブジェクト、データオブジェクトマネージャ及びルールによって表される三次元的処理空間を包含する他の多くの方法を案出できる。
【００４７】
操作実行と、データオブジェクトセットマネージャと、操作を含むルールと、データオブジェクトセット内のデータオブジェクトと、の調整の第３の変更可能な特徴は、データオブジェクトマネージャの各々に提供されるデータオブジェクトのタイプに関連している。上述したように、データオブジェクトマネージャの各々は、データオブジェクトセットを含む様々なデータオブジェクトの中の少なくとも１つのデータオブジェクトタイプを処理するように構成されている。さらに、データオブジェクトマネージャが、その各々が処理可能なデータオブジェクトタイプを明示する場合、コンピュータシステムは、この情報を使用してデータオブジェクトマネージャに提供されるデータオブジェクトをフィルタリングできる。従って、コンピュータシステム（操作調整コンポーネント等）は、データオブジェクトを、当該データオブジェクトタイプを処理するように構成されたデータオブジェクトマネージャのみに提供できる。従って、当該システムは、データオブジェクトマネージャによってデータオブジェクトの処理を効率化できるので、ルール処理システム内の効率が向上する。
【００４８】
図１１及び図１２は、オペレーティングシステム（操作調整コンポーネント等）及びデータオブジェクトセットマネージャによって行われる動作に関連する操作の実行の調整の第４の変更可能な特徴を示している。図１１は、例示のシステム３００を示している。例示のシステム３００において、操作調整コンポーネント３２は、ルールを伴ってデータオブジェクトマネージャを対応するデータオブジェクト３０４に適用する。例示のシステム３００において、データオブジェクトマネージャ３０２は、ルールをデータオブジェクトに適用するための動作を定義した上で、データオブジェクトにおける動作の実行を進行するように構成される。例えば、データオブジェクトマネージャ３０２は、「アーカイブ」タスクをデータオブジェクト３０４に適用するように構成でき、データオブジェクトマネージャ３０２が取扱可能なデータオブジェクト３０４を確認した上で、データオブジェクトマネージャ３０２がデータオブジェクト３０４をアーカイブデバイス３０６に送信する。図１２は、他の例示のシステム３１０を含む異なった実施形態を示している。例示のシステム３１０も、データオブジェクトマネージャ３０２を、対応するデータオブジェクト３０４にルールを伴って提供するように構成された操作調整コンポーネント３２を含む。しかし、この例示のシステム３１０において、データオブジェクトマネージャ３０２は、データオブジェクト３０４には作用せず、ルールを特定のデータオブジェクト３０４に適用するための適切な動作をレポートする。レポートされた動作は、タスクプランにコンパイルでき、当該タスクプランは、データオブジェクト３０４をアーカイビングするためにデータオブジェクトマネージャ３０２によって推奨される様々な動作を含むアーカイブタスクプラン３１２等である。タスクプランは、操作調整コンポーネント３２に提供でき、１つの実施形態において、操作調整コンポーネント３２が、即座にかまたはプロセッサのアイドリング中に推奨されたオプションを実行できる。代替的に、操作調整コンポーネント３２は、検討、変更及び／または承認のために、管理者等のユーザにタスクプランを提供し、そこに示された動作を実行することによって（変更されたまたは変更無しの態様で）タスクプランの承認に応答する。当業者は、操作のルールをデータオブジェクトに適用する他の方法を、本明細書の手法に従って案出可能であるだろう。
【００４９】
操作実行の調整の第５の変更可能な特徴は、一のデータオブジェクトセットを１または複数の他のデータオブジェクトセットと同期化する等の、複数のデータオブジェクトに関与する操作に関連する。１つの実施形態において、このような操作は、例えば、データオブジェクトセットを順番に解析し、当該データオブジェクトセットの解析の比較に基づいてルールを満足するための動作を判定することによって、一のデータオブジェクトセットへのルールの適用を、他のオブジェクトセットへ当該ルールを適用する前に行うことを含むことができる。他の実施形態において、異なったプロセッサによって、マルチコアプロセッサの異なったコアによって、またはマルチスレッド解析処理における実行の脈絡（ｔｈｒｅａｄ  ｏｆ  ｅｘｅｃｕｔｉｏｎ）によってデータオブジェクトセットのいくつかまたは全てを並列に解析することができる。データオブジェクトセット解析の結果を比較することによって、ルールを満足する動作を再度判定することができる。第３の実施形態において、ルールは、複数のデータオブジェクトセットを直接比較することによって適用することができる。例えば、同期化オプションは、複数のデータオブジェクトセットを一緒にスキャンすることによって、例えば、ファイルシステムカタログのアイテム毎の比較を実行してデータオブジェクトセットに関連する１つの解析を生成することによって実行され、当該１つの解析はルールを満足する動作を判定するために使用することができる。当業者は、本明細書に記載された手法に従って、複数のデータセットの解析の構成の多くの他の方法を案出するだろう。
【００５０】
本明細書で説明された手法は、本明細書で説明された統合ユーザプロファイルを生成するように構成されたプロセッサ実行可能命令を含むコンピュータ可読媒体として実施されてもよい。これらの方法において考えられる例示のコンピュータ可読媒体が図１３に示されている。図１３において、実施形態３２０は、コンピュータ可読媒体３２２（ＣＤ−Ｒ、ＤＶＤ−Ｒ、または円盤状のハードディスクドライブ等）を含み、コンピュータ可読媒体３２２において、コンピュータ可読データ３２４がエンコーディングされる。このコンピュータ可読データ３２４は、上述の原理に従って操作するように構成されたコンピュータ命令３２６のセットを含む。このような実施形態１つにおいて、プロセッサ実行可能命令３２６は、図１のフロー図に示された例示の方法のような、データオブジェクトセットにおける操作方法３２８を実行するように構成することができる。このような実施形態の他の１つにおいて、プロセッサ実行可能命令３２６は、図３のコンポーネントブロック図に示されたシステムのような、データオブジェクトセットにおける操作を実行するシステムを実装するように構成することができる。本明細書に示された手法に従って操作をするように構成されたコンピュータ可読媒体の多くは、当業者によって案出されるだろう。
【００５１】
本発明は、特に構造的特徴及び／または方法的動作において説明されてきたが、添付の特許請求の範囲によって画定された本発明は、上述の特定の特徴または動作に必ずしも限定されないと理解されるべきである。上述の特定の特徴及び動作は、特許請求の範囲記載発明の実施の例示の形態として開示されているだけである。
【００５２】
本願において、用語「コンポーネント」、「モジュール」、「システム」、「インタフェース」等は、通常は、コンピュータに関するエンティティ、または、ハードウェア、ハードウェアとソフトウェアとの組み合わせ、ソフトウェア、または実行中のソフトウェアのいずれかをいう。例えば、コンポーネントは、限定するわけではないが、プロセッサにおいて実行されているプロセス、プロセッサ、オブジェクト、実行ファイル、実行の脈絡、プログラム及び／またはコンピュータであってもよい。例示として、コントローラにおいて実行されているアプリケーション及びコントローラの両方がコンポーネントである。１または複数のコンポーネントがプロセス及び／または実行の脈絡内に存在し、コンポーネントは、１つのコンピュータのみに置かれるか及び／または２以上のコンピュータ間に分散することができる。
【００５３】
さらに、本願請求項の内容は、本開示発明を実装するためにコンピュータを制御するソフトウェア、ファームウェア、ハードウェアまたはこれらの組み合わせを提供するための標準のプログラミング技術及び／または工学技術を使用して、方法、装置または製品として実施することができる。本明細書において使用される用語「製品」は、任意のコンピュータ可読デバイス、コンピュータ可読担体またはコンピュータ可読媒体からアクセス可能なコンピュータプログラムを包含することを意図されている。例えば、コンピュータ可読媒体は、限定するわけではないが、磁気記憶デバイス（ハードディスク、フロッピー（登録商標）ディスク、磁気ストリップ等）、光学ディスク（音楽またはデータＣＤ（ｃｏｍｐａｃｔ  ｄｉｓｃ）及びＤＶＤ（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｃ））、スマートカード及びフラッシュメモリデバイス（カードドライブ、スティックドライブ、キードライブ等）を含むことができる。さらに、電子メールの送受信またはインターネットまたはＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）等のネットワークへのアクセスにおいて使用されるようなコンピュータ可読電子データを伝送すべく、搬送波が使用することができることが理解されるであろう。もちろん当業者は、多くの変形例が、本願請求項の内容の範囲または趣旨から逸脱することなくこの構成に対してもたらされることを理解するだろう。
【００５４】
さらに、用語「例示の」は、本明細書において１つの例、事例、実例となることを意味する。本明細書において「例示の」として説明された特徴または構成は、他の特徴または構成よりも好ましいまたは有利であると必ずしも解釈されない。むしろ、例示という用語の使用は、具体的な態様で概念を提供することを意図している。本願において使用される用語「または・もしくは」は、排他的な「または・もしくは」ではなく包含的な「または・もしくは」を意味する。換言すれば、特記しない限りすなわち文脈から明らかでない限り、「ＸがＡまたはＢを使用する」は、Ａ及びＢの任意の並び替えとＡ及びＢの両方とを含んでいる。すなわち、ＸがＡを使用するか、ＸがＢを使用するか、またはＸがＡ及びＢの両方を使用する場合、「ＸがＡまたはＢを使用する」は上述の全ての例の下で満足される。さらに、本明細書及び添付の特許請求の範囲で使用される「１つの」は、単数を示すと特記されない限りまたは文脈から明らかでない限り、「１または複数」示すと通常は解釈することができる。
【００５５】
本開示は、１または複数の実装例に関して表現及び説明されてきたが、均等な置換例及び変形例は、本明細書及び添付の図面の解釈及び理解に基づいて当業者に案出することができるだろう。本開示は、変形例及び置換例を含み、添付の特許請求の範囲のみによって限定されるものではない。特に、上述のコンポーネント（要素及び／またはリソース）によって実行される様々な機能に関して、このようなコンポーネントを説明すべく使用される用語は、特記されない限り、説明された（機能的に均等な）コンポーネントの特定の機能を実行するコンポーネントの全てに対応し、当該コンポーネントが本明細書に記載された実装例における機能を実行する開示された構成と構造的に均等でない場合でも対応する。さらに、本開示の特定の特徴がいくつかの実装例のうちの１つのみに関して開示することができるが、このような特徴は、任意の所与または特別な用途に対して必要とされかつ有利である場合、他の実装例の１または複数の他の特徴と組み合わせられる。さらに、用語「備える」、「有する」、「伴う」またはこれらの変形が本明細書または特許請求の範囲において使用されている限り、これらの用語は「含む」と同様に包含を意図されている。
【図１】
2010541078.tif 000003
【図２】
2010541078.tif 000004
【図３】
2010541078.tif 000005
【図４】
2010541078.tif 000006
【図５】
2010541078.tif 000007
【図６】
2010541078.tif 000008
【図７】
2010541078.tif 000009
【図８】
2010541078.tif 000010
【図９】
2010541078.tif 000011
【図１０】
2010541078.tif 000012
【図１１】
2010541078.tif 000013
【図１２】
2010541078.tif 000014
【図１３】
2010541078.tif 000015
【国際調査報告】
2010541078.tif 000016
2010541078.tif 000017