Для векторных веб-слоев кэш объектов используется для улучшения производительности и решения типовых задач путем хранения объектов во временной папке. Кэш управляется автоматически, и поскольку объекты кэшируются, количество запросов, необходимых для извлечения данных, сокращается, как и время на отрисовку. Это может быть удобно при работе с большими или сложными наборами данных, в заданном экстенте карты или когда большое количество пользователей используют один и тот же сервис. Это также снижает нагрузку на сервер, поскольку уменьшает количество запросов к сервису.
Критерии кэша объектов
По умолчанию кэш объектов заполняется приложением автоматически, это рекомендуемая настройка. Кэш заполняется каждый раз, когда завершена отрисовка карты и выполнены следующие условия:
- Слой виден на панели Содержание.
- Слой отображается на основе диапазона видимых масштабов.
- Итоговое число отображаемых объектов в 5 раз меньше, чем пороговое значение числа строк в слое сервиса.
- Опция кэширования в диалоговом окне свойств слоя задана как Очистить кэш при завершении сеанса.
- Оценочное количество объектов в видимом экстенте в 5 раз меньше, чем пороговое значение числа строк, если для него заданы фильтры.
Примечание:
Фильтры включают фильтры отображения, определяющие запросы, составные слои подтипов и классы символов.
Дополнительная информация по пороговому числу строк, оцененному числу строк и составным слоям подтипов также будет использована для определения, заполнять ли кэш автоматически.
Пороговое число строк
Пороговое число строк используется для определения, заполнять ли кэш объектов. Пороговое число строк устанавливается на 2000, или по значению maxRecordCount слоя сервиса объектов, в зависимости от того, что будет ниже.
Оцененное число строк
Если оцененное число строк поддерживается и у слоя есть фильтры, ArcGIS Pro будет использовать оцененное число строк, и 5 критериев, как описано выше для определения, заполнять ли кэш объектов. Если у слоя нет фильтров, оцененное число строк не будет использовано, и ArcGIS Pro будет использовать 5 критериев, как описано выше для определения, заполнять ли кэш объектов.
Если оцененное число строк всего слоя сервиса объектов в 5 раз меньше, чем пороговое значение числа строк, кэш объектов будет заполниться для всего слоя сервиса.
Для слоев сервисов объектов, которые не поддерживаются оцененное число строк кэш не заполняется, если в слоях присутствуют фильтры.
Примечание:
Чтобы определить, поддерживает ли сервисы объектов оцененное число строк, перейдите к ресурсам JSON слоя и посмотрите параметр infoInEstimates. Если "количество" находится в пределах этого массива, ArcGIS Pro получит оцененное число строк.
Составные слои подтипа
Случаи, в которых составные слои подтипа могут или не могут использоваться как фильтры.
Составные слои подтипа используются как фильтры, если хотя бы один подтип видимый. Для этого сценария оцененное число строк будет использоваться для заполнения кэша объктов, если поддерживается.
Составные слои подтипа не используются как фильтры, если все подтипы составного слоя видимые. Для этого сценария сумма исходных количеств всех видимых подтипов составных слоев будет использована для определения, заполнять ли кэш объектов.
Составные слои подтипа не используются как фильтры, если не ни одного видимого подтипа составного слоя. Для этого сценария составные слои подтипа будут считаться не видимыми, и кэш объектов не будет заполнен для этих слоев.
В сценариях, когда приложение решает не заполнять кэш объектов для слоя (другими словами, пять критериев, перечисленных выше, не выполняются), вы можете управлять кэшем вручную, чтобы воспользоваться преимуществами производительности, обеспечиваемыми кэшем.
Доступ к элементам управления кэшем находится на вкладке Карта в группе Кэш объектов. Используйте их, чтобы заполнить кэш, очистить кэш, отменить текущее заполнение кэша, либо настроить автоматическое заполнение кэша. Эти элементы управления применяются к каждой карте в проекте. Если группа Кэш объектов не включена, то приложение будет автоматически кэшировать объекты описанным выше способом.
Более подробную информацию о кэшировании см. в разделе: Как работает кэширование.
Показать группу Кэш объектов
По умолчанию группа Кэш объектов скрыта на ленте. Выполните инструкции ниже, чтобы перейти к элементам управления в этой группе.
- Щелкните вкладку Проект и выберите Опции.
- В диалоговом окне Опции в разделе Приложение щелкните вкладку Карта и сцена.
- Разверните Кэш объектов и поставьте отметку Управлять кэшированием объектов из вкладки карты.
- Нажмите кнопку ОК, чтобы сохранить значения параметров и закрыть диалоговое окно.
Автокэширование
При включении группы Кэш объектов опция Автокэширования будет включена для каждой новой карты. Отключите эту опцию, чтобы управлять кэшем вручную. Эту настройку можно менять независимо для каждой карты в проекте. Это позволяет управлять настройкой Автокэширование в соответствии с требованиями вашего рабочего процесса. Как было указано, если у слоев один и тот же источник данных для нескольких карт, то Заполнение и Очистка могут повлиять на Автокэширование.
Примечание:
В то время, как будет происходить заполнение, которое было инициировано опцией Заполнить , автокэширование будет приостановлено для всего проекта в целом, пока выполняется текущее заполнение.
Заполнение кэша объектов для текущей карты
Кэш объектов перед использованием необходимо наполнить.
На вкладке Карта в группе Кэш объектов щелкните Заполнить для заполнения кэша для всех видимых слоев на карте.
Внимание:
Если вы не хотите видеть группу Кэш объектов на вкладке Карта, следуйте инструкциям из раздела выше, чтобы найти нужные элементы управления.
Если источник данных слоя доступен для нескольких карт в одном проекте, то кэшированные объекты будут доступны для всех карт.
Предупреждение возникают, когда кэш начинает заполняться, когда заполнение завершено и когда возникает ошибка.
Примечание:
- Построение кэша для большой области или для территории с большим количеством объектов может занять некоторое время. Чтобы омтенить заполнение кэша, щелкните Отменить .
- Если на карте нет видимых векторных веб-слоев, либо если для слоев в свойствах задано отсутствие кэширование, то заполнение не поддерживается, вы получите сообщение об этом.
Внимание:
При использовании Заполнить совместно с Автокэшированием кнопка Заполнить будет отменять любые автоматические заполнения, которые сейчас происходят. В таком рабочем процессе рекомендуется подождать 15 секунд после того, как карта закончит отрисовку, чтобы завершилась процедура автоматического заполнения, а уже потом нажать Заполнить .
Очистка кэша объектов для текущей карты
При внесении изменений в слой из других источников можно периодически выполнять очистку кэша объектов.
На вкладке Карта в группе Кэш объектов щелкните Очистить , чтобы очистить кэш объектов для всех слоев в текущей карте.
Внимание:
Если вы не видите группу Кэш объектов на вкладке Карта, следуйте инструкциям из предыдущего раздела в этой статье, чтобы найти нужные элементы управления.
Кнопка Очистить всегда доступна, оне не может стать неактивной. Операция очистки не выполняется, если есть ожидающие изменения. Правки необходимо сохранить или отменить перед очисткой кэша объектов.
Если источник данных слоя доступен для нескольких карт в одном проекте, то кэш для этих слоев на других картах также будет затронут в ходе операции очистки.
Предупреждение возникают, когда кэш начинает очищаться или когда есть ожидающие изменения.
Отмена заполнения кэша объектов
Если вы щелкнули кнопку Заполнить и этот процесс занимает дольше времени, чем вы ожидаете, либо если вы щелкнули ее случайно, вы можете отменить этот процесс. Эта кнопка доступна только в случае, если кэш заполняется.
На вкладке Карта в группе Кэш объектов щелкните Отмена , чтобы отменить текущие запросы на заполнение.
Внимание:
Если вы не видите группу Кэш объектов на вкладке Карта, следуйте инструкциям из предыдущего раздела в этой статье, чтобы найти нужные элементы управления.
Вы получите уведомление, когда заполнение кэша будет отменено.