Oracle に格納されたジオデータベースの ArcSDE ログ ファイル テーブル

ジオデータベースはログ ファイル テーブルを使用してテーブル行のリストを保持します。

詳細については、「Oracle 用 ArcSDE ログ ファイル テーブル設定オプション」をご参照ください。

ArcGIS for Desktop のログ ファイル テーブル

ArcGIS for Desktop ではログ ファイル テーブルを確認することはできません。ただし、ArcMap で選択セットに 100 個以上のフィーチャが含まれる選択を行うと、ログ ファイル テーブルが作成され、フィーチャが設定されます。

Oracle データベースのログ ファイル テーブル

Oracle でジオデータベースを作成する際、デフォルトのログ ファイル設定では共有の ArcSDE ログ ファイルが使用されます。共有ログ ファイルは、同じユーザとして接続するすべてのセッションで共有されます。複数のユーザが同じユーザ アカウントで接続する場合、それらのセッションはすべて、同じログ ファイルのデータ テーブルでレコードを挿入または削除します。ログ ファイルは、ArcGIS を使用して作成された選択セットのレコードの数が 100 個を超えた時点で初めて作成されます。

ジオデータベースに作成されるログ ファイル テーブルは、どのログ ファイル設定を使用するかによって異なります。

共有ログ ファイル テーブル

デフォルトの共有ログ ファイルを使用する場合は、DBMS のユーザ ID ごとにテーブルが 2 つ作成され(SDE_LOGFILES および SDE_LOGFILE_DATA)、その DBMS ユーザのスキーマで格納されます。作成されたテーブルはジオデータベースに保存されますが、接続しているアプリケーションがそのログ ファイルをすべて削除するとログ ファイル エントリもすべて削除されます。

破線はテーブル間の暗黙的なリレーションシップを示しています。

Oracle 内の ArcSDE の共有ログ ファイル テーブル

セッションベース ログ ファイル テーブル

ログ ファイル設定をセッションベースのログ ファイルを使用するように変更すると、ジオデータベースに SDE_LOGFILESSDE_LOGFILE_DATASDE_SESSION<SDE_ID> の 3 つのテーブルが作成されます。これらのテーブルは、テーブルが作成されたセッションのユーザのスキーマに作成されます。SDE_LOGFILE_DATA テーブルは作成されるだけで、データは設定されません。SDE_LOGFILES テーブルと SDE_LOGFILE_DATA テーブルはジオデータベースに残りますが、SDE_LOGFILES テーブルはアプリケーションの接続が切断されたときに空になります。SDE_SESSION<SDE_ID> テーブルは、接続しているアプリケーションでログ ファイルのレコードが不要になった時点で空になり(ArcMap では、これは選択セットが存在しない状態を意味します)、セッションの終了時に削除されます。

Oracle 内の ArcSDE のセッション ログ ファイル テーブル

スタンドアロン ログ ファイル テーブル

スタンドアロンのログ ファイルを使用する場合、セッションの選択セットのサイズが閾値を超えると、各レイヤに新しい SDE_LOGDATA_<SDE_ID>_<#> テーブルが作成されます。SDE_LOGFILES テーブルと SDE_LOGFILE_DATA テーブルはセッションごとに作成されますが、SDE_LOGFILE_DATA テーブルにはデータは設定されません。これらのテーブルはそれらの作成につながる操作を行ったユーザのスキーマに作成されます。

SDE_LOGDATA_<SDE_ID>_<#> テーブルは、接続しているセッションでログ ファイルが不要になった時点で空になり、セッションの終了時に削除されます。SDE_LOGFILES テーブルはアプリケーションの接続が切断されたときに空になります。

Oracle 内の ArcSDE のスタンドアロン ログ ファイル テーブル

ログ ファイル テーブルのプール

SDE_LOGFILE_POOL テーブルは、ジオデータベースの作成時にジオデータベース管理者のスキーマに作成され、格納されます。ジオデータベース管理者が所有するスタンドアロンまたはセッションベースのログ ファイルのプールを使用する場合には、このテーブルが使用されるだけでなく、SDE_LOGPOOL_<TABLE_ID> テーブルがジオデータベースに作成されます。作成される SDE_LOGPOOL_<TABLE_ID> テーブルの数は、sde_server_config テーブルの LOGFILEPOOLSIZE に指定する値によって異なります。次の例では、LOGFILEPOOLSIZE は 10 に設定されているため、SDE_LOGPOOL_<TABLE_ID> テーブル 1 ~ 10 が作成されています。

ログ ファイルのプールに作成されるテーブルはすべて、ジオデータベース管理者のスキーマに作成されます。

ArcSDE ログ ファイル テーブルのプール

注意注意:

MAXSTANDALONELOGS に 0 よりも大きい数値を設定し、データベースにテーブルを作成できるユーザがログ ファイルを作成する閾値を超えるサイズの選択セットを作成すると、そのユーザのスキーマでスタンドアロン ログ ファイル テーブルが作成されます。

ログ ファイル用のシステム テーブル

次に、ArcSDE ログ ファイルに使用されるテーブルの定義を示します。

SDE_LOGDATA<SDE_ID>_<#>

SDE_LOGDATA_<SDE_ID>_<#> テーブルには、スタンドアロン ログ ファイルの一部であるビジネス テーブルのレコードのリストが含まれます。テーブルの名前にはセッション ID とスタンドアロン ログ ファイルの連番が含まれます。このテーブルの所有者は、テーブルの作成につながる操作を行ったユーザです。

フィールド名

フィールド タイプ

説明

NULL?

SDE_ROW_ID

NUMBER(38)

ログに記録されるビジネス テーブル行の RowID または ShapeID

NOT NULL

SDE_LOGFILE_DATA

SDE_LOGFILE_DATA テーブルには、各ログ ファイルの一部であるビジネス テーブルのレコードのリストが含まれます。このテーブルの所有者は、テーブルの作成につながる操作を行ったユーザです。

フィールド名

フィールド タイプ

説明

NULL?

LOGFILE_DATA_ID

NUMBER(38)

RowID が属しているログ ファイルへの ID、および SDE_LOGFILES テーブルのログ ファイルのメタデータへの参照。

NOT NULL

SDE_ROW_ID

NUMBER(38)

ログに記録されるビジネス テーブル行の RowID または ShapeID

NOT NULL

ROW_ID

NUMBER(38)

レコードの一意な ID。重複する LOGFILE_DATA_ID 値または SDE_ROW_ID 値の削除を可能にします。

NOT NULL

SDE_LOGFILE_POOL

SDE_LOGFILE_POOL テーブルは、現在チェックアウトされているログ ファイルのリストを管理します。このテーブルは、ジオデータベースの作成時に作成され、ジオデータベース管理者によって所有されます。

フィールド名

フィールド タイプ

説明

NULL?

TABLE_ID

NUMBER(38)

ログ ファイル プール テーブルの ID。

NOT NULL

SDE_ID

NUMBER(38)

特定のログ ファイル プール テーブルを現在使用している接続の ID。SDE_ID は PROCESS_INFORMATION テーブルの SDE_ID 列への参照です。SDE_ID が NULL の場合は、このログ ファイル プール テーブルが現在使用されていないことを意味します。

SDE_LOGFILES

SDE_LOGFILES テーブルにはログ ファイルのメタデータが含まれます。このテーブルの所有者は、テーブルの作成につながる操作を行ったユーザです。

フィールド名

フィールド タイプ

説明

NULL?

LOGFILE_NAME

NVARCHAR2(256)

ログ ファイルの一意なユーザ定義(またはアプリケーション定義)名。

NOT NULL

LOGFILE_ID

NUMBER(38)

ログ ファイルの一意な ID。

NOT NULL

LOGFILE_DATA_ID

NUMBER(38)

RowID が属しているログ ファイルの ID。

NOT NULL

REGISTRATION_ID

NUMBER(38)

このログ ファイルに ID が記録されているビジネス テーブルの登録 ID。

NOT NULL

FLAGS

NUMBER(38)

ログ ファイルのプロパティを示す値のビットマスク。

NOT NULL

SESSION_TAG

NUMBER(38)

接続のセッションの一意な ID。この ID によって、たとえば、特定の接続でそのセッションに属しているすべてのテンポラリ ログ ファイルを削除することが可能です。

NOT NULL

LOGFILE_DATA_DB

NVARCHAR2(32)

このログ ファイルの ID を保持しているテーブルが格納されているデータベースの名前。

Oracle では使用されません。

LOGFILE_DATA_OWNER

NVARCHAR2(32)

このログ ファイルの ID を保持しているテーブルの所有者の名前。

LOGFILE_DATA_TABLE

NVARCHAR2(98)

このログ ファイルの ID を保持しているテーブルの名前。従来の SDE_LOGFILE_DATA、ログ プール テーブル、セッション テーブル、またはスタンドアロンの SDE_LOGDATA<SDE_ID>_<#> テーブル。

COLUMN_NAME

NVARCHAR2(32)

ログに記録されるビジネス テーブルの列の名前。一般的には RowID または ShapeID であるが、任意の整数列の記録を指定することもできます。

SDE_LOGPOOL_<table_ID>

SDE_LOGFILE_POOL テーブルは、現在チェックアウトされているログ ファイルのリストを管理します。このテーブルは、ジオデータベースの作成時に作成され、ジオデータベース管理者によって所有されます。

フィールド名

フィールド タイプ

説明

NULL?

LOGFILE_DATA_ID

NUMBER(38)

RowID が属しているログ ファイルへの ID、および SDE_LOGFILES テーブルのログ ファイルのメタデータへの参照。

NOT NULL

SDE_ROW_ID

NUMBER(38)

ログに記録されるビジネス テーブル行の RowID または ShapeID

NOT NULL

SDE_SESSION<SDE_ID>

SDE_SESSION<SDE_ID> テーブルは、セッションベースのログ ファイルを使用している場合に作成されます。このテーブルは、セッションにおいてアプリケーションの閾値(ArcMap では 100 レコード)を超える選択セットが作成されたときに、ログ ファイルのレコードを追跡するために使用されます。SDE_SESSION<SDE_ID> テーブルは、セッションの終了時に削除されます。

フィールド名

フィールド タイプ

説明

NULL?

LOGFILE_DATA_ID

NUMBER(38)

RowID が属しているログ ファイルへの ID、および SDE_LOGFILES テーブルのログ ファイルのメタデータへの参照。

NOT NULL

SDE_ROW_ID

NUMBER(38)

ログに記録されるビジネス テーブル行の RowID または ShapeID

NOT NULL

XML ドキュメントのログ ファイル テーブル

ログ ファイル テーブルは XML ドキュメントに格納されません。つまり、ジオデータベース スキーマを XML ワークスペース ドキュメントにエクスポートした場合は、スキーマをインポートした後で、ログ ファイル閾値を超える選択セットをユーザが作成したときに再度ログ ファイル テーブルが作成されます。

5/10/2014