Standard または Advancedのライセンスで利用可能。
マルチユーザー編集のシナリオでは、バージョンを利用すると、編集者ごとに独自のデータ表示を提供してロックを適用したりデータを複製したりすることなく、編集者は同じデータで同時に作業できます。バージョニングは、編集者が複数の編集セッションにまたがって自分専用のジオデータベースのバージョンで作業できるようにすることにより、ロングトランザクションを容易にします。編集者が一連の編集を終了すると、独自バージョンの作成元の親バージョンに変更をマージし戻すことができます。ジオデータベースにあるすべての元の親バージョンはデフォルト バージョンと呼ばれます。
バージョンごとにジオデータベースの別々のコピーが作成されるのではなく、 バージョンとその中で実行されるトランザクションは、システム テーブルで管理されます。バージョンによって複数の編集セッションにわたるエディターの作業が分離されるので、ユーザーは、運用バージョンでフィーチャをロックする必要がないため、他のユーザーに直接影響を与えずに編集を行うことができます。さらに編集のためにデータのコピーを作成する必要もありません。
組織によってワークフローは異なります。多くの場合、ワークフローは段階的に発展し、それぞれの段階で異なるリソースの割り当てやビジネス ルールが必要になります。一般に、プロセス全体の各段階は、作業指示など、個々の作業単位を表します。各作業指示を管理するために、個別のバージョンを作成して、それを編集することができます。作業が完了したことを確認したら、変更内容をデータベースのマスター バージョンに統合することができます。バージョンをこのように操作すれば、さまざまなワークフローとデータ管理戦略に柔軟に対応できます。
以下のセクションで、バージョンの概念とワークフローの一般的概要について説明します。
バージョニング タイプ
2 つのタイプのバージョニングを使用できます。それぞれ、特定のワークフローと配置オプションに対応します。
- ブランチ バージョニング - フィーチャ サービスを介してマルチユーザー編集のシナリオとロング トランザクションを可能にすることにより Web GIS モデルを容易に処理できます。詳細については、「ブランチ バージョンの構成のシナリオ」をご参照ください。
- トラディショナル バージョニング - エンタープライズ ジオデータベースから直接アクセスした場合はロング トランザクションのバージョン内で柔軟に作業でき、フィーチャ サービスを使用してショート トランザクションに対応する場合は簡単に操作できます。詳細については、「トラディショナル バージョンの構成のシナリオ」をご参照ください。
- ベース テーブル移行オプションを使用するトラディショナル バージョニング - 編集者とアプリケーションがベース データに直接アクセスできると同時に、他の編集者が自分専用の個別バージョンで作業できる任意形式の従来のバージョニング。
データのバージョン対応登録
バージョニングのタイプに関係なく、ジオデータベースの他のバージョンに含めるためにデータをバージョン対応登録する必要があります。データをバージョン対応登録すると、編集者は自分専用のバージョンを作成し作業することにより個別で作業できるようになります。データをバージョン対応登録すると、編集はデータに対して実行される挿入、更新、削除操作を追跡されます。
データをバージョン対応登録した後で、デフォルト バージョンから自分専用のバージョンを作成して作業を開始できます。
データのバージョン対応登録の詳細については、「データセットのブランチ バージョン対応登録」または「データセットのトラディショナル バージョン対応登録」をご参照ください。
DEFAULT バージョン
エンタープライズ ジオデータベースにアクセスする際は、常にバージョンが使用されます。バージョン対応データセットにアクセスする際に接続するバージョンは、データベース接続自体の [ジオデータベース コネクション プロパティ] ダイアログ ボックス内で指定されます。デフォルト バージョンは、新しいデータベース接続が作成されるときに事前に設定されます。すべてのジオデータベースで、デフォルト バージョンが作成されます。デフォルト バージョンは、ジオデータベースの上位バージョンまたはルート バージョンです。他のバージョンを作成すると、接続するバージョンを変更するオプションが使用可能になります。バージョニング タイプとデータ ソースに応じて、このオプションは、データベース接続に対して直接変更するか、データセットをマップに追加した後に変更できます。
他のバージョンと異なり、デフォルト バージョンは常に存在し、削除することはできません。ほとんどのワークフローでは、デフォルト バージョンはデータベースのマスター バージョンであり、モデルとなるシステムの現在の状態を表します。他のバージョンからの変更をポスト (反映) することにより、デフォルト バージョンを管理および更新します。設定されたアクセス権に応じて、他のバージョンと同様に、デフォルト バージョンを直接編集することもできます。誤って編集するのを防ぐように保護するために、デフォルト バージョンのアクセス権の変更が必要になることがあります。
詳細については、ブランチおよびトラディショナル バージョン対応ワークスペースのデフォルト バージョンを保護する方法を学習してください。
バージョンの管理
ジオデータベースには多くのバージョンを作成することができます。[バージョン] ビューを使用して、エンタープライズ ジオデータベースのバージョンの作成、バージョン プロパティの変更、バージョンの削除を行うことができます。
バージョンが作成された場合、それらのバージョンは、既存のバージョンの子またはブランチと見なされます。バージョンは、作成された時点では、親 (上位) バージョンとまったく同じジオデータベースの状態を表します。上位バージョンとユーザー バージョンにそれぞれ独自の変更が加えられる過程で、各バージョン間に差が生じていきます。バージョンが作成されるたびに、樹木のような構造が広がっていきます。これはバージョン ツリーと呼ばれます。
ジオデータベースの管理をより合理的に行うために、デフォルト バージョンがすべてのユーザー バージョンの上位になる、必要最低限の階層を持つバージョン ツリーを維持するなどの方法をお勧めします。
注意:
ブランチ バージョニングでは、すべてのバージョンが上位としてデフォルト バージョンで作成され、1 つのバージョン レベルのみが許可されます。
バージョン管理の詳細については、「ブランチ バージョンの管理」または「トラディショナル バージョンの管理」をご参照ください。
特定のバージョンへの接続
最初にエンタープライズ ジオデータベースに接続すると、デフォルト バージョンに自動で接続されます。使用されるバージョニング タイプとデータ ソースに応じて、[カタログ] ウィンドウでジオデータベースを右クリックして、[ジオデータベース コネクション プロパティ] ダイアログ ボックスを開くことによって、接続先のバージョンを変更できます。ここでは、接続先のバージョンのタイプ (トラディショナルまたはブランチ) を選択できます。これらの各タイプの下に、接続に使用可能なバージョンがリストされます。いずれかを選択すると、そのバージョンに接続されます。
マップにデータを追加した場合、別のバージョンを使用するように [ジオデータベース コネクション プロパティ] オプションを修正していない限り、データはデフォルト バージョンから取得されます。[コンテンツ] ウィンドウで、[バージョンの変更] ダイアログ ボックスを使用して特定のバージョンに接続できます。
Oracle でユーザー スキーマ ジオデータベースに接続するには、[ジオデータベース接続プロパティ] ダイアログ ボックスでこれを実行することもできます。
詳細については、「ブランチ バージョンへの接続」または「トラディショナル バージョンへの接続」をご参照ください。
変更内容のリコンサイルとポスト
リコンサイルおよびポストを実行すると、親バージョンやデフォルト バージョンなど、作業しているバージョンの上位にあるバージョンに変更内容が統合されます。リコンサイルでは、編集中のバージョンにおける変更内容が、マージ先となるバージョンと比較されます。
2 人の編集ユーザーが同じバージョンまたは異なるバージョンで同じデータを編集すると、競合 (コンフリクト) が発生することがあります。競合が発生するのは、2 つの編集プロセスで同じ行に対して異なる編集が行われた場合です。リコンサイル プロセスでは、各競合が表示され、行のどちらの編集内容を採用するかを選択することができます。
リコンサイルが完了したら、変更内容をポストすることができます。これにより、変更内容が上位バージョンに適用されます。他のバージョンへポスト済みのバージョンがそれ以上必要なければ、削除することができます。あるいは、そのバージョンをさらに編集し、再びリコンサイルしてポストすることもできます。
詳細については、「ブランチ バージョンへの編集のリコンサイルおよびポスト」および「トラディショナル バージョンへの編集のリコンサイルおよびポスト」をご参照ください。
ヒント:
手動でリコンサイルする代わりに、[バージョンのリコンサイル (Reconcile Versions)] ツールを使用して、複数のバージョンをリコンサイルすることができます。