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

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

Импортирует листы из папки на диске в кэш слоя изображений карты.

Исходная папка может быть дочерней от зарегистрированной директории кэша сервера, папкой, куда ранее был экспортирован кэш, или пакетом листов (.tpk). Целевой сервис должен иметь ту же схему листов и формат хранения, что и исходный кэш.

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

  • Используйте этот инструмент, чтобы импортировать весь кэш или его части из одной папки в другую.

  • Параметр Перезаписать листы позволяет полностью перезаписать существующие листы импортируемыми, вместо смешения изображений. Импортируемые листы по-прежнему могут быть ограничены областью интереса.

Параметры

ПодписьОписаниеТип данных
Входной сервис

Слой изображения карты с полистным кэшем для импорта. Его можно выбрать, указав нужный сервис на портале или перетащив веб-слой листов с вкладки Портал на панели Проект, чтобы задать этот параметр.

Image Service; Map Server
Тип источника кэша

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

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

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

Raster Dataset
Источник пакета листов
(Дополнительный)

Путь к пакету листов, которые будут импортированы. Это местоположение должно быть доступно для учетной записи ArcGIS Server. Импорт файла пакета листов в картографический сервис или сервис изображений автоматически включает параметр Передать данные на сервер.

File
Передать данные на сервер
(Дополнительный)

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

  • Отмечено – листы помещаются в директорию загрузок сервера, а затем перемещаются в директорию кэша сервера. Это является настройкой по умолчанию, когда параметру Тип кэша источника присвоено значение TILE_PACKAGE.
  • Не отмечено – Листы импортируются непосредственно в директорию кэша сервера. Учетная запись ArcGIS Server должна иметь право на чтение исходного кэша.
Boolean
Масштабы
(Дополнительный)

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

По умолчанию, масштабы, перечисленные в диалоговом окне инструмента, находятся между минимальным и максимальным масштабами кэша для сервиса. Чтобы обновить диапазон масштабов, перейдите на вкладку Редактор сервисов > Кэширование и используйте бегунки, чтобы обновить минимальный и максимальный масштаб кэширования.

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

Задает число экземпляров, использующихся для обновления или создания листов. Значение этого параметра установлено как "без ограничений" (-1) и не может быть изменено.

Long
Область интереса
(Дополнительный)

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

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

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

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

  • По умолчанию – экстент основывается на максимальном экстенте всех задействованных слоев. Это значение по умолчанию.
  • Экстент текущего отображения – экстент будет равен фрейму данных или видимому отображению. Опция недоступна, если нет активной карты.
  • Как указано ниже – экстент будет основан на указанных минимальном и максимальном значениях экстента.
  • Найти—экстент будет основан на существующем наборе данных.
Extent
Перезаписать листы
(Дополнительный)

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

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

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

ПодписьОписаниеТип данных
URL-адрес выходного картографического сервиса

Выходной URL-адрес.

String

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})
ИмяОписаниеТип данных
input_service

Слой изображения карты с полистным кэшем для импорта.

Image Service; Map Server
source_cache_type

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

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

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

Raster Dataset
source_tile_package
(Дополнительный)

Путь к импортируемому пакету листов (.tpk). Это местоположение должно быть доступно для учетной записи ArcGIS Server. При импорте файла пакета листов в картографический сервис или сервис изображений, параметр upload_data_to_server игнорируется, т.к. ему будет автоматически присвоено значение UPLOAD_DATA.

File
upload_data_to_server
(Дополнительный)

Установите этот параметр на UPLOAD_DATA этот параметр, если учетная запись ArcGIS Server не имеет разрешения на чтение исходного кэша. Инструмент загрузит исходный кэш в директорию загрузок ArcGIS Server перед его перемещением в директорию кэша ArcGIS Server.

  • UPLOAD_DATAЛисты помещаются в директорию загрузок сервера, а затем перемещаются в директорию кэша сервера. Это свойство включено по умолчанию, когда source_cache_type имеет значение TILE_PACKAGE.
  • DO_NOT_UPLOADЛисты импортируются непосредственно в директорию кэша сервера. Учетная запись ArcGIS Server должна иметь право на чтение исходного кэша.
Boolean
scales
[scales,...]
(Дополнительный)

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

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

Задает число экземпляров, использующихся для обновления или создания листов. Значение этого параметра установлено как "без ограничений" (-1) и не может быть изменено.

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

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

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

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

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

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

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

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

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

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

Выходной URL-адрес.

String

Пример кода

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

Импорт набора данных кэша в кэшированный сервис с числом масштабов, заданным по умолчанию. Листы в кэше назначения будут перезаписаны импортируемыми листами.

# 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.server.ImportMapServerCache(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 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("Imported Map server Cache Tiles ")

report.close()
ImportMapServerCache, пример 1 (автономный скрипт)

Импорт листов кэша для области интереса из пакета листов в кэшированный сервис.

# 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.server.ImportMapServerCache(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 as 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(str(e))

report.close()

print("Imported Map server Cache Tiles for the given feature class")

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

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

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы