Подготовка данных

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

Почему односторонняя реплика?

Репликация базы геоданных полезна для управления пространственными данными и их распределения по нескольким местоположениям и базам геоданных. Это процесс включает в себя создание реплик, то есть копий данных исходной базы геоданных, и перенос этих реплик в целевую базу геоданных. Одним из преимуществ реплик является то, что их можно регулярно синхронизировать с исходными данными. Синхронизация означает, что любые изменения, внесенные в исходные данные, также будут отражены в данных реплики, что может быть полезным для управления часто обновляемыми данными.

Есть три типа репликации базы геоданных: односторонняя, двусторонняя и репликация открепления/прикрепления. Тип, который вы используете, будет зависеть от того, как данные хранятся, каким образом они должны распространяться, а также от требований к редактированию данных.

Это руководство посвящено реплицировании данных между департаментами туризма и транспорта. Тип используемой реплики – односторонняя реплика.

Изображение с тремя типами репликации, используемыми в рабочем процессе

Почему односторонняя реплика представляется лучшим типом репликации для департаментов туризма и транспорта? Помните о следующих аспектах рабочего процесса:

  • В обоих департаментах данные хранятся в многопользовательской базе геоданных.
  • Департаменту транспорта нужно поделиться своими данными с департаментом туризма.
  • Департаменту туризма не нужно вносить изменения в данные. Ему нужен только доступ на чтение, чтобы он мог опубликовать данные на веб-карте.
  • Департамент транспорта будет управлять всеми правками и обновлениями. Нет необходимости в разрешении конфликтов редактирования вручную, поскольку редактировать данные будет только один департамент.

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

Рисунок односторонней репликации между родительской и дочерней базами геоданных

Загрузка данных

Теперь, когда вы определили, что односторонняя реплика лучше всего подходит для вашего рабочего процесса, вы загрузите и откроете пакет проекта ArcGIS Pro, содержащий данные для этого руководства.

Примечание:

Здесь вы воспользуетесь собственными многопользовательскими базами геоданных для выполнения рабочего процесса. Убедитесь, что вы установили и авторизовали ArcGIS Server и установили Microsoft SQL Server (или другую поддерживаемую систему управления реляционными базами данных). Чтобы узнать больше об установке этих компонентов, просмотрите документацию по Базовому развертыванию ArcGIS Enterprise и руководство Начало работы с ArcGIS Enterprise Builder.

  1. Загрузите пакет проекта Tourism_and_Transportation.
  2. Найдите загруженный файл на вашем компьютере.
    Примечание:

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

  3. Если на вашем компьютере установлен ArcGIS Pro, дважды щелкните Tourism_and_Transportation.ppkx, чтобы открыть его. Если будет предложено, войдите под лицензированной учетной записью ArcGIS.
    Примечание:

    Если у вас нет доступа к ArcGIS Pro или учетной записи организации ArcGIS, см. варианты доступа к программному обеспечению.

    В проекте есть две карты: Transportation и Tourism – для каждого участвующего в репликации департамента. Эти карты масштабированы к г. Буэнос-Айрес, Аргентина, но они не содержат никаких данных, кроме базовой карты.

    Карта Буэнос-Айреса без данных

    Проект также содержит данные в базе геоданных проекта.

  4. На панели Каталог раскройте Базы данных и разверните tourism_and_transportation.gdb.

    База геоданных по умолчанию

    В базе данных есть три класса пространственных объектов: Public_Bicycles, Subway_Lines и Subway_Stations. В этом руководстве это наборы данных, которыми занимается департамент транспорта и которые департамент туризма планирует использовать на своей карте.

Подключение к многопользовательским базам геоданных

База данных, в которой в настоящее время хранятся данные, является файловой базой геоданных. Односторонняя репликация возможна только в том случае, если родительская база данных является многопользовательской базой геоданных, поэтому необходимо переместить данные.

