Importar caché del servidor de mapas (Servidor)

Nivel de licencia:BasicStandardAdvanced

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 directorio hijo de un directorio de caché de un servidor registrado, una carpeta en la que una caché ha sido exportada previamente o un paquete de teselas (. tpk).El servicio de destino debe tener el mismo esquema de ordenamiento en teselas y el formato de almacenamiento que la caché de origen.

Uso

Sintaxis

ImportMapServerCache_server (input_service, source_cache_type, {source_cache_dataset}, {source_tile_package}, {upload_data_to_server}, {scales}, {num_of_caching_service_instances}, {import_extent}, {area_of_interest}, {overwrite})
ParámetroExplicaciónTipo 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, abra ArcCatalog, seleccione el servicio en el árbol Catálogo y tenga en cuenta el texto en la barra de herramientas Ubicación. A continuación, cambie las barras invertidas por barras normales, por ejemplo, GIS Servers/arcgis en MYSERVER (admin)/USA.MapServer.Servidor de mapas MapServer.

String
source_cache_type

Elegir importar caché desde un DATASET_DE_CACHÉ o PAQUETE_DE_TESELAS a un mapa en la caché o servicio de imágenes que se ejecutan en el servidor.

  • CACHE_DATASETCaché de mapa o servicio de imágenes generada mediante ArcGIS Server. Puede utilizarse en ArcMap y por ArcGIS Server o los servicios de imágenes de mapa.
  • PAQUETE_DE_TESELASUn único archivo comprimido único en el que el dataset de la caché se agrega como una capa y está consolidado para que se pueda compartir fácilmente. Puede utilizarse en ArcGIS for Desktop, así como en ArcGIS Runtime y las aplicaciones móviles.
String
source_cache_dataset
(Opcional)

La ruta a la carpeta de caché que coincide con el nombre del marco de datos. No tiene que introducir este parámetro al directorio de caché del servidor registrado, de hecho, la mayoría del tiempo introducirá una ubicación del disco donde las teselas se exportaron previamente. Esta ubicación debería ser accesible para la cuenta de ArcGIS Server. Si no se puede garantizar que la cuenta de ArcGIS Server acceda a esta ubicación, configure subir_datos_al_servidor para SUBIR_DATOS.

Raster Dataset
source_tile_package
(Opcional)

La ruta al paquete de teselas (. tpk) que se va a importar. Esta ubicación debería ser accesible para la cuenta de ArcGIS Server. Al importar un archivo de paquete de teselas para un mapa/servicio de imágenes en la caché, el parámetro subir_datos_al_servidor se ignora, ya que se configurará automáticamente para SUBIR_DATOS.

File
upload_data_to_server
(Opcional)

Establezca este parámetro para SUBIR_DATOS si la cuenta de ArcGIS Server no tiene acceso de lectura a la caché de origen. La herramienta volverá a cargar la caché de origen en el directorio de cargas de ArcGIS Server antes de pasar al directorio de caché de ArcGIS Server.

  • SUBIR_DATOSLas teselas se ubican en el directorio de cargas del servidor y, a continuación, se mueven al directorio de caché del servidor. Esto está habilitado de forma predeterminada cuando el tipo_de_formato_de_almacenamiento es PAQUETE_DE_TESELAS.
  • NO_SUBIRLas teselas se importan directamente en el directorio de caché del servidor. La cuenta de ArcGIS Server debe tener acceso de lectura a la caché de origen.
Boolean
scales
[scales,...]
(Opcional)

Lista de niveles de escala a los cuales se importarán las teselas.

Double
num_of_caching_service_instances
(Opcional)

El número total de casos del servicio System/CachingTools que desea dedicar a ejecutar esta herramienta. Puede aumentar la cantidad máxima de instancias por equipo del servicio System/CachingTools utilizando la ventana Editor de servicio disponible a través de una conexión administrativa a ArcGIS Server. Asegúrese de que los equipos de servidor son compatibles con el número de instancias elegidos.

Long
import_extent
(Opcional)

Una extensión rectangular que define las teselas que se tienen que importar en la caché. Por defecto, se puede ver la extensión completa del servicio de mapas hacia el cual realiza la importación. Observe el parámetro opcional de esta herramienta Área de interés que 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
area_of_interest
(Opcional)

Un polígono del área de interés que restringe espacialmente dónde se importan las teselas en la caché. Esta puede ser una clase de entidad o puede ser una entidad que usted defina de forma interactiva en ArcMap. 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 luego lo importa al directorio de la caché del servicio.

Si no se proporciona un valor para este parámetro, se utilizará el valor del parámetro Importar extensión. La opción predeterminada es utilizar la extensión completa del mapa.

Feature Set
overwrite
(Opcional)
  • OVERWRITELa importación sustituye todos los píxeles del área de interés sobrescribiendo con efectividad las teselas en la caché de destino con las de la caché de origen.
  • MERGECuando las teselas se importan, los píxeles transparentes en la caché de origen se ignoran de forma predeterminada. Como consecuencia de ello, se obtiene una imagen fusionada o mezclada en la caché de destino. Este es el comportamiento predeterminado.
Boolean

Ejemplo de código

Ejemplo 1

Importar un DATASET_DE_CACHÉ a un servicio 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 + "\n 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 2

Importar teselas de caché para un área de interés, desde un PAQUETE_DE_TESELAS a 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
# Author: ESRI

# 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 + "\n using "+ areaOfInterest
    " 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 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.

Temas relacionados

Información sobre licencias

ArcGIS for Desktop Basic: Sí
ArcGIS for Desktop Standard: Sí
ArcGIS for Desktop Advanced: Sí
5/16/2014