Obiektowe rozszerzenia relacyjnych baz danych

background image

Obiektowe rozszerzenia

relacyjnych baz danych.

Serwery transakcyjne, obiekty

stanowe i bezstanowe.

por. Jarosław Koszela
Warszawa 21.02.2001r.

background image

Plan seminarium

Obiektowe rozszerzenia RDB

UDT,UDF - IBM

Cardridges – Oracle

DataBlades – Informix

Embeded Java – Sybase

Serwery transakcyjne, serwery aplikacji
– MS MTS, Jaguar CTS, BEA Tuxedo...
Technologie CORBA, COM/DCOM -
COM+ - obiekty stanowe i bezstanowe

background image

Obiektowe rozszerzenia RDB

Ewolucyjne przejście z modelu relacyjne-

go w kierunku modelu obiektowej bazy

danych („pseudoobiektowe” bazy danych).

ORBD korzystają z modelu danych

zawartego w standardzie SQL3.

Nowe, abstrakcyjne, typy danych – ADT.

Język zapytań SQL3 (ObjectSQL) jest

rozszerzeniem ANSI SQL 92

background image

Obiektowe rozszerzenia RDB

Gruby klient , czy gruby serwer ?

GUI

Aplikacj

a

Dane

Klient

Serwer

Gruby klient

Gruby serwer

background image

Obiektowe rozszerzenia RDB

Model klient-serwer (wg Gartner Group)

PREZENTACJA

PREZENTACJA PREZENTACJA PREZENTACJA PREZENTACJA

FUNKCJA

FUNKCJA

FUNKCJA

FUNKCJA

FUNKCJA

FUNKCJA

PREZENTACJA

DANE

DANE

DANE

DANE

DANE

DANE

PREZENTCJA

ROZPROSZONA

PREZENTCJA

ZDALNA

FUNKCJA

ROZPROSZONA

ZDALNE

ZARĄDZANIE

DANYMI

ROZPROSZONA

BAZA DANYCH

background image

Obiektowe rozszerzenia RDB

System

operacyjny

ORBD

aplikacje

aplikacje

Technologia wykorzystywana w obecnie

tworzonych systemach informatycznych

COM,

CORBA

background image

Obiektowe rozszerzenia RDB

IBM – DB 2 (UDB 2)

mechanizmy relacyjnych rozszerzeń -
DB2 Relational Extenders

UDT

– nowy typ danych (Unique Data Type)

implementuje złożone typy danych;

bazując na UDT można definiować kolumny
tabel, triggery i procedury;

Kolekcje UDT;

UDF

– jest nową funkcją z możliwością

skojarzenia z UDT lub ze standardowym typem
danych. UDF można tworzyć w C, Fortranie lub
4GL;

background image

Obiektowe rozszerzenia RDB

LOB’y

(Large Objects);

procedury przechowywane

(stored

procedures);

triggers

– mogą być aktywowane poprzez

wykonanie pewnych operacji na UDT lub
przez wywołanie UDF. Mogą wywoływać
procedury przechowywane;

Relational Extenders są używane do definiowania i
implementacji nowych złożonych typów danych.
Grupują (enkapsulacja) atrybuty, strukturę i
zachowanie tych typów.

background image

Obiektowe rozszerzenia RDB

IBM – relacyjne rozszerzenia : UDT,UDF

background image

Obiektowe rozszerzenia RDB

Informix (Universal Server – NewEra)

DataBlades

- zorientowane obiektowo

pakiety

zawierają definicję typu i metody związane z
danym typem;

typ wierszowy

(row type) -złożony z pewnej

liczby kolumn bazujących na prostych typach lub
zdefiniowanych przez użytkownika;

typ odrębny

(distinct type) – pozwala

redefiniować istniejące typy do bardziej
wyspecjalizowanych;

typ opakowany

(opaque types) najbardziej

elastyczny – zaimplementowany w C, C++ lub
Javie, definiuje takie aspekty jak np. sposób
przechowywania i indeksowania danych
określonego typu);

