Узагальнення, спеціалізація та агрегація в моделі ER

Узагальнення, спеціалізація та агрегація в моделі ER

Використання моделі ER для більших даних створює багато складнощів під час проектування моделі бази даних. Тому, щоб мінімізувати складність, у модель ER було введено спеціалізацію та агрегацію. Вони використовувалися для абстракції даних. У якому механізм абстракції використовується для приховування деталей набору об’єктів. 

Узагальнення

Узагальнення — це процес виділення загальних властивостей із набору сутностей і створення з нього узагальненої сутності. Це висхідний підхід, у якому дві або більше сутностей можна узагальнити до сутності вищого рівня, якщо вони мають деякі спільні атрибути.

Узагальнення Спеціалізація та агрегація в моделі ERУзагальнення

приклад: СТУДЕНТ і ФАКУЛЬТЕТ можна узагальнити до сутності вищого рівня під назвою ОСОБА, як показано на діаграмі нижче. У цьому випадку такі загальні атрибути, як P_NAME і P_ADD, стають частиною вищого сутність (ОСОБА) та спец атрибути як S_FEE стати частиною спеціалізованої організації (STUDENT). 

Спеціалізація

За спеціалізацією суб'єкт поділяється на суб'єкти на основі його характеристик. Це низхідний підхід, коли суб’єкт вищого рівня спеціалізується на два або більше нижчих рівня сутності .

Узагальнення Спеціалізація та агрегація в моделі ERСпеціалізація

приклад: сутність EMPLOYEE у системі керування Employee може бути спеціалізована на DEVELOPER TESTER тощо. У цьому випадку загальні атрибути, такі як E_NAME E_SAL тощо, стають частиною вищої сутності (EMPLOYEE), а спеціалізовані атрибути, такі як TES_TYPE, стають частиною спеціалізованої сутності (TESTER). 

Спадщина

Це важлива ознака узагальнення та спеціалізації. У спеціалізації сутність вищого рівня поділяється на підсутності нижчого рівня, які успадковують її атрибути. При узагальненні схожі сутності нижчого рівня об’єднуються в сутність вищого рівня, яка містить спільні атрибути. В обох випадках успадкування дозволяє суб-сутностям повторно використовувати властивості батьківської сутності.

  1. Спадкування атрибутів: Це дозволяє сутностям нижчого рівня успадковувати атрибути сутностей вищого рівня і навпаки. На схемі сутність Car є спадковістю сутності Vehicle, тому Car може отримати атрибути Vehicle. Приклад: Автомобіль може отримати атрибут моделі транспортного засобу.
  2. Спадкування відносин : Підсутності також успадковують зв’язки батьківської сутності.
  3. Перевизначення успадкування : Суб’єкти можуть перевизначати або додавати власні атрибути чи поведінку, відмінну від батьківської.
  4. Участь у спадщині: Успадкування участі в моделюванні ER відноситься до успадкування обмежень участі від сутності вищого рівня (суперкласу) до сутності нижчого рівня (підкласу). Це гарантує, що підкласи дотримуються однакових правил участі у зв’язках, хоча самі атрибути та зв’язки успадковуються по-різному.
Узагальнення Спеціалізація та агрегація в моделі ERПриклад відношення

приклад: На схемі сутність Vehicle має зв’язок із сутністю Cycle, але вона не отримає автоматично зв’язок із сутністю Vehicle. Успадкування участі стосується лише успадкування обмежень участі, а не фактичних відносин між об’єктами.

Агрегація

  • Діаграма ER не здатна відобразити зв’язок між сутністю та зв’язком, який може знадобитися в деяких сценаріях.
  • У таких випадках зв’язок із відповідними сутностями об’єднується в сутність вищого рівня.
  • Агрегація — це абстракція, за допомогою якої ми можемо представити зв’язки як набори сутностей вищого рівня.
Узагальнення Спеціалізація та агрегація в моделі ERАгрегація

приклад: Співробітнику, який працює над проектом, може знадобитися певна техніка. Тому зв’язок REQUIRE необхідний між зв’язком WORKS_FOR та сутністю MACHINERY. Використовуючи агрегацію, зв’язок WORKS_FOR з його сутностями EMPLOYEE та PROJECT об’єднується в одну сутність, а зв’язок REQUIRE створюється між об’єднаною сутністю та MACHINERY.

Представлення агрегації за допомогою схеми

Щоб представити агрегацію в реляційній схемі, виконайте такі дії:

1. Створіть схему для агрегованого зв’язку

  • Це буде розглядатися як набір сутностей.
  • Він містить первинні ключі сутностей, що беруть участь у базовому зв’язку.
  • Він також включає будь-які описові атрибути базового зв’язку.

2. Створіть схему для зв’язку вищого рівня (агрегація)

  • Ця схема включає: Первинний ключ агрегованої схеми зв’язку.
  • Первинний ключ пов’язаної сутності, до якої він відноситься.
  • Будь-які додаткові описові атрибути цього зв’язку вищого рівня.