Варианты отношений данных

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

Щелкните следующие ссылки, чтобы более подробно изучить каждый из этих вариантов отношений данных:

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

Подсказка:

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

Соединения

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

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

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

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

  • Один к одному (1:1)
  • Многие к одному (M:1)
    Примечание:

    Один ко многим (1:M) или многие ко многим (M:N) - Можно создать соединение в тех случаях, когда существует отношение «один-ко-многим» или «многие-ко-многим», однако в зависимости от источника данных существуют различия между тем, как работают инструменты и другие настройки, специфичные для слоя. При соединении таблиц, находящихся в одной базе геоданных, по умолчанию используется опция сохранения всех записей. Если вы используете данные, не относящиеся к базе данных, например шейп-файлы или таблицы dBASE, для создания соединения, возвращается только первая совпадающая запись.

    Cм. раздел Добавить coединение, чтобы узнать больше об использовании соединений с различными входными данными и возможными результатами.

В следующем примере каждый природный актив (национальный парк) находится в ведении конкретной организации. Чтобы обеспечить согласованность данных с использованием соединения «многие-к-одному», записи National Parks слоя были объединены с соответствующей организацией, чтобы создать более полное представление о парках и о тех, кто ими владеет.

Схема соединения «многие к одному»
Соединение создается между National Parks и Organizationsтаблицей.

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

Подробнее о соединениях см. в разделе Введение в соединения и связи.

Подсказка:

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

Связи

Связь — это свойство слоя в ArcGIS Pro. Связь соединяет одну или несколько таблиц друг с другом через ключевое поле без физического соединения таблиц.

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

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

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

  • Один к одному (1:1)
  • Один ко многим (1:М)
  • Многие ко многим (M:N)

    Подробнее о добавлении и использовании связей, см. в разделе Добавить связь.

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

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

Схема связи «один-ко-многим»
Связь создается между отдельным Campsites и доступным CampsiteAttributes.

Подробнее о связях, см. в разделе Введение в соединения и связи.

Классы отношений

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

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

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

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

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

Диаграмма класса отношений «один-ко-многим»
Класс отношений создается между Campground Facilities и каждым Campsites, закрепленным за каждым палаточным лагерем.

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

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

Диаграмма «один-ко-многим» класса сложных отношений
Класс сложных отношений «один-ко-многим» создается между Campground Facilities и каждым Campsites, закрепленным за каждым палаточным лагерем. После установления класса отношений удаление палаточного лагеря в родительской (источник) таблице приводит к каскадному удалению всех кемпингов, связанных с этим палаточным лагерем в таблице Кемпингов (адресат).

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

Подробнее о классах отношений см. в разделе База геоданных типов классов отношений

Связанные разделы