Импорт сведений ЕГРН#

Как происходит импорт#

Импорт сведений ЕГРН – это электронное информационное взаимодействие с ЕГРН (Росреестр) в части импорта данных (сведений КПТ) и выписок из ЕГРН и синхронизации БД.

Примечание

Данные каталога «Сведения ЕГРН» вносятся в Систему только путем импорта сведений, полученных из Росреестра, и недоступны для изменения вручную.

В Систему можно загрузить следующий перечень xml-схем, используемых для формирования xml-документа:

  • кадастровый план территории (KPT_v10, extract_cadastral_plan_territory_v01);

  • выписки из ЕГРН об объекте недвижимости (земельном участке) в электронной форме (extract_about_property_land);

  • кадастровую выписку о земельном участке (KVZU_v07, extract_base_params_land_v01).

Примечание

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

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

В процессе импорта каждый объект из xml-файла сопоставляется с объектами в Системе.

Важно

Импорт сведений ЕГРН могут выполнять пользователи, которым назначена роль ias:gkn:importer (см. Настройка прав доступа).

../../../_images/role.png

В результате сопоставления в Системе выполняются следующие операции:

  • создание новых объектов;

  • обновление существующих объектов (обновляется координатное описание и значения атрибутов);

  • перевод объектов в архив.

../../../_images/egrn_proccess.png

Установите компонент БД Common.Egrn. Компонент добавит индексы на геотаблицу для ускорения импорта лесничеств.

Настройка импорта ЕГРН#

Импорт геометрии объектов#

В БД хранятся следующие типы геометрии:

  • [multi]point;

  • [multi]linestring;

  • [multi]polygon;

  • объект-коллекция.

Сохраняемая в БД геометрия должна быть корректной. Это можно проверить с помощью функции is_valid: проверка возвращает true и отсутствуют дублирующиеся точки и полигоны. Объект-коллекция для одного объекта в БД имеет более одного описания геометрии.

Алгоритм преобразования геометрии из xml в GeoJson#

Для преобразования геометрии из формата xml в формат GeoJson Система выполняет следующий сценарий:

  1. Извлекается геометрия объекта из xml-файла.

  2. Обрабатываются контуры.

Если геометрия в xml-файле представлена в виде отдельных контуров <Countour>, то результатом разбора геометрии всегда будет мультиполигон.

2.1. Выделяются элементы контура и определяются типы геометрии для каждого элемента:

  • point – имеет одну координату в элементе;

  • linestring – имеет две и более координат, где первая и последняя не совпадают;

  • polygon – имеет три и более координат, где первая и последняя совпадают.

2.1.1. Для типов linestring и polygon удаляются повторяющиеся точки.

2.1.2. Для типа polygon удаляются дубли контуров.

2.1.3. Если после выполнения шага 2.1.1 для linestring осталось одна точка, элемент сохраняется как point.

2.1.4. Если после выполнения шага 2.1.1 для polygon осталось две точки, элемент сохраняется как linestring, а если одна точка, то элемент сохраняется как point.

2.2. Однотипные элементы объединяются в [multi]типы.

2.3. Если на шаге 2.2 получены разные типы геометрии, то геометрия преобразовывается в коллекцию.

  1. Выполняется проверка корректности для мультиполигонов. Если обнаружено пересечение, то геометрия сохраняется как коллекция, т.е. имеет несколько записей геометрии (см. варианты преобразования геометрии).

  2. Результат сохраняется в GeoJson, с последующей записью в БД.

Варианты преобразования геометрии

  • Ро – один полигон с вырезанным внутренним контуром;

  • Р – полигон;

  • GC – коллекция;

  • МР – мультиполигон;

  • L – полилиния;

  • ML – мультилиния

Как изменить количество одновременных заданий на импорт#

Количество одновременных заданий на импорт данных ЕГРН в журнале импорта можно изменить.

Для изменения в СУБД перейдите к схеме regadm и откройте таблицу m_global_settings.

В строке со значением столбца [setting_type] равным 16 измените значение столбца [value] на {"MaxAsyncImportTasks": N}, где N – это необходимое количество одновременно выполняемых заданий.

Если такая строка отсутствует в таблице, то количество заданий равно 4.

Для изменения количества одновременных заданий на импорт данных ЕГРН добавьте строку {"MaxAsyncImportTasks": N} в таблицу m_global_settings и задайте нужное значение.

../../../_images/bd.png

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

Важно

Для вступления в силу внесенных изменений в таблице m_global_settings, перезапустите сервис службы импорта ЕГРН.

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

../../../_images/module_3.png

В какой системе координат загружаются данные#

По умолчанию, при загрузке данных ЕГРН, система координат не определяется. Данным ЕГРН, которые загружаются в Систему, устанавливается проектная СК.

Поэтому, если данные ЕГРН получены в СК отличной от проектной СК, то перед загрузкой в Систему нужно их преобразовать. (См. sk_mapping_setup)

Автоматически определить и преобразовать систему координат данных, полученных из ЕГРН, в СК проекта позволяет дополнительный модуль Автоматическое определение системы координат при импорте ЕГРН.

Настройка времени жизни файлов#

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

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

  • очистку файловой системы;

  • удаление из временного файлового хранилища.

Очистка файловой системы

Раз в 24 часа запускается сервис очистки временных файлов, расположенных в файловой системе.

Удалены будут следующие файлы:

  • созданные более 5 дней назад, для которых не найдена задача импорта;

  • для которых существует задача импорта в любом статусе, кроме статусов «В очереди» и «Импортируется».

Удаление из временного файлового хранилища

Помимо работы с файловой системой, в процессе импорта также используется временное файловое хранилище (MinIO), в котором файлы автоматически удаляются по истечении заданного срока хранения.

Для настройки срока хранения временных файлов необходимо в Consul указать значение для параметра FileLifeTimeInDays.

Для сервиса приложений (Geometa) файл расположен по пути Key/Values/Gems.Ias.ApplicationServer/appsettings.json.

Для сервиса импорта ЕГРН файл расположен по пути Key/Values/Grad.Server.Gkn.Service/appsettings.json.

"GknImporter": {
    "FileLifeTimeInDays": 5
},

Значение переменной указывается в днях. По умолчанию файлы будут удаляться через 5 дней.

Файлы конфигурации#

В Систему можно загрузить следующий перечень xml-схем, используемых для формирования xml-документа:

  • кадастровый план территории (KPT_v10, extract_cadastral_plan_territory_v01);

  • выписки из ЕГРН об объекте недвижимости (земельном участке) в электронной форме (extract_about_property_land);

  • кадастровую выписку о земельном участке (KVZU_v07).

Система использует в процессе импорта данных файлы конфигурации, в которых указано сопоставление между поступающим на вход импорта XML-файлом и объектами системы.

Для каждого типа сведений используется свой файл конфигурации. В файле конфигурации с помощью тегов и атрибутов описано, как следует импортировать те или иные сведения в Систему.

Пример части структуры файла конфигурации:

<?xml version="1.0" encoding="utf-8"?>
<UpdaterConfig>
  <Scheme Name="extract_about_property_land">
        <Type Alias="GknParcel" MainTableType="parcel">
            <Field Name="KN" Expression="{cadNum}" IsLink="True" TableType="parcel"/>
            <Field Name="CadastralBlocks" Expression="{cadblock}" IsRef="True" RefAliasName="GknCadastralBlocks"
                   RefTableField="Number" RefTableKeyField="KeyField" TableType="parcel"/>
            <Field Name="RegDate" Expression="{registrationdate}" TableType="parcel"/>
            <Field Name="CancelDate" Expression="{canceldate}" TableType="parcel"/>
            <Field Name="RegDateByDoc" Expression="{regdatebydoc}" TableType="parcel"/>
            <Field Name="ParcelUseKind" Expression="{usekind}" IsRef="True" IsDictionary="True"
                   RefAliasName="GknRefParcelUseKind" RefTableField="Code" RefTableKeyField="KeyField" NeedCreate="true"
                   RefFieldsName="usekind" TableType="parcel"/>
     </Type>
    </Scheme>
  </UpdaterConfig>

Атрибуты внутри тегов могут описывать какие-либо сведения об объекте или обозначать те или иные флаги.

Для управления обновлением или пересозданием объектов используются два флага – TakeExistingMMR и DeleteOldObject.

Атрибут TakeExistingMMR указывает, что к полям текущего объекта будут добавлены новые связанные объекты. Наличие атрибута со значением True означает, что существующий связанный объект необходимо обновить. Отсутствие атрибута говорит о том, что нет необходимости менять связанный объект.

Атрибут DeleteOldObject указывает, следует ли удалять старые объекты и связанные с ними внутренние объекты. Наличие атрибута со значением True означает, что существующий связанный объект и всего его внутренние связи и объекты необходимо удалить. Отсутствие атрибута говорит о том, что нет необходимости удалять связанные объект и его внутренние связи и объекты.

Примечание

При наличии двух атрибутов, атрибут TakeExistingMMR преобладающий.

В таблице ниже описаны все комбинации зависимости входных данных и атрибутов и то, что происходит в том или ином случае.

Значение атрибута TakeExistingMMR

Значение атрибута DeleteOldObject

Наличие данных в импортируемом XML-файле

Описание происходящего

Присутствует и установлен в True

Присутствует и установлен в True

Да

Обновляются поля текущего объекта, связь со связанным объектом не разрывается. Созданные связанные объекты добавляются в соответствующие поля объекта, дополняя уже существующие

Присутствует и установлен в True

Присутствует и установлен в True

Нет

Ничего не обновляется, связь с связанным объектом не разрывается

Присутствует и установлен в True

Присутствует и установлен в False или отсутствует полностью

Да

Обновляются поля текущего объекта, связь со связанным объектом не разрывается. Созданные связанные объекты добавляются в соответствующие поля объекта, дополняя уже существующие

Присутствует и установлен в True

Присутствует и установлен в False или отсутствует полностью

Нет

Ничего не обновляется, связь с связанным объектом не разрывается

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в True

Да

Связь с связанным объектом разрывается, связанный объект удаляется, создаётся новый и привязывается к основному объекту. Если у объекта, в котором установлен атрибут, есть связанные вложенные объекты, они также будут удалены и созданы новые

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в True

Нет

Связь с связанным объектом разрывается, связанный объект удаляется. Если у связанного объекта, в котором установлен атрибут, есть связанные вложенные объекты, они также будут удалены

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в False или отсутствует полностью

Да

Связь со связанным объектом разрывается, создаётся новый связанный объект и связывается с объектом

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в False или отсутствует полностью

Нет

Связь со связанным объектом разрывается, все вложенные объекты и связи между ними будут сохранены

Журнал импорта#

Журнал импорта расположен в разделе импорт-экспорт «Импорт/экспорт» кнопка журнал импорта.

В процессе импорта файлам присваиваются статусы:

Статус

Описание

Импортируется

Выполняется импорт XML-файлов.

Импорт окончен

XML-файл успешно загружен.

Завершен с ошибкой

XML-файл загружен, но в процессе импорта обнаружены ошибки.

В очереди

XML-файл ожидает своей очереди для загрузки.

Импорт прерван

Присваивается файлам со статусом «Импортируется» после возобновления операции, если ранее процесс импорта был внезапно прерван.

Если импорт был прерван, то после возобновления загрузки:

  • файлы со статусом «Импортируется» приобретают статус «Импорт прерван». Для таких файлов загрузку необходимо возобновить вручную;

  • файлы со статусом «В очереди» восстановятся с таким же статусом и их загрузка продолжится автоматически.

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