Изменение пространственного индекса

Функциональность с лицензией Basic ограничена.

Для остальных баз геоданных и пространственных типов вам редко понадобится управлять пространственным индексом. Однако если вы наблюдаете снижение производительности пространственных запросов после добавления или удаления большого количества объектов вы можете заменить улучшения производительности выполнения пространственного запроса, если выперестроите (в Oracle) или заново создадите пространственный индекс соответствующего класса объектов.

Изменить пространственный индекс класса объектов может потребоваться в следующих случаях:

  • Если при работе с классом объектов выявляется низкая производительность, перестройте или вычислите заново пространственный индекс.
  • Если вы добавили или удалили большое количество объектов в SQL Server, а тип пространственных данных класса объектов - Geometry, проверьте пространственный индекс, чтобы понять, нужно ли вычислить заново пространственный индекс или вместо этого нужно обновить экстент класса объектов.
    Подсказка:

    Вы можете увидеть, какой тип хранения геометрии используется, посмотрев на раздел Хранение на вкладке Источник в диалоговом окне Свойства класса объектов.

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

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

Так же имейте в виду, что у вас должна быть лицензия ArcGIS Desktop Advanced или Desktop Standard для изменения пространственного индекса класса объектов в многопользовательской базе геоданных.

Перестроение или повторное вычисление пространственного индекса

Для перестроения или повторного вычисления пространственного индекса класса объектов в файловой или многопользовательской базе геоданных в Oracle, Db2, PostgreSQL или SQL Server (которые используют пространственный тип Geography), следуйте инструкциям ниже:

  1. На панели Каталог подключитесь к базе геоданных, содержащей тот класс пространственных объектов, индекс которого вы собираетесь изменить.

    В случае с многопользовательской базой геоданных, подключитесь к ней от имени ее владельца.

  2. Щелкните правой кнопкой мыши по классу объектов и выберите Свойства.
  3. Перейдите на вкладку Индексы.
  4. Разверните раздел Пространственный индекс.
  5. Нажмите Пересчитать (или Перестроить если класс объектов хранится в базе Oracle).
    Повторно вычисленный индекс будет отражать текущие данные.
  6. Нажмите ОК, чтобы закрыть диалоговое окно Свойства класса пространственных объектов.

Проверка пространственного индекса в SQL Server (Geometry)

Чтобы понять, нужно ли пересчитать пространственный индекс или экстент для плохо работающего класса объектов, который использует пространственный тип Geometry в SQL Server, проверьте пространственный индекс.

  1. На панели Каталог подключитесь к базе геоданных, содержащей тот класс пространственных объектов, индекс которого вы собираетесь изменить.

    В случае с многопользовательской базой геоданных, подключитесь к ней от имени ее владельца.

  2. Щелкните правой кнопкой мыши по классу объектов и выберите Свойства.
  3. Перейдите на вкладку Индексы.
  4. Разверните раздел Пространственный индекс.
  5. Нажмите Проверить, чтобы понять, нужно ли пересчитать пространственный индекс. В ходе проверки появится одно из следующих сообщений:
    • Ограничивающий прямоугольник пространственного индекса совпадает с экстентом класса объектов.—Если вы получили такое сообщение, то перестраивать пространственный индекс не нужно. Нажмите ОК, чтобы закрыть диалоговое окно Свойства класса пространственных объектов.
    • Ограничивающий прямоугольник пространственного индекса и экстент класса объектов не совпадают. Пересчитать пространственный индекс.—Если вы получили такое сообщение, нажмите Пересчитать.
    • Ограничивающий прямоугольник пространственного индекса и экстент класса объектов не совпадают. Запустить инструмент геообработки Пересчитать экстент класса объектов.—Если вы получили такое сообщение, нажмите OK, чтобы закрыть диалоговое окно Свойства класса пространственных объектов и запустить для него инструмент Пересчитать экстент класса объектов.

Удаление пространственного индекса

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

  1. На панели Каталог подключитесь к базе геоданных, содержащей тот класс пространственных объектов, индекс которого вы собираетесь удалить.

    В случае с многопользовательской базой геоданных, подключитесь к ней от имени ее владельца.

  2. Щелкните правой кнопкой мыши по классу объектов и выберите Свойства.
  3. Перейдите на вкладку Индексы.
  4. Разверните раздел Пространственный индекс.
  5. Нажмите Удалить и затем OK, чтобы закрыть диалоговое окно Свойства класса пространственных объектов.
  6. Присоедините или скопируйте строки в класс объектов.
  7. Откройте диалоговое окно Свойства класса пространственных объектов снова, разверните секцию Пространственный индекс и нажмите Создать.

    К классу объектов добавится новый пространственный индекс, который будет включать недавно добавленные объекты.

  8. Нажмите ОК, чтобы закрыть диалоговое окно Свойства класса пространственных объектов.