Map Server-Cache exportieren (Server)
Zusammenfassung
Exportiert Kacheln aus einem Karten-Cache in einen Ordner auf dem Datenträger. Die Kacheln können entweder in andere Caches importiert werden, oder Benutzer können unabhängig vom übergeordneten Service von ArcGIS Desktop aus als Raster-Dataset darauf zugreifen.
Verwendung
-
Erstellen Sie vor dem Ausführen dieses Werkzeugs den Ordner auf dem Datenträger, der die exportierten Kacheln enthalten soll.
Syntax
Parameter | Erläuterung | Datentyp |
server_name |
Der ArcGIS Server-Computer, der den Service hostet, für den die Cache-Kacheln exportiert werden sollen. | String |
object_name |
Der Karten-Service, dessen Kacheln exportiert werden sollen. | String |
data_frame |
Der Quelldatenrahmen für den Karten-Service. | String |
target_cache |
Der Ordner, in den der Cache exportiert wird. Dieser Ordner muss kein registriertes Server-Cache-Verzeichnis sein. | Folder |
export_extent (optional) |
Eine rechteckige Ausdehnung, die die zu exportierenden Kacheln definiert. Standardmäßig ist die Ausdehnung auf die volle Ausdehnung der Quellkarte des Service festgelegt. Beachten Sie den optionalen Parameter dieses Werkzeugs, mit dem Sie den Kachelexport bei Bedarf auf eine Feature-Class-Grenze beschränken können. | Extent |
levels [levels,...] (optional) |
Eine Liste von Maßstabsebenen, aus denen Kacheln exportiert werden. | Double |
thread_count |
Die Anzahl der Karten-Service-Instanzen, die beim Exportieren des Caches verwendet werden sollen. Standardmäßig wird die maximal zulässige Anzahl von Instanzen verwendet (die Standardeinstellung für einen ArcGIS Server-Service ist 2). Wenn Sie über mehr Serverleistung verfügen, können Sie die maximal zulässige Anzahl von Instanzen über das Dialogfeld Service-Eigenschaften erhöhen und dann diesen Parameter erhöhen, wenn Sie das Werkzeug ausführen. | Long |
storage_format_type |
Das Speicherformat des exportierten Caches.
| String |
export_feature_class (optional) |
Eine Polygon-Feature-Class, die definiert, aus welchen Bereichen Kacheln aus dem Cache exportiert werden. Dies ist hilfreich, wenn Sie unregelmäßig geformte Flächen exportieren möchten. | Feature Class |
Codebeispiel
In diesem Beispiel wird "ExportMapServerCache" verwendet, um einen ganzen Karten-Cache für vier Maßstäbe zu exportieren.
# Name: ExportMapServerCache.py # Description: The following stand-alone script demonstrates how to export cache # for default number of scales of a service to a destination folder # 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 server = "MyServer" service = "Rainfall" dataFrame = "" exportExtents = "" scaleValues = [500000,250000,125000,64000] destinationCacheDir = "C:/data/temp" threadCount = "2" storageFormat = "Exploded" 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(server, service, dataFrame, destinationCacheDir, threadCount , storageFormat, exportExtents, scaleValues) 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 " + service + " to " + destinationCacheDir + " 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()
In diesem Beispiel wird "ExportMapServerCache" verwendet, um einen Karten-Cache basierend auf den Grenzen einer Feature-Class zu exportieren.
# Name: ExportMapServerCache.py # Description: The following stand-alone script demonstrates how to export cache # for default number of scales of a service to a destination folder # 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 server = "MyServer" service = "Rainfall" dataFrame = "" exportExtents = "" scaleValues = [500000,250000,125000,64000] destinationCacheDir = "C:/data/temp" threadCount = "2" storageFormat = "Exploded" 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(server, service, dataFrame, destinationCacheDir, threadCount , storageFormat, exportExtents, scaleValues) 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 " + service + " to " + destinationCacheDir + " 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()