ArcGIS Desktop

  • Dokumentation
  • Support

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS for Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

Hilfe

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Mehr...

Kartenserver-Cache exportieren

  • Zusammenfassung
  • Verwendung
  • Syntax
  • Codebeispiel
  • Umgebungen
  • Lizenzinformationen

Zusammenfassung

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

Verwendung

    Hinweis:

    Die Parameter für dieses Werkzeug wurden in Version 10.1 geändert. Modelle und Skripte, die vor 10.1 erstellt wurden und dieses Werkzeug verwenden, müssen geändert werden, um in 10.1 zu funktionieren.

    Beim Wechsel zu 10.1 Service Pack 1 müssen Sie alle Modelle, die dieses Werkzeug verwenden, öffnen und überprüfen, da es einen neuen Parameter enthält. Dieser Vorgang wird unter Automatisieren der Cache-Erstellung und von Aktualisierungen per Geoverarbeitung beschrieben.

  • 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. Falls dem ArcGIS-Server-Konto kein Schreibzugriff für den Ziel-Cache-Ordner gewährt werden kann, der ArcGIS for Desktop-Client aber darauf zugreifen kann, wählen Sie den Parameter Daten vom Server kopieren (copy_data_from_server) aus.

  • Mit dem diesem Werkzeug in Version 10.1 Service Pack 1 hinzugefügten 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.

Syntax

ExportMapServerCache_server (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})
ParameterErläuterungDatentyp
input_service

Der Karten- oder Image-Service, dessen Cache-Kacheln exportiert werden.

Dies ist eine Zeichenfolge, die sowohl die Server- als auch die Service-Informationen enthält. Um zu erfahren, wie diese Zeichenfolge erstellt wird, öffnen Sie ArcCatalog, wählen Sie Ihren Service im Kataloginhaltsverzeichnis aus, und beachten Sie den Text in der Werkzeugleiste Verzeichnis. Ändern Sie dann die umgekehrten Schrägstriche in Schrägstriche, z. B. GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer.

String
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. Falls dem ArcGIS-Server-Konto kein Schreibzugriff für den Zielordner gewährt werden kann, der ArcGIS for Desktop-Client aber darauf zugreifen kann, wählen Sie den Parameter Daten vom Server kopieren aus.

Folder
export_cache_type

Wählen Sie den Export des Cache als Cache-Dataset oder Kachelpaket aus. Kachelpakete sind für ArcGIS Runtime- und ArcGIS for Windows Mobile-Bereitstellungen geeignet.

  • CACHE_DATASET —Karten- oder Image-Service-Cache, der mithilfe von ArcGIS-Server generiert wird. Verwendbar in ArcMap und durch ArcGIS-Server-Karten- oder Image-Services. Dies ist die Standardeinstellung.
  • TILE_PACKAGE —Eine einzelne komprimierte Datei, der das Cache-Dataset als Layer hinzugefügt und konsolidiert wird, sodass es problemlos freigegeben werden kann. Verwendbar in ArcGIS for Desktop und ArcGIS Runtime sowie mobilen Anwendungen.
String
copy_data_from_server

Stellen Sie diese Option auf "COPY_DATA" ein, wenn nur das ArcGIS-Server-Konto keinen Schreibzugriff auf den Zielordner erhalten kann und der ArcGIS for Desktop-Client über Schreibzugriff verfügt. Die Software exportiert die Kacheln im Server-Ausgabeverzeichnis, bevor sie in den Zielordner verschoben werden.

  • COPY_DATA —Kacheln werden im Server-Ausgabeverzeichnis platziert und dann in den Zielordner verschoben. Der ArcGIS for Desktop-Client muss Schreibzugriff auf den Zielordner haben.
  • DO_NOT_COPY —Kacheln werden direkt in den Zielordner exportiert. Das ArcGIS-Server-Konto muss Schreibzugriff auf den Zielordner haben. Dies ist die Standardeinstellung.
Boolean
storage_format_type

Das Speicherformat des exportierten Cache.

  • COMPACT —Kacheln werden in Paketdateien gruppiert, um Platz auf dem Datenträger zu sparen und das schnellere Kopieren von Caches zu ermöglichen. Dies ist die Standardeinstellung, wenn für den Cache-Exporttyp (export_cache_type in Python) das Kachelpaket ausgewählt wurde.
  • EXPLODED —Jede Kachel wird als einzelne Datei gespeichert (vor ArcGIS for Server 10 wurden Caches immer auf diese Weise gespeichert).
String
scales
[scales,...]

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

Double
num_of_caching_service_instances
(optional)

Die Gesamtzahl der Instanzen des Service "System/CachingTools", die Sie zum Ausführen dieses Werkzeugs reservieren möchten. Sie können die Maximale Anzahl von Instanzen pro Computer des Service "System/CachingTools" mithilfe des Fensters Service-Editor erhöhen, das über eine administrative Verbindung zu ArcGIS-Server verfügbar ist. Stellen Sie sicher, dass die Servercomputer die ausgewählte Anzahl von Instanzen unterstützen können.

Long
area_of_interest
(optional)

Ein Interessenbereich (Polygon), der räumlich beschränkt, wohin Kacheln aus dem Cache exportiert werden. Dabei kann es sich um eine Feature-Class oder um ein Feature handeln, die bzw. das sie interaktiv in ArcMap definieren. Dieser Parameter ist hilfreich, falls Sie unregelmäßig geformte Bereiche exportieren möchten, wenn 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 Karten-Service festgelegt, in den Sie importieren. Beachten Sie den optionalen Parameter Interessenbereich des Werkzeugs, der es ihnen ermöglicht, den Import alternativ mithilfe eines Polygons durchzuführen. Sie sollten für einen Auftrag keine Werte für beide Parameter angeben. Wenn Werte für beide Parameter angegeben werden, hat der Interessenbereich Vorrang vor Importausdehnung

Extent
overwrite
(optional)
  • OVERWRITE —Beim Export werden alle Pixel im Interessenbereich ersetzt, wobei die Kacheln im Ziel-Cache effektiv mit den Kacheln aus dem ursprünglichen Cache überschrieben werden.
  • MERGE —Beim Importieren der Kacheln werden transparente Pixel im ursprünglichen Cache standardmäßig ignoriert. Das Ergebnis ist ein zusammengeführtes oder überblendetes Bild im Ziel-Cache. Dies ist das Standardverhalten.
Boolean

Codebeispiel

ExportMapServerCache - Beispiel 1Exportieren 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.ExportMapServerCache_server(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, 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(e.message)

print "Exported Map server Cache  using area of Interest"

report.close()

ExportMapServerCache - Beispiel 2Exportieren 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.ExportMapServerCache_server(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, 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(e.message)
    
print "Exported Map server Cache "

report.close()

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

  • ArcGIS Desktop Basic: Ja
  • ArcGIS Desktop Standard: Ja
  • ArcGIS Desktop Advanced: Ja

Verwandte Themen

  • Überblick über das Toolset "Caching"

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS Plattform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Über Esri

  • Über uns
  • Karriere
  • Insider-Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Datenschutz | Rechtliches