Importar memoria caché de servidor de mapas (Servidor)
Resumen
Importa teselas desde una carpeta del disco a una memoria caché de mapa. La carpeta de origen puede ser secundaria del directorio de memoria caché de un servidor registrado o puede ser otra carpeta a la cual se exportaron las teselas previamente. El servicio de mapas de destino debe tener el mismo esquema de ordenamiento en teselas y formato de almacenamiento que la memoria caché del mapa de origen.
Uso
-
Utilice la herramienta Importar memoria caché del servidor de mapas para importar toda o parte de la memoria caché de una carpeta a la otra.
Sintaxis
Parámetro | Explicación | Tipo de datos |
server_name |
El equipo de ArcGIS Server que aloja el servicio al cual se importarán las teselas. | String |
object_name |
El nombre del servicio de mapas al cual se importarán las teselas. Este servicio de mapas debe tener definido un esquema de ordenamiento en teselas que coincida con el esquema de ordenamiento en teselas de las teselas que se importan. | String |
data_frame |
El marco de datos de origen para el servicio de mapas. | String |
source_cache_dataset |
La ruta a las teselas que se van a importar. Esta se representa por medio de un icono del dataset ráster en la interfaz de usuario de la herramienta. Si realiza secuencia de comandos, se trata de la ruta a la carpeta de memoria caché que coincide con el nombre del marco de datos. No tiene que dirigir este parámetro al directorio de memoria caché del servidor registrado, de hecho, la mayoría del tiempo se estará dirigiendo a la ubicación del disco donde las teselas se exportaron previamente. | Raster Dataset |
import_extent (Opcional) |
Una extensión rectangular que define las teselas que se importarán. 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 que le permite restringir alternativamente la importación de teselas a un límite de clase de entidad. | Extent |
levels [levels,...] (Opcional) |
Lista de niveles de escala a los cuales se importarán las teselas. | Double |
thread_count |
La cantidad de instancias de servicio de mapas a utilizar cuando importa la memoria caché. Por defecto, se utilizará la cantidad máxima de instancias permitidas (el valor predeterminado para un servicio de ArcGIS Server es 2). Si tiene más potencia en el servidor, puede aumentar la cantidad máxima de instancias permitidas en las Propiedades del servicio y después puede aumentar este parámetro cuando ejecuta la herramienta. | Long |
import_feature_class (Opcional) |
Una clase de entidad poligonal que define a dónde se importan las teselas en la memoria caché. Es útil si desea importar teselas para áreas con formas irregulares. | Feature Class |
Ejemplo de código
Para importar memoria caché de mapas con valores predeterminados.
# ImportMapServerCache example (stand-alone script) # Name: ImportMapServerCache.py # Description: The following stand-alone script demonstrates how to import map # server cache from a source directory to an existing service for # the default number of scales specified # 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 server = "MyServer" service = "Rainfall" dataFrame = "" cacheDir = "c:\\arcgisserver\\arcgiscache\\" importExtents = "" scaleValues = [500000,250000,125000,64000] threadCount = "2" sourceCache= "C:/data/destination_folder/Layers" specifiedFeatureClass = "C:/data/94/Portland/Portland_Metro.shp" 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.ImportMapServerCache_server(server, service, dataFrame, sourceCache, threadCount, importExtents , scaleValues, specifiedFeatureClass ) 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 " + service + " from " + sourceCache + " to " + cacheDir + service + "\n using "+ specifiedFeatureClass + " 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"
Para importar memoria caché de mapas restringida en los límites de clase de entidad.
# ImportMapServerCache example (stand-alone script) # Name: ImportMapServerCache.py # Description: The following stand-alone script demonstrates how to import map # server cache from a source directory to an existing service for # the default number of scales specified # 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 server = "MyServer" service = "Rainfall" dataFrame = "" cacheDir = "c:\\arcgisserver\\arcgiscache\\" importExtents = "" scaleValues = [500000,250000,125000,64000] threadCount = "2" sourceCache= "C:/data/destination_folder/Layers" specifiedFeatureClass = "C:/data/94/Portland/Portland_Metro.shp" 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.ImportMapServerCache_server(server, service, dataFrame, sourceCache, threadCount, importExtents , scaleValues, specifiedFeatureClass ) 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 " + service + " from " + sourceCache + " to " + cacheDir + service + "\n using "+ specifiedFeatureClass + " 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"