履歴管理の有効化
履歴管理(アーカイブ)の有効化は、データセットをバージョン対応登録することに似ています。履歴管理を有効にするデータセットごとに、そのデータセットに対応するアーカイブ クラスが作成されます。アーカイブ クラスを作成する際、データセットまたはオブジェクト クラスのDEFAULTバージョンのすべての属性および行がアーカイブ クラスにコピーされるため、アーカイブ クラスの作成に要する時間は、履歴管理を有効にするデータセットのサイズに依存します。アーカイブ クラスのスキーマは、元のデータセットのスキーマにデータ属性をいくつか追加したものです。これらの属性は、アーカイブされた行の有効期限のタイムスタンプを記録するための gdb_from_date および gdb_to_date 属性と、各行を一意に識別するための gdb_archive_oid 属性です。
バージョン対応テーブルの差分テーブルで履歴を管理するのではなく、独立したフィーチャクラスであるアーカイブ クラスを作成して履歴を管理することで、履歴データの存在およびサイズによるデータベースの運用やパフォーマンスへの影響を最小限にすることができます。また、アーカイブ クラスは独立したフィーチャクラスなので、データセットのバージョン対応登録を解除しても、アーカイブ クラスが変更または削除されることはありません。データセットのバージョン対応登録を解除すると、アーカイブ クラスはオブジェクトまたはフィーチャクラスになります。
データセットの履歴管理を有効にすると、DEFAULTバージョンに保存またはポストされたそのデータセットに対する変更はすべて、対応するアーカイブ クラスに保存されるようになります。ただし、履歴データをアーカイブ クラスに明示的に追加することはできません。アーカイブ クラスを手動で変更した場合、ジオデータベースの履歴管理プロセスが破損するおそれがあります。
履歴管理の有効化に関するヒント:
- データセットがベース テーブル移行オプションを使用してバージョン対応登録されている場合、そのデータセットの履歴管理を有効にすることはできません。データセットのバージョン対応登録をいったん解除し、ベース テーブル移行オプションを使用せずに、バージョン対応登録する必要があります。
- 履歴管理を有効にできるのは、所有しているデータセットまたはクラスに限られます。
- 履歴管理を有効にしても、リレーションシップ クラスの履歴は管理されません。リレーションシップ クラスの対象となるクラスに対して、履歴管理を明示的に有効にする必要があります。
- 履歴管理を有効にする過程で、元のクラスのインデックスがアーカイブ クラスでも作成されます。
- 履歴管理が有効になった日付と時刻を確認するには、フィーチャクラスまたはテーブルのプロパティ ダイアログ ボックスを開きます。オブジェクトを右クリックして、[プロパティ] を選択します。[一般] タブの [バージョニング] の下に、オブジェクトの履歴管理有効化の日時が表示されます。
- アーカイブ クラスのデフォルトの命名規則は、オブジェクトクラスの名前と、それに続くアンダースコア(_)と H で構成されます。たとえば、オブジェクト クラスの名前が Roads の場合、そのアーカイブ クラスの名前は Roads_H になります。
- アーカイブ クラスはジオデータベースによってフィルタリングされ、ArcCatalog には表示されません。このため、カタログ ツリーにも表示されません。それらを表示および解析のために ArcMap に追加するには、[ジオデータベース履歴] ツールバーの [履歴アーカイブの追加] コマンドを使用します。
- アーカイブ クラスを操作するときのパフォーマンスを最適化するには、アーカイブ クラスの変更頻度に基づいて、データベースの統計情報を定期的に更新する必要があります。
- アーカイブ テーブルの名前と、gdb_from_date および gdb_to_date 属性の列名を指定することが可能です。アーカイブ テーブルに独自の命名規則を適用したい場合は、SDK(Software Developer Kit)で IArchiveregistrationinfo インタフェースを参照してください。
- 履歴管理を有効にすると、元のソースの <コンフィグレーション キーワード>_ARCHIVE が検索されます。このキーワードが存在しない場合は、データ ソースのコンフィグレーション キーワードとパラメータ値が適用されます。
- データの履歴管理を有効にするには、そのデータがバージョン対応登録されている必要があります。詳細については、「データのバージョン対応登録」をご参照ください。
- カタログ ツリーでバージョン対応のデータセットを右クリックして、[履歴管理の有効化] をクリックします。