История архивирования

Архивация данных в ArcGIS AllSource сохраняет запись об изменениях на уровне объекта для всех данных или поднабора данных в многопользовательской базе геоданных. Архивация базы геоданных представляет собой механизм для сбора сведений об изменении данных, управления ими и их анализа.

Архивация включается по различным причинам, включая ответы на вопросы и прошедших событиях и отслеживание изменений с течением времени, например:

  • Сохранение изменений для поддержки временных запросов к изменениям истории.
    • Пример: Как изменяется канализационная сеть с течением времени в связи с постоянным ростом города?
  • Обеспечение безопасности, для чего исторические записи могут быть извлечены в интересах следствия.
    • Пример: Когда зонирование соседних участков было изменено с сельскохозяйственного на коммерческое?
  • Поддержка рабочих процессов редактирования сервисов и автономного редактирования.

Определение включения архивирования

Выполните эти шаги, чтобы определить, включено ли архивирование набора данных, обратившись к его свойствам:

  1. Запустите ArcGIS AllSource.
  2. На панели Каталог, в папке Базы данных, щелкните подключение к базе геоданных, чтобы развернуть его содержание.
  3. Щелкните класс объектов или таблицу правой кнопкой и выберите Свойства.

    Если архивирование включено, свойство Архивирование на вкладке Источник показывает дату и время, в UTC, включения архивирования, в параметр Имя архива заполнен.

    Свойства класса объектов с включенным архивированием

    Примечание:

    Если архивирование не включено, его можно включить для версионных и неверсионных данных, щелкнув набор данных правой кнопкой на панели Каталог и выбрав Управление. В диалоговом окне свойств класса объектов перейдите на вкладку Управление, в разделе Управление функциональностью базы геоданных нажмите Архивирование.

Архивирование изменений

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

Примечание:
Базовая таблица – это базовая таблица класса пространственных объектов. Там содержатся все непространственные атрибуты, а также, при использовании типа геометрии SQL, пространственные атрибуты. Если рассматривать класс пространственных объектов через пользовательский интерфейс системы управления базами данных, вы можете увидеть базовую таблицу.

Это следующие атрибутивные поля в базовой таблице:

  • GDB_FROM_DATE - точная дата и время создания объекта.
  • GDB_TO_DATE - точная дата и время устаревания объекта. Время атрибута в поле GDB_TO_DATE задается как 9999-12-31, если это текущее представление объекта.
  • GDB_ARCHIVE_OID - глобальный идентификатор для отслеживания нескольких представлений архивных записей.

При редактировании неверсионных данных в ArcGIS AllSource каждая транзакция (вставка, обновление или удаление) автоматически закрепляется в базе данных без необходимости сохранения изменений. Когда изменения набора данных закрепляются, база геоданных автоматически обновляет эти атрибутивные поля для сохранения истории изменений.

Ниже приведены примеры обработки различных типов редактирования в базовой таблице при включенном архивировании:

  • Вставка - в ArcGIS AllSource к классу объектов Park_Amenities добавляется новый объект. В поле GDB_FROM_DATE записывается дата и время (UTC) создания объекта. В поле GDB_TO_DATE записывается 9999-12-31 23:59:59.0000, это означает, что это текущее представление объекта.
    Добавление нового архивного объекта
  • Обновление - в ArcGIS AllSource, в редакторе атрибутов обновляется поле AmenityType, значение которого меняется с NULL на Restroom. Это обновление приводит к следующим изменениям в таблице базы данных:
    • Вставляется новая строка с таким же OBJECTID 1, в полеGDB_FROM_DATE записывается такая же отметка времени, что и при архивировании, в поле GDB_TO_DATE записывается 12/31/9999, а в AmenityType записывается изменение значения с NULL на Restroom.
      Обновление архивного объекта
  • Удаление - в ArcGIS AllSource объект Restroom amenity был выбран и удален. Когда объекты удаляются во время сеанса редактирования, записи остаются в базовой таблице, связанная строка в базовой таблице обновляется, а атрибутивное значение GDB_TO_DATE задается в соответствии с временной отметкой операции архивирования, которая отмечает объект как устаревший.
    Удаление архивного объекта

Управление историей архивирования

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

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

  • Обработка транзакций к данным
  • Хранение в файловой системе
  • Управление таблицами и индексом
  • Процедуры резервного копирования и восстановления

Один из вариантов удаления записей истории - это отключение архивирования; однако способа сохранения части истории в базовой таблице нет. Отключение архивирования не всегда удобное решение, поскольку архивирование необходимо для поддержки рабочих процессов редактирования сервисов и автономного редактирования. Кроме того, отключение архивирования происходит за одну транзакцию, в случае очень больших таблиц, необходимо обеспечить достаточное место для журналов транзакций, чтобы избежать ошибок.

Еще один вариант - использование инструмента геообработки Сократить историю архивирования. Этот инструмент позволяет удалять устаревшие строки из неверсионных архивных наборов данных без отключения архивирования и нарушения работы синхронизации.

Дополнительные сведения о применении этого инструмента см. в разделе Сократить историю архивирования.