Exporter un cache de serveur de carte (Serveur)

Synthèse

Exporte des tuiles depuis un cache de couche d’images de carte en tant que jeu de données de cache ou paquetage de tuiles vers un dossier du disque. Vous pouvez importer les tuiles dans d’autres caches ou y accéder depuis ArcGIS Desktop ou depuis des appareils mobiles en tant que jeu de données raster, indépendamment de leur service parent.

Utilisation

  • Avant d'exécuter cet outil, créez le dossier sur le disque qui contiendra les tuiles exportées.

  • Le compte ArcGIS Server doit posséder des droits d’accès en écriture sur le dossier du cache cible. Si le compte ArcGIS Server ne peut pas obtenir de droits d’accès en écriture sur le dossier du cache cible, mais que le client ArcGIS Pro peut y accéder en écriture, cochez le paramètre Copier les données du serveur.

  • Le paramètre Remplacer les tuiles permet aux tuiles exportées de remplacer entièrement les tuiles du cache de destination, au lieu de fusionner les images. Les tuiles exportées peuvent toujours être contraintes dans une zone d'intérêt.

Paramètres

ÉtiquetteExplicationType de données
Service d'entrée

Couche d’images de carte dont les tuiles de cache doivent être exportées. Vous pouvez la choisir en accédant au service dans un portail, ou faire glisser une couche de tuiles Web depuis l’onglet Portail de la fenêtre Projet pour fournir ce paramètre.

Image Service; Map Server
Chemin de mise en cache cible

Dossier dans lequel le cache sera exporté. Ce dossier n’a pas besoin d’être un répertoire de cache du serveur enregistré. Le compte ArcGIS Server doit posséder des droits d’accès en écriture sur le dossier du cache cible. Si le compte de serveur ne peut pas obtenir de droits d’accès en écriture sur le dossier de destination, mais que le client ArcGIS Desktop ou ArcGIS Pro peut y accéder en écriture, choisissez le paramètre Copier les données du serveur.

Folder
Exporter le type de cache

Spécifie le type de cache à exporter. Les paquetages de tuiles sont adaptés à une utilisation avec ArcGIS Maps SDKs for Native Apps.

  • Jeu de données du cacheUn cache du service de carte ou d’imagerie généré à l’aide de ArcGIS Server est exporté. Il peut être utilisé dans ArcGIS Desktop et par les services de carte ou d’imagerie ArcGIS Server. Il s’agit de l’option par défaut.
  • Paquetage de tuilesUn fichier compressé unique dans lequel le jeu de données de cache est ajouté en tant que couche et consolidé afin de pouvoir être partagé est exporté. Il peut être utilisé dans ArcGIS Pro et avec ArcGIS Maps SDKs for Native Apps.
String
Copier les données du serveur

Spécifie la façon dont les tuiles sont transférées dans le dossier cible.

Activez ce paramètre uniquement si le compte ArcGIS Server ne peut pas obtenir de droits d’accès en écriture sur le dossier cible et que le client ArcGIS Desktop ou ArcGIS Pro peut y accéder en écriture. Le logiciel exporte les tuiles dans le répertoire en sortie du serveur avant de les placer dans le dossier cible.

  • Activé - Les tuiles sont d’abord placées dans le répertoire en sortie du serveur, puis transférées dans le dossier cible. Le client ArcGIS Desktop doit posséder des droits d’accès en écriture sur le dossier cible.
  • Désactivé - Les tuiles sont exportées directement dans le dossier cible. Le compte ArcGIS Server doit posséder des droits d’accès en écriture sur le dossier cible.
Boolean
Type de format de stockage

Spécifie le format de stockage du cache utilisé pour le cache exporté.

  • CompacterLes tuiles sont regroupées dans des paquets ou des fichiers de paquets afin d’économiser de l’espace sur le disque et d’accélérer la copie des caches. Si le paramètre Export cache type (Exporter le type de cache) est défini sur Tile package (Paquetage de tuiles), il s’agit de l’option par défaut.
  • Compact V2Les tuiles sont regroupées dans des fichiers de paquets uniquement. Ce format offre de meilleures performances sur les partages réseau et les répertoires de stockage cloud. Si le paramètre Exporter le type de cache est défini sur Paquetage de tuiles, l’extension du paquetage de tuiles est .tpkx. Celle-ci est prise en charge par les versions récentes des produits ArcGIS telles que ArcGIS Online, ArcGIS Enterprise 11.4, ArcGIS Maps SDKs for Native Apps 200.0 ou version ultérieure et ArcGIS Runtime 100.5 à 100.15.
  • EclatéChaque tuile est stockée en tant que fichier individuel.
