Protokolldateitabellen in einer Geodatabase in Informix

Eine Geodatabase speichert Listen mit Tabellenzeilen mithilfe von Protokolldateitabellen.

Weitere Informationen über die für bestimmte Protokolldateitabellen erforderliche Geodatabase-Konfiguration finden Sie unter Konfigurationsoptionen für ArcSDE-Protokolldateitabellen in Informix.

Protokolldateitabellen in ArcGIS for Desktop

Protokolldateitabellen können in ArcGIS for Desktop nicht angezeigt werden. Protokolldateitabellen werden erstellt und mit Daten gefüllt, wenn durch Ihre Auswahl in ArcMap mehr als 100 Features zurückgegeben werden.

Protokolldateitabellen in einer IBM Informix-Datenbank

Wenn Sie zuerst die Geodatabase in Informix erstellen, verwendet die Standardprotokolldateikonfiguration freigegebene ArcSDE-Protokolldateien. Gemeinsame Protokolldateien können von allen Sitzungen gemeinsam verwendet werden, die als derselbe Benutzer verbunden sind. Wenn also mehrere Benutzer eine Verbindung über dasselbe Benutzerkonto herstellen, werden von all diesen Sitzungen Datensätze in dieselbe Protokolldateitabelle eingefügt und daraus gelöscht. Die Protokolldateien werden erzeugt, sobald Sie zum ersten Mal einen Auswahlsatz mit 100 Datensätzen oder mehr in ArcGIS erstellen.

Die in der Geodatabase angezeigten Protokolldateitabellen hängen von der verwendeten Protokolldateikonfiguration ab.

HinweisHinweis:

Wenn für MAXSTANDALONELOGS eine Zahl größer als 0 festgelegt wird und ein Benutzer, der über die Berechtigung CREATE TABLE verfügt, einen Auswahlsatz erstellt, der den Schwellenwert für zu erstellende Protokolldateien überschreitet, wird im Schema dieses Benutzers eine eigenständige Protokolldateitabelle erstellt.

Die Tabelle "sde_sde_logfile_pool" enthält die Liste der Datensätze in der Business-Tabelle, die Teil jeder Protokolldatei sind. Diese Tabelle wird beim Erstellen der Geodatabase erstellt.

Die Tabelle "sde_sde_logpool_ <table_id>" kann von Benutzern ausgecheckt werden, und in ihr werden entweder eigenständige oder sitzungsbasierte Protokolldateien gespeichert. Die <table_id> entspricht der Sequenznummer. Diese Tabellen sind nur vorhanden, wenn Sie Pools von Protokolldateien verwenden, die dem ArcSDE-Administrator gehören.

Die Tabelle "<user_name>_sde_logdata<sde_id>_<#>" enthält die Liste der Datensätze in der Business-Tabelle, die Teil einer eigenständigen Protokolldatei sind. <sde_id> bezeichnet die Sitzungs-ID und <#> bezeichnet die Sequenz der eigenständigen Protokolldatei.

Die Tabelle "<user_name>_sde_logfile_data" enthält die Liste der Datensätze in der Business-Tabelle, die Teil jeder Protokolldatei sind.

Die Tabelle "<user_name>_sde_logfiles" enthält die Metadaten der Protokolldatei.

Die Tabelle "<user_name>_sde_session<sde_id>" wird erstellt, wenn Sie sitzungsbasierte Protokolldateien verwenden. Diese Tabelle wird verwendet, um Protokolldateidatensätze zu verfolgen, wenn eine verbundene Sitzung einen Auswahlsatz mit mehr Datensätzen als vom Anwendungsschwellenwert definiert erzeugt (100 Datensätze in ArcMap). Die Tabelle "<user_name>_sde_session<sde_id>" wird verworfen, wenn die Sitzung getrennt wird.

Gemeinsame Protokolldateien

Wenn Sie standardmäßigen gemeinsamen Protokolldateien verwenden, werden pro DBMS-Benutzer-ID zwei Tabellen erstellt und im Schema dieses DBMS-Benutzers gespeichert, sde_sde_logfiles und <user_name>_sde_logfile_data. Einmal erstellt bleiben diese Tabellen in der Geodatabase; alle Protokolldateieinträge werden jedoch gelöscht, wenn die verbindende Anwendung alle ihre Protokolldateien löscht.

