Zusammenfassung
Importiert Kacheln aus einem Festplattenordner in einen Karten- oder Image-Service-Cache.
Der Quellordner kann ein untergeordnetes Element eines registrierten Server-Cache-Verzeichnisses, ein Ordner, in den zuvor ein Cache exportiert wurde, oder ein Kachelpaket (.tpk) sein. Der Ziel-Service muss das gleiche Kachelschema und das gleiche Speicherformat wie der Quell-Cache aufweisen.
Verwendung
Verwenden Sie dieses Werkzeug zum Importieren aller Teile eines Cache aus einem Ordner in einen anderen.
Mit dem Parameter Kacheln überschreiben können die vorhandenen Kacheln vollständig von den importierten Kacheln überschrieben werden, statt die Bilder zu überblenden. Importierte Kacheln können auf einen Interessenbereich beschränkt werden.
Dieser Parameter wurde in Version 10.1 Service Pack 1 zu diesem Werkzeug hinzugefügt.
Syntax
arcpy.server.ImportMapServerCache(input_service, source_cache_type, {source_cache_dataset}, {source_tile_package}, {upload_data_to_server}, {scales}, {num_of_caching_service_instances}, {area_of_interest}, {import_extent}, {overwrite})
Parameter | Erklärung | Datentyp |
input_service | Der Karten- oder Image-Service, in den Kacheln importiert 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 den Service im Kataloginhaltsverzeichnis aus, und beachten Sie den Text auf der Werkzeugleiste Verzeichnis. Ändern Sie dann die umgekehrten Schrägstriche in Schrägstriche, z. B. GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer. | Image Service; MapServer |
source_cache_type | Importiert einen Cache aus einem Cache-Dataset oder Kachelpaket in einen gecachten Karten- oder Image-Service, der auf dem Server ausgeführt wird.
| String |
source_cache_dataset (optional) | Der Pfad zum Cache-Ordner, der dem Namen des Datenrahmens entspricht. Sie müssen kein registriertes Server-Cache-Verzeichnis angeben. In den meisten Fällen geben Sie einen Speicherort auf der Festplatte an, an den zuvor Kacheln exportiert wurden. Das ArcGIS Server-Konto sollte auf diese Position zugreifen können. Wenn dem ArcGIS Server-Konto kein Zugriff auf diesen Speicherort gewährt werden kann, legen Sie den Parameter upload_data_to_server auf UPLOAD_DATA fest. | Raster Dataset |
source_tile_package (optional) | Der Pfad zum Kachelpaket (.tpk), das importiert wird. Das ArcGIS Server-Konto sollte auf diese Position zugreifen können. Beim Importieren einer Kachelpaketdatei in einen gecachten Karten- oder Image-Service wird der Parameter upload_data_to_server ignoriert, da er automatisch auf UPLOAD_DATA festgelegt wird. | File |
upload_data_to_server (optional) | Legen Sie diesen Parameter auf UPLOAD_DATA fest, wenn das ArcGIS Server-Konto keinen Lesezugriff auf den Quell-Cache hat. Das Werkzeug lädt den Quell-Cache in das entsprechende ArcGIS Server-Uploadverzeichnis hoch, bevor er in das ArcGIS Server-Cache-Verzeichnis verschoben wird.
| Boolean |
scales [scales,...] (optional) | Eine Liste von Maßstabsebenen, auf denen Kacheln importiert werden. | Double |
num_of_caching_service_instances (optional) | Die Gesamtzahl der Instanzen des Service System/CachingTools, die zum Ausführen dieses Werkzeugs reserviert sind. Sie können die Einstellung 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 im Cache importiert werden. Dieser Parameter ist hilfreich, wenn Sie Kacheln für unregelmäßig geformte Flächen importieren möchten, da das Werkzeug das Cache-Dataset, das das Polygon mit Pixelauflösung überschneidet, ausschneidet und es dann in das Service-Cache-Verzeichnis importiert. Wenn Sie keinen Wert für diesen Parameter angeben, wird der Wert des Parameters Importausdehnung verwendet. Standardmäßig wird die volle Ausdehnung der Karte verwendet. | Feature Set |
import_extent (optional) | Eine rechteckige Ausdehnung, die die in den Cache zu importierenden Kacheln definiert. Standardmäßig ist die Ausdehnung auf die volle Ausdehnung des Kartenservice festgelegt, in den Sie importieren. Beachten Sie, dass Sie mit dem optionalen Parameter Interessenbereich des Werkzeugs die importierten Kacheln mithilfe eines unregelmäßigen Shape räumlich einschränken können. Wenn Werte für beide Parameter angegeben werden, hat der Parameter Interessenbereich Vorrang vor Importausdehnung. | Extent |
overwrite (optional) | Legt fest, ob Bilder im Ziel-Cache mit den Kacheln aus dem ursprünglichen Cache zusammengeführt oder von diesen überschrieben werden.
| Boolean |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_job_url | Die Ausgabe-URL. | Zeichenfolge |
Codebeispiel
ImportMapServerCache – Beispiel 1 (eigenständiges Skript)
Importieren eines Cache-Datasets in einen gecachten Service für die Standardanzahl an Maßstäben. Kacheln im empfangenden Cache werden von den importierten Kacheln überschrieben.
# Name: ImportMapServerCache.py
# Description: The following stand-alone script demonstrates how to import map
# server cache from a source directory with CACHE_DATASET and OVERWRITE
# existing cache on the service for the number of scales specified without
# Uploading data to 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
sourceCacheType = "CACHE_DATASET"
sourceCacheDataset = "C:/data/destination_folder/Layers"
sourceTilePackage = ""
uploadDataToServer = "DO_NOT_UPLOAD"
scales = [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
areaOfInterest = ""
importExtents = ""
overwriteTiles = "OVERWRITE"
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 "scales[0]","scales[-1]","scales[0:3]"
try:
starttime = time.clock()
result = arcpy.ImportMapServerCache_server(inputService, sourceCacheType,
sourceCacheDataset,
sourceTilePackage,
uploadDataToServer, scales,
numOfCachingServiceInstances,
areaOfInterest, importExtents,
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 "Imported Map server Cache Tiles successfully for" + serviceName +\
" from" + sourceCacheDataset + " in " + str(elapsedtime)+ "sec 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 "Imported Map server Cache Tiles "
report.close()
ImportMapServerCache – Beispiel 1 (eigenständiges Skript)
Importieren von Cache-Kacheln für einen Interessenbereich aus einem Kachelpaket in einen Cache-Service.
# Name: ImportMapServerCache.py
# Description: The following stand-alone script demonstrates how to import map
# server cache from a source directory with Tile Package to an existing service for
# the default number of scales specified using an AOI by uploading data to remote server
# To Import cache tiles for the scales specified for given feature class
# 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
sourceCacheType = "TILE_PACKAGE"
sourceCacheDataset = ""
sourceTilePackage = "C:/data/destination_folder/TPK/Rainfall.tpk"
uploadDataToServer = "UPLOAD_DATA"
scales = [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
cacheDir = "C:/arcgisserver/arcgiscache"
areaOfInterest = "C:/data/101/Portland/Portland_Metro.shp"
importExtents = ""
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 "scales[0]","scales[-1]","scales[0:3]"
try:
starttime = time.clock()
result = arcpy.ImportMapServerCache_server(inputService, sourceCacheType,
sourceCacheDataset,
sourceTilePackage,
uploadDataToServer, scales,
numOfCachingServiceInstances,
areaOfInterest, importExtents,
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 "Imported Map server Cache Tiles successfully for " + serviceName +\
" from " + sourceTilePackage + " to " + cacheDir + " using " +\
areaOfInterest + " in " + str(elapsedtime) + " sec 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 2 \n" "Line %i" % tb.tb_lineno)
report.write(e.message)
report.close()
print "Imported Map server Cache Tiles for the given feature class"
Umgebungen
Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja