Microsoft SharePoint Foundation の物理オブジェクト階層

最終更新日: 2010年3月13日

適用対象: SharePoint Foundation 2010

Microsoft SharePoint Foundation のオブジェクト モデルは、3 つの階層に分けることができます。ここでは、物理オブジェクト階層について説明します。物理オブジェクト階層には、物理エンティティ (サーバー、ファイルなど) を表すクラスと、このようなエンティティのコンテナー (ファーム、フォルダーなど) を表すクラスが含まれます。

重要重要

階層内のクラスによって表されるエンティティについては、「[バックグラウンド] Microsoft SharePoint Foundation の物理オブジェクト」を参照してください。

コンテンツ階層には、データの公開可能なアイテム (リスト アイテムなど) を表すクラスと、データの入れ子になったコンテナーを表すクラスがあります。このようなコンテナーとしては、リスト、コンテンツ データベース、Web サイト、Web サイトのコレクション、Web アプリケーションと呼ばれるサイト コレクションのグループなどがあります。コンテンツ階層については、「Microsoft SharePoint Foundation のコンテンツ階層」を参照してください。

3 番目のサービス階層には、サービスやサービスのインスタンスを表すクラスが含まれます。この階層については、「Microsoft SharePoint Foundation のサービス階層」で説明しています。

注意

一部のクラスは簡単に分類できず、複数の階層に属すると見なされるという意味で、これらの階層は部分的に重なっています。

物理オブジェクト階層

物理オブジェクト階層のクラスは、実際の物理オブジェクトであるエンティティ、またはコンテキストに応じて物理オブジェクトと見なすことも、非物理オブジェクトと見なすこともできるオブジェクトであるエンティティを表します。図 1 に示すように、この階層には 4 つの主要クラスがあります。

図 1. 物理オブジェクト階層

物理オブジェクト階層

SPFolder クラスと SPFile クラスについてはここでは説明しません。ただし、誤解を防ぐために、SPFolder オブジェクトまたは SPFile オブジェクトによって表されるエンティティは、サーバーのファイル システムではなく、SharePoint Foundation コンテンツ データベースに配置されることに注意してください。たとえば、SharePoint Foundation ドキュメント ライブラリ内のスプレッドシート ファイルは、サーバーのいずれかにあるフォルダーではなく、データベースのセルに格納されます。

SPFarm

SharePoint Foundation ファームは、SPFarm クラスによって表されます。サーバー ファームとは、物理サーバーのクラスターであり、1 台以上のフロントエンド サーバー、ゼロ台以上のアプリケーション サーバー、および SQL Server で構成されます。この SQL Server は専用データベース サーバー上でホストされるか、いずれかのアプリケーション サーバー (アプリケーション サーバーが 1 つしかない場合はフロントエンド サーバー) 上でホストされます (厳密には、SharePoint Foundation の展開全体を格納する 1 台のコンピューターだけで "ファーム" が構成されている場合もありますが、展開は常にファーム上でホストされます)。

SPFarm クラスの特性の一部を以下に示します。

  • SPFarm クラスは 1 つ以上の物理サーバーのファームを表すため、物理階層に含まれます。ただし、このクラスは、コンテンツ階層の最上位と見なすこともできます。たとえば、SharePoint Foundation ファームの (構成以外の) すべてのコンテンツをバックアップおよび復元できます。

    注意

    SharePoint Foundation では、ファームの構成データベースを復元することはできませんが、バックアップすることはできます。バックアップは、トラブルシューティングのためにデータベースの現在の状態と比較できる、データベースのスナップショットとして役立つことがあります。

  • SharePoint Foundation では、SPFarm クラスは、ファームに関連付けられた構成データベースを表すものと考えることもできます。SharePoint Foundation には、構成データベース自体を表すクラスがないためです。たとえば、SPFarm オブジェクトの DisplayName() プロパティは、構成データベースの名前でもあります。

  • SPFarm オブジェクトには、SPServerSPService、および SPSolution という 3 つの主要な型の子クラスがあります。

  • SPFarm は、SPPersistedObject から継承します。つまり、このクラスをインスタンス化するオブジェクト (1 つのみ) は、構成データベースに保持されます。

  • SPFarm は、ファームを作成し、ローカル ファームまたはリモート ファームへの参照を返す静的メンバーを持ちます。

  • SPFarm には、管理機能の開発に使用できる数多くのメンバーがあります。いくつかのより重要なメンバーは、以下の管理に役立ちます。

    • ファームのバックアップおよび復元

    • ファームのアップグレード

    • ファームの移行

    • エラー報告

    • キャッシュ

SPServer

SharePoint Foundation ファームの物理サーバーは、SPServer クラスによって表されます。継承された多数のメンバーに加え、このクラスには、サーバーの IP アドレスを保持する Address プロパティと、ファームでのサーバーのロールを示す Role プロパティがあります。サーバーが 1 台しかない場合、サーバーのロールは SingleServer です。複数のサーバーがある場合、フロントエンド サーバーのロールは WebFrontEnd になり、他のほぼすべてのサーバーのロールは Application になります。ただし、SharePoint Foundation コンテンツ データベースを物理的にホストしているサーバーの Role プロパティの値は、通常、Invalid です。これは、このようなサーバーが実行している SharePoint Foundation サービスは、通常、データベース サービス (Windows サービス) だけであり、このデータベース サービスは、実際には SharePoint Foundation に含まれていない SQL Server Windows サービスのエイリアスにすぎないためです。したがって、サーバーは SharePoint Foundation コードを実際には実行していないので、アプリケーション ロールには適合しません。アプリケーション、ロール、およびサービスの詳細については、「Microsoft SharePoint Foundation のサービス階層」および「バックグラウンド: Microsoft SharePoint Foundation のサービス エンティティ」を参照してください。

SPServer クラスには、サーバー上で実行される Windows サービスと Web サービスのすべてのインスタンスへの参照を保持する ServerInstances() プロパティもあります。サービス インスタンスの詳細については、「Microsoft SharePoint Foundation のサービス階層」および「バックグラウンド: Microsoft SharePoint Foundation のサービス エンティティ」を参照してください。

SPServer は、SPPersistedObject から継承します。SPPersistedObject をインスタンス化するオブジェクトは、SharePoint Foundation 構成データベースに保持されます。

標準的なファームとそのサーバーを示す図については、「バックグラウンド: Microsoft SharePoint Foundation のサービス エンティティ」を参照してください。

関連項目

参照

SPFarm

SPServer

概念

サーバーとサイトのアーキテクチャ : オブジェクト モデルの概要

リストのオブジェクトとコレクションを操作する

概要 : オブジェクト モデルを使用して管理をカスタマイズする

コード例 : 管理オブジェクト モデルを使用する

Microsoft SharePoint Foundation のコンテンツ階層

[バックグラウンド] Microsoft SharePoint Foundation のコンテンツ エンティティ

[バックグラウンド] Microsoft SharePoint Foundation の物理オブジェクト

Microsoft SharePoint Foundation のサービス階層

バックグラウンド: Microsoft SharePoint Foundation のサービス エンティティ

その他の技術情報

Microsoft SharePoint Foundation の管理オブジェクト モデル

SharePoint Foundation の管理