background image

Obiektowe rozszerzenia RDB

zawierają

ograniczenia na typ

(constraints);

metod dostępów

– mogą operować na

tabelach, indeksach i mogą być
wykorzystane w zapytaniach SQL;

DataBlade Developers Kit

–graficzne

środowisko do tworzenia nowych typów
danych i funkcji.

background image

Obiektowe rozszerzenia RDB

Informix – rozszerzenie relacyjnej BD

background image

Obiektowe rozszerzenia RDB

Oracle – Oracle8, Oracle9

Cartridges

– podstawowe komponenty w NCA

(Oracle Network Computing Architecture):

Universal Application Server,

Oracle Universal Server,

aplikacje klienta;

Typy Cartridges

:

Data Cartridges

są przetrzymywane na serwerze

bazodanowym

Application Server Cartridges

– mogą działać

zarówno na serwerze aplikacyjnym, jak również na

bazodanowym;

Client Cartridges

– działają na maszynie klienta i

mają dostęp do standardowych usług typu user-

interface

background image

Obiektowe rozszerzenia RDB

struktura Cartridge

- definiowana

poprzez SQL3;

interfejsy Cartridge

- tworzone w IDL

(OMG);

Cartridge tworzy

się w C, C++,

PL/SQL, Javie;

Komunikacja poprzez ICX

- Inter-

Cartridge Exchange (zbiór klas i
usług), używa HTTP i IIOP, dostarcza
interfejsów do ActiveX, COM, Javy;

background image

Obiektowe rozszerzenia RDB

Oracle – rozszerzenie relacyjnej BD

background image

Obiektowe rozszerzenia RDB

Sybase – Adaptive Server

Enterprise/Anywhere

Java w bazie danych

:  

integracja Java Virtual Machine Sybase

, zgodnej z

JavaSoft, wykonywanie kodu bajtowego Javy w tej samej

przestrzeni adresowej;

możliwość instalowania gotowych pakietów Javy

, klas

oraz plików JAR na serwerze, wykorzystanie ich bez

dodatkowych modyfikacji;

klasy Javy definiowany przez użytkownika

są użyteczne

w wielu instrukcjach SQL DML, implementacja funkcji

jako metod klas Javy oraz obsługa DML w kodzie Javy

przez wewnętrzny sterownik JDBC;

background image

Obiektowe rozszerzenia RDB

abstrakcyjne typy danych

Javy - możliwość

implementacji klas Javy jako kolumnowego typu

danych, każdy wiersz kolumny staje się

obiektem Javy, oraz obsługa wywołań metod

tych klas;

możliwość debugowania kodu Javy

wykonywanego na odległym serwerze Sybase.

Język zapytań SQLJ

(SQL + Java)

background image

Obiektowe rozszerzenia RDB

Sybase – rozszerzenie relacyjnej BD

background image

Obiektowe rozszerzenia RDB

ORDBMS

 

Oracle8

 

 

Informix NewEra

1. Podstawowe cechy
obiektów

 

 

1.1. OID

TAK

Bez danych

1.2. UDT

TAK

Tak

1.3. Dziedziczenie

pojedyncze w Oracle8.1

Wielokrotne

1.4. Hermetyzacja

TAK

TAK

1.5. Polimorfizm

NIE

TAK

1.6. Powiązania

TAK

TAK

1.7. Agregacja

TAK

Bez danych

1.8. Złożone typy

TAK

TAK

1.9. Container types

VARRAYS

TAK *

1.10. „Długie” transakcje

TAK

TAK

1.11. Zarządzanie wersjami

NIE

TAK

1.12. Replikacja

TAK

Bez atrybutów

1.13. Szyfrowanie danych

TAK

Bez atrybutów

1.14. Rozszerzenia
danych

CARDRIDGES

2

Data Blades

2. Języki

 

 

2.1. Definiowanie
atrybutów

PL/SQL

INFORMIX-4GL

2.2. Definiowanie metod

PL/SQL, C/C++, JAVA; w Oracle8.1 i J/SQL

C/C++, INFORMIX-4GL, COBOL

3. Standard

 

 

3.1. ODBC

przez NCA

TAK

3.2. SQL92

TAK

TAK

3.3. SQL3

4

TAK

TAK

3.4. ODMG

through Oracle Lite

NIE

3.5. DRDA

NIE

TAK

background image

Serwery transakcyjne,
serwery aplikacyjne

Serwery transakcyjne, aplikacyjne –

bazy aplikacji, komponentów

(elementów programowych), z

zdefiniowanym interfejsem dostępu do

gromadzonych komponentów (MTS,

Jaguar CTS, Visigenic,..);

Obsługa standardowych komponentów

(Java, EJB 1.0, i JavaBeans, COM/ ActiveX,

CORBA);

Otwarta komunikacja

(HTTP/HTTPS,

DCOM, TDS, IIOP/IIOPS);

background image

Serwery transakcyjne,
serwery aplikacyjne

Rozproszone i przenośne rozwiązania

(internetowe);

kontroluje komunikacje

między klientem i

danymi (start procesów, monitorowanie pracy
usług , obciążenia, wyważania);

obsługa komunikacji między komponentami

(pozwala wykorzystanie różnych
mechanizmów komunikacji - RPC, MOM) ;

zarządza transakcjami

-zapewnia spełnienie

kryteriów ACID:

niepodzielność (atomicity),

zgodność / spójność (consistency), izolacja (isolation),
trwałość (durability);

background image

Serwery transakcyjne,
serwery aplikacyjne

Bezpieczeństwo

- SSL, identyfikację

użytkowników poprzez klucze publiczne SSL,
zabezpieczenie na poziomie aplikacji za pomocą
Access Control List (ACL), szyfrowanie RSA;

Platformy systemowe

– WinNT/2000,

HPUX, Solaris, AIX,...);

Zarządzanie transakcjami

-

przekierowywanie je w rozproszonym systemie
(routing) ;

Współpraca z Internetem;

background image

Serwery transakcyjne,
serwery aplikacyjne

Transakcja rozproszona – Windows

NT/2000

background image

Serwery transakcyjne,
serwery aplikacyjne

Serwer aplikacji - Borland Application

Server

background image

Obiekty stanowe i bezstanowe

Klasy, obiekty – atrybuty, metody,

hermetyzacja, dziedziczenie, polimorfizm;

Obiekty stanowe

– obiekty

przechowujące w swoim wnętrzu

informacje o swoim stanie;

Obiekty bezstanowe

– obiekty nie

posiadające atrybutów (tylko metody),

interfejsy

:

DCOM (Distributed Component Object

Model)/MTS, COM+ , CORBA;

wykorzystywane głównie w WWW (serwer WWW

jest serwerem bezstanowym);

buforowanie (pooling) obiektów, zasobów;

background image

Dziękuję za uwagę.


Document Outline


Wyszukiwarka

Podobne podstrony:
podstawy relacyjnych baz danych wyklad cz1 architektura
WPROWADZENIE DO RELACYJNYCH BAZ DANYCH POJECIA PODSTAWOWE
podstawy relacyjnych baz danych wyklad cz3 projektowanie
Zestaw 1, Wprowadzenie do relacyjnych baz danych
Zestaw 1 Wprowadzenie do relacyjnych baz danych
podstawy relacyjnych baz danych wyklad cz3 projektowanie
R. 6-2 Struktura OBD-przyklad 1, Uczelniane, Semestr 2, Zaawansowane Systemy Baz Danych, WYKŁ [OZaik
Systemy Baz Danych (cz 1 2)
bd cz 2 jezyki zapytan do baz danych
Modele Baz Danych 2
cwiczonko drugie z baz danych na stopieniek
Access 2002 Projektowanie baz danych Ksiega eksperta ac22ke
Opis baz danych zgodny z TERYT
Oracle8i Podrecznik administratora baz danych or8pab

więcej podobnych podstron