Die gestrichelten Linien in diesem und den folgenden Diagrammen kennzeichnen eine implizite Beziehung zwischen Tabellen.

Gemeinsame ArcSDE-Protokolldateitabellen in Informix

Sitzungsbasierte Protokolldateitabellen

Wenn Sie die Protokolldateikonfiguration ändern, sodass sitzungsbasierte Protokolldateien verwendet werden, werden in der Geodatabase die Tabellen sde_sde_logfiles, <user_name>_sde_logfile_data und <user_name>_sde_session<sde_id> angezeigt. Diese Tabellen werden im Schema des Benutzers erstellt, dessen Sitzung die Tabellen erzeugt hat. Die Tabelle <user_name>_sde_logfile_data wird zwar erstellt, aber nicht ausgefüllt. Die Tabellen sde_sde_logfiles und <user_name>_sde_logfile_data bleiben in der Geodatabase, und die Tabelle sde_sde_logfiles wird abgeschnitten, sobald die verbindende Anwendung getrennt wird. Die Tabelle <user_name>_sde_session<sde_id> wird abgeschnitten, wenn die verbindende Anwendung die Protokolldateidatensätze nicht mehr benötigt (für ArcMap bedeutet dies, es gibt keinen Auswahlsatz mehr), und die Tabelle wird verworfen, sobald die Sitzung getrennt wird.

ArcSDE-Sitzungsprotokolldatei-Tabellen in Informix

Eigenständige Protokolldateitabellen

Wenn Sie eigenständige Protokolldateien verwenden, wird für jeden Auswahlsatz oberhalb des Auswahlgrenzwertes einer Sitzung eine neue Tabelle <user_name>_sde_logdata<sde_id>_<#> für jeden Layer erstellt. Die Tabellen sde_sde_logfiles und <user_name>_sde_logfile_data werden ebenfalls pro Sitzung erstellt, die Tabelle <user_name>_sde_logfile_data wird jedoch nicht ausgefüllt. Beide Tabellen werden im Schema des Benutzers erstellt, der die Erstellung verursacht hat.

Die Tabellen <user_name>_sde_logdata<sde_id>_<#> werden abgeschnitten, wenn die verbindende Sitzung die Protokolldateien nicht mehr benötigt. Die Tabellen werden gelöscht, sobald die Sitzung getrennt wird. Die Tabelle sde_sde_logfiles wird abgeschnitten, wenn die verbindende Anwendung getrennt wird.

Eigenständige ArcSDE-Protokolldateitabellen in Informix

Protokolldateitabellen-Pools

Die Tabelle sde_sde_logfile_pool wird bei der Erstellung der Geodatabase erstellt und im Schema des Geodatabase-Administrators gespeichert. Wenn Sie einen Pool eigenständiger oder sitzungsbasierter Protokolldateien verwenden, deren Besitzer der Geodatabase-Administrator ist, wird diese Tabelle verwendet. Zusätzlich werden sde_sde_logpool_<table_Id>-Tabellen in der Geodatabase erstellt. Die Anzahl der erstellten sde_sde_logpool_<table_Id>-Tabellen hängt von der Zahl ab, die Sie für LOGFILEPOOLSIZE in der Tabelle sde_server_config angeben. Im Beispiel unten ist LOGFILEPOOLSIZE auf 10 festgelegt, daher werden die sde_sde_logpool_<table_Id>-Tabellen 1 bis 10 erstellt.

Alle für Protokolldatei-Pools erstellten Tabellen werden im Schema des Geodatabase-Administrators erstellt.

Ein Pool von ArcSDE-Protokolldateitabellen in Informix

HinweisHinweis:

Wenn MAXSTANDALONELOGS auf einen Wert über 0 (Null) festgelegt ist und ein Benutzer, der Tabellen in der Datenbank erstellen kann, einen Auswahlsatz erstellt, der den Grenzwert für die Erstellung von Protokolldateien überschreitet, wird im Schema dieses Benutzers eine eigenständige Protokolldateitabelle erzeugt.

Systemtabellen für Protokolldateien

Nachfolgend sind die Definitionen für die Tabellen aufgeführt, die für ArcSDE-Protokolldateien verwendet werden. In Informix wird den Tabellennamen der Name des Benutzers vorangestellt, in dessen Schema die Tabelle gespeichert wird.

sde_sde_logfile_pool

Die Tabelle sde_sde_logfile_pool enthält eine Liste der aktuell ausgecheckten Protokolldateien. Diese Tabelle wird nach der Geodatabase-Erstellung erstellt und gehört dem Geodatabase-Administrator.

Feldname

Feldtyp

Beschreibung

Null?

table_id

integer

Gibt die Tabelle für den Protokolldatei-Pool an.

NOT NULL

sde_id

integer

Identifiziert, welche sde-Verbindung die gegebene Protokolldatei-Pool-Tabelle aktuell verwendet. "sde_id" verweist auf die Spalte "sde_id" der Tabelle "process_information". Wenn "sde_id" den Wert NULL aufweist, wird diese Protokolldatei-Pool-Tabelle derzeit nicht verwendet.

sde_sde_logpool_<table_id>

Die =sde_sde_logpool_<table_Id>-Tabelle kann von Benutzern ausgecheckt werden und enthält entweder eigenständige oder sitzungsbasierte Protokolldateien. Die <TABLE_ID> entspricht der Sequenznummer. Diese Tabellen sind nur vorhanden, wenn Sie Protokolldatei-Pools verwenden, deren Besitzer der Geodatabase-Administrator ist.

Feldname

Feldtyp

Beschreibung

Null?

logfile_data_id

integer

Gibt an, zu welcher Protokolldatei die Zeilen-ID gehört.

Eine neue "logfile_data_id" wird immer dann zugewiesen, wenn eine Protokolldatei abgeschnitten wird, um teure Löschvorgänge zu vermeiden. Die "logfile_data_id" ist ein Verweis auf die "logfile"-Metadaten in "sde_logfiles".

NOT NULL

sde_row_id

integer

Die Zeilen-ID oder Shape-ID der Business-Tabellen-Zeile, die protokolliert wird; Protokolldateien können entweder Zeilen-IDs oder Shape-IDs protokollieren.

NOT NULL

<user_name>_sde_logdata<sde_id>_<#>

Die Tabelle <user_name>_sde_logdata<sde_id>_<#> enthält die Liste der Datensätze in der Business-Tabelle, die Teil einer eigenständigen Protokolldatei sind. Der Name der Tabelle enthält die Sitzungs-ID und eigenständige Protokolldateisequenz. Diese Tabelle gehört dem Benutzer, durch den die Tabelle erzeugt wurde.

Feldname

Feldtyp

Beschreibung

Null?

sde_row_id

integer

Die Zeilen-ID oder Shape-ID der Business-Tabellenzeile, die protokolliert wird.

<user_name>_sde_logfile_data

Die Tabelle <user_name>_sde_logfile_data enthält die Liste der Datensätze in der Business-Tabelle, die Teil jeder Protokolldatei sind. Diese Tabelle gehört dem Benutzer, durch den die Tabelle erzeugt wurde.

Feldname

Feldtyp

Beschreibung

Null?

logfile_data_id

integer

Identifiziert, zu welcher Protokolldatei die Zeilen-ID gehört; eine neue "logfile_data_id" wird immer dann zugewiesen, wenn eine Protokolldatei abgeschnitten wird, um teure Löschvorgänge zu vermeiden. Gelöschte Werte in "sde_logfile_data" werden auch als gelöscht markiert, indem ein anderer "logfile_data_id"-Wert zugewiesen wird. Die "logfile_data_id" ist ein Verweis auf die "logfile"-Metadaten in "sde_logfiles".

sde_row_id

integer

Die Zeilen-ID oder Shape-ID der Business-Tabellenzeile, die protokolliert wird; in Protokolldateien können entweder Zeilen-IDs, Shape-IDs oder Benutzer-IDs protokolliert werden.

row_id

integer

Identifiziert einen Datensatz eindeutig und aktiviert das Entfernen doppelter "<logfile_data_id, sde_row_id>"-Werte.

<user_name>_sde_logfiles

Die Tabelle sde_sde_logfiles enthält die Metadaten der Protokolldatei. Diese Tabelle gehört dem Benutzer, durch den die Tabelle erzeugt wurde.

Feldname

Feldtyp

Beschreibung

Null?

logfile_name

varchar(255)

Ein eindeutiger, benutzerdefinierter (oder anwendungsdefiniert) Name für die Protokolldatei.

NOT NULL

logfile_id

integer

Gibt die Protokolldatei eindeutig an.

NOT NULL

logfile_data_id

integer

Gibt an, zu welcher Protokolldatei die Zeilen-ID gehört.

Eine neue "logfile_data_id" wird immer dann zugewiesen, wenn eine Protokolldatei abgeschnitten wird, um teure Löschvorgänge zu vermeiden.

NOT NULL

registration_id

integer

Die Registrierungs-ID der Business-Tabelle, für die IDs in dieser Protokolldatei protokolliert werden.

NOT NULL

flags

integer

Eine Bitmaske von Werten, die Eigenschaften der Protokolldatei angeben.

session_tag

integer

Eine eindeutige Kennung für die Sitzung einer Verbindung. Damit können z. B. alle temporären Protokolldateien, die zu ihrer Sitzung gehören, bereinigt werden.

logfile_data_db

varchar(32)

Der Name der Datenbank, in der die Tabelle mit den IDs für diese Protokolldatei gespeichert ist.

logfile_data_owner

varchar(32)

Der Name des Besitzers der Tabelle mit den IDs für diese Protokolldatei.

logfile_data_table

varchar(32)

Der Name der Tabelle, in der die IDs für diese Protokolldatei enthalten sind. Hierbei kann es sich um die herkömmliche "sde_logfile_data"-Tabelle oder eine Protokoll-Pool-Tabelle, eine Sitzungstabelle oder eine eigenständige "sde_logdata<sde_id>_<#>"-Tabelle handeln.

column_name

varchar(32)

Der Name der Spalte in der Business-Tabelle, die protokolliert wird. In der Regel ist dies die Zeilen-ID oder Shape-ID. Sie können jedoch auch eine beliebige ganzzahlige Spalte angeben, die protokolliert werden soll.

<user_name>_sde_session<sde_id>

Die Tabelle <user_name>_sde_session<sde_id> wird erstellt, wenn Sie sitzungsbasierte Protokolldateien verwenden. Diese Tabelle wird verwendet, um Protokolldateidatensätze zu verfolgen, wenn eine verbundene Sitzung einen Auswahlsatz mit mehr Datensätzen als vom Anwendungsschwellenwert definiert erzeugt (100 Datensätze in ArcMap). Die Tabelle <user_name>_sde_session<sde_id> wird verworfen, wenn die Sitzung getrennt wird.

Feldname

Feldtyp

Beschreibung

Null?

logfile_data_id

integer

Gibt an, zu welcher Protokolldatei die Zeilen-ID gehört.

Eine neue "logfile_data_id" wird immer dann zugewiesen, wenn eine Protokolldatei abgeschnitten wird, um teure Löschvorgänge zu vermeiden. Die "logfile_data_id" ist ein Verweis auf die "logfile"-Metadaten in "sde_logfiles".

NOT NULL

sde_row_id

integer

Die Zeilen-ID oder Shape-ID der Business-Tabellen-Zeile, die protokolliert wird; Protokolldateien können entweder Zeilen-IDs oder Shape-IDs protokollieren.

NOT NULL

Protokolldateitabellen in einem XML-Dokument

In XML-Dokumenten werden keine Protokolldateitabellen gespeichert. Wenn Sie das Geodatabase-Schema in ein XML Workspace-Dokument exportieren, nachdem Sie das Schema importiert haben, werden die Protokolldateitabellen daher neu erzeugt, sobald Benutzer das nächste Mal einen Auswahlsatz mit mehr Datensätzen als dem Protokolldateischwellenwert erstellen.

9/22/2013