Indizes neu erstellen (Data Management)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Aktualisiert Indizes von Datasets und Systemtabellen, die in einer Enterprise-Geodatabase gespeichert wurden. Dieses Werkzeug wird in Enterprise-Geodatabases verwendet, um vorhandene Attribut- oder räumliche Indizes erneut zu erstellen. Veraltete Indizes können zu schlechter Geodatabase-Performance führen.

Verwendung

Syntax

RebuildIndexes_management (input_database, include_system, {in_datasets}, delta_only)
ParameterErläuterungDatentyp
input_database

Die Enterprise-Datenbank, die die zu aktualisierenden Daten enthält.

Workspace
include_system

Gibt an, ob Indizes für die Status- und State-Lineages-Tabellen neu erstellt werden.

HinweisHinweis:

Sie müssen der Geodatabase-Administrator sein, um diese Option erfolgreich ausführen zu können.

Diese Option gilt nur für Geodatabases. Wenn der Eingabe-Workspace eine Datenbank ist, wird diese Option ignoriert.

  • NO_SYSTEM Indizes werden für die Status- und State-Lineages-Tabelle nicht neu erstellt. Dies ist die Standardeinstellung.
  • SYSTEM Indizes werden für die Status- und State-Lineages-Tabellen neu erstellt.
Boolean
in_datasets
[in_datasets,...]
(optional)

Namen der Datasets, deren Indizes neu erstellt werden. Dataset-Namen verwenden Pfade relativ zum Eingabe-Workspace; vollständige Pfade werden nicht als Eingabe angenommen.

Dataset
delta_only

Gibt an, wie die Indizes für die ausgewählten Datasets erneut erstellt werden. Diese Option hat keine Auswirkungen, wenn input_datasets leer ist.

Diese Option gilt nur für Geodatabases. Wenn der Eingabe-Workspace eine Datenbank ist, wird diese Option ignoriert.

  • ALLIndizes werden für alle ausgewählten Datasets neu erstellt. Diese Option kann für Fälle verwendet werden, in denen die Business-Tabellen für die ausgewählten Datasets nicht oft aktualisiert werden und ein hohes Bearbeitungsvolumen in den Deltatabellen vorliegt.
  • ONLY_DELTASIndizes werden nur für die Delta-Tabellen der ausgewählten Datasets neu erstellt. Dies schließt räumliche Indizes sowie vom Benutzer erstellte Attributindizes und alle sonstigen in Geodatabases gepflegten Indizes für das Dataset ein. Dies ist die Standardeinstellung.
Boolean

Codebeispiel

RebuildIndexes - Beispiel 1 (Python-Fenster)

Das folgende Beispiel veranschaulicht, wie Indizes im Python-Fenster in ArcGIS neu erstellt werden.

# Import system modules
import arcpy

arcpy.RebuildIndexes_management("Database Connections/GDB@DC@server.sde", "NO_SYSTEM","db1.GDB.Roads;db1.GDB.Parcels", "ALL")
RebuildIndexes - Beispiel 2 (eigenständiges Skript)

Das folgende Beispiel veranschaulicht, wie Indizes in einem eigenständigen Skript neu erstellt werden.

# Name: RebuildIndexes.py
# Description: rebuilds indexes on delta tables for all datasets in an
# enterprise geodatabase

# Import system modules
import arcpy, os

# set workspace
workspace = arcpy.GetParameterAsText(0)

# set the workspace environment
arcpy.env.workspace = workspace

# NOTE: Rebuild indexes can accept a Python list of datasets.

# Get a list of all the datasets the user has access to.
# First, get all the stand alone tables, feature classes and rasters.
dataList = arcpy.ListTables() + arcpy.ListFeatureClasses() + arcpy.ListRasters()

# Next, for feature datasets get all of the datasets and featureclasses
# from the list and add them to the master list.
for dataset in arcpy.ListDatasets("", "Feature"):
    arcpy.env.workspace = os.path.join(workspace,dataset)
    dataList += arcpy.ListFeatureClasses() + arcpy.ListDatasets()

# reset the workspace
arcpy.env.workspace = workspace

# Get the user name for the workspace
userName = arcpy.Describe(workspace).connectionProperties.user.lower()

# remove any datasets that are not owned by the connected user.
userDataList = [ds for ds in dataList if ds.lower().find(".%s." % userName) > -1]

# Execute rebuild indexes
# Note: to use the "SYSTEM" option the workspace user must be an administrator.
arcpy.RebuildIndexes_management(workspace, "NO_SYSTEM", userDataList, "ALL")
print 'Rebuild Complete'

Umgebung

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Nein
ArcGIS for Desktop Standard: Ja
ArcGIS for Desktop Advanced: Ja
9/11/2013