SAP HANA のジオデータベース システム テーブル

ArcGIS クライアントまたは ArcGIS Server Web サービス経由でエンタープライズ ジオデータベースに接続したら、ジオデータベースに自分で追加したか、他のデータベース ユーザーが追加したデータセットを操作します。 エンタープライズ ジオデータベースでは、そのデータを追跡し、ジオデータベースの振舞いを実装するためにシステム テーブルを使用します。

システム テーブルとその内容は、ArcGIS ソフトウェアまたは SDK 以外のものを使用して変更することはできません。 ただし、SQL を使用してシステム テーブルの内容を表示することができます。

コア システム テーブル

コア ジオデータベース システム テーブルは、ジオデータベースの振舞いを規定し、ジオデータベースに関する情報を格納し、ジオデータベースに格納されたユーザー データを追跡します。

エンタープライズ ジオデータベースを含む SAP HANA データベースでクエリを実行する際には、sde ユーザーのスキーマの次のコア システム テーブルが表示されます。

  • GDB_ARCHIVES
  • GDB_BRANCH_TABLES_MODIFIED
  • GDB_BRANCHES
  • GDB_COLUMN_REGISTRY
  • GDB_DBTUNE
  • GDB_CONFLICTS
  • GDB_ITEMRELATIONSHIPS
  • GDB_ITEMRELATIONSHIPTYPES
  • GDB_ITEMS
  • GDB_ITEMTYPES
  • GDB_LAYER_LOCKS
  • GDB_LAYERS
  • GDB_LOCATORS (未使用)
  • GDB_LOCKS
  • GDB_METADATA (未使用)
  • GDB_MULTIBRANCH_TABLES
  • GDB_OBJECT_LOCKS
  • GDB_PROCESS_INFORMATION
  • GDB_RASTER_COLUMNS
  • GDB_REPLICALOG (未使用)
  • GDB_SERVER_CONFIG
  • GDB_SPATIAL_REFERENCES
  • GDB_TABLE_LOCKS
  • GDB_TABLE_REGISTRY
  • GDB_TABLES_LAST_EDIT_TIME
  • GDB_TABLES_LAST_MODIFIED
  • GDB_TABLES_MODIFIED
  • GDB_VERSION

エンタープライズ ジオデータベース機能を実装するテーブル

一部のジオデータベース機能の情報はコア システム テーブルにのみ格納されます。 たとえば、次の機能に関する情報はコア システム テーブルに格納され、これらの機能をユーザー データに対して有効化したときに追加のテーブルはデータベースに作成されません。

  • 属性ルール - GDB_ITEMS システム テーブルに格納されます。
  • ブランチ バージョン - テーブルまたはフィーチャクラスが編集情報の記録のためにブランチ バージョン対応登録されるときに、6 つのフィールドがそのテーブルまたはフィーチャクラスのビジネス テーブルに追加されます。
  • ドメイン - GDB_ITEMS システム テーブルに格納されます。 GDB_ITEMTYPES システム テーブルのフィールドによって、オブジェクトがドメインとして識別されます。
  • リレーションシップ クラス - GDB_ITEMS および GDB_ITEMRELATIONSHIPS システム テーブルに格納されます。

反対に、以降のセクションで説明するジオデータベース機能では、機能が有効化または使用されるときに追加の内部テーブルが作成されます。

ジオデータベースの履歴管理

ジオデータベースの履歴管理機能を使用すると、データのトランザクション時間履歴を追跡することができます。 トランザクション時間はデータベースでフィーチャが追加、削除、更新された時点を表します。

ジオデータベースの履歴管理を有効化すると、アーカイブ クラスが作成されます。アーカイブ クラスはビジネス テーブルのコピーで、この中にはすべての同じフィールドに加えて、GDB_FROM_DATE、GDB_TO_DATE、GDB_ARCHIVE_OID の 3 つの新たなフィールドが含まれます。トラディショナル バージョン対応のテーブルまたはフィーチャクラスに対して履歴管理を有効化したときも、レコードが GDB_SDE_ARCHIVES システム テーブルに追加されます。このレコードには、履歴管理が有効なテーブルの Registration ID と、そのテーブルに対応するアーカイブ クラス テーブルが格納されます。

元のビジネス テーブル名にアンダースコアと H を追加したものが、アーカイブ クラス テーブルの名前になります。 たとえば、buildings という名前のフィーチャクラスで履歴管理を有効化すると、buildings_H というアーカイブ クラスが作成されます。 このアーカイブ クラス テーブルはビジネス テーブルと同じスキーマに格納されます。

キーセット テーブル

キーセット テーブルは ArcGIS クライアントでクエリ パフォーマンスを向上させるために使用されます。 キーセット テーブルには、ArcGIS クライアントが整数、数値、日付、文字列タイプの属性を使用してテーブルを結合するジオデータベース リレーションシップ クエリを実行するときに、選択された行のリストが格納されます。 キーセット テーブルは Object ID フィールド以外の属性による結合に対応します。

キーセット テーブルは、次のいずれかの操作が実行されて初めてジオデータベースに作成されます。

  • ArcGIS Pro でマップ内のフィーチャクラスから 99 を超えるレコードを選択します。このフィーチャクラスはリレーションシップ クラスに参加しています。
  • ArcGIS Pro で、リレーションシップ クラスに参加しているフィーチャクラスの属性テーブルを開き、関連テーブルを取得します。

SAP HANA のキーセット テーブルは、キーセット テーブルの作成につながる操作を実行したユーザーのスキーマに、ローカル一時テーブルとして格納されます。

ログ ファイル テーブル

ログ ファイル テーブルは、ArcGIS クライアントで、選択された行のリストを格納してクエリ パフォーマンスを向上させるために使用されます。 ログ ファイル テーブルでは Object ID 属性に基づく結合が使用されます。

SAP HANA のログ ファイル テーブルは、ログ ファイル テーブルの作成につながる操作を実行したユーザーのスキーマに、ローカル一時テーブルとしてセッションごとに作成されます。