Resumen
Importa teselas desde una carpeta del disco a una caché de servicio de mapas o imágenes.
La carpeta de origen puede ser un elemento secundario de un directorio de caché del servidor registrado, una carpeta en la que se ha exportado una caché con anterioridad o un paquete de teselas (.tpk). El servicio de destino debe tener el mismo esquema de ordenamiento de teselas y formato de almacenamiento que la caché de origen.
Uso
Utilice esta herramienta para importar toda o parte de la caché de una carpeta a la otra.
El parámetro Sobrescribir teselas permite que las teselas importadas sobrescriban por completo las teselas existentes, en lugar de mezclar las imágenes. Las teselas importadas todavía se pueden restringir a un área de interés.
Este parámetro se agregó a esta herramienta en 10.1 Service Pack 1.
Sintaxis
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})
Parámetro | Explicación | Tipo de datos |
input_service | El mapa o servicio de imágenes al cual se importarán las teselas. Esta es una cadena de caracteres que contiene la información del servidor y de servicios. Para ver cómo construir esta cadena de caracteres, abra ArcCatalog, seleccione el servicio en el árbol Catálogo y observe el texto en la barra de herramientas Ubicación. Cambie las barras invertidas a barras diagonales, por ejemplo, GIS Servers/arcgis on MYSERVER (admin)/USA.MapServer. | Image Service; MapServer |
source_cache_type | Importa una caché desde un dataset de caché o paquete de teselas a un servicio de mapas o imágenes almacenado en caché que se ejecuta en el servidor.
| String |
source_cache_dataset (Opcional) | La ruta a la carpeta de caché que coincide con el nombre del marco de datos. No tiene que especificar este parámetro al directorio de caché del servidor registrado; la mayoría del tiempo especificará una ubicación del disco donde las teselas se exportaron previamente. La ubicación debe ser accesible a la cuenta de ArcGIS Server. Si a la cuenta de ArcGIS Server no se le puede conceder acceso a esta ubicación, establezca el parámetro upload_data_to_server en UPLOAD_DATA. | Raster Dataset |
source_tile_package (Opcional) | La ruta al paquete de teselas (.tpk) que se importará. La ubicación debe ser accesible a la cuenta de ArcGIS Server. Al importar un archivo del paquete de teselas a un servicio de mapas o imágenes almacenado en caché, el parámetro upload_data_to_server se pasa por alto, ya que se establecerá automáticamente en UPLOAD_DATA. | File |
upload_data_to_server (Opcional) | Establezca este parámetro en UPLOAD_DATA si la cuenta de ArcGIS Server no tiene acceso de lectura a la caché de origen. La herramienta cargará la caché de origen en el directorio de cargas de ArcGIS Server antes de moverla al directorio de caché de ArcGIS Server.
| Boolean |
scales [scales,...] (Opcional) | Lista de niveles de escala a los cuales se importarán las teselas. | Double |
num_of_caching_service_instances (Opcional) | La cantidad total de instancias del servicio System/CachingTools que desea dedicar a ejecutar esta herramienta. Puede aumentar el ajuste Cantidad máxima de instancias por equipo del servicio System/CachingTools utilizando la ventana Editor del servicio, que está disponible a través de una conexión administrativa a ArcGIS Server. Asegúrese de que los equipos servidores sean compatibles con el número de instancias elegido. | Long |
area_of_interest (Opcional) | Un polígono del área de interés que restringe espacialmente dónde se importan las teselas en la caché. Este parámetro es útil si desea importar teselas para áreas con formas irregulares, ya que la herramienta recorta el dataset de la caché que interseca con el polígono en la resolución de píxeles y lo importa al directorio de caché del servicio. Si no se proporciona un valor para este parámetro, se tuilizará el valor del parámetro Importar extensión. La opción predeterminada es utilizar la extensión completa del mapa. | Feature Set |
import_extent (Opcional) | Una extensión rectangular que define las teselas que se tienen que importar en la memoria caché. De forma predeterminada, la extensión se encuentra configurada como la extensión completa del servicio de mapas en el que realiza la importación. Observe que el parámetro opcional de esta herramienta, Área de interés, le permite restringir espacialmente las teselas se importan mediante una forma irregular. Si los valores se proporcionan para los dos parámetros, el Área de interés prevalece sobre Importar extensión. | Extent |
overwrite (Opcional) | Especifica si las imágenes en la caché de destino se fusionarán con las teselas de la caché de origen o bien se sobrescribirán.
| Boolean |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_job_url | La URL de salida. | Cadena |
Muestra de código
Ejemplo 1 de ImportMapServerCache (secuencia de comandos independiente)
Importe un dataset de caché a un servicio almacenado en caché para el número predeterminado de escalas. Las teselas en la caché de recepción se sobrescribirán con las teselas que se están importando.
# 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()
Ejemplo 1 de ImportMapServerCache (secuencia de comandos independiente)
Importe teselas de caché para un área de interés, desde un paquete de teselas en un servicio de caché.
# 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"
Entornos
Esta herramienta no utiliza ningún entorno de geoprocesamiento.
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí