logo

Генерализација, специјализација и агрегација у ЕР моделу

Коришћење ЕР модела за веће податке ствара велику сложеност приликом дизајнирања модела базе података, тако да су у циљу минимизирања сложености у ЕР модел уведени генерализација специјализација и агрегација. Они су коришћени за апстракцију података. У коме се користи механизам апстракције да би се сакрили детаљи скупа објеката. 

Генерализација

Генерализација је процес издвајања заједничких својстава из скупа ентитета и стварања генерализованог ентитета од њега. То је приступ одоздо према горе у коме се два или више ентитета могу генерализовати на ентитет вишег нивоа ако имају неке заједничке атрибуте.

Генерализација Специјализација и агрегација у ЕР моделу' title=Генерализација

Пример: СТУДЕНТ и ФАКУЛТЕТ се могу генерализовати на ентитет вишег нивоа који се зове ОСОБА као што је приказано на дијаграму испод. У овом случају уобичајени атрибути као што су П_НАМЕ и П_АДД постају део вишег ентитета (ЛИЦА) и специјализована атрибути као С_ФЕЕ постати део специјализованог ентитета (СТУДЕНТ). 



Специјализација

У специјализацији, ентитет се дели на подентитет на основу његових карактеристика. То је приступ одозго надоле где је ентитет вишег нивоа специјализован за два или више нижих нивоа ентитета .

јава виртуелна машина
Генерализација Специјализација и агрегација у ЕР моделу' loading='lazy' title=Специјализација

Пример: ентитет ЗАПОСЛЕНИ у систему управљања запосленима може бити специјализован за ДЕВЕЛОПЕР ТЕСТЕР итд. У овом случају уобичајени атрибути попут Е_НАМЕ Е_САЛ итд. постају део вишег ентитета (ЕМПЛОИЕЕ), а специјализовани атрибути као што је ТЕС_ТИПЕ постају део специјализованог ентитета (ТЕСТЕР). 

Наслеђе

То је важна карактеристика генерализације и специјализације. У специјализацији, ентитет вишег нивоа се дели на подентитете нижег нивоа који наслеђују његове атрибуте. У генерализацији, слични ентитети нижег нивоа се комбинују у ентитет вишег нивоа који има заједничке атрибуте. У оба случаја наслеђивање омогућава подентитетима да поново користе својства родитељског ентитета.

  1. Наслеђивање атрибута: Омогућава ентитетима нижег нивоа да наследе атрибуте ентитета вишег нивоа и обрнуто. На дијаграму Ентитет аутомобила је наслеђе ентитета возила, тако да аутомобил може стећи атрибуте возила. Пример: Аутомобил може да стекне атрибут модела возила.
  2. Наслеђивање односа : Подентитети такође наслеђују односе надређеног ентитета.
  3. Оверридинг Инхеританце : Подентитети могу заменити или додати сопствене атрибуте или понашања која се разликују од надређених.
  4. Наслеђивање учешћа: Наслеђивање учешћа у моделирању ЕР односи се на наслеђивање ограничења учешћа са ентитета вишег нивоа (суперкласе) на ентитет нижег нивоа (подкласу). Осигурава да се подкласе придржавају истих правила учешћа у односима иако се сами атрибути и односи различито наслеђују.
Генерализација Специјализација и агрегација у ЕР моделу' loading='lazy' title=Пример релације

Пример: У дијаграму ентитет возила има однос са ентитетом циклус, али не би аутоматски стекао сам однос са ентитетом возила. Наслеђивање учешћа се односи само на наслеђивање ограничења учешћа, а не на стварне односе између ентитета.

Агрегација

  • ЕР дијаграм није у стању да представи однос између ентитета и односа који може бити потребан у неким сценаријима.
  • У тим случајевима однос са одговарајућим ентитетима се обједињује у ентитет вишег нивоа.
  • Агрегација је апстракција кроз коју можемо представити односе као скупове ентитета вишег нивоа.
Генерализација Специјализација и агрегација у ЕР моделу' loading='lazy' title=Агрегација

Пример: Запослени који ради на пројекту може захтевати неке машине. Дакле, потребан је однос РЕКУИРЕ између односа ВОРКС_ФОР и ентитета МАЦХИНЕРИ. Коришћењем агрегације однос ВОРКС_ФОР са својим ентитетима ЕМПЛОИЕЕ и ПРОЈЕЦТ се обједињује у један ентитет и креира се однос РЕКУИРЕ између агрегираног ентитета и МАЦХИНЕРИ.

Представљање агрегације преко шеме

Да бисте представили агрегацију у релационој шеми следите ове кораке:

1. Креирајте шему за агрегирани однос

  • Ово ће се третирати као скуп ентитета.
  • Укључује примарне кључеве ентитета који учествују у основном односу.
  • Такође укључује све дескриптивне атрибуте основног односа.

2. Креирајте шему за везу вишег нивоа (агрегација)

  • Ова шема укључује: Примарни кључ агрегиране шеме односа.
  • Примарни кључ придруженог ентитета на који се односи.
  • Сви додатни описни атрибути овог односа вишег нивоа.