Feature-Classes in einer Geodatabase in PostgreSQL

Eine Feature-Class ist eine Sammlung von geographischen Features, die denselben geometrischen Typ aufweisen (Point, Line, Polygon, Multipoint, Annotation, Dimension oder Multipatch). Sie können z. B. Punkte für alle Bahnhöfe entlang einer Eisenbahnstrecke in einer Feature-Class speichern. In einer anderen Feature-Class können Sie Linien speichern, die alle Eisenbahnschienen darstellen.

In diesem Thema wird beschrieben, wie eine Feature-Class im Fenster "Katalog", im Datenbankmanagementsystem (DBMS) und in einem XML-Dokument angezeigt wird.

Feature-Classes in ArcGIS for Desktop

Es gibt sieben Typen von Feature-Classes, die Sie in ArcGIS for Desktop erstellen können: Point, Multipoint, Line, Polygon, Annotation, Dimension und Multipatch.

Die unterschiedlichen Feature-Class-Typen sind im Kataloginhaltsverzeichnis durch verschiedene Symbole gekennzeichnet. Die folgende Tabelle enthält die Symbole für die einzelnen Feature-Class-Typen.

Feature-Class-Symbol

Feature-Class-Typ

Symbol für Point- oder Multipoint-Feature-Class

Point oder Multipoint

Symbol für Line-Feature-Class

Line

Symbol für Polygon-Feature-Class

Polygon

Symbol für Annotation-Feature-Class

Annotation

Symbol für Dimension-Feature-Class

Dimension

Symbol für Multipatch-Feature-Class

Multipatch

In PostgreSQL umfasst der Name einer Feature-Class, wie er im Kataloginhaltsverzeichnis angezeigt wird, den Namen der Datenbank, in der sich die Feature-Class befindet, den Namen des Benutzers, der die Feature-Class besitzt, und den Namen der Feature-Class selbst.

Beispiel: Eine Feature-Class mit dem Namen "parcels" in der Geodatabase "stegageo", die Benutzer "harley" gehört, wird im Kataloginhaltsverzeichnis als "stegageo.harley.parcels" aufgelistet.

Eine Beschreibung der unterschiedlichen Feature-Class-Typen finden Sie unter Grundlagen zu Feature-Classes.

Feature-Classes in einer PostgreSQL-Datenbank

Feature-Classes einer Geodatabase in PostgreSQL-Datenbanken verwenden einen von zwei Geometriespeichertypen: ST_Geometry oder PostGIS-Geometrie.

Alle Feature-Classes verfügen über eine Basistabelle (auch als Business-Tabelle bezeichnet), in der Attributinformationen, eine Objekt-ID und ein Shape-Feld gespeichert werden. Das Objekt-ID-Feld und das Shape-Feld können andere Namen aufweisen, müssen aber in der Basistabelle einer Feature-Class enthalten sein.

TippTipp:

Die Basistabellen von Annotation- und Dimension-Feature-Classes müssen noch weitere obligatorische Felder enthalten. Eine Liste dieser Felder finden Sie unter Verwalten von Eigenschaften einer Annotation-Feature-Class und Eigenschaften von Bemaßungs-Features.

Feature-Classes in einer PostgreSQL-Datenbank mit dem Speichertyp "ST_Geometry"

Standardmäßig verwenden Feature-Classes, die in Geodatabases in einem PostgreSQL-Datenbankmanagementsystem (DBMS) erstellt wurden, den Speichertyp "ST_Geometry". Das bedeutet, dass der Business-Tabelle der Feature-Class eine ST_Geometry-Spalte hinzugefügt wird, um das räumliche Attribut zu speichern.

ST_Geometry ist eine abstrakte, nicht instanziierbare übergeordnete Objektklasse, deren Subclasses instanziierbar sind. Weitere Informationen finden Sie unter Was ist der Speichertyp "ST_Geometry"?

In ArcGIS mit dem ST_Geometry-Speichertyp erstellte Feature-Classes erstellen im Schema des Besitzers eine Business-Tabelle mit einer ST_Geometry-Spalte. Daneben werden den Tabellen sde_layers, sde_table_registry, sde_geometry_columns, sde_column_registry, sde_spatial_references (wenn ein Raumbezug definiert wurde) und gdb_items Datensätze im Schema des SDE-Benutzers hinzugefügt, um Informationen zur Feature-Class zu verfolgen. In der Tabelle gdb_itemtypes im Schema des SDE-Benutzers wird der Datentyp definiert (in diesem Fall "Feature-Class").

Nachdem Sie Daten geladen haben, enthält die Datenbank zahlreiche i-Tabellen und gespeicherte Prozeduren. Diese gespeicherten Prozeduren und i-Tabellen werden zum Generieren von Feature-IDs für Feature-Classes verwendet. Die Namen der i-Tabellen enthalten eine Nummer. Diese Nummer entspricht der registration_id der Feature-Class in der Tabelle sde_table_registry. Eine Bearbeitung dieser Tabellen oder gespeicherten Prozeduren wird nicht unterstützt und sollte unbedingt vermieden werden.

View a diagram of a feature class using ST_Geometry storage in PostgreSQL.

HinweisHinweis:

Sie benötigen Adobe Acrobat Reader, um die Datei zu öffnen.

Gestrichelte Linien geben implizite Beziehungen zwischen Spalten an, und durchgezogene Linien geben explizite Beziehungen zwischen Spalten an.

Feature-Classes in einer PostgreSQL-Datenbank mit PostGIS-Geometrie

Wenn Sie PostGIS installieren und die Datenbank mit der PostGIS-Vorlage erstellt wird, können Sie ihre erweiterten räumlichen Datentypen Well-Known Text (EWKT) und Well-Known Binary (EWKB) verwenden, um Feature-Classes zu erstellen. In diesem Fall wird der Business-Tabelle eine Geometriespalte hinzugefügt, um die Feature-Geometrie zu speichern. In der Geodatabase wird dieser Geometriespeichertyp als "PG_GEOMETRY" bezeichnet.

Standardmäßig wird der Parameter "GEOMETRY_STORAGE" des Konfigurationsschlüsselworts "DEFAULTS DBTUNE" auf "ST_GEOMETRY" festgelegt. Wenn Sie stattdessen PG_GEOMETRY-Speicherung für die meisten der Feature-Classes verwenden möchten, können Sie den Parameter "GEOMETRY_STORAGE" unter dem Schlüsselwort "DEFAULTS" ändern und ihn auf "PG_GEOMETRY" festlegen. (Verwenden Sie den Befehl "sdedbtune", um DBTUNE-Parametereinstellungen zu ändern.) Oder Sie können das Schlüsselwort "PG_GEOMETRY" angeben, wenn Sie Feature-Classes durch ArcGIS oder mithilfe von ArcSDE-Befehlen erstellen. In ArcGIS mit PG_GEOMETRY-Speicherung erstellte Feature-Classes erstellen im Schema des Besitzers eine Business-Tabelle mit einer Geometriespalte. Allen gleichen Tabellen im SDE-Schema werden Datensätze als Feature-Classes mit ST_GEOMETRY-Speicherung hinzugefügt. Außerdem wird der Tabelle "geometry_columns" im öffentlichen Schema ein Datensatz hinzugefügt. Aus diesem Grund muss jeder Benutzer, der Daten erstellt, die PG_GEOMETRY-Speicherung verwenden, die Berechtigungen "SELECT", "INSERT", "UPDATE" und "DELETE" für die Tabelle "public.geometry_columns" haben.

AchtungAchtung:

Da es keine PostGIS-Funktion gibt, um den in der Tabelle "public.geometry_columns" gespeicherten Tabellennamen zu aktualisieren, können Sie keine mit PG_GEOMETRY-Speicherung erstellten Feature-Classes umbenennen. Wenn Sie eine Feature-Class umbenennen, bleibt eine verwaiste Zeile in der Tabelle "public.geometry_storage" zurück.

View a diagram of a feature class using PostGIS geometry storage in PostgreSQL.

HinweisHinweis:

Sie benötigen Adobe Acrobat Reader, um die Datei zu öffnen.

Gestrichelte Linien geben implizite Beziehungen zwischen Spalten an, und durchgezogene Linien geben explizite Beziehungen zwischen Spalten an.

Weitere Informationen zum PostGIS-Geometriespeicher in der Geodatabase finden Sie unter ArcGIS und der PostGIS-Geometrietyp.

In einem XML-Workspace-Dokument gespeicherte Feature-Classes

Feature-Classes werden innerhalb der DataElement-Elemente definiert. Die DataElement-Tags für eine Feature-Class werden auf den Typ esri:DEFeatureClass festgelegt. Innerhalb der DataElement-Tags einer Feature-Class befinden sich weitere Elemente zur Definition der Feature-Class, z. B. "Field", "Domain", "ConfigurationKeyword" und "SpatialReference".

<DataElement xsi:type="esri:DEFeatureClass">
      <CatalogPath>/V=sde.DEFAULT/FC=stegageo.harley.parcels</CatalogPath> 
        <Name>stegageo.harley.parcels</Name> 
        <DatasetType>esriDTFeatureClass</DatasetType> 
        <DSID>13</DSID> 
        <Versioned>true</Versioned> 
        <CanVersion>true</CanVersion> 
        <HasOID>true</HasOID> 
        <OIDFieldName>objectid</OIDFieldName> 
        <Fields xsi:type="esri:Fields">
          <FieldArray xsi:type="esri:ArrayOfField">
            <Field xsi:type="esri:Field">
              <Name>objectid</Name> 
              <Type>esriFieldTypeOID</Type> 
              <IsNullable>false</IsNullable> 
              <Length>4</Length> 
              <Precision>10</Precision> 
              <Scale>0</Scale> 
              <Required>true</Required> 
              <Editable>false</Editable> 
              <AliasName>OBJECTID</AliasName> 
              <ModelName>OBJECTID</ModelName> 
            </Field>

Alle anderen Elemente zur Definition der Feature-Class

</DataElement>

Verwandte Themen

5/9/2014