String
Échelles

Liste des niveaux d'échelle auxquels les tuiles sont exportées.

Double
Nombre d’instances de service de mise en cache
(Facultatif)

Indique le nombre d’instances qui seront utilisées pour mettre à jour ou générer les tuiles. La valeur de ce paramètre est définie sur illimitée (-1) et ne peut pas être modifiée.

Long
Zone d’intérêt
(Facultatif)

Zone d’intérêt qui contraint spatialement la zone où les tuiles sont exportées du cache. Ce paramètre est utile lors de l’exportation de zones de forme irrégulière, car l’outil découpe le jeu de données du cache à une résolution de pixel.

Si vous n’indiquez pas de zone d’intérêt, l’étendue globale de la carte est exportée.

Feature Set
Étendue d’exportation
(Facultatif)

Étendue rectangulaire définissant les tuiles à exporter. Par défaut, l’étendue est définie sur l’étendue complète du service de carte dans lequel vous effectuez l’importation. Le paramètre facultatif Zone d’intérêt vous permet également de procéder à l’importation à l’aide d’un polygone. Nous vous conseillons de ne pas définir ces deux paramètres. Si vous entrez des valeurs pour les deux paramètres, le paramètre Zone d’intérêt est prioritaire sur celui-ci.

  • Current Display Extent (Étendue actuellement affichée) Vue cartographique : l’étendue repose sur la carte ou la scène active.
  • Dessiner l’étendue Terminer avec mise à l’équerre : l’étendue est basée sur un rectangle dessiné sur la carte ou dans la scène.
  • Extent of a Layer (Étendue d’une couche) Couche : l’étendue repose sur une couche de carte active. Choisissez une couche disponible ou utilisez l’option Étendue des données dans toutes les couches. Chaque couche de carte comporte les options suivantes :

    • Toutes les entités Sélectionner tout : étendue de toutes les entités.
    • Entités sélectionnées Zone à partir des entités sélectionnées : étendue de toutes les entités sélectionnées.
    • Entités visibles Extent Indicator : étendue de toutes les entités visibles.

  • Parcourir Parcourir : l’étendue repose sur un jeu de données.
  • Presse-papiers Coller : l’étendue peut être copiée depuis et vers le Presse-papiers.
    • Copier l’étendue Copier : copie l’étendue et le système de coordonnées dans le Presse-papiers.
    • Coller l’étendue Coller : colle l’étendue et le système de coordonnées depuis le Presse-papiers. Si le Presse-papiers n’inclut pas de système de coordonnées, l’étendue utilise celui de la carte.
  • Reset Extent (Réinitialiser l’étendue) Réinitialiser : la valeur par défaut de l’étendue est rétablie.

Lorsque les coordonnées sont saisies manuellement, elles doivent être des valeurs numériques incluses dans le système de coordonnées de la carte active. La carte peut utiliser des unités d’affichage différentes de celles des coordonnées saisies. Utilisez le signe moins pour les coordonnées sud et ouest.

Extent
Remplacer les tuiles
(Facultatif)

Indique si les images du cache de destination sont fusionnées avec les tuiles du cache d’origine ou remplacées par ces dernières.

  • Activé - Tous les pixels de la zone d’intérêt sont exportés, en remplaçant les tuiles du cache de destination par les tuiles du cache d’origine.
  • Désactivé - Lorsque les tuiles sont exportées, les pixels transparents du cache d’origine sont ignorés. L'image est ainsi fusionnée dans le cache de destination. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Chemin d'accès au cache en sortie

Le dossier dans lequel le cache a été exporté.

String

arcpy.server.ExportMapServerCache(input_service, target_cache_path, export_cache_type, copy_data_from_server, storage_format_type, scales, {num_of_caching_service_instances}, {area_of_interest}, {export_extent}, {overwrite})
NomExplicationType de données
input_service

Couche d’images de carte dont les tuiles de cache doivent être exportées.

Image Service; Map Server
target_cache_path

Dossier dans lequel le cache sera exporté. Ce dossier n’a pas besoin d’être un répertoire de cache du serveur enregistré. Le compte ArcGIS Server doit posséder des droits d’accès en écriture sur le dossier du cache cible. Si le compte de serveur ne peut pas obtenir de droits d’accès en écriture sur le dossier de destination, mais que le client ArcGIS Desktop ou ArcGIS Pro peut y accéder en écriture, choisissez le paramètre Copier les données du serveur.

Folder
export_cache_type

Spécifie le type de cache à exporter. Les paquetages de tuiles sont adaptés à une utilisation avec ArcGIS Maps SDKs for Native Apps.

  • CACHE_DATASETUn cache du service de carte ou d’imagerie généré à l’aide de ArcGIS Server est exporté. Il peut être utilisé dans ArcGIS Desktop et par les services de carte ou d’imagerie ArcGIS Server. Il s’agit de l’option par défaut.
  • TILE_PACKAGEUn fichier compressé unique dans lequel le jeu de données de cache est ajouté en tant que couche et consolidé afin de pouvoir être partagé est exporté. Il peut être utilisé dans ArcGIS Pro et avec ArcGIS Maps SDKs for Native Apps.
String
copy_data_from_server

Spécifie la façon dont les tuiles sont transférées dans le dossier cible.

Définissez ce paramètre sur COPY_DATA si le compte ArcGIS Server ne peut pas obtenir de droits d’accès en écriture sur le dossier cible et que le client ArcGIS Desktop ou ArcGIS Pro peut y accéder en écriture. Le logiciel exporte les tuiles dans le répertoire en sortie du serveur avant de les placer dans le dossier cible.

  • COPY_DATALes tuiles sont d’abord placées dans le répertoire en sortie du serveur, puis transférées dans le dossier cible. Le client ArcGIS Desktop ou ArcGIS Pro doit posséder des droits d’accès en écriture sur le dossier cible.
  • DO_NOT_COPYLes tuiles sont exportées directement dans le dossier cible. Le compte ArcGIS Server doit posséder des droits d’accès en écriture sur le dossier cible. Il s’agit de l’option par défaut.
Boolean
storage_format_type

Spécifie le format de stockage du cache utilisé pour le cache exporté.

  • COMPACTLes tuiles sont regroupées dans des paquets ou des fichiers de paquets afin d’économiser de l’espace sur le disque et d’accélérer la copie des caches. Si le paramètre export_cache_type est défini sur TILE_PACKAGE, il s’agit de l’option par défaut.
  • COMPACT_V2Les tuiles sont regroupées dans des fichiers de paquets uniquement. Ce format offre de meilleures performances sur les partages réseau et les répertoires de stockage cloud. Si le paramètre export_cache_type est défini sur TILE_PACKAGE, l’extension du paquetage de tuiles est .tpkx. Celle-ci est prise en charge par les versions récentes des produits ArcGIS telles que ArcGIS Online, ArcGIS Enterprise 11.4,  ArcGIS Maps SDKs for Native Apps 200.0 ou version ultérieure et ArcGIS Runtime 100.5 à 100.15.
  • EXPLODEDChaque tuile est stockée en tant que fichier individuel.
String
scales
[scales,...]

Liste des niveaux d'échelle auxquels les tuiles sont exportées.

Double
num_of_caching_service_instances
(Facultatif)

Indique le nombre d’instances qui seront utilisées pour mettre à jour ou générer les tuiles. La valeur de ce paramètre est définie sur illimitée (-1) et ne peut pas être modifiée.

Long
area_of_interest
(Facultatif)

Zone d’intérêt qui contraint spatialement la zone où les tuiles sont exportées du cache. Ce paramètre est utile lors de l’exportation de zones de forme irrégulière, car l’outil découpe le jeu de données du cache à une résolution de pixel.

Si vous n’indiquez pas de zone d’intérêt, l’étendue globale de la carte est exportée.

Feature Set
export_extent
(Facultatif)

Étendue rectangulaire définissant les tuiles à exporter. Par défaut, l’étendue est définie sur l’étendue complète du service de carte dans lequel vous effectuez l’importation. Le paramètre facultatif Zone d’intérêt vous permet également de procéder à l’importation à l’aide d’un polygone. Nous vous conseillons de ne pas définir ces deux paramètres. Si vous entrez des valeurs pour les deux paramètres, le paramètre Zone d’intérêt est prioritaire sur celui-ci.

  • MAXOF : l’étendue maximale de toutes les entrées est utilisée.
  • MINOF : l’étendue minimale commune à toutes les entrées est utilisée.
  • DISPLAY : l’étendue est égale à l’affichage visible.
  • Nom de la couche : l’étendue de la couche spécifiée est utilisée.
  • Objet Extent : l’étendue de l’objet spécifié est utilisée.
  • Chaîne délimitée par des espaces de coordonnées géographiques : l’étendue de la chaîne spécifiée est utilisée. Les coordonnées sont exprimées dans l’ordre x-min, y-min, x-max, y-max.
