Использовать или не использовать классы отношений?

12

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

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

Почти для всех данных, которые я собираю, я до сих пор не вижу причины для этого. Для Parcel Fabric я вижу некоторые причины, по которым это будет полезно, но все же я считаю, что было бы лучше сохранить атрибуты непосредственно в классе объектов.

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

В любом случае, спасибо за любые комментарии!

Коди Браун
источник

Ответы:

17

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

Хотя люди могут утверждать, что ссылочная целостность является одним из преимуществ, правда заключается в том, что ее можно обойти с помощью подсказки SQL, поэтому выгода от этого действительно зависит от рабочего процесса, который у вас есть для его изменения (т.е. люди используют только ArcMap для редактировать, а люди также редактируют с помощью SQL-запросов или не-ESRI инструментов).

Раги Язер Бурхум
источник
2
Вау, отличный ответ. Огромный мир теории баз данных просто поразил меня. Большое спасибо за вклад!
Коди Браун
8

Подумайте о более широкой картине - данные ГИС - это всего лишь средство для достижения цели для большинства людей, особенно когда речь идет о государственных структурах. Мой опыт показывает, что классы отношений в первую очередь полезны (и уместны), когда вам нужно объединить непространственные данные с одним: много связей с вашими пространственными данными, особенно если они получены из внешнего источника или постоянно изменяются . Некоторые примеры из реальной жизни, с которыми я столкнулся в государственных учреждениях, могут помочь проиллюстрировать это:

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