ArcGIS stellt einen In-Memory-Workspace bereit, in den Ausgabe-Feature-Classes und Tabellen geschrieben werden können. Das Schreiben der Geoverarbeitungsausgabe in den In-Memory-Workspace ist eine Alternative zum Schreiben der Ausgabe in ein Verzeichnis auf einem Datenträger oder in ein Netzwerkverzeichnis. Das Schreiben der Daten in den Workspace im Arbeitsspeicher ist oft bedeutend schneller als das Schreiben in andere Formate, wie z. B. Shapefiles oder eine Geodatabase-Feature-Class. In den In-Memory-Workspace geschriebene Daten sind jedoch temporär und werden gelöscht, wenn die Anwendung geschlossen wird.
Um in den In-Memory-Workspace zu schreiben, verwenden Sie den Pfad in_memory, wie unten dargestellt.
Berücksichtigen Sie folgende Überlegungen, wenn Sie sich entscheiden, Ausgaben in den In-Memory-Workspace zu schreiben:
Verwalten des In-Memory-Workspaces
Wenn Daten in den In-Memory-Workspace geschrieben werden, wird der physische Speicher (RAM) des Computers belegt. Wenn zu viele Daten in diesen Workspace geschrieben werden, wird möglicherweise der gesamte Speicher des Computers verwendet, und es können keine weiteren Daten in den Speicher geschrieben werden. Außerdem gibt es möglicherweise nicht genügend Speicher, um rechenintensive Anwendungen wie z. B. ArcGIS effizient auszuführen, wenn der Speicher des Computers ganz oder teilweise verwendet wird, um Daten im Workspace zu speichern. In diesem Fall werden alle Tasks in der Anwendung möglicherweise sehr langsam ausgeführt.
Die langsamere Verarbeitung der Anwendung macht die Vorteile, die die Verwendung des In-Memory-Workspaces mit sich bringt, schließlich zunichte. Wenn dieser Punkt erreicht ist, sind auch die anderen im System ausgeführten Anwendungen und die Menge an verfügbarem physischem Speicher betroffen. Vermeiden Sie, den In-Memory-Workspace zu verwenden, wenn die zu schreibenden Daten so groß sind, dass sich die Anwendung verlangsamt.
Bei der Verwendung von In-Memory-Workspace sollten alle Zwischendaten so schnell wie möglich gelöscht werden, um diese Systemspeicherressourcen wieder freizugeben. Das Werkzeug Löschen kann zum Löschen von Daten im In-Memory-Workspace verwendet werden. Sie können einzelne Tabellen oder Feature-Classes oder den ganzen Workspace löschen, um den gesamten Workspace-Inhalt zu löschen.
Speicherort des In-Memory-Workspace
Tabellen, Feature-Classes oder Raster, die in den In-Memory-Workspace geschrieben wurden, haben den Quellpfad GPInMemoryWorkspace (siehe unten).
Die lange, in geschwungene Klammern eingeschlossene Zeichenfolge hinter {} hinter GPInMemoryWorkspace ist eine von ArcGIS erstellte und verwendete eindeutige Kennung.
Verwenden von in_memory in Python
Sie können den Workspace in_memory auch wie im unten dargestellten Codebeispiel in Python verwenden.
import arcpy
table = arcpy.CreateTable_management("in_memory", "table1")
arcpy.AddField_management(table, "Field1", "TEXT", field_length=20)
cursor = arcpy.da.InsertCursor(table, ["Field1"])
cursor.insertRow(["Hello World"])
Der Workspace in_memory kann nur für Geoverarbeitungswerkzeuge verwendet werden. Er ist kein allgemeingültiges virtuelles Verzeichnis, in das sämtliche Daten geschrieben werden können.
Im Skript können Sie das Werkzeug Löschen zum Löschen von Daten im In-Memory-Workspace verwenden. Sie können einzelne Tabellen oder Feature-Classes oder den ganzen Workspace löschen, um den gesamten Workspace-Inhalt zu löschen.