Extent
overwrite
(Facultatif)

Indique si les images du cache de destination sont fusionnées avec les tuiles du cache d’origine ou remplacées par ces dernières.

  • OVERWRITETous les pixels de la zone d’intérêt sont exportés, en remplaçant les tuiles du cache de destination par les tuiles du cache d’origine.
  • MERGELorsque les tuiles sont importées, les pixels transparents du cache d’origine sont ignorés. L'image est ainsi fusionnée dans le cache de destination. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

NomExplicationType de données
output_cache_path

Le dossier dans lequel le cache a été exporté.

String

Exemple de code

Exemple 1 d’utilisation de l’outil ExportMapServerCache (script autonome)

Exportez des tuiles de cache pour une classe d’entités tout en remplaçant le format de stockage EXPLODED par COMPACT.

# Name: ExportMapServerCache.py for ArcGIS Server
# Description: The following stand-alone script demonstrates how to export
# 		cache as CACHE_DATASET in COMPACT storage format and MERGE tiles
#               using an AREA_OF_INTEREST to TARGET_CACHE_PATH
#		which is accessible to server instances
# 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
targetCachePath 	= "C:/data/temp"
exportCacheType 	= "CACHE_DATASET"
copyDataFromServer 	= "DO_NOT_COPY"
storageFormat 		= "COMPACT"
scales 			= [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
areaOfInterest 		= "C:/data/101/Portland/Metro.shp"
exportExtents 		= ""
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 "scaleValues[0]","scaleValues[-1]","scaleValues[0:3]"

# Enter rectangular custom extent values for the "exportExtents" variable to
# constrain the exporting cache along the rectangular extents

try:
    starttime = time.clock()
    result = arcpy.server.ExportMapServerCache(inputService, targetCachePath,
                                               exportCacheType,
                                               copyDataFromServer,
                                               storageFormat, scales,
                                               numOfCachingServiceInstances,
                                               areaOfInterest, exportExtents,
					       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("Exported cache successfully for mapservice " + serviceName + \
        " to " + targetCachePath + "\n using " + areaOfInterest + "\n in " + \
        str(elapsedtime) + " sec \n on " + arg2)

except Exception as e:
    # If an error occurred, print line number and error message
    tb = sys.exc_info()[2]
    report.write("Failed at \n" "Line %i" % tb.tb_lineno)
    report.write(str(e))

print("Exported Map server Cache  using area of Interest")

report.close()
Exemple 2 d'utilisation de l'outil ExportMapServerCache (script autonome)

Exportez un cache en tant que TILE_PACKAGE lorsque les instances ArcGIS Server ne peuvent pas accéder au dossier de destination.

# Name: ExportMapServerCache.py
# Description: The following stand-alone script demonstrates how to export cache
#               as TILE_PACKAGE for default number of scales of a service, to a
#               TARGET_CACHE_PATH which is inaccessible to server instances using
#               COPY_DATA_FROM_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
targetCachePath = "C:/temp/usa"
exportCacheType = "TILE_PACKAGE"
copyDataFromServer = "COPY_DATA"
storageFormat = "COMPACT"
scaleValues = [500000,250000,125000,64000]
numOfCachingServiceInstances = "2"
exportExtents = ""
areaOfInterest = ""
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 "scaleValues[0]","scaleValues[-1]","scaleValues[0:3]"

try:
    starttime = time.clock()
    result = arcpy.server.ExportMapServerCache(inputService, targetCachePath,
                                               exportCacheType,
                                               copyDataFromServer,
                                               storageFormat, scales,
                                               numOfCachingServiceInstances,
                                               areaOfInterest,
                                               exportExtents, 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("Exported cache successfully for mapservice " + serviceName + " to " + \
        targetCachePath + " in " + str(elapsedtime) + " sec \n on" + arg2)

except Exception as 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(str(e))

print("Exported Map server Cache ")

report.close()

Environnements

Cet outil n’utilise pas d’environnement de géotraitement.

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes