RDBMS kontra OODBMS
System zarządzania bazą danych zorientowany obiektowo (OODBMS), czasami określany jako system 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ę dziedziczenia klas obiektów, właściwości klas i metod przez podklasy i ich obiekty. System zarządzania relacyjną bazą danych (RDBMS) jest również systemem DBMS, ale opiera się na modelu relacyjnym. Najpopularniejszymi obecnie używanymi systemami DBMS są RDMS.
Jak wspomniano wcześniej, RDBMS opiera się na modelu relacyjnym, a dane w RDMS są przechowywane w postaci powiązanych tabel. Tak więc relacyjna baza danych może być po prostu postrzegana 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 encji. RDMS są rozwijane przez rozszerzenie modeli hierarchicznych i sieciowych, które były dwoma poprzednimi systemami baz danych. Głównymi elementami RDBMS są koncepcje integralności relacyjnej i normalizacji. Koncepcje te opierają się na 13 zasadach systemu relacyjnego opracowanego przez Teda Codda. Po trzech ważnych podstawach powinien następować RDBMS. Po pierwsze, wszystkie informacje muszą być przechowywane w formie tabeli. Po drugie, każda wartość znaleziona w kolumnach tabeli nie powinna się powtarzać, a na koniec należy użyć standardowego języka zapytań (SQL). Największą zaletą RDBMS jest łatwość tworzenia/dostępu i rozszerzania danych przez użytkowników. Po utworzeniu bazy danych użytkownik może dodawać do bazy nowe kategorie danych bez zmiany istniejącej aplikacji. Istnieją również pewne znaczące ograniczenia w systemach RDBMS. Jedynym ograniczeniem 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, cyfrowy dźwięk 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 pozwala na reprezentowanie informacji w postaci obiektów, tak jak jest to używane w programowaniu obiektowym. Systemy OODBMS zostały opracowane w latach 80. XX wieku w celu przezwyciężenia ograniczeń RDMS, takich jak obsługa dużych i złożonych danych. Systemy OODBMS zapewniają zintegrowane środowisko tworzenia aplikacji dzięki połączeniu programowania obiektowego z technologią baz danych. Systemy OODBMS wymuszają koncepcje programowania obiektowego, takie jak enkapsulacja, 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 korzystają z tego samego modelu obiektowego, programiści mogą łatwo zachować spójność między tymi dwoma środowiskami.
Mimo że RDBMS i OODBMS są DBMS-ami, różnią się modelem, którego używają do reprezentowania danych. OODBMS używają modelu obiektowego, podczas gdy 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ć skomplikowana ze względu na technologię zorientowaną obiektowo w porównaniu z nauką RDBMS. Dlatego wybór jednego z nich zależy od rodzaju i złożoności danych, które muszą być przechowywane/zarządzane.