• Znaczenie pojęcia:

    ODMG 2.0

    Pozostałe definicje na literę O.

    ang. ODMG 2.0

    Nowa wersja standardu obiektowych baz danych opracowywanego przez ODMG (Object Data Management Group), która pojawiła się w roku 1997. Poniżej prezentujemy ramową architekturę ODMG 2.0.Ramowa architektura ODMG 2.0.Standard posiada następujące części realizujące założenia przedstawionej architektury:Model obiektowy. Precyzuje znaczenie podstawowych pojęć obiektowości, takich jak obiekty, klasy, metody, dziedziczenie, hermetyzacja. Ustala również podstawowe założenia dotyczące struktur danych przechowywanych przez system. Takimi strukturami są obiekty, atrybuty i związki (relationships). Klasy obiektów podlegają dziedziczeniu i hermetyzacji. ODMG wprowadza także pojęcie literału, czyli wartości, której nie można modyfikować. Istotnym założeniem modelu obiektowego ODMG jest mocna kontrola typów oraz pełna dowolność w zakresie kombinacji konstruktorów typów, w tym konstruktorów typów masowych (kolekcji), takich jak zbiór, wielozbiór, sekwencja i tablica dynamiczna. Umożliwia to tworzenie obiektów o dowolnej liczbie poziomów hierarchii oraz o dowolnej złożoności. Model obiektowy ODMG jest rozszerzeniem modelu OMG CORBA.Język definicji obiektów ODL (Object Definition Language). Jest wzorowany na języku IDL wg OMG CORBA. Projektant bazy danych lub programista opisuje w ODL jej strukturę. Jest to niezbędne zarówno do rozumienia znaczenia danych, jak i sposobu, w jaki są one odwzorowane w zapamiętane struktury. Schemat w ODL specyfikuje przechowywane dane na pewnym poziomie abstrakcji poprzez podanie ich typów, klas, powiązań klas w hierarchie dziedziczenia, związków między klasami, metod działających na obiektach i innych elementów. Specyfikacja klasy (zwana interfejsem) jest oddzielona od jej implementacji (zwanej klasą). Standard nie zajmuje się implementacją klas i metod, przyjmując, że tę funkcję będą skutecznie pełnić związane z nim obiektowe języki programowania (C++, Smalltalk i Java).Format wymiany obiektów. Ustala reprezentację obiektów przy ich wymianie pomiędzy różnymi systemami zarządzania bazą danych.Język zapytań OQL (Object Query Language). Jest przeznaczony do wyszukiwania danych w celu ich dalszego przetwarzania lub wyprowadzenia na zewnątrz. W odróżnieniu od SQL, OQL nie zajmuje się operacjami aktualizacyjnymi, oddelegowując je do języków programowania. OQL jest zgodny z modelem obiektowym oraz językiem ODL. OQL jest językiem o wysokim poziomie abstrakcji, deklaracyjnym (określa cel wyszukiwania, a nie akcje prowadzących do tego celu), makroskopowym (równoległe działanie na wielu obiektach) i naturalnym dla użytkowników.Wiązanie do języka C++. Określa zasady połączenia ODL i OQL z językiem C++ oraz specyfikuje zestaw klas (interfejsów) umożliwiających takie połączenie. C++ jest językiem bardzo popularnym, będąc jednocześnie mocno krytykowanym za cechy niskiego poziomu (np. arytmetyka wskaźników). Pozwala to przypuszczać, że w dalszej przyszłości wiązanie do C++ straci na znaczeniu, na korzyść rozbudowy języka OQL oraz wiązań do języków takich jak Smalltalk i Java.Wiązania do języków Smalltalk i Java. Mają założenia podobne do wiązania do C++. W odróżnieniu od C++ występują tu ograniczenia. Smalltalk i Java nie mają wielodziedziczenia, co wymaga okrojenia modelu obiektowego i ODL. Występują także ograniczenia w zakresie definiowania i przetwarzania związków (relationships). Wiązanie do języka Java jest ostatnio przedmiotem szczególnego zainteresowania.Standard ODMG 2.0 wykazuje liczne braki i wady koncepcji, w związku z czym należy oczekiwać, że zostanie wkrótce zastąpiony przez następną wersję. W stosunku do wersji książkowej dokumentu ostatnie nowelizacje standardu dotyczą wiązania do Java.http://www.odmg.org

    20 ODMG,
    20 ODMG