Relacyjne i hierarchiczne bazy danych to dwa najczęstsze rodzaje baz danych.
Bazy danych to programy komputerowe, które przechowują dane lub „zapisy”. Co ważniejsze, opisują również, w jaki sposób te dane odnoszą się do innych danych w bazie danych. Istnieje wiele różnych rodzajów baz danych, w tym hierarchiczne, sieciowe, relacyjne i obiektowe. Wszystkie służą różnym celom i pozwalają na opisanie ich zapisów na różne sposoby.
Heirarchiczne bazy danych
Hierarchiczne bazy danych to jedne z najstarszych i najprostszych rodzajów baz danych. Organizują dane w „drzewo” strukturę, która jest podobna do folderów i plików na komputerze. Tak jak plik na komputerze znajduje się w jednym folderze, tak każdy rekord w bazie danych ma jednego „rodzica”. Dane ułożone hierarchicznie są często opisywane jako mające tylko relacje rodzic/dziecko.
Wideo dnia
Problemy z heirachicznymi bazami danych
Chociaż model hierarchiczny jest odpowiedni dla prostych struktur, łatwo jest dostrzec, jakie problemy mogą się pojawić, ponieważ każde „dziecko” może mieć tylko jednego „rodzica”. Jeśli baza danych zawierały imiona rzeczywistych rodziców i ich dzieci w firmie, nie byłbyś w stanie opisać faktu, że oboje rodzice jednego dziecka pracowali dla tego Spółka. W języku baz danych byłaby to relacja „wiele do jednego” (lub „wiele do wielu”, jeśli w grę wchodzi więcej niż jedno dziecko), a hierarchiczne bazy danych nie opisują ich dobrze.
Relacyjne bazy danych
Relacyjne bazy danych nie mają problemów z relacjami wiele-do-jednego lub wiele-do-wielu. Ich rekordy są budowane jako wiele „tabel”, a nie struktury drzewiaste, a każdy rekord w tabeli ma unikalny identyfikator. Firma mogłaby wtedy mieć tabelę z imionami wszystkich rodziców, tabelę z imionami wszystkich dzieci, a każdy rekord w tabeli nadrzędnej mógłby mieć relację z jednym (lub więcej lub żaden) unikalnych rekordów w tabeli podrzędnej — ta relacja jest „rodzicem”. Możliwość nadawania rekordom takich relacji jest tym, co nadaje relacyjnym bazom danych ich Nazwa.
Zalety relacyjnych baz danych
Relacyjne bazy danych zapobiegają błędom, umożliwiając zastosowanie jednego rekordu do dowolnej liczby innych tabel. Rekord podrzędny może być użyty w relacji „jest dzieckiem”, a ten sam rekord może być odniesiony w tabeli „dzieci uczęszczające piknik firmowy”. Zapobiegając powielaniu, te same informacje można wykorzystać na wiele różnych sposobów, bez przypadkowej zmiany nagrywać.
Relacyjne bazy danych są również bardzo dobre do dostarczania innych rodzajów danych ukrytych w rekordach za pomocą zapytań napisanych w Structured Query Language lub SQL. Umożliwia to eksplorację bazy danych w sposób, który nie jest od razu widoczny, na przykład znalezienie wszystkich dzieci w określonym wieku lub wszystkich rodziców z trojgiem lub większą liczbą dzieci.
Korzystanie z hierarchicznych baz danych
Mogłoby się wydawać, że relacyjne bazy danych są lepsze od hierarchicznych i to prawda, że są bardziej elastyczne. Ale taka elastyczność nie zawsze jest konieczna dla każdej bazy danych. Biblioteki używają hierarchicznych baz danych do rejestrowania swoich książek, ponieważ system dziesiętny Deweya ma charakter hierarchiczny. Lista numerów telefonów kontaktowych może być doskonale obsługiwana przez hierarchiczną bazę danych. Baza danych to narzędzie, a właściwe narzędzie do danej pracy zależy od wykonywanej pracy.