ITBlog

IT Blog w tematach różnych...

  • O blogu…
  • Edukacja
    • Moodle – stare
    • Moodle2
    • Testy
  • Firma

Bazy danych – Elementy modelowania

Napisane przez Igor Brzeżek on 2 listopada 2025
Napisane w: Bazy danych.

Contents
  1. Modelowanie konceptualne: od wymagań biznesowych do schematu bazy danych
  2. 1. rola i znaczenie modelowania konceptualnego
  3. 2. podstawowe komponenty modelu związków encji (ERM)
  4. Encja i zbiór encji
  5. Atrybuty – właściwości encji
  6. 3. relacje – powiązania między encjami
  7. Stopień relacji
  8. Kardynalność i partycypacja – ograniczenia relacji
  9. Notacja „kurzej stopki” (crow’s foot notation)
  10. 4. encje słabe – obiekty zależne
  11. Podsumowanie

Modelowanie konceptualne: od wymagań biznesowych do schematu bazy danych

1. rola i znaczenie modelowania konceptualnego

Zanim powstanie jakakolwiek tabela w bazie danych, musi powstać jej projekt. Proces ten, zwany modelowaniem danych, jest fundamentem dobrze zaprojektowanego systemu. Jego pierwszym i najważniejszym etapem jest modelowanie konceptualne. Celem tego etapu jest stworzenie abstrakcyjnego, wysokopoziomowego modelu danych, który jest zrozumiały zarówno dla analityków i deweloperów, jak i dla interesariuszy biznesowych.

Wynikiem jest schemat konceptualny, który jest niezależny od technologii – nie interesuje nas jeszcze, czy użyjemy bazy PostgreSQL, czy MongoDB. Skupiamy się wyłącznie na tym, jakie informacje system ma przechowywać i jakie są między nimi logiczne powiązania. Najpopularniejszym narzędziem do tego celu jest Model Związków Encji (ERM), a jego graficzną reprezentacją są Diagramy Związków Encji (ERD).

2. podstawowe komponenty modelu związków encji (ERM)

Encja i zbiór encji

Encja (ang. Entity) to dowolny obiekt, pojęcie lub zdarzenie, o którym chcemy przechowywać informacje. Encje mogą być:

  • Fizyczne: Student, Książka, Samochód, Produkt.
  • Abstrakcyjne: Stanowisko, Dział, Konto Bankowe.
  • Zdarzenia: Rezerwacja, Wypożyczenie, Transakcja.

Zbiór encji (ang. Entity Set) to kolekcja wszystkich encji tego samego typu. W modelu relacyjnym zbiór encji zazwyczaj staje się tabelą (np. zbiór encji STUDENCI stanie się tabelą Studenci).

Atrybuty – właściwości encji

Każda encja jest opisywana przez atrybuty (ang. Attributes), czyli jej cechy lub właściwości. Atrybuty klasyfikujemy, aby precyzyjnie opisać ich naturę.

Typ Atrybutu Opis Przykład
Prosty (atomowy) Niepodzielny na mniejsze części. PESEL, Wiek, Cena
Złożony Można go podzielić na mniejsze, niezależne części. Adres (składa się z: Ulica, Numer, Miasto, Kod pocztowy)
Jednowartościowy Przyjmuje tylko jedną wartość dla danej encji. Data urodzenia, Numer dowodu
Wielowartościowy Może przyjąć wiele wartości dla jednej encji. Numer telefonu (prywatny, służbowy), Umiejętność pracownika
Pochodny (wyliczalny) Jego wartość może być wyliczona na podstawie innego atrybutu. Wiek (wyliczany z Daty urodzenia). Nie przechowuje się go w bazie, by uniknąć niespójności.
Kluczowy (identyfikator) Atrybut (lub zbiór atrybutów), który unikalnie identyfikuje każdą encję w zbiorze. Staje się kluczem głównym tabeli. ID_Studenta, PESEL, ISBN

3. relacje – powiązania między encjami

Relacja (ang. Relationship) to związek między dwoma lub więcej zbiorami encji. Opisuje, w jaki sposób encje oddziałują na siebie. Np. relacja PROWADZI łączy zbiór WYKŁADOWCY ze zbiorem KURSY.

Stopień relacji

Stopień relacji określa, ile zbiorów encji bierze w niej udział.

  • Unarna (rekurencyjna): Łączy encje w ramach tego samego zbioru. Np. relacja JEST_PRZEŁOŻONYM w zbiorze PRACOWNICY.
  • Binarna: Łączy dwa zbiory encji. Najczęstszy typ. Np. STUDENT ZAPISUJE_SIĘ_NA KURS.
  • Ternarna: Łączy trzy zbiory encji. Np. LEKARZ PRZEPISUJE LEK PACJENTOWI.

Kardynalność i partycypacja – ograniczenia relacji

Te dwa pojęcia są kluczowe do zdefiniowania reguł biznesowych w bazie danych.

Kardynalność (ang. Cardinality) określa maksymalną liczbę powiązań między instancjami encji.

  • Jeden-do-jednego (1:1): Jeden mąż może mieć tylko jedną żonę, i odwrotnie.
  • Jeden-do-wielu (1:N): Jeden wykładowca może prowadzić wiele kursów, ale kurs jest prowadzony tylko przez jednego wykładowcę.
  • Wiele-do-wielu (M:N): Jeden student może zapisać się na wiele kursów, a na jeden kurs może zapisać się wielu studentów.

Partycypacja (ang. Participation) określa minimalną liczbę powiązań, czyli czy udział w relacji jest obowiązkowy.

  • Totalna (obowiązkowa): Każda instancja encji musi brać udział w relacji. Np. każdy SAMOCHÓD musi mieć przypisanego PRODUCENTA.
  • Częściowa (opcjonalna): Instancja encji może, ale nie musi brać udziału w relacji. Np. PRACOWNIK może, ale nie musi, zarządzać DZIAŁEM.

Notacja „kurzej stopki” (crow’s foot notation)

Jest to popularna notacja graficzna, która jednocześnie pokazuje kardynalność i partycypację.

[ WYKŁADOWCA ] |<-- Prowadzi -->o| [ KURS ]

Interpretacja symboli przy encji KURS:
- Wewnętrzny symbol 'o' (kółko) oznacza partycypację opcjonalną (zero).
- Zewnętrzny symbol '|' (kreska) oznacza kardynalność "jeden".
Całość (o|) czytamy: "minimum zero, maksimum jeden".
Reguła biznesowa: Wykładowca może (ale nie musi) prowadzić co najwyżej jeden kurs.

Interpretacja symboli przy encji WYKŁADOWCA:
- Wewnętrzny symbol '|' (kreska) oznacza partycypację obowiązkową (jeden).
- Zewnętrzny symbol '<' (kurza stopka) oznacza kardynalność "wiele".
Całość (|<) czytamy: "minimum jeden, maksimum wiele".
Reguła biznesowa: Kurs musi być prowadzony przez co najmniej jednego wykładowcę, a może być prowadzony przez wielu.

4. encje słabe – obiekty zależne

Czasami spotykamy obiekty, które nie mogą istnieć samodzielnie i których identyfikacja zależy od innej encji. Nazywamy je encjami słabymi (ang. Weak Entities). Encja, od której zależą, to encja silna (ang. Strong Entity).

Klasycznym przykładem jest PRACOWNIK (encja silna) i CZŁONEK_RODZINY (encja słaba). Członek rodziny nie może istnieć w systemie bez pracownika, do którego jest przypisany. Encja słaba nie ma własnego pełnego klucza głównego. Posiada jedynie klucz częściowy (dyskryminator), np. Imię, który jest unikalny tylko w obrębie danego pracownika. Pełny klucz encji słabej tworzy się przez połączenie klucza głównego encji silnej i jej własnego klucza częściowego.

[ PRACOWNIK ] |<– Posiada –>|< [ CZŁONEK_RODZINY ] (ID_Pracownika) (Imię) – Relacja „Posiada” jest relacją identyfikującą. – Encja CZŁONEK_RODZINY jest słaba, ponieważ jej klucz główny to (ID_Pracownika, Imię).

Podsumowanie

Modelowanie konceptualne za pomocą diagramów ERD jest kluczowym etapem projektowania baz danych. Pozwala na stworzenie precyzyjnego, niezależnego od technologii planu, który odzwierciedla wszystkie wymagania biznesowe. Zrozumienie pojęć takich jak encje, atrybuty, relacje, kardynalność i partycypacja jest niezbędne do tworzenia wydajnych, spójnych i skalowalnych systemów bazodanowych. Dobrze wykonany schemat konceptualny stanowi solidny fundament dla kolejnego etapu – projektowania logicznego i transformacji do modelu relacyjnego.

Nawigacja

← Bazy danych – Ewolucja systemów zarządzania danymi
Bazy danych – Model relacyjny →
  • Szukaj

  • Kategorie

    • IT ogólnie (110)
      • Bezpieczeństwo (19)
        • Model AAA (7)
        • Szyfrowanie (1)
      • CCTV (3)
      • Hardware (2)
      • Sieci (25)
        • Cisco (4)
          • Obsługa haseł (2)
        • MikroTik (8)
        • Pomiary w sieciach LAN (6)
          • iptraf-ng (3)
        • Protokół ARP (3)
        • Symulator sieci GNS3 (2)
      • Software (53)
        • Bazy danych (12)
        • Programowanie (3)
        • Systemy operacyjne (15)
          • Linux Debian (14)
        • Windows (7)
      • WiFi (2)
      • Wirtualizacja (26)
    • Różne (1)
  • Ostatnie wpisy

    • Małe wprowadzenie do baz danych
    • Bazy danych – Model relacyjny
    • Bazy danych – Elementy modelowania
    • Bazy danych – Ewolucja systemów zarządzania danymi
    • Bazy danych – Wstęp do normalizacji
  • Strona odwiedzona

    od 11.01.2013

  • Doskonała platforma e-learningowa Uzyskaj certyfikat IT

Proudly powered by WordPress Theme: Parament by Automattic.
7ads6x98y