Skip To Content

Структура компактного формата хранилища кэша

С помощью компактного формата хранилища кэша можно группировать листы, объединяя их в большие файлы, а не хранить их в виде отдельных файлов. Существуют следующие преимущества хранения листов группами:

  • Данные кэша легко копируются, так как число файлов становиться меньшим.
  • Уменьшается общий объем кэша на диске.
  • Листы, как правило, создаются быстрее, так как во время создания листов производится меньше дисковых операций ввода/вывод.
  • Улучшается масштабируемость при создании листов с размещением на нескольких машинах, поскольку уменьшается сетевой трафик.

Как работает компактный кэш

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

Во время построения кэша в папках кэша можно увидеть временные файлы .lock и .done. Файлы .lock позволяют ArcGIS Server следить за тем, какие пакеты находятся в стадии построения; наличие файла .lock не означает, что эти пакеты недоступны клиентским приложениям. Так же, файл .done позволяет ArcGIS Server отслеживать уже созданные пакеты. После завершения кэширования все файлы .lock и .done должны исчезнуть.

Существует возможность организовать небольшой кэш с одним пакетом на каждом уровне. Чаще встречается ситуация, когда граница пакета проходит по некоторому географическому объекту, и поэтому на одном уровне хранится несколько пакетов (хотя в пакетах может и не содержаться максимального количества в 16 000 листов при небольшом размере географического объекта). Крупные кэши объединяют множество пакетов.

Границы пакета определяются точкой отсчета схемы листов и не поддаются корректировке. Для сравнения, при масштабе отображения района/города, равном 1:4 096, полный пакет покрывает территорию округа средних размеров в восточном регионе Соединенных Штатов.

Как обновляется компактный кэш

При обновлении листов компактного кэша не происходит повторного создания всего пакета. Вместо этого, обновляется область размером в 4096 x 4096 пикселей (без сглаживания) или 2048 x 2048 пикселей (со сглаживанием). В документации ArcGIS такой фрагмент территории иногда называется суперлистом.

Извлечение листов из пакета

Клиенты ArcGIS, в том числе программные веб-интерфейсы приложений, могут читать пакетные файлы, созданные в формате компактного кэша. Веб-клиенты запрашивают на сайте ArcGIS Server определенный уровень, строки или столбец листа. ArcGIS Server получает запрос и возвращает соответствующий лист из пакета.

Внутренняя архитектура пакета не публикуется компанией Esri. Если вы создали свой программный код для извлечения листов из виртуальной директории, необходимо использовать все тот же полистный формат, в котором каждый лист сохраняется как отдельный файл, и который был единственной возможностью в версиях до ArcGIS 10.

Обновление компактного кэша для повышения производительности

Формат компактного хранения кэша усовершенствован ArcGIS 10.3, что позволило повысить производительность при использовании кэшированных картографических сервисов и сервисов изображений. Изменения также позволили сократить число файлов, создаваемых в директории кэша. Это было достигнуто включением индексов листов (файлов .bundlx) в файлы .bundle.

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

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

Примечание:

Инструмент Обновить формат хранения кэша картографического сервера не доступен в ArcGIS Pro. Вместо него используйте ArcMap или Python, устанавливаемый вместе с ArcGIS Server.

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

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