RDBMS vs OODBMS
Zorientowany obiektowo system zarządzania bazą danych (OODBMS), czasami nazywany systemem zarządzania bazą danych obiektów (ODMS), to system zarządzania bazą danych (DBMS), który obsługuje modelowanie i tworzenie danych jako obiektów. OODBMS zapewnia obsługę klas obiektów, właściwości klas i dziedziczenia metod przez podklasy i ich obiekty. System zarządzania relacyjnymi bazami danych (RDBMS) jest również systemem DBMS, ale jest oparty na modelu relacyjnym. Najpopularniejszymi obecnie używanymi DBMS są systemy RDMS.
Jak wspomniano wcześniej, RDBMS jest oparty na modelu relacyjnym, a dane w RDMS są przechowywane w postaci powiązanych tabel. Zatem relacyjną bazę danych można po prostu postrzegać jako zbiór jednej lub więcej relacji lub tabel z kolumnami i wierszami. Każda kolumna odpowiada atrybutowi relacji, a każdy wiersz odpowiada rekordowi składającemu się z wartości danych dla jednostki. RDMS są rozwijane poprzez rozszerzenie modeli hierarchicznych i sieciowych, którymi były dwa poprzednie systemy baz danych. Głównymi elementami RDBMS są koncepcje integralności relacyjnej i normalizacji. Koncepcje te są oparte na 13 zasadach systemu relacyjnego opracowanego przez Teda Codda. RDBMS powinien przestrzegać trzech ważnych podstaw. Po pierwsze, wszystkie informacje muszą być przechowywane w formie tabeli. Po drugie,żadna wartość znaleziona w kolumnach tabeli nie powinna być powtarzana, a na koniec należy użyć standardowego języka zapytań (SQL). Największą zaletą systemów RDBMS jest łatwość tworzenia / uzyskiwania dostępu do danych oraz ich rozszerzania. Po utworzeniu bazy danych użytkownik może dodawać nowe kategorie danych do bazy danych bez zmiany istniejącej aplikacji. Istnieją również pewne godne uwagi ograniczenia w systemach RDBMS. Jednym z ograniczeń jest to, że ich brak wydajności podczas pracy z językami innymi niż SQL, a także wszystkie informacje, muszą znajdować się w tabelach, w których relacje między jednostkami są definiowane przez wartości. Ponadto systemy RDMS nie mają wystarczającej powierzchni do przechowywania danych, takich jak obrazy, cyfrowe audio i wideo. Obecnie większość dominujących systemów DBMS, takich jak rodzina IBM DB2, Oracle, Microsoft Access i SQL Server, to RDMS.
OODBMS to DBMS, który umożliwia reprezentację informacji w postaci obiektów, jak jest to używane w programowaniu obiektowym. Systemy OODBMS zostały opracowane w latach 80. XX wieku w celu przezwyciężenia ograniczeń systemów RDMS, takich jak obsługa dużych i złożonych danych. Systemy OODBMS zapewniają zintegrowane środowisko do tworzenia aplikacji, łącząc programowanie obiektowe z technologią baz danych. Systemy OODBMS wymuszają koncepcje programowania obiektowego, takie jak hermetyzacja, polimorfizm i dziedziczenie, a także koncepcje zarządzania bazami danych, takie jak atomowość, spójność, izolacja i trwałość. Języki zorientowane obiektowo, takie jak Java, C #, Visual Basic. NET i C ++, mogą dobrze współpracować z systemami OODBMS. Ponieważ zarówno język programowania, jak i OODBMS używają tego samego modelu zorientowanego obiektowo, programiści mogą łatwo zachować spójność między dwoma środowiskami.
Mimo że RDBMS i OODBMS są systemami DBMS, różnią się one modelem używanym do reprezentowania danych. Systemy OODBMS używają modelu zorientowanego obiektowo, podczas gdy systemy RDBMS używają modelu relacyjnego. Oba mają swoje zalety i wady. OODBMS może przechowywać / uzyskiwać dostęp do złożonych danych wydajniej niż RDBMS. Jednak nauka OODBMS może być złożona ze względu na technologię obiektową, w porównaniu do uczenia się RDBMS. Dlatego wybór jednego z nich zależy od rodzaju i złożoności danych, które mają być przechowywane / zarządzane.