Создание кэша крупномасштабных данных, покрывающих большую территорию, может занять значительный период времени. В данном разделе описывается один из важнейших факторов, влияющих на скорость кэширования. Более подробно этот вопрос исследуется в разделе Советы и рекомендации, касающиеся кэша карт.
Используйте локальные файловые базы геоданных
Если поместить копию исходных наборов данных ГИС на сервер, значительно увеличится скорость и стабильность создания кэша. Процесс кэширования приводит к созданию тысяч и даже миллионов запросов к данным, и если эти запросы не направлены вовне, листы кэша будут отрисовываться быстрее.
Оптимальным является размещение одной и той же базы геоданных по одному и тому же адресу на всех компьютерах вашего кластера с ГИС-сервером. Зарегистрируйте локальную папку базы геоданных на ArcGIS Server в качестве элемента хранилища данных. В вашем документе карты используйте локальные пути к данным.
Не используйте проектирование на лету
Для достижения большей производительности перепроецируйте ваши исходные данные в ту же координатную систему, что и карта, чтобы исключить проецирование "на лету". Люди обычно не проецируют свои рабочие базы данных в проекции наподобие Web Mercator. Однако данные, которые вы размещаете на сервере, должны являться односторонней репликой вашей базы данных, используемой только для создания кэша и работы с запросами пользователей.
Внимательно отнеситесь к выбору уровней сглаживания
Сглаживание – это техника, которую использует ArcGIS Server для выравнивания границ линий и надписей, чтобы они выглядели менее ступенчатыми. Сглаживание текста лишь немного влияет на производительность, но является сложной вычислительной операцией, замедляющей кэширование.
Применение хотя бы небольшого уровня сглаживания сделает внешний вид вашей векторной карты значительно более привлекательным. Помните, однако, что всякое увеличение качества сглаживания может сильно замедлить скорость создания кэша. Для большинства кэшей достаточными являются варианты Самый быстрый или Быстрый. Не используйте более высокое качество, например, вариант Наилучший, пока сами не убедитесь в необходимости использования такого уровня качества.
Используйте ваш процессор по-максимуму, не допуская при этом его перегрузки
С целью более быстрого создания файлов ваш процессор во время создания листов должен быть загружен практически на 100%, но не больше.
Поскольку карты отличаются друг от друга, достижение данного уровня использования процессора может потребовать от вас попыток использовать разные настройки кэширования, чтобы найти оптимальные. Есть две главных настройки, влияющие на то, какой объем ресурсов вы используете для кэширования:
- Максимально допустимое число запускаемых на каждом компьютере сайта экземпляров сервиса CachingTools – Подходящим начальным значением будет n + 1, где n – число ядер CPU стандартного компьютера кластера.
- Максимально допустимое для сайта в целом число экземпляров сервиса CachingTools – Подходящим начальным значением будет используемое по умолчанию значение, которое вы увидите при запуске Manage Map Server Cache Tiles. Это значение отражает число компьютеров в вашем сайте и максимальное число экземпляров CachingTools для запуска на каждом из них. Если вы собираетесь добавить другие ГИС-серверы во время кэширования, введите -1 для снятия ограничения количества экземпляров.
Приведенные выше значения подходят для начала их использования при тестировании и подборе значений. Для получения более подробной информации и формул, используемых для установки этих значений, см. раздел Распределение ресурсов сервера для кэширования.
Создавайте только нужные вам листы
Вам не всегда нужно обязательно создавать листы кэша для всего экстента данных во всех масштабах. Некоторые листы будут просматриваться очень часто, другие же никогда не будут посещаться, особенно в местах небольшой концентрации данных в крупных масштабах.
Перед запуском кэширования подумайте, для каких мест и каких масштабов создавать кэш заранее, а какие листы можно генерировать по запросу (либо отображать листы с надписью "Данные не доступны", как Основные вопросы кэширования). Мелкие масштабы не представляют собой проблемы, поскольку в этом случае для отображения карты, как правило, требуется несколько листов. Крупные же масштабы требуют аккуратного подхода.
Создайте класс пространственных объектов для выделения наиболее важных и интересных областей вашей карты. При кэшировании крупных масштабов используйте этот класс пространственных объектов для ограничения создания листов. Использование класса пространственных объектов, содержащего геометрию, имеющую несколько тысяч вершин, приведет к значительному замедлению работы инструментов кэширования, поэтому генерализуйте геометрию перед работой с таким инструментом, например, как Упростить полигон.
Грамотно спланировав рабочий процесс, вы избежите создания тысяч листов кэша, находящихся за пределами области вашего интереса или не содержащих объектов.
Подсказки
Наконец, вот еще несколько советов для ускорения процесса кэширования карт:
- Избегайте слишком раздутого формата кэша: его дольше создавать и по нему сложнее перемещаться. Выберите используемый по умолчанию компактный формат.
- Иногда антивирусное программное обеспечение может использовать значительную часть ресурсов при создании кэша, особенно при сканировании создаваемых файлов. Если у вас есть подозрение, что антивирусное программное обеспечение конкурирует с ArcGIS Server при использовании памяти и ресурсов процессора, попросите вашего системного администратора отключить или приостановить работу антивирусной программы на время создания листов кэша.
- Если вас в большей степени волнует проблема скорости работы, чем объем необходимого свободного места на диске, не используйте для создания кэша оптимизированный формат PNG, появившийся в ArcGIS Server 10.1. Этот формат прекрасно подходит для поддержания небольшого размера кэша, однако, кэш в таком формате долго строится, поскольку при его создании определяется оптимальная для каждого листа глубина цвета. Используйте лучше формат MIXED.
- При анализе вашего документа карты перед публикацией постарайтесь исправить максимальное число проблем с производительностью, которые были зафиксированы соответствующими предупреждениями. Например, вы увидите предупреждение, если у вашего набора данных отсутствует пространственный индекс. Создание пространственного индекса приведет к значительно более быстрым прорисовке картографического сервиса и созданию листов.