Mapowanie między wewnętrznym modelem konceptualnym a zewnętrznym widokiem
Mapowanie to polega na ustanawieniu odpowiedników między encjami, atrybutami i relacjami modelu konceptualnego a odpowiadającymi im elementami widoku zewnętrznego, np. tabelami bazy danych, kolumnami i kluczami obcymi. Ten krok gwarantuje, że konstrukty modelu logicznego wiernie odwzorowują strukturę i semantykę danych tak, jak będą przechowywane i dostępne w bazie danych.
Aby skutecznie przeprowadzić to mapowanie:
- Analiza wymagań danych: Zidentyfikuj konkretne wymagania danych aplikacji biznesowych korzystających z bazy (faza gromadzenia wymagań). Obejmuje to potrzeby użytkowników, zapytania raportowe, aktualizacje transakcyjne, aspekty bezpieczeństwa.
- Normalizacja modelu konceptualnego: Znormalizuj model, by zmniejszyć duplikacje i poprawić integralność danych. Zidentyfikuj encje, atrybuty, relacje oparte na realnych regułach biznesowych i logicznych grupach. Zastosuj zasady normalizacji: 1NF, 2NF, 3NF.
- Identyfikacja struktury bazy danych: Określ odpowiednią strukturę bazy i typy danych dla każdego atrybutu modelu. Dobierz typy danych (liczby, ciągi, daty, znaczniki czasu) w bazie, by blisko oddawały cechy atrybutów.
- Mapowanie encji na tabele: Przypisz encje konceptualne do tabel bazy danych. Zazwyczaj każda encja staje się tabelą.
- Mapowanie atrybutów na kolumny: Przypisz atrybuty (kolumny) modelu do kolumn w tabelach. Upewnij się, że typy danych w bazie zgadzają się z właściwościami atrybutów.
- Przypisanie kluczy głównych: Zidentyfikuj unikalne identyfikatory każdej tabeli przez klucze główne. Klucze główne jednoznacznie identyfikują wiersze i odgrywają kluczową rolę w relacjach między tabelami.
- Mapowanie relacji i kluczy obcych: Zidentyfikuj relacje konceptualne i określ ich reprezentację w bazie. Zazwyczaj realizuje się to przez ograniczenia kluczy obcych między powiązanymi tabelami. Dla każdej relacji dodaje się kolumnę klucza obcego (z pasującym typem danych) do powiązanej tabeli. To ograniczenie wymusza, by wartości klucza obcego pasowały do wartości w kluczu głównym referencyjnym, zapobiegając niepoprawnym danym i zachowując integralność referencyjną.
- Optymalizacja pod kątem wydajności i elastyczności: Zoptymalizuj model danych z myślą o wydajności zapytań i elastyczności. Indeksy na kolumnach często używanych w filtrach zapytań przyspieszają pobieranie danych. Zostaw miejsce na rozbudowę tabel o nowe atrybuty wg przewidywanych przyszłych wymagań.
Wykonanie tego kroku mapowania pozwala skutecznie połączyć projekt konceptualny z rzeczywistą implementacją bazy danych, zapewniając wierne odwzorowanie i wykorzystanie danych biznesowych.