SQL Server のマルチ空間データベース モデル

レガシレガシ:

SQL Server 内のジオデータベースのマルチ空間データベース モデルは、SQL Server の ArcSDE ジオデータベース実装方法の一つです。このモデルのサポートは今でも行われていますが、シングル空間データベース モデルを使用することをお勧めします。シングル空間データベース モデルでは、すべてのジオデータベース テーブルが 1 つの SQL Server データベースに格納されています。

ArcSDE ジオデータベースに空間データを格納するには、一連のテーブル、ストアド プロシージャ、ビュー、関数が存在しなければなりません(これらをまとめて ArcSDE リポジトリと呼びます)。一連のユーザ定義データと関連する ArcSDE リポジトリは、1 つのジオデータベースを構成します。

ArcSDE 9 よりも前のバージョンでは、SQL Server のジオデータベースは常にマルチ空間データベース モデルを使用して格納されます。ArcSDE 9 以降は、シングル空間データベース モデルを使用する必要があります。ただし、推奨されませんがマルチ空間データベース モデルのサポートが今でも行われています。このモデルの説明は次のとおりです。

マルチ空間データベース モデルでは、ArcSDE リポジトリが sde という名前のデータベースに格納されます。フィーチャクラス、ラスタ、非空間テーブルなどのユーザ定義データは、他のデータベースに格納されます。sde データベースの ArcSDE リポジトリは、特定の ArcSDE インスタンスで関連するすべてのユーザ定義データの場所への参照を格納します。sde データベースとその他の関連データベースは、単一のジオデータベースを構成します。このデータ格納モデルは、マルチ空間データベース モデルと呼ばれます。これは、1 つの ArcSDE ジオデータベースの構成に複数の SQL Server データベースが必要なためです。

SQL Server のマルチ空間データベース モデル: 複数のデータベースが 1 つのジオデータベースを構成します。

ジオデータベースの格納には、前のセクションで説明したシングル空間データベース モデルが推奨されます。次に、マルチ空間データベース モデルを使用する場合のルールとガイドラインを示します。

マルチ空間データベース インスタンスを使用するルール

マルチ空間データベース インスタンスを作成するためのガイドライン

次に、空間データを格納するデータベースを作成するためのガイドラインを紹介します。

マルチ空間データベース モデルからシングル 空間データベース モデルへの移行

先に述べたように、シングル データベース モデルはジオデータベース用に推奨されるモデルです。マルチ データベース モデルで格納した既存のジオデータベースをシングル データベース モデルに移行したい場合は、次の手順に従います。

  1. すべての ArcSDE データベースの完全バックアップを実行します。
  2. ポスト インストール ウィザードを使用して、シングル データベース モデルのジオデータベースを作成します。必ず、使用しているバージョンのポスト インストール ウィザードを実行してください。たとえば、ArcSDE 9.1 でマルチ データベース モデルを使用していて、シングル データベース モデルに移行したい場合は、9.1 のポスト インストール ウィザードを実行して、シングル ジオデータベースを作成します。また、これらの操作は SQL Server の同じインスタンスで実行してください。
    注意注意:

    ArcSDE 8.3 を使用している場合は、まず、ArcSDE 9 以降にアップグレードしてから、シングル データベース モデルへ移行してください。

  3. Catalog のインタフェースを使用して、データを新しいシングル データベース モデルのジオデータベースへ移行します。

    ポスト インストール ウィザードは、SQL Server に新しいデータベースを作成します。このため、新しいジオデータベースにアクセスするサービスを作成するか、ダイレクト コネクションをセットアップします。次に、ArcMap を起動して、カタログ ウィンドウを開き、元のマルチ データベース モデルと新しいシングル データベース モデルの両方に対して、コネクションを作成します。次に、コピーと貼り付け、インポートとエクスポート、またはその他のデータ移行手段を使用して、ジオデータベース間でデータを移行します。

    注意注意:

    新しいジオデータベースにデータが転送されると、そのジオデータベースにログインしていたユーザが、そのデータの所有者になります。したがって、同じデータの所有権を維持したい場合には、個々のユーザが独自のデータを転送する必要があります。


7/10/2012