Экспортировать кэш картографического сервиса (Сервер)

Краткая информация

Использование

  • Перед запуском инструмента создайте папку на диске, в которой будут храниться экспортированные листы.

Параметры

ПодписьОписаниеТип данных
Входной сервис
Image Service; Map Server
Путь целевого кэша

Папка, в которую будет экспортирован кэш. Эта папка не должна быть зарегистрированной директорией кэша сервера. Учетная запись ArcGIS Server должна иметь право на запись в целевую папку кэша. Если учетной записи сервера не может быть предоставлен доступ на запись в папку назначения, но у клиента ArcGIS Desktop или ArcGIS AllSource такой доступ есть, то выберите параметр Копировать данные с сервера.

Folder
Экспортировать тип кэша

Экспортирует кэш в виде набора данных кэша или пакета листов. Пакеты листов предназначены для распространения ArcGIS Runtime и ArcGIS for Windows Mobile.

  • Набор данных кэшаКэш картографического сервиса или сервиса изображений, созданный с применением ArcGIS Server. Может использоваться в ArcGIS Desktop и сервисами карт и изображений ArcGIS Server. Это значение по умолчанию
  • Пакет листовОдин сжатый файл, где набор данных кэша добавляется как слой и объединяется, так что его можно сделать доступным для совместного использования. Его можно использовать в ArcGIS Desktop, ArcGIS Runtime и в мобильных приложениях.
String
Копировать данные с сервера

Отметьте этот параметр, только если учетной записи ArcGIS Server не может быть предоставлен доступ на запись в целевую папку, а у клиента ArcGIS Desktop или ArcGIS AllSource такой доступ есть. Программное обеспечение экспортирует листы в выходную директорию сервера, прежде чем переместить их в целевую папку.

  • Отмечено – листы помещаются в выходную директорию сервера, а затем перемещаются в целевую папку. Клиент ArcGIS Desktop должен иметь право на запись в целевую папку.
  • Не отмечено – листы экспортируются непосредственно в целевую папку. Учетная запись ArcGIS Server должна иметь право на запись в целевую папку.
Boolean
Тип формата хранения

Формат хранения экспортированного кэша.

  • УплотнитьЛисты группируются в пакетные файлы для экономии места на диске и ускорения копирования кэша. Если параметр Тип кэша экспорта задан как Пакет листов, это происходит по умолчанию.
  • Уплотнить V2Листы группируются только в пакетные файлы. Этот формат обеспечивает лучшую производительность в сетевых папках и каталогах облачного хранения. Если параметр Тип кэша экспорта задан как Пакет листов, то расширение пакета листов будет (.tpkx), и оно поддерживается новыми версиями продуктов платформы ArcGIS, такими как ArcGIS Online, ArcGIS Enterprise 11.3 и ArcGIS Runtime 100.5.
  • ПолистныйКаждый лист хранится в виде отдельного файла (способ, которым кэши хранились всегда в версии до ArcGIS Server).
String
Масштабы

Список уровней масштаба, на которых будут экспортированы листы.

Double
Число экземпляров кэшированного сервиса
(Дополнительный)
Long
Область интереса
(Дополнительный)

Область интереса, ограничивающая область экспорта листов из кэша. Этот параметр полезен, если вы хотите экспортировать области неправильной формы, т. к. инструмент обрезает набор данных кэша на пиксельном разрешении.

Если область интереса не указана, экспортируется полный экстент карты.

Feature Set
Экстент экспорта
(Дополнительный)

Прямоугольный экстент определяет листы, которые должны быть экспортированы. По умолчанию экстент соответствует полному экстенту картографического сервиса, в который вы производите импорт. Обратите внимание на необязательный параметр этого инструмента Область интереса, позволяющий импортировать альтернативно с помощью полигона. Рекомендуется не указывать значения обоих параметров для задания. Если значения приведены для обоих параметров, Область интереса имеет приоритет над Экстентом импорта.

  • Текущий экстент отображения Вид карты — Экстент будет основан на активной карте или сцене. Эта опция доступна только при наличии активной карты.
  • Нарисовать экстент Draw Extent - экстент будет основан прямоугольнике, нарисованном на карте или сцене. Эта опция создает класс пространственных объектов в базе геоданных проекта и добавляет слой на карту. Класс объектов будет иметь ту же систему координат, что и карта.
    Примечание:

    Данная опция не доступна в диалоговом окне Параметры среды. Он доступен только из параметра инструмента, с экстентом в качестве типа данных, или на вкладке Среды диалогового окна инструмента.

    Примечание:

    Если включена опция Включать и отключать редактирование на вкладке Редактирование, вы должны включить редактирование на вкладке ленты Редактирование, чтобы нарисовать экстент.

  • Экстент слоя Слой — Экстент будет основан на активном слое карты. Используйте раскрывающийся список, чтобы выбрать доступный слой, или используйте опцию Экстент данных во всех слоях, чтобы получить объединенный экстент всех активных слоев карты, за исключением базовой карты. Эта опция доступна только при наличии активной карты со слоями.

    У каждого слоя карте есть следующие опции:

    • Все объекты Выбрать все - экстент всех объектов слоя.
    • Выбранные объектыArea from Selected Features - экстент всех выбранных объектов слоя.
    • Отображаемые объекты Extent Indicator - экстент всех отображаемых объектов слоя.
      Примечание:

      Экстенты опций Выбранные объекты Area from Selected Features и Отображаемые объекты Extent Indicator доступны только для векторных слоев.

  • Обзор Обзор — Экстент будет основан на существующем наборе данных.
  • Буфер обмена Вставить - экстент может быть скопирован в буфер обмена и вставлен из него.
    • Копировать экстент Копировать - копирует координаты экстента и систему координат в буфер обмена.
    • Использовать Вставить экстент Вставить - вставляет координаты экстента и, дополнительно, систему координат из буфера обмена. Если значения буфера обмена не содержат систему координат, экстент будет использовать систему координат карты.
    Примечание:

    Координаты экстента копируются в буфер обмена и вставляются из него с использованием того же форматирования и порядка, что и для объекта ArcPy Extent: x-min, y-min, x-max, y-max и пространственная привязка.

  • Сбросить экстент Сбросить — Экстент будет сброшен до значения по умолчанию.
  • Координаты, введенные вручную – Координаты должны быть числовыми значениями и находиться в системе координат активной карты.
    Внимание:

    На карте могут использоваться единицы отображения, отличные от введенных координат. Использование направления по сторонам света (N, S, E, W) не поддерживается. Используйте знак отрицательного значения для координат юга и запада.

Extent
Перезаписать листы
(Дополнительный)

Задает, будут ли изображения в кэше назначения объединены с листами из исходного кэша или они будут перезаписаны ими.

  • Отмечено – при экспорте все пикселы области интереса замещаются, что позволяет перезаписать кэш назначения листами из исходного кэша.
  • Отключено – при экспорте листов прозрачные пикселы исходного кэша по умолчанию игнорируются. Это позволяет получить объединенное или смешанное изображение в кэше назначения. Это значение по умолчанию
Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Путь к выходному кэшу

Папка, в которую был экспортирован кэш.

String

arcpy.management.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})
ИмяОписаниеТип данных
input_service
Image Service; Map Server
target_cache_path

Папка, в которую будет экспортирован кэш. Эта папка не должна быть зарегистрированной директорией кэша сервера. Учетная запись ArcGIS Server должна иметь право на запись в целевую папку кэша. Если учетной записи сервера не может быть предоставлен доступ на запись в папку назначения, но у клиента ArcGIS Desktop или ArcGIS AllSource такой доступ есть, то выберите параметр Копировать данные с сервера.

Folder
export_cache_type

Экспортирует кэш в виде набора данных кэша или пакета листов. Пакеты листов предназначены для распространения ArcGIS Runtime и ArcGIS for Windows Mobile.

  • CACHE_DATASETКэш картографического сервиса или сервиса изображений, созданный с применением ArcGIS Server. Может использоваться в ArcGIS Desktop и сервисами карт и изображений ArcGIS Server. Это значение по умолчанию
  • TILE_PACKAGEОдин сжатый файл, где набор данных кэша добавляется как слой и объединяется, так что его можно сделать доступным для совместного использования. Его можно использовать в ArcGIS Desktop, ArcGIS Runtime и в мобильных приложениях.
String
copy_data_from_server

Установите для этого параметра значение COPY_DATA, если учетной записи ArcGIS Server не может быть предоставлен доступ на запись в целевую папку, а у клиента ArcGIS Desktop или ArcGIS AllSource такой доступ есть. Программное обеспечение экспортирует листы в выходную директорию сервера, прежде чем переместить их в целевую папку.

  • COPY_DATAЛисты помещаются в выходную директорию сервера, а затем перемещаются в целевую папку. Клиент ArcGIS Desktop или ArcGIS AllSource должен иметь право на запись в целевую папку.
  • DO_NOT_COPYЛисты экспортируются непосредственно в целевую папку. Учетная запись ArcGIS Server должна иметь право на запись в целевую папку. Это значение по умолчанию
Boolean
storage_format_type

Формат хранения экспортированного кэша.

  • COMPACTЛисты группируются в пакетные файлы для экономии места на диске и ускорения копирования кэша. Если параметр export_cache_type задан как Tile package, это выполняется по умолчанию.
  • COMPACT_V2Листы группируются только в пакетные файлы. Этот формат обеспечивает лучшую производительность в сетевых папках и каталогах облачного хранения. Если параметр export_cache_type задан как Tile package, то расширение пакета листов будет (.tpkx), и оно поддерживается новыми версиями продуктов платформы ArcGIS, такими как ArcGIS Online, ArcGIS Enterprise 11.3 и ArcGIS Runtime 100.5.
  • EXPLODEDКаждый лист хранится в виде отдельного файла (способ, которым кэши хранились всегда в версии до ArcGIS Server).
String
scales
[scales,...]

Список уровней масштаба, на которых будут экспортированы листы.

Double
num_of_caching_service_instances
(Дополнительный)
Long
area_of_interest
(Дополнительный)

Область интереса, ограничивающая область экспорта листов из кэша. Этот параметр полезен, если вы хотите экспортировать области неправильной формы, т. к. инструмент обрезает набор данных кэша на пиксельном разрешении.

Если область интереса не указана, экспортируется полный экстент карты.

Feature Set
export_extent
(Дополнительный)

Прямоугольный экстент определяет листы, которые должны быть экспортированы. По умолчанию экстент соответствует полному экстенту картографического сервиса, в который вы производите импорт. Обратите внимание на необязательный параметр этого инструмента Область интереса, позволяющий импортировать альтернативно с помощью полигона. Рекомендуется не указывать значения обоих параметров для задания. Если значения приведены для обоих параметров, Область интереса имеет приоритет над Экстентом импорта.

  • MAXOF – Будет использоваться максимальный экстент всех входных данных.
  • MINOF – Будет использоваться минимальная область, которая является общей для всех входных данных.
  • DISPLAY — Экстент равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent — будет использоваться экстент указанного объекта.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent
overwrite
(Дополнительный)

Задает, будут ли изображения в кэше назначения объединены с листами из исходного кэша или они будут перезаписаны ими.

  • OVERWRITEПри экспорте все пикселы области интереса замещаются, что позволяет перезаписать кэш назначения листами из исходного кэша.
  • MERGEПри импорте листов прозрачные пикселы исходного кэша по умолчанию игнорируются. Это позволяет получить объединенное или смешанное изображение в кэше назначения. Это значение по умолчанию
Boolean

Производные выходные данные

ИмяОписаниеТип данных
output_cache_path

Папка, в которую был экспортирован кэш.

String

Пример кода

ExportMapServerCache, пример 1 (автономный скрипт)

Экспорт листов кэша для класса объектов при изменении формата хранения с EXPLODED на 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()
ExportMapServerCache, пример 2 (автономный скрипт)

Экспорт кэша в качестве TILE_PACKAGE, когда папка назначения недоступна для ArcGIS Server.

# 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()

Параметры среды

Этот инструмент не использует параметры среды геообработки