Многопользовательская база геоданных использует ArcGIS Enterprise. Это позволило добавить некоторые функциональные возможности и типы наборов данных, а также синхронизировать сервисы объектов, опубликованные на основе его данных.

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

  1. При необходимости создайте многопользовательскую базу геоданных в своем экземпляре SQL Server (или другой поддерживаемой системы управления реляционными базами данных) и назовите ее Transport_BA.
    Примечание:

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

    Теперь вы подключитесь к многопользовательской базе геоданных.

  2. На панели Каталог щелкните правой кнопкой Базы данных и выберите Новое подключение базы данных.

    Опция Новое подключение к базе данных

    Появится окно Подключение к базе данных. Параметры, которые вы используете для подключения к многопользовательской базе геоданных, будут зависеть от вашего экземпляра SQL Server или другой системы управления реляционными базами данных (RDBMS).

  3. Для Платформы базы данных выберите используемую вашим экземпляром RDBMS. Для Экземпляра введите имя вашего экземпляра RDBMS.
    Примечание:

    В примерах изображений используется экземпляр SQL Server с именем BASQL. Ваш экземпляр может называться по-другому.

    Параметры Платформа базы данных и Экземпляр

  4. Для Типа аутентификации выберите Аутентификация в базе данных.
  5. В полях Имя пользователя и Пароль введите учетные данные учетной записи, у которой есть доступ к загрузке данных в многопользовательскую базу геоданных.
    Примечание:

    В примерах изображений это пользователь JUAN. Ваше имя пользователя будет другим.

  6. В качестве Базы данных выберите созданную вами многопользовательскую базу геоданных Transport_BA (или другую многопользовательскую базу геоданных, к которой у вас есть доступ и которую вы сможете изменять для этого руководства).

    Параметры Тип аутентификации, Имя пользователя, Пароль и База данных

  7. Нажмите OK.

    Многопользовательская база геоданных будет добавлена на панель Каталог. По умолчанию база данных названа в соответствии с экземпляром. (Например, база данных называется BASQL.sde.) Вы переименуете базу данных в соответствии со следующим форматом наименования: имя_базы_данных_пользователь базы_данных.sde.

  8. На панели Каталог щелкните правой кнопкой свою многопользовательскую базу геоданных и выберите Переименовать. Измените имя на Transport_BA_[имя_пользователя_вашей_базы_данных].sde.
    Примечание:

    На примерах изображений имя пользователя — JUAN, поэтому многопользовательская база геоданных называется Transport_BA_JUAN_sde. Ваше имя пользователя будет другим.

    Переименованная многопользовательская база геоданных

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

  9. Перетащите классы объектов Public_Bicycles, Subway_Lines и Subway_Stations из tourism_and_transportation.gdb в Transport_BA.sde.
    Подсказка:

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

  10. Разверните Transport_BA.sde просмотра ее содержимого.

    Скопированные данные в многопользовательской базе геоданных

    Данные были скопированы. Копии содержат префикс имени пользователя, которому принадлежат данные. В примерах изображений владелец — это учетная запись JUAN. У вас это будет другой пользователь.

  11. Сверните tourism_and_transportation.gdb.

    Затем вы подключитесь к многопользовательской базе геоданных, используемой департаментом туризма. Для односторонней реплики дочерняя база данных не обязательно должна быть многопользовательской базой геоданных. Однако в данном сценарии департамент туризма хочет использовать опубликованные данные для создания веб-карты. Многопользовательские базы геоданных позволяют синхронизировать веб-объекты, опубликованные на основе их данных. Это означает, что если департамент туризма хочет, чтобы его веб-карта автоматически обновлялась при каждом обновлении данных, он тоже должен использовать многопользовательскую базу геоданных.

  12. При необходимости создайте многопользовательскую базу геоданных в своем экземпляре SQL Server (или другой поддерживаемой системы управления реляционными базами данных) и назовите ее Tourism_BA.
  13. На панели Каталог щелкните правой кнопкой Базы данных и выберите Новое подключение базы данных.
  14. В окне Подключение к базе данных задайте нужные параметры для подключения к созданной вами многопользовательской базе геоданных Tourism_BA (или к другой многопользовательской базе геоданных, к которой у вас есть доступ, и которую вы сможете изменять для этого руководства).
  15. Нажмите OK.
  16. Переименуйте новое подключение к базе данных в Tourism_BA_[имя_пользователя_вашей_базы_данных].sde.

    На примерах изображений имя пользователя базы данных туризма — EMMA. У вас будет другое имя пользователя.

    Оба подключения к многопользовательской базе геоданных

    Теперь вы подключены к двум многопользовательским базам геоданных. Одна из них представляет собой многопользовательскую базу геоданных, управляемую департаментом транспорта; она содержит транспортные данные. Другая – многопользовательскую базу геоданных, управляемую департаментом туризма. Она пустая.

Включение глобальных идентификаторов

Теперь вы подготовите данные транспорта для репликации. Сначала вы проверите, что подключение к базе данных использует традиционную, а не сервис-ориентированную версию. Репликация не поддерживается сервис-ориентированными версиями, поскольку для реплик необходимо прямое подключение к родительской базе данных. Затем вы включите для классов объектов глобальные идентификаторы. Когда данные содержат версии, связанные с редактированием, глобальные идентификаторы помогают отображать изменения, сделанные в нескольких версиях одних и тех же данных.

  1. На панели Каталог щелкните правой кнопкой Transport_BA.sde и выберите Свойства подключения к базе геоданных.
  2. Убедитесь, что в окне Свойства подключения к базе геоданных для Типа версий выбрано Традиционные.

    Для параметра Типа версий выбрано Традиционные

  3. Закройте окно Свойства подключения к базе геоданных.

    Затем вы включите традиционное управление версиями и включите глобальные идентификаторы для каждого из трех классов пространственных объектов.

  4. На панели Каталог щелкните правой кнопкой Public_Bicycles и выберите Управлять.

    Опция Управлять для Public_Bicycles

    Появится окно Свойства классов объектов.

  5. На вкладке Управлять отметьте Версии и выберите Традиционные. Отметьте Глобальные идентификаторы.

    Версии и глобальные идентификаторы включены

  6. Нажмите OK.
  7. Для классов пространственных объектов Subway_Lines и Subway_Stations откройте окно Свойства класса пространственных объектов и включите традиционное управление версиями и глобальные идентификаторы.

    Теперь все три класса пространственных объектов готовы к репликации.

  8. На панели быстрого доступа щелкните кнопку Сохранить, чтобы сохранить проект.

    Кнопка Сохранить

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


Создание односторонней реплики

После этого вы создадите одностороннюю реплику между базами геоданных транспорта и туризма.

Создание реплики

Чтобы создать реплику, вы запустите инструмент геообработки.

  1. На панели Каталог щелкните правой кнопкой Transport_BA.sde, нажмите Распределенная база геоданных и выберите Создать реплику.

    Опция Создать реплику

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

  2. Для Наборов данных реплики щелкните кнопку Обзор.

    кнопка Обзор

  3. В окне Источники данных для реплики в разделе Проект щелкните Базы данных. Щелкните Transport_BA.sde.
  4. Удерживая Ctrl, щелкните Public_Bicycles, Subway_Lines и Subway_Stations, чтобы выбрать все три сразу.

    Все три класса объектов выбраны

  5. Нажмите OK.

    Наборы данных добавятся в параметр на панели Геообработка.

  6. Для Типа реплики выберите Односторонняя реплика. Убедитесь, что для параметра Выходной тип задано База геоданных.

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

  7. Для База геоданных, в которой будет создана реплика данных щелкните кнопку Обзор.
  8. В окне База геоданных, в которой будет создана реплика данных, в разделе Проект щелкните Базы данных. Выберите Tourism_BA.sde и щелкните OK.
  9. В поле Имя реплики введите Transportation_to_Tourism.

    Параметры инструмента Создать реплику

  10. Щелкните Запустить.

    Инструмент запустится и будет создана реплика.

  11. Закройте панель Геообработка.

Изучение реплики

Теперь, когда реплика создана, вы проверите ее с позиции как родительской, так и дочерней базы данных.

  1. На панели Каталог щелкните правой кнопкой Transport_BA.sde, нажмите Распределенная база геоданных и выберите Управление репликами.

    Появится панель Управление репликами. На ней появилась одна реплика: созданная вами Transportation_to_Tourism.

  2. Под Transportation_to_Tourism Щелкните стрелку, чтобы развернуть реплику.

    Стрелка для развертывания реплики

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

    Информация о реплике из родительской базы данных

  3. Закройте панель Управление репликами.

    Далее вы убедитесь, что данные были реплицированы в дочернюю базу данных.

  4. На панели Каталог щелкните правой кнопкой базу геоданных Tourism_BA.sde и выберите Обновить.
  5. Разверните Tourism_BA.sde.

    Реплика, содержащая три класса объектов

    Три класса пространственных объектов были успешно реплицированы в дочернюю базу данных.

  6. Щелкните правой кнопкой мыши Tourism_BA.sde, наведите на Распределенная база геоданных и выберите Управление репликами.
  7. На панели Управление репликами, разверните реплику Transportation_to_Tourism.

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

    Информация о реплике из дочерней базы данных

  8. Закройте панель Управление репликами. Сверните подключение Tourism_BA.sde.
  9. Сохраните проект.

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


Синхронизация изменений

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

Добавление данных на карту

Недавно департамент транспорта продлил одну из линий метро, чтобы лучше обслуживать одну из больниц города. В качестве ГИС-специалиста департамента транспорта вы отредактируете исходные данные метрополитена с учетом этих изменений. Сначала вы добавите данные на карту и настроите ее символы, чтобы различать линии метро.

  1. Убедитесь, что активна карта Transportation.

    Карта Transportation

  2. На панели Каталог под Transport_BA.sde, удерживая Ctrl, щелкните Subway_Lines и Subway_Stations, чтобы выбрать их. Щелкните правой кнопкой мыши любой из выбранных классов и выберите Добавить к текущей карте.

    Опция Добавить к текущей карте

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

    Карта метро Буэнос-Айреса по умолчанию

    Теперь вы измените символы. В целях экономии времени файлы слоев уже размещены в папке проекта. Вы импортируете символы из этих файлов.

  3. Убедитесь, что на панели Содержание выделен слой Subway Stations (станции метро).

    Выделен слой Subway Stations на панели Содержание

  4. Щелкните на ленте вкладку Векторный слой. В группе Отображение щелкните Импорт .

    Кнопка Импорт

    Появляется панель Импорт символов.

  5. Убедитесь, что в качестве Входного слоя выбран Subway Stations. Возле опции Слой символов щёлкните кнопку Обзор.
  6. В окне Слой символов в разделе Проект разверните Папки, Tourism_and_Transportation и p30. Щелкните tourism_and_transportation1.

    Папка с файлами слоев

  7. Щелкните Subway_Station_Symbology.lyrx и щелкните OK.

    Файл будет добавлен в параметры инструмента.

    Параметры инструмента Импорт символов

  8. Нажмите OK.

    Символ применится. Вы повторите процесс для другого слоя.

  9. На панели Содержание выберите Subway Lines (Линии метро). На ленте во вкладке Векторный слой щелкните Импорт.
  10. На панели Импорт символов для Слоя символов выберите Subway_Lines_Symbology.lyrx (находится в той же папке, что и файл слоя станций). Нажмите OK.

    На карте как станции, так и линии теперь обозначаются символами, поэтому каждая линия метро имеет свой цвет.

    Карта с примененными символами

Редактирование данных

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

Изменения коснутся линии С метрополитена, проходящей с севера на юг по восточной стороне города. Для целей этого руководства уже подготовлена закладка для области интереса.

  1. На ленте щелкните вкладку Карта. В группе Навигация щелкните Закладки и выберите Lima Street.

    Закладка Улица Лима

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

    Сначала вы создадите новую линия метро, продленную к больнице.

  2. На ленте щелкните вкладку Редактирование. В группе Объекты щелкните Создать.

    Кнопка Создать

    Появится панель Создать объекты.

  3. На панели Создать объекты под Subway Lines щелкните шаблон объектов Linea C. Удостоверьтесь, что выбрана Линия.

    Шаблон объектов Linea C

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

    Параметры замыкания

  5. На карте щелкните конечную вершину линии метрополитена.

    Конечная вершина линии метрополитена

  6. Для второй вершины выберите конец улицы Лима, расположенный непосредственно к югу от первой вершины.

    Конечная вершина нового объекта

  7. В нижней части карту щелкните кнопку Готово.

    Кнопка Готово

    Создан новый линейный объект метро. Далее вы создадите станцию метро для продленной линии.

  8. На панели Создать объекты под Subway Stations щелкните шаблон объектов C и подтвердите, что выбрана Точка.
  9. Нажмите кнопку Откройте панель активного шаблона, чтобы указать значения атрибутов для новых объектов, которые вы будете создавать.

    Кнопка Открыть панель активный шаблон

  10. Введите следующую атрибутивную информацию:
    • Для Estacion введите Больница Борда.
    • Для Linea подтвердите, что выбрано C.
    • Для Ascensor введите 0.
    • Для Escalera введите 4.
    • Для Adaptado введите NO.
    • Для Accesible введите NO.

    Атрибуты для нового объекта

  11. На карте щелкните конечную точку нового линейного объекта метро, который вы создали.

    Местоположение новой станции метро

    Станция добавлена.

  12. В нижней части карту щелкните кнопку Готово. Закройте панель Создать объекты.
  13. На ленте, на вкладке Редактирование в группе Выборка щелкните Очистить.
  14. В группе Управление изменениями щелкните Сохранить.

    Кнопка Сохранить

  15. В окне Сохранить изменения щелкните Да.

    Теперь вы отредактировали классы пространственных объектов для добавления новых данных.

    Новая линия метро и станция на карте

Синхронизация данных

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

  1. На панели Каталог щелкните правой кнопкой Transport_BA.sde, нажмите Распределенная база геоданных и выберите Синхронизировать изменения.

    Опции Синхронизации изменений

    Появится панель Геообработка, отображающая инструмент Синхронизировать изменения. Параметры инструмента заполнятся автоматически на основе данных, заданных при создании односторонней реплики. База геоданных 1 – это родительская база геоданных, Transport_BA.sde, а база геоданных 2 – это дочерняя база геоданных, Tourism_BA.sde. Направление идет от базы геоданных 1 к базе геоданных 2, то есть изменения в данных будут передаваться от родительской базы к дочерней.

    Конфликты между двумя базами данных будут разрешаться в пользу базы геоданных 1. В односторонней реплике только одна база геоданных может вносить правки, поэтому ручное разрешение конфликтов отсутствует. В данном руководстве департамент транспорта может вносить изменения, а департамент туризма не может, поэтому все конфликты будут автоматически разрешаться в пользу департамента транспорта.

    Примечание:

    У параметра Правила разрешения конфликтов есть предупреждение, которое информирует о том, что все конфликты будут автоматически решены. Такое поведение ожидается при односторонней реплике, поэтому предупреждение можно не читать.

    Параметры инструмента Синхронизировать изменения

  2. Щелкните Запустить.

    Инструмент запустится. После завершения процесса правки в данных департамента транспорта синхронизируются с репликой департамента туризма.

  3. Закройте панель Геообработка.

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

  4. Активируйте карту Туризм.

    Карта Туризм

    На этой карте представлен вид Буэнос-Айреса, аналогичный карте Транспорт. Однако на нем нет данных департамента транспорта.

  5. На панели Каталог щелкните правой кнопкой базу геоданных Tourism_BA.sde и выберите Обновить.
  6. Разверните Tourism_BA.sde. Добавьте классы объектов Subway_Lines и Subway_Stations на текущую карту.
  7. На ленте щелкните вкладку Карта. В группе Навигация щелкните Закладки и выберите Lima Street.

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

    Реплицированные объекты на карте

  8. Сохраните проект.

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

В этом руководстве основное внимание уделялось распространению данных между департаментом транспорта и департаментом туризма через одностороннюю реплику. Другие руководства в этой серии посвящены распространению данных из департаментов культуры и розничной торговли посредством двусторонних реплик и реплик открепленной/прикрепленной репликации.

Вы можете найти больше учебных пособий в галерее учебных пособий.