Kartenserver-Cache exportieren (Server)

Zusammenfassung

Exportiert Kacheln eines Kartenbild-Layer-Cache als Cache-Dataset oder Kachelpaket in einen Festplattenordner. Die Kacheln können in andere Caches exportiert werden. Außerdem ist der Zugriff darauf von ArcGIS Desktop oder mobilen Geräten als Raster-Dataset unabhängig vom übergeordneten Service möglich.

Verwendung

  • Erstellen Sie vor dem Ausführen dieses Werkzeugs auf dem Datenträger den Ordner, der die exportierten Kacheln enthalten soll.

  • Das ArcGIS Server-Konto muss Schreibzugriff auf den Ziel-Cache-Ordner haben. Wenn dem ArcGIS Server-Konto kein Schreibzugriff auf den Ziel-Cache-Ordner gewährt werden kann, der ArcGIS Pro-Client jedoch über den entsprechenden Schreibzugriff verfügt, aktivieren Sie den Parameter Daten vom Server kopieren.

  • Mit dem Parameter Kacheln überschreiben können die Kacheln im Ziel-Cache vollständig von den exportierten Kacheln überschrieben werden, statt die Bilder zu überblenden. Exportierte Kacheln können auf einen Interessenbereich beschränkt werden.

Parameter

BeschriftungErläuterungDatentyp
Eingabeservice

Der Kartenbild-Layer mit den zu exportierenden Cache-Kacheln. Sie können ihn auswählen, indem Sie im Portal zu dem Service navigieren. Sie haben auch die Möglichkeit, einen Web-Kachel-Layer aus dem Bereich Projekt der Registerkarte Portal auf diesen Parameter zu ziehen.

Image Service; Map Server
Ziel-Cache-Pfad

Der Ordner, in den der Cache exportiert wird. Dieser Ordner muss kein registriertes Server-Cache-Verzeichnis sein. Das ArcGIS Server-Konto muss Schreibzugriff auf den Ziel-Cache-Ordner haben. Wenn dem Serverkonto kein Schreibzugriff auf den Zielordner gewährt werden kann, der ArcGIS Desktop- oder ArcGIS Pro-Client jedoch über den entsprechenden Schreibzugriff verfügt, aktivieren Sie den Parameter Daten vom Server kopieren.

Folder
Cache-Exporttyp

Gibt den Typ des zu exportierenden Cache an. Kachelpakete sind für die Verwendung mit ArcGIS Maps SDKs for Native Apps geeignet.

  • Cache-DatasetExportiert wird ein Karten- oder Image-Service-Cache, der mithilfe von ArcGIS Server generiert wird. Er kann in ArcGIS Desktop und durch ArcGIS Server-Karten- oder -Image-Services verwendet werden. Dies ist die Standardeinstellung.
  • KachelpaketExportiert wird eine einzelne komprimierte Datei, worin das Cache-Dataset als Layer hinzugefügt und konsolidiert wird, sodass es freigegeben werden kann. Kann in ArcGIS Pro und mit ArcGIS Maps SDKs for Native Apps verwendet werden.
String
Daten von Server kopieren

Gibt an, wie Kacheln in den Zielordner verschoben werden.

Aktivieren Sie diesen Parameter nur, wenn dem ArcGIS Server-Konto kein Schreibzugriff auf den Zielordner gewährt werden kann und der ArcGIS Desktop- oder ArcGIS Pro-Client über den entsprechenden Schreibzugriff verfügt. Die Software exportiert die Kacheln im Server-Ausgabeverzeichnis, bevor sie in den Zielordner verschoben werden.

  • Aktiviert: Kacheln werden zuerst im Server-Ausgabeverzeichnis platziert und dann in den Zielordner verschoben. Der ArcGIS Desktop-Client muss Schreibzugriff auf den Zielordner haben.
  • Deaktiviert: Kacheln werden direkt in den Zielordner exportiert. Das ArcGIS Server-Konto muss Schreibzugriff auf den Zielordner haben.
Boolean
Speicherformattyp

Gibt das Speicherformat für den exportierten Cache an.

  • ReorganisierenKacheln werden in Bundle- und Bundlex-Dateien gruppiert, um Platz auf dem Datenträger zu sparen und das schnellere Kopieren von Caches zu ermöglichen. Wenn für den Parameter Cache-Exporttyp auf Kachelpaket festgelegt ist, ist dies die Standardeinstellung.
  • Compact V2Kacheln werden nur in Bundle-Dateien gruppiert. Dieses Format bietet eine bessere Performance bei Netzwerkfreigaben und Cloud-Speicher-Verzeichnissen. Wenn der Parameter Cache-Exporttyp auf Kachelpaket festgelegt ist, lautet die Erweiterung des Kachelpakets .tpkx. Diese wird von neueren Versionen der ArcGIS-Produkte wie ArcGIS Online, ArcGIS Enterprise 11.4, ArcGIS Maps SDKs for Native Apps 200.0 und höher sowie ArcGIS Runtime 100.5 bis 100.15 unterstützt.
  • ExplodedJede Kachel wird als einzelne Datei gespeichert.
String
Maßstäbe

Eine Liste von Maßstabsebenen, aus denen Kacheln exportiert werden.

Double
Anzahl der Caching-Service-Instanzen
(optional)

Legt die Anzahl der Instanzen fest, die zum Aktualisieren oder Generieren der Kacheln verwendet werden. Der Wert für diesen Parameter ist auf unbegrenzt (-1) festgelegt und kann nicht geändert werden.

Long
Interessenbereich
(optional)

Ein Interessenbereich, der den Kachelexport aus dem Cache räumlich beschränkt. Dieser Parameter ist hilfreich, wenn Sie unregelmäßig geformte Bereiche exportieren, da das Werkzeug das Cache-Dataset mit Pixelauflösung ausschneidet.

Wenn Sie keinen Interessenbereich angeben, wird die volle Ausdehnung der Karte exportiert.

Feature Set
Exportausdehnung
(optional)

Eine rechteckige Ausdehnung, die die zu exportierenden Kacheln definiert. Standardmäßig ist die Ausdehnung auf die volle Ausdehnung des Kartenservice festgelegt, in den Sie exportieren. Alternativ können Sie mit dem optionalen Parameter Interessenbereich den Vorgang auf Basis eines Polygons durchführen. Es wird empfohlen, nicht für beide Parameter Werte anzugeben. Wenn Werte für beide Parameter angegeben werden, hat der Parameter Interessenbereich Vorrang vor diesem Parameter.

  • Aktuelle Anzeigeausdehnung Kartenansicht: Die Ausdehnung basiert auf der aktiven Karte oder Szene.
  • Ausdehnung darstellen Rechtwinklig machen und Beenden: Die Ausdehnung basiert auf einem Rechteck, das auf der Karte oder Szene aufgezogen wurde.
  • Ausdehnung eines Layers:Layer Die Ausdehnung basiert auf einem aktiven Karten-Layer. Wählen Sie einen verfügbaren Layer aus, oder verwenden Sie die Option Ausdehnung von Daten in allen Layern. Jeder Karten-Layer bietet die folgenden Optionen:

    • Alle Features Alles auswählen: Die Ausdehnung aller Features.
    • Ausgewählte Features Bereich aus ausgewählten Features: Die Ausdehnung der ausgewählten Features.
    • Sichtbare Features Extent Indicator: Die Ausdehnung sichtbarer Features.

  • Durchsuchen Durchsuchen: Die Ausdehnung basiert auf einem Dataset.
  • Zwischenablage Einfügen: Die Ausdehnung kann in die und aus der Zwischenablage kopiert werden.
    • Ausdehnung kopieren Kopieren: Kopiert die Ausdehnung und das Koordinatensystem in die Zwischenablage.
    • Ausdehnung einfügen Einfügen: Fügt die Ausdehnung und das Koordinatensystem aus der Zwischenablage ein. Wenn die Zwischenablage kein Koordinatensystem enthält, wird für die Ausdehnung das Koordinatensystem der Karte verwendet.
  • Ausdehnung zurücksetzen: ZurücksetzenDie Ausdehnung wird auf den Standardwert zurückgesetzt.

Wenn die Koordinaten manuell eingegeben wurden, dann müssen die Koordinaten numerische Werte sein und im Koordinatensystem der aktiven Karte liegen. Die Karte kann statt der angegebenen Koordinaten auch andere Anzeigeeinheiten verwenden. Verwenden Sie für die Koordinaten in Richtung Süden und Westen Werte mit negativem Vorzeichen.

Extent
Kacheln überschreiben
(optional)

Legt fest, ob die Bilder im empfangenden Cache mit den Kacheln aus dem ursprünglichen Cache zusammengeführt oder von diesen überschrieben werden.

  • Aktiviert: Alle Pixel im Interessenbereich werden ersetzt, sodass die Kacheln im Ziel-Cache mit den Kacheln aus dem ursprünglichen Cache überschrieben werden.
  • Deaktiviert: Beim Exportieren der Kacheln werden die transparenten Pixel im ursprünglichen Cache ignoriert. Das Ergebnis ist ein zusammengeführtes oder überblendetes Bild im Ziel-Cache. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-Cache-Pfad

Der Ordner, in den der Cache exportiert wurde.

String

arcpy.server.ExportMapServerCache(input_service, target_cache_path, export_cache_type, copy_data_from_server, storage_format_type, scales, {num_of_caching_service_instances}, {area_of_interest}, {export_extent}, {overwrite})
NameErläuterungDatentyp
input_service

Der Kartenbild-Layer mit den zu exportierenden Cache-Kacheln.

Image Service; Map Server
target_cache_path

Der Ordner, in den der Cache exportiert wird. Dieser Ordner muss kein registriertes Server-Cache-Verzeichnis sein. Das ArcGIS Server-Konto muss Schreibzugriff auf den Ziel-Cache-Ordner haben. Wenn dem Serverkonto kein Schreibzugriff auf den Zielordner gewährt werden kann, der ArcGIS Desktop- oder ArcGIS Pro-Client jedoch über den entsprechenden Schreibzugriff verfügt, aktivieren Sie den Parameter Daten vom Server kopieren.

Folder
export_cache_type

Gibt den Typ des zu exportierenden Cache an. Kachelpakete sind für die Verwendung mit ArcGIS Maps SDKs for Native Apps geeignet.

  • CACHE_DATASETExportiert wird ein Karten- oder Image-Service-Cache, der mithilfe von ArcGIS Server generiert wird. Er kann in ArcGIS Desktop und durch ArcGIS Server-Karten- oder -Image-Services verwendet werden. Dies ist die Standardeinstellung.
  • TILE_PACKAGEExportiert wird eine einzelne komprimierte Datei, worin das Cache-Dataset als Layer hinzugefügt und konsolidiert wird, sodass es freigegeben werden kann. Kann in ArcGIS Pro und mit ArcGIS Maps SDKs for Native Apps verwendet werden.
String
copy_data_from_server

Gibt an, wie Kacheln in den Zielordner verschoben werden.

Stellen Sie für diesen Parameter COPY_DATA ein, wenn dem ArcGIS Server-Konto kein Schreibzugriff auf den Zielordner gewährt werden kann und der ArcGIS Desktop- oder ArcGIS Pro-Client über den entsprechenden Schreibzugriff verfügt. Die Software exportiert die Kacheln im Server-Ausgabeverzeichnis, bevor sie in den Zielordner verschoben werden.

  • COPY_DATAKacheln werden zuerst im Server-Ausgabeverzeichnis platziert und dann in den Zielordner verschoben. Der ArcGIS Desktop- oder ArcGIS Pro-Client muss über Schreibzugriff auf den Zielordner verfügen.
  • DO_NOT_COPYKacheln werden direkt in den Zielordner exportiert. Das ArcGIS Server-Konto muss Schreibzugriff auf den Zielordner haben. Dies ist die Standardeinstellung.
Boolean
storage_format_type

Gibt das Speicherformat für den exportierten Cache an.

  • COMPACTKacheln werden in Bundle- und Bundlex-Dateien gruppiert, um Platz auf dem Datenträger zu sparen und das schnellere Kopieren von Caches zu ermöglichen. Wenn der Parameter export_cache_type auf TILE_PACKAGE festgelegt ist, ist dies die Standardeinstellung.
  • COMPACT_V2Kacheln werden nur in Bundle-Dateien gruppiert. Dieses Format bietet eine bessere Performance bei Netzwerkfreigaben und Cloud-Speicher-Verzeichnissen. Wenn der Parameter export_cache_type auf TILE_PACKAGE festgelegt ist, lautet die Erweiterung des Kachelpakets .tpkx. Diese wird von neueren Versionen der ArcGIS-Produkte wie ArcGIS Online, ArcGIS Enterprise 11.4, ArcGIS Maps SDKs for Native Apps 200.0 und höher sowie ArcGIS Runtime 100.5 bis 100.15 unterstützt.
  • EXPLODEDJede Kachel wird als einzelne Datei gespeichert.
String
scales
[scales,...]

Eine Liste von Maßstabsebenen, aus denen Kacheln exportiert werden.

Double
num_of_caching_service_instances
(optional)

Legt die Anzahl der Instanzen fest, die zum Aktualisieren oder Generieren der Kacheln verwendet werden. Der Wert für diesen Parameter ist auf unbegrenzt (-1) festgelegt und kann nicht geändert werden.

Long
area_of_interest
(optional)

Ein Interessenbereich, der den Kachelexport aus dem Cache räumlich beschränkt. Dieser Parameter ist hilfreich, wenn Sie unregelmäßig geformte Bereiche exportieren, da das Werkzeug das Cache-Dataset mit Pixelauflösung ausschneidet.

Wenn Sie keinen Interessenbereich angeben, wird die volle Ausdehnung der Karte exportiert.

Feature Set
export_extent
(optional)

Eine rechteckige Ausdehnung, die die zu exportierenden Kacheln definiert. Standardmäßig ist die Ausdehnung auf die volle Ausdehnung des Kartenservice festgelegt, in den Sie exportieren. Alternativ können Sie mit dem optionalen Parameter Interessenbereich den Vorgang auf Basis eines Polygons durchführen. Es wird empfohlen, nicht für beide Parameter Werte anzugeben. Wenn Werte für beide Parameter angegeben werden, hat der Parameter Interessenbereich Vorrang vor diesem Parameter.

  • MAXOF: Die maximale Ausdehnung aller Eingaben wird verwendet.
  • MINOF: Die minimale gemeinsame Fläche aller Eingaben wird verwendet.
  • DISPLAY: Die Ausdehnung entspricht der sichtbaren Anzeige.
  • Layer-Name: Die Ausdehnung des angegebenen Layers wird verwendet.
  • Extent-Objekt: Die Ausdehnung des angegebenen Objekts wird verwendet.
  • Durch Leerzeichen getrennte Koordinatenzeichenfolge: Die Ausdehnung der angegebenen Zeichenfolge wird verwendet. Die Koordinaten werden in der Reihenfolge X-Min, Y-Min, X-Max, Y-Max ausgedrückt.
Extent
overwrite
(optional)

Legt fest, ob die Bilder im empfangenden Cache mit den Kacheln aus dem ursprünglichen Cache zusammengeführt oder von diesen überschrieben werden.

  • OVERWRITEAlle Pixel im Interessenbereich werden ersetzt, sodass die Kacheln im Ziel-Cache mit den Kacheln aus dem ursprünglichen Cache überschrieben werden.
  • MERGEBeim Exportieren der Kacheln werden transparente Pixel im ursprünglichen Cache ignoriert. Das Ergebnis ist ein zusammengeführtes oder überblendetes Bild im Ziel-Cache. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErläuterungDatentyp
output_cache_path

Der Ordner, in den der Cache exportiert wurde.

String

Codebeispiel

ExportMapServerCache: Beispiel 1 (eigenständiges Skript)

Exportieren von Cache-Kacheln für eine Feature-Class, während das Speicherformat von EXPLODED in COMPACT geändert wird.

# Name: ExportMapServerCache.py for ArcGIS Server
# Description: The following stand-alone script demonstrates how to export
# 		cache as CACHE_DATASET in COMPACT storage format and MERGE tiles
#               using an AREA_OF_INTEREST to TARGET_CACHE_PATH
#		which is accessible to server instances
# Requirements: os, sys, time and traceback modules

# Any line that begins with a pound sign is a comment and will not be executed
# Empty quotes take the default value.
# To accept arguments from the command line replace values of variables to
#                                                           "sys.argv[]"

# Import system modules
import arcpy
from arcpy import env
import os, sys, time, datetime, traceback, string

# Set environment settings
env.workspace = "C:/data"

# List of input variables for map service properties
connectionFile = r"C:\Users\<username>\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog"
server 			= "arcgis on MyServer_6080 (publisher)"
serviceName 		= "Rainfall.MapServer"
inputService 		= connectionFile + "\\" + server + "\\" + serviceName
targetCachePath 	= "C:/data/temp"
exportCacheType 	= "CACHE_DATASET"
copyDataFromServer 	= "DO_NOT_COPY"
storageFormat 		= "COMPACT"
scales 			= [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
areaOfInterest 		= "C:/data/101/Portland/Metro.shp"
exportExtents 		= ""
overwriteTiles 		= "MERGE"

currentTime = datetime.datetime.now()
arg1 	= currentTime.strftime("%H-%M")
arg2 	= currentTime.strftime("%Y-%m-%d %H:%M")
file 	= 'C:/data/report_%s.txt' % arg1

# print results of the script to a report
report = open(file,'w')

# use "scaleValues[0]","scaleValues[-1]","scaleValues[0:3]"

# Enter rectangular custom extent values for the "exportExtents" variable to
# constrain the exporting cache along the rectangular extents

try:
    starttime = time.clock()
    result = arcpy.server.ExportMapServerCache(inputService, targetCachePath,
                                               exportCacheType,
                                               copyDataFromServer,
                                               storageFormat, scales,
                                               numOfCachingServiceInstances,
                                               areaOfInterest, exportExtents,
					       overwriteTiles)
    finishtime = time.clock()
    elapsedtime = finishtime - starttime

    #print messages to a file
    while result.status < 4:
        time.sleep(0.2)
    resultValue = result.getMessages()
    report.write ("completed " + str(resultValue))

    print("Exported cache successfully for mapservice " + serviceName + \
        " to " + targetCachePath + "\n using " + areaOfInterest + "\n in " + \
        str(elapsedtime) + " sec \n on " + arg2)

except Exception as e:
    # If an error occurred, print line number and error message
    tb = sys.exc_info()[2]
    report.write("Failed at \n" "Line %i" % tb.tb_lineno)
    report.write(str(e))

print("Exported Map server Cache  using area of Interest")

report.close()
ExportMapServerCache: Beispiel 2 (eigenständiges Skript)

Exportieren des Cache als TILE_PACKAGE, wenn die ArcGIS Server-Instanzen nicht auf den Zielordner zugreifen können.

# Name: ExportMapServerCache.py
# Description: The following stand-alone script demonstrates how to export cache
#               as TILE_PACKAGE for default number of scales of a service, to a
#               TARGET_CACHE_PATH which is inaccessible to server instances using
#               COPY_DATA_FROM_SERVER
# Requirements: os, sys, time and traceback modules

# Any line that begins with a pound sign is a comment and will not be executed
# Empty quotes take the default value.
# To accept arguments from the command line replace values of variables to
#                                                           "sys.argv[]"

# Import system modules
import arcpy
from arcpy import env
import os, sys, time, datetime, traceback, string

# Set environment settings
env.workspace = "C:/data"

# List of input variables for map service properties
connectionFile = r"C:\Users\<username>\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog"
server = "arcgis on MyServer_6080 (publisher)"
serviceName = "Rainfall.MapServer"
inputService = connectionFile + "\\" + server + "\\" + serviceName
targetCachePath = "C:/temp/usa"
exportCacheType = "TILE_PACKAGE"
copyDataFromServer = "COPY_DATA"
storageFormat = "COMPACT"
scaleValues = [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
exportExtents = ""
areaOfInterest = ""
overwriteTiles = "MERGE"

currentTime = datetime.datetime.now()
arg1 = currentTime.strftime("%H-%M")
arg2 = currentTime.strftime("%Y-%m-%d %H:%M")
file = 'C:/data/report_%s.txt' % arg1

# print results of the script to a report
report = open(file,'w')

# use "scaleValues[0]","scaleValues[-1]","scaleValues[0:3]"

try:
    starttime = time.clock()
    result = arcpy.server.ExportMapServerCache(inputService, targetCachePath,
                                               exportCacheType,
                                               copyDataFromServer,
                                               storageFormat, scales,
                                               numOfCachingServiceInstances,
                                               areaOfInterest,
                                               exportExtents, overwriteTiles)
    finishtime = time.clock()
    elapsedtime = finishtime - starttime

    #print messages to a file
    while result.status < 4:
        time.sleep(0.2)
    resultValue = result.getMessages()
    report.write ("completed " + str(resultValue))

    print("Exported cache successfully for mapservice " + serviceName + " to " + \
        targetCachePath + " in " + str(elapsedtime) + " sec \n on" + arg2)

except Exception as e:
    # If an error occurred, print line number and error message
    tb = sys.exc_info()[2]
    report.write("Failed at step 1 \n" "Line %i" % tb.tb_lineno)
    report.write(str(e))

print("Exported Map server Cache ")

report.close()

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen