アーカイブ履歴
ArcGIS Pro のデータ履歴管理では、エンタープライズ ジオデータベースの全データまたはデータのサブセットに対するフィーチャレベルの変更記録が保存されます。 ジオデータベースの履歴管理は、履歴参照用にデータ変更を記録、管理、解析するためのメカニズムです。
過去のイベントについての質問への回答や経時的変化の追跡など、次のようなさまざまな理由で履歴管理を使用できます。
時間に制約のある履歴変更の検索に役立つ、長期間にわたる編集内容の保存。
- 例: 排水ネットワークなどのフィーチャが、都市の持続的成長に合わせて時間とともにどのように変化したか ?
法的な理由で編集履歴の記録を保持しなければならない、コンプライアンス遵守の目的。
- 例: 隣接する区画のゾーニングが、いつ農地から商業地に変更されたか ?
サービスベースのオフライン編集ワークフローに対応します。
履歴管理が有効かどうかの判断
次の手順を行い、データセット プロパティにアクセスすることで、データセットの履歴管理が有効になっているかどうかを判断します。
ArcGIS Pro を起動します。
[カタログ] ウィンドウの [データベース] フォルダーで、ジオデータベース接続をクリックして内容を展開します。
フィーチャクラスまたはテーブルを右クリックして、 [プロパティ] を選択します。
履歴管理が有効な場合、 [ソース] タブの [履歴管理] プロパティに日時が UTC (協定世界時) で表示され、 [アーカイブ名] プロパティが設定されています。

注意:
履歴管理が有効になっていない場合、バージョン対応データまたはバージョン非対応データの履歴管理を有効化するには、 [カタログ] ウィンドウで該当するデータセットを右クリックして [管理] をクリックします。 フィーチャクラス プロパティ ダイアログで [管理] タブをクリックし、ジオデータベース機能の管理の [履歴管理] をクリックします。
編集内容の履歴管理
バージョン非対応のデータに対して履歴管理を有効化する場合、ジオデータベースはそのデータセットのベース テーブルに直接 3 つの属性フィールドを作成します。
注意:
ベース テーブルは、フィーチャクラスの核となるテーブルです。 ベース テーブルには、すべての非空間属性が格納されます。 SQL ジオメトリ タイプ を使用している場合、空間属性も格納されます。 データベース管理システムのユーザー インターフェイスを介してフィーチャクラスを確認すると、対応するベース テーブルが存在することが確認できます。
ベース テーブルの新しい属性フィールドは次のとおりです。
GDB_FROM_DATE- フィーチャが作成された正確な日時。GDB_TO_DATE- フィーチャが廃止された正確な日時。 このGDB_TO_DATEフィールドの属性は、9999-12-31 の値にいつでも設定できます。この値は、オブジェクトの現在の状態です。GDB_ARCHIVE_OID- 複数の履歴管理レコードの状態を追跡するためのグローバル識別子。
ArcGIS Pro で バージョン非対応データを編集 する場合は、各編集トランザクション (挿入、更新、または削除) が自動的にジオデータベースにコミットされるため、編集内容を保存する必要はありません。 データセットへの編集がコミットされると、ジオデータベースは自動的にそれら 3 つの属性フィールドを更新し、経時的変化を記録した履歴レコードを保持します。
以下に、履歴管理が有効な場合、編集による修正内容がベース テーブルでどのように処理されるかについて、例を示します。
[挿入] - ArcGIS Pro では、新しいフィーチャが Park_Amenities フィーチャクラスに追加されます。
GDB_FROM_DATEフィールドは、フィーチャが作成された日時 (UTC) を記録しています。GDB_TO_DATEフィールドは、オブジェクトの現在の状態を意味する 9999-12-31 23:59:59.0000 を記録しています。
[更新] - ArcGIS Pro で属性エディターを使用し、
AmenityTypeフィールドを更新し、値を NULL から Restroom に変更します。 この更新を実行した結果、ベース テーブルが次のように変更されます。同じ
OBJECTID1 に新しい行が挿入され、GDB_FROM_DATEフィールドには履歴管理操作と同じタイム スタンプ、GDB_TO_DATEフィールドには 12/31/9999、AmenityTypeフィールドには NULL から Restroom への更新が記録されます。
[削除] - ArcGIS Pro で、Restroom 環境設備フィーチャを選択し、削除します。 編集セッションでフィーチャが削除されると、ベース テーブルにその記録が保持され、ベース テーブルの関連行が更新されます。
GDB_TO_DATE属性の値には、フィーチャが廃止された履歴管理操作のタイム スタンプと同じ値が設定されます。
アーカイブ履歴の管理
ジオデータベースの履歴管理により、有効なクラスの編集トランザクションが保存されます。 バージョン非対応の履歴管理の場合、履歴管理レコードは、現在のすべてのレコードと同じテーブルに格納されます。 時間の経過とともに、特に大規模な編集が行われる環境では、バージョン非対応の履歴管理データセットは、すべての編集内容を蓄積した履歴として、サイズが大きくなる可能性があります。
一部またはすべての履歴レコードが不要または関連がない場合は、それらのレコードを削除することができます。 あるいは、履歴レコードを削除することで、次のようなデータベース管理タスクを改善することができます。
データ トランザクションの処理
ファイル システム ストレージ
テーブルおよびインデックス管理
バックアップおよび復元操作
履歴レコードを削除する際のオプションとして、 履歴管理の無効化 がありますが、ベース テーブルの一部を保持するためのオプションはありません。 履歴管理はサービスベースのオフライン編集ワークフローを必要とするので、履歴管理の無効化は必ずしも有効な解決策とはなりません。 さらに、1 つのトランザクションで履歴管理を無効化し、そのテーブルが非常に大きい場合、データベース トランザクション ログは、適切なサイズで、エラー回避のために監視される必要があります。
別のオプションとして、 [アーカイブ履歴の切り取り (Trim Archive History)] ジオプロセシング ツールの使用があります。 このツールを使用すると、履歴管理を無効にして同期ワークフローを中断することなく、バージョン非対応の履歴管理データセットから、廃止された行を削除できます。
このツールの使用方法についての詳細は、「 アーカイブ履歴の切り取り (Trim Archive History) 」をご参照ください。