2. rozszerzanie modelu relacyjnego o własności modelu obiektowego,
|
|
- Anatol Kołodziejczyk
- 5 lat temu
- Przeglądów:
Transkrypt
1 Obiektowe bazy danych wprowadzenie Nowe dziedziny zastosowań baz danych: komputerowe wspomaganie projektowania (ang. Computer Aided Design CAD), komputerowe wspomaganie wytwarzania (ang. Computer Aided Manufacturing CAM), systemy wspomagania inżynierii oprogramowania (ang. Computer Aided Software Engineering CASE), geograficzne systemy informacyjne (ang. Geographical Information Systems GIS), systemy komputerowego wspomagania prac zespołowych (ang. Computer Supported Cooperative Work CSCW), systemy multimedialne Wymagania nowych dziedzin zastosowań baz danych: Nowy model danych, umożliwiający modelowanie obiektów o złożonych strukturach i skomplikowanych powiązaniach z innymi obiektami oraz własności dynamicznych obiektów. 139 Obiekty i metody Obiekt - reprezentuje w systemie komputerowym encję modelowanego świata rzeczywistego. Własności statyczne encji są modelowane za pomocą atrybutów obiektu, a jej własności dynamiczne za pomocą operacji wykonywanych na obiekcie. Operacje te są zwane metodami (ang. methods) obiektu. Zbiór wszystkich metod obiektu stanowi jego interfejs z innymi obiektami. Obiekty o takiej samej strukturze i metodach są grupowane w klasy. Obiekty należące do danej klasy są jej wystąpieniami (ang. instance). Formalnie, przez obiekt rozumiemy dwójkę: o = (oid, v), gdzie oid jest unikalnym identyfikatorem obiektu, a v jest wartością obiektu. Wartość obiektu, w zależności od jego struktury, może być wartością atrybutu, krotką wartości lub zbiorem wartości. 141 Obiektowe bazy danych - wprowadzenie Obiektowe bazy danych, które łączą w sobie cechy technologii obiektowych z cechami systemów zarządzania bazami danych: możliwość modelowania złożonych typów danych, hierarchii typów, własności dynamicznych, trwałość przechowywanych w systemie danych, zarządzanie współbieżnym dostępem do danych, możliwość odtworzenia stanu bazy danych po awarii, autoryzację dostępu i deklaratywny język komunikacji z bazą danych. Badania związane z zastosowaniem technologii obiektowej w bazach danych rozwijane są w dwóch kierunkach: 1. opracowania od podstaw koncepcji obiektowych baz danych; 2. rozszerzanie modelu relacyjnego o własności modelu obiektowego, 140 Obiekty i metody - cd. Identyfikatory obiektów Określają tożsamość obiektu niezależnie od stanu wartości jego atrybutów. Identyfikator jest nadawany przez system w momencie tworzenia obiektu, a jego wartość pozostaje niezmienna przez cały czas życia obiektu. Identyfikator ten jest niedostępny dla programów użytkownika. dopuszcza istnienie wielu obiektów o takich samych wartościach atrybutów - obiekty te są rozróżniane właśnie za pomocą identyfikatorów; własność ta wyraźnie odróżnia obiekty od krotek z modelu relacyjnego. Struktura obiektów Jest określona przez zbiór nazwanych atrybutów. Atrybuty są zdefiniowane na dziedzinach, które są zbiorami wartości elementarnych, takich jak liczby naturalne, rzeczywiste, czy łańcuchy znaków, lub klasami. Atrybuty obiektów mogą być wielowartościowe. Atrybuty zdefiniowane na zbiorach wartości elementarnych są nazywane atrybutami prostymi, natomiast zdefiniowane na klasach są nazywane atrybutami złożonymi. 142
2 Obiekty i metody - cd. umożliwia modelowanie dynamicznych własności encji za pomocą metod obiektów, których specyfikacja, obok specyfikacji struktury obiektów, wchodzi w skład definicji klasy obiektów. Innymi słowy, zmiana stanu obiektu, tj. wartości jego atrybutów, może zostać zrealizowana tylko za pomocą odpowiedniej metody obiektu. Struktura obiektów oraz implementacja metod są ukryte przed użytkownikiem obiektu. Własność ta jest nazywana hermetycznością obiektu (ang. encapsulation). Komunikacja z obiektem odbywa się przez wysyłanie do obiektu komunikatów, które uaktywniają odpowiadające im metody obiektu. Dzięki hermetyczności, zmiana implementacji struktury obiektów i metod nie wpływa na poprawność pracy innych programów odwołujących się do tych obiektów, jeśli tylko interfejs pozostanie niezmieniony. Zewnętrzny interfejs obiektu jest więc zbiorem komunikatów, z którymi są skojarzone metody obiektu. Interfejs ten jest nazywany protokołem. Jedną z konsekwencji hermetyczności jest możliwość jednorodnego operowania na obiektach różniących się strukturą i metodami, a mających taki sam protokół. Własność umożliwiająca uaktywnienie takim samym komunikatem metod obiektów należących do różnych klas jest nazywana polimorfizmem. 143 Klasy i związki Dziedzinami atrybutów mogą również być inne klasy - mówimy wówczas o związkach kompozycji (ang. composition relationships) lub agregacji (ang. aggregation relationships) łączących klasy. Związek kompozycji jest szczególnym rodzajem związku referencyjnego (ang. is-part-of lub composite reference) - związek ten umożliwia modelowanie sytuacji, w której jedna encja jest częścią składową drugiej encji, a więc na przykład związku: silnik_1500_td jest_częścią samochodu Polonez_1500. Obiekt, który wiąże inne obiekty związkiem kompozycji jest nazywany obiektem złożonym (ang. complex lub composite object), natomiast obiekty związane związkiem kompozycji są nazywane obiektami składowymi (ang. component object). Obiekty składowe również mogą być złożone, a zatem obiekt złożony jest w ogólności hierarchią obiektów składowych. 145 Klasy Wszystkie obiekty posiadające taką samą strukturę i metody są grupowane w klasy (ang. class). Klasa jednocześnie definiuje strukturę i zachowanie się obiektu, na które składają się odpowiednio definicje atrybutów oraz definicje i implementacje metod. Dziedzinami atrybutów klasy mogą być wartości elementarne, takie jak liczby, łańcuchy znaków, lub wartości złożone takie jak listy i zbiory. obejmuje pojęcia różnych typów związków między obiektami i między klasami. Atrybuty złożone definiują związki między obiektami - ten typ powiązań nazywa się związkiem referencyjnym. Dwa obiekty są powiązane związkiem referencyjnym jeżeli jeden z nich jest wartością atrybutu drugiego - związki referencyjne umożliwiają modelowanie związków typu: Jan_Kowalski jest_mężem Janiny_ Kowalskiej, lub Jan_Kowalski posiada samochód Polonez_ Związki Związek kompozycji nadaje obiektom składowym dodatkową semantykę - obiekty składowe są zależne (ang. depend) i powiązane w sposób wyłączny (ang. exclusive) przez obiekty złożone. Zależność obiektów składowych polega na tym, że ich istnienie jest zależne od istnienia zawierających je obiektów złożonych. Z kolei wyłączność zawierania obiektów składowych polega na tym, że mogą one należeć tylko do jednego obiektu złożonego. Związek kompozycji jest abstrakcją agregacji. Umożliwia ona automatyczne wykonywanie pewnych operacji na wszystkich powiązanych nim encjach. Związki takie umożliwiają modelowanie obiektów złożonych. Klasy połączone w taki sposób tworzą graf skierowany (w pewnych przypadkach może on być cykliczny). 146
3 Związki cd. Związki referencyjne, które nie są związkami kompozycyjnymi są nazywane słabymi związkami referencyjnymi (ang. weak reference) [Kim87]. Definicja i implementacja metod znajduje się w klasie a nie w samym obiekcie. Ponieważ metody są wspólne dla wszystkich instancji, więc unika się w ten sposób wielokrotnego definiowania tej samej metody. Komunikat przesłany do obiektu uaktywnia jego metodę, znajdującą się w jego klasie. Jedną z podstawowych własności klasy jest jej zdolność do tworzenia obiektów (ang. instantiation). Nowy obiekt jest tworzony za pomocą metody klasy. Metoda ta jest określana konstruktorem (ang. constructor). Sama klasa jest również obiektem bazy danych instancją klasy systemowej, zwanej metaklasą. Cechą wyróżniającą klasę od innych obiektów jest jej zdolność do tworzenia obiektów. 147 Dziedziczenie cd. Klasy powiązane związkami dziedziczenia tworzą acykliczny graf skierowany (ang. Direct Acyclic Graph DAG), zwany hierarchią dziedziczenia (ang. inheritance hierarchy). Korzeniem tej hierarchii jest zwykle predefiniowana klasa o nazwie Obiekt, implementująca wspólne, najbardziej ogólne, własności wszystkich obiektów. Podklasa dziedziczy atrybuty i metody nie tylko ze swojej bezpośredniej superklasy, ale również, pośrednio, z nadklas znajdujących się wyżej w hierarchii. Instancje klas tworzących hierarchię dziedziczenia są powiązane związkiem jest (ang. is-a). Oznacza to, że każda instancja podklasy jest jednocześnie instancją swej nadklasy. Przykładowo, klasa Samochód dziedziczy z klasy Pojazd, co oznacza, że każdy samochód jest jednocześnie pojazdem. 149 Dziedziczenie System obiektowy umożliwia wywodzenie nowych klas z klas już istniejących. Mechanizm ten nazywa się dziedziczeniem (ang. inhertiance). Klasa wywiedziona nazywa się podklasą (ang. subclass), a klasa, z której wywiedziono inną nadklasą bądź superklasą (ang. superclass). Atrybuty i metody nadklasy są dziedziczone (współdzielone) przez wszystkie podklasy z niej wywiedzione. Podklasa może również zawierać: dodatkowe atrybuty, dodatkowe metody, atrybuty odziedziczone, które zostały przedefiniowane lokalnie, metody odziedziczone, które zostały przedefiniowane lokalnie (dotyczy to zarówno sygnatur metod jak i ich implementacji). 148 Dziedziczenie cd. Jeżeli klasa może dziedziczyć z więcej niż jednej bezpośredniej nadklasy, to mówimy o wielodziedziczeniu (ang. multiple inheritance). Dzięki mechanizmowi dziedziczenia, w systemie nie powstają redundancje związane z definiowaniem tych samych atrybutów i (lub) metod w podklasie, ponieważ zostały one zdefiniowane w superklasie. W wyniku dziedziczenia w wielu klasach istnieją takie same metody, ale operujące na różnych obiektach. W wyniku przedefiniowania w podklasie metod dziedziczonych mogą istnieć metody różniące się semantyką i implementacją. W konsekwencji, ten sam komunikat może uaktywnić metodę obiektów należących do różnych klas. Ta własność nazywa się polimorfizmem (ang. polimorphism) lub wielopostaciowością. 150
4 Dziedziczenie Przykład: Obiekt UrządzenieElektroniczne moc włącz wyłącz Radio Magnetofon Głowica zakres_częstotliwości głowica kieszeń zmień_zakres zasilacz zwiększ_głośność Zasilacz zmniejsz_głośność odtwórz zapisz otwórz_kieszeń włącz Transformator RadioMagnetofon związek dziedziczenia związek kompozycji Miniświat opisujący urządzenia elektroniczne - klasy i związki między nimi 151 Dziedziczenie Przykład: Zbiór wszystkich klas i łączących je związków tworzy schemat obiektowej bazy danych. Obiektowy model danych zawiera bogaty zbiór operacji modyfikacji schematu bazy danych: struktury obiektów, implementacji metod oraz grafu dziedziczenia, które umożliwiają modelowanie ewolucyjnej natury świata rzeczywistego. 153 Dziedziczenie Przykład: Obiektowe bazy danych Charakterystyka nowych dziedziny zastosowań systemów baz danych: Wspólną cechą wszystkich tych systemów jest potrzeba trwałego przechowywania danych, a więc wykorzystanie obiektowych baz danych
5 Obiektowe bazy danych Prototypowe bazy danych: Exodus (Uniwersytet Wisconsin), ObServer, Ode (AT&T), Orion (MCC), Zeitgeist (Texas Instruments). Komercyjne bazy danych: Itasca (MCC, komercyjna wersja Oriona), GemStone (Servio Corporation), ObjectStore (Object Design), Ontos (Ontologic) i O2 (O2 Technology). Cechy obiektowych baz danych Efektywne zarządzanie trwałymi obiektami W systemach obiektowych trwałość obiektów uzyskuje się na dwa sposoby: umieszczaniu obiektów (tworzonych przez aplikację) w tzw. obszarze pamięci trwałej (ang. persistent memory), jawny ich zapis na serwerze bazy danych przed zakończeniem programu. Dostęp do obiektów bazy danych za pomocą proceduralnego języka programowania i języka deklaratywnego Powiązania między obiektami przechowywanymi w bazie danych tworzą skomplikowane grafy - użytkownik musi mieć możliwość nawigowania między pojedynczymi obiektami bazy danych (za pomocą poleceń sformułowanych proceduralnie), musi mieć również możliwość wyszukiwania całych zbiorów obiektów. Zapytania w języku deklaratywnym (zwanym w skrócie OQL lub OSQL), z zastosowaniem predykatów. Ograniczeniem jest jednak to, że polecenia OQL mogą być kierowane tylko do tych klas obiektów, które są zorganizowane w zbiory. Wszystkie inne klasy obiektów są dostępne za pomocą poleceń sformułowanych proceduralnie Efektywne zarządzanie trwałymi obiektami Serwery obiektowych baz danych można podzielić na dwie następujące kategorie: serwery stron (ang. page servers) i serwery obiektów (ang. objects servers). Serwery stron charakteryzują się tym, że zarządzają stronami pamięci (są to obszary pamięci o stałej długości), na których znajdują się obiekty. Oznacza to, że do aplikacji są przesyłane nie pojedyncze obiekty, ale całe strony zawierające żądane obiekty. Aplikacja jest odpowiedzialna za odszukanie obiektu na stronie. Serwerami stron są m.in. Exodus i ObjectStore. Serwery obiektów zarządzają pojedynczymi obiektami lub grupami powiązanych z sobą obiektów. Do aplikacji są przesyłane tylko żądane przez nią obiekty. W tym przypadku serwer jest odpowiedzialny za odnalezienie obiektu w bazie danych. Niektóre z tych serwerów interpretują obiekty tylko jako ciągi bajtów m.in. ObServer i Zeitgeist. Inne interpretują również semantykę obiektów m.in. Orion i O Dostęp do obiektów bazy danych... Odczytanie obiektu złożonego odbywa się szybko ponieważ w obiekcie złożonym znajdują się bezpośrednie wskazania (identyfikatory) do obiektów składowych - z tego względu obiektowe bazy danych lepiej niż relacyjne nadają się do przechowywania obiektów o strukturze złożonej. Problem optymalizacji wykonywania zapytań. Wynikiem zapytania jest zbiór obiektów, które mogą się składać z innych obiektów. Obiekty będące wynikiem zapytania mogą również pochodzić z różnych klas, np. obiekty klasy Magnetofon i RadioMagnetofon (zob. przykład). Dodatkowo, w predykatach poleceń OQL można odwoływać się do metod obiektów, które mogą wywoływać inne metody innych obiektów. Optymalizator powinien dokonać analizy implementacji struktury i metod obiektów, co z kolei narusza własność hermetyczności. W systemie obiektowym optymalizator nie posiada wystarczających informacji do tego aby przekształcić graf operacji do bardziej optymalnego. 158
6 Dostęp do obiektów bazy danych... Język OQL: GemStone, Itasca/Orion, ObjectStore, Ontos, i O2 Języki proceduralne: Exodus język C++ i jego rozszerzenia w języku E; GemStone język OPAL, oparty o Smalltalk, Itasca/Orion Common Lisp rozszerzony o mechanizmy programowania obiektowego; Ontos i ObjectStore używają C++; Ode wykorzystuje się O++, będący rozszerzeniem C++; O2 język C++ i język O2C będący rozszerzeniem C. 159 Zarządzanie współbieżnym dostępem do danych i zarządzanie transakcjami Wprowadzenie typów blokad o mniejszej restryktywności niż wyłączna blokada do zapisu umożliwia osiągnięcie większej współbieżności aplikacji bazy danych. Nowe typy blokad są definiowane razem z operacjami. Blokady te są nazywane blokadami semantycznymi (ang. semantic locks). Metody blokowania dla obiektowych baz danych nie mogą również ignorować niektórych specyficznych typów powiązań między obiektami. Na przykład założenie blokady na złożony obiekt samochód powinno być równoznaczne z zablokowaniem wszystkich jego obiektów składowych. Stąd proponowane metody realizują hierarchiczne blokowanie nie tylko w hierarchii ziarnistości, ale również w hierarchiach dziedziczenia i kompozycji. 161 Zarządzanie współbieżnym dostępem do danych i zarządzanie transakcjami W systemach obiektowych, podobnie jak w relacyjnych, do synchronizacji dostępu do danych wykorzystuje się blokady zakładane na obiektach (m.in. Exodus, Itasca/Orion, ObjectStore, Ontos, O2). Konieczne rozszerzenie o dodatkowe mechanizmy - wynika to z faktu złożoności obiektów i istnienia hierarchii klas. W modelu obiektowym obiekty składowe są powiązane z obiektami, na które się składają w takim przypadku zablokowanie obiektu złożonego powinno spowodować zablokowanie również wszystkich obiektów składowych. W obiektowych bazach danych bogatsza niż w modelu relacyjnym semantyka operacji wymaga rozszerzenia zbioru typów blokad. 160 Zarządzanie współbieżnym dostępem do danych i zarządzanie transakcjami W procesie projektowania (aplikacje CAD, CSCW) wykorzystuje się transakcje o długim czasie trwania (np. dni, miesiące). Model zarządzania transakcjami w systemach obiektowych, został wzbogacony o mechanizm transakcji zagnieżdżonych (ang. nested transactions). Transakcja zagnieżdżona to taka, w ramach której rozpoczęto inną (zagnieżdżoną w niej) transakcję. W ten sposób transakcje tworzą strukturę drzewiastą. Istnieje możliwość zatwierdzania poszczególnych transakcji składowych przed zatwierdzeniem całej transakcji. Mechanizm zarządzania transakcjami o długim czasie trwania został zaimplementowany m.in. w systemach ObjectStore, Ontos; natomiast mechanizm zarządzania transakcjami o krótkim czasie trwania został zaimplementowany we wszystkich innych systemach. 162
7 Wywodzenie wersji danych Obiektowe bazy danych muszą wspierać wywodzenie i przechowywanie wersji projektowanych elementów. Również sam schemat bazy danych może podlegać ewolucji, np. na skutek dostosowywania jego struktury do zmieniających się potrzeb systemu informatycznego. Tak więc, obiektowe bazy danych muszą dostarczać mechanizmów umożliwiających wywodzenie i zarządzanie wersjami zarówno obiektów jak i klas. Istniejące modele, prototypy i produkty komercyjne można podzielić na takie, które wspierają wywodzenie wersji: obiektów, pojedynczych klas, klas powiązanych związkami kompozycji i dziedziczenia, całych schematów, całych baz danych. 163 Wywodzenie wersji danych cd. a) b) B B V1 A A V1 V1 V1 V2 V3 V2 V3 wersja bieżąca wiązanie związek wywodzenia Sposoby wiązania obiektów Wielowersyjny obiekt A składa się tylko z jednej wersji V1, natomiast wielowersyjny obiekt B składa się z trzech wersji: V1, V2, V3. Dwie ostatnie wersje zostały wywiedzione z V1.Zazwyczaj jedna z wersji (wybrana przez projektanta lub wywiedziona jako ostania) jest tzw. wersją bieżącą (ang. working version, current version). Każda wersja jest jednoznacznie identyfikowana przez identyfikator wersji (ang. version stamp), nadawany jej przez system. 165 Wywodzenie wersji danych cd. Obiekt wielowersyjny Rozwiązania alternatywne i wersje czasowe (historyczne) modeluje się za pomocą wersji obiektów (ang. object version). Zbiór wszystkich wersji danego obiektu wraz ze związkami łączącymi te wersje jest tzw. obiektem wielowersyjnym (ang. multiversion object). Poszczególne wersje obiektu są połączone związkami wywodzenia (ang. derivation relationships), oznaczającymi fakt wywiedzenia jednej wersji obiektu z innej. Tworzą one tzw. drzewo wywodu wersji (ang. version derivation tree). 164 Wywodzenie wersji danych cd. Wyróżnia się dwa sposoby wiązania wersji obiektów: wiązanie statyczne (ang. static binding) i wiązanie dynamiczne (ang. dynamic binding). Wersje dwóch obiektów są połączone wiązaniem statycznym, gdy wartością atrybutu obiektu pierwszego jest identyfikator konkretnej wersji obiektu drugiego. Wersje dwóch obiektów są połączone wiązaniem dynamicznym, gdy wartością atrybutu obiektu pierwszego jest identyfikator obiektu wielowersyjnego, do którego należy wersja obiektu drugiego Te same wersje obiektów składowych są współdzielone przez wiele wersji obiektów złożonych. 166
8 Rozproszenie danych Współczesne zastosowania systemów informatycznych charakteryzują się dostępem do danych z wielu odległych komputerów. Obiektowa baza danych powinna m.in. posiadać mechanizmy umożliwiające rozpraszanie danych i zarządzanie takimi danymi, mechanizmy replikowania danych, oraz zaimplementowane protokoły zatwierdzania transakcji rozproszonych. Z istniejących systemów tylko Exodus, GemStone i Itasca/Orion umożliwiają rozproszenie danych. Transakcje są zatwierdzane za pomocą rozproszonego protokołu 2 PC. GemStone umożliwia również replikowanie danych. 167 Obiektowo relacyjne bazy danych Do komercyjnych obiektowo relacyjnych baz danych zalicza się m.in.: Illustra (Informix Software, Inc.), Informix Universal Server (Informix Software, Inc.), OpenODB (HP), Oracle8 (Oracle Corporation), UniSQL (UniSQL, Inc.). Cechy obiektowo relacyjnych baz danych Rozszerzalny system typów danych Projektant bazy danych może definiować nowe typy danych o dowolnie złożonej strukturze. Natomiast serwer zarządza danymi nowych typów tak, jak danymi typów predefiniowanych, m.in. umożliwia definiowanie struktur fizycznych (np. indeksów), synchronizuje współbieżny dostęp. 169 Bezpieczeństwo danych Bezpieczeństwo danych posiada dwa aspekty: możliwość odtworzenia stanu bazy danych po awarii sprzętu i oprogramowania, Exodus umożliwia odtworzenie stanu bazy danych po awarii oprogramowania, systemu operacyjnego i procesora. Po ponownym uruchomieniu serwera, zmiany dokonane przez zatwierdzone transakcje zostają zapamiętane w bazie danych, natomiast wszystkie inne zmiany zostają wycofane. ochrona danych przed niepowołanym dostępem, Dostęp do danych powinien być ograniczony za pomocą praw dostępów. GemStone, Orion i O2 posiadają taką cechę. Dodatkowym mechanizmem ochrony danych są również perspektywy, które zostały zaimplementowane tylko w systemie O Obiektowo relacyjne bazy danych - cechy Obsługa typów niestandardowych Oprócz nowych typów danych projektant może definiować związane z nimi operacje, określające specyficzne własności behawioralne danych. Procedury i funkcje związane z relacjami W bazie danych można definiować i przechowywać procedury i funkcje składowane, związane z relacjami bazy danych. Elementy aktywne W bazie danych można definiować i przechowywać elementy aktywne wyzwalacze (ang. database triggers), reagujące na zdarzenia zachodzące w systemie. Wyzwalacze te mogą być związane zarówno z relacjami, jak i typami niestandardowymi. 170
9 Komercyjne obiektowo relacyjne bazy danych Oracle8 Nowa wersja serwera bazy danych Oracle8 umożliwia m.in.: definiowanie nowych typów danych wraz z metodami umożliwiającymi ich przetwarzanie dzięki temu, Oracle8 może być z powodzeniem stosowany do przechowywania danych pochodzących m.in. z systemów takich jak CAD/CAM, GIS, systemów multimedialnych; efektywne zarządzanie ogromnymi zbiorami danych dzięki tej własności Oracle8 może znaleźć zastosowanie w systemach multimedialnych i magazynach danych (ang. Data Warehouse); wykorzystanie równoległości przetwarzania danych co ma szczególne znaczenie w systemach analizy danych OLAP (ang. On Line Analythical Processing), w których wykonuje się skomplikowane obliczenia (np. statystyczne) na ogromnej liczbie danych; dostęp do danych za pomocą sieci Internet dla ogromnej liczby użytkowników co jest niezwykle ważne w dobie ogromnego rozwoju technologii Web. 171 Komercyjne obiektowo relacyjne bazy danych UniSQL W systemie UniSQL (UniSQL, Inc.) rozszerzono model relacyjny o następujące własności modelu obiektowego: możliwość definiowania relacji złożonych (zagnieżdżania relacji w sobie), tj. takich, w których wartością atrybutu jednej krotki jest nie pojedyncza wartość ale inna krotka; hermetyczność relacji oznacza to, że projektant systemu może skojarzyć z daną relacją zbiór operacji na poszczególnych jej atrybutach lub całych krotkach; związki dziedziczenia między relacjami oznacza to, że projektant systemu może zdefiniować hierarchię dziedziczenia relacji, podobnie jak hierarchię dziedziczenia klas w modelu obiektowym. W takim przypadku podrelacja dziedziczy wszystkie atrybuty i operacje swojej nadrelacji. Możliwe jest również dziedziczenie z wielu relacji równocześnie. 173 Komercyjne obiektowo relacyjne bazy danych Oracle8 oferuje ponadto obiektowo zorientowane środowisko projektowania Sedona, które znacznie zwiększa efektywność projektowania i pielęgnowania aplikacji oraz generowania aplikacji w językach programowania wysokiego poziomu. Wraz z serwerem w wersji 8, są dostarczane pakiety oprogramowania wspomagającego administrowanie systemem: Oracle8 Server Managed Backup and Recovery i Oracle Enterprise Manager. Pierwszy z nich umożliwia zautomatyzowanie m.in. procesów tworzenia kopii bezpieczeństwa bazy danych i odtwarzania stanu bazy danych po awarii. Drugi służy do zarządzania systemem rozproszonych lub zcentralizowanych systemów baz danych. Korzystając z tego pakietu, administrator ma dostęp z jednej konsoli do odległych węzłów, co umożliwia efektywne i łatwe zarządzanie nimi (m.in. zdalne monitorowanie i strojenie). 172 Komercyjne obiektowo relacyjne bazy danych UniSQL rozszerzenia cd. Funkcjonalność języka zapytań dla takiej bazy danych została rozszerzona o: zapytania nawigujące w relacjach zagnieżdżonych (ang. path queries), zapytania wyznaczające krotki o strukturze złożonej, możliwość wywoływania w zapytaniach operacji zdefiniowanych dla relacji, zapytania wyznaczające zbiory krotek w ramach relacji tworzących hierarchię dziedziczenia, t.j. wyznaczające krotki relacji i krotki wszystkich podrelacji. OpenODB, Illustra i Informix Universal Server Systemy takie jak: OpenODB (HP), Illustra i Informix Universal Server (Informix Software, Inc.) wykorzystują system zarządzania relacyjną bazą danych (SZRBD) do przechowywania obiektów. 174
10 Komercyjne obiektowo relacyjne bazy danych OpenODB, Illustra i Informix Universal Server Nad SZRBD znajduje się warstwa oprogramowania, która umożliwia przekształcenie klasy obiektów do takiej postaci, aby mogła on być przechowana w relacyjnej bazie danych (i odwrotnie). Klasy obiektów są reprezentowane za pomocą relacji, atrybuty i metody stanowią atrybuty relacji, natomiast same obiekty są krotkami relacji. Podejście to ma tę zaletę, że można zbudować system obiektowo relacyjny, o dużej funkcjonalności, w oparciu o dobrze zaimplementowany system relacyjny. Przez co budowa nowego systemu jest szybsza i mniej kosztowna, a sam system wykorzystuje wszystkie cechy SZRBD. Takie podejście zmniejsza jednak efektywność systemu, gdyż transformacja obiektów z modelu relacyjnego do obiektowego (i odwrotnie) zabiera czas. Jest to szczególnie ważne w aplikacjach, które przetwarzają duże ilości danych. 175
Paweł Kurzawa, Delfina Kongo
Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoPojęcie bazy danych. Funkcje i możliwości.
Pojęcie bazy danych. Funkcje i możliwości. Pojęcie bazy danych Baza danych to: zbiór informacji zapisanych według ściśle określonych reguł, w strukturach odpowiadających założonemu modelowi danych, zbiór
Bardziej szczegółowoZagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)
Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu
Bardziej szczegółowoModel logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL
Podstawy baz danych: Rysunek 1. Tradycyjne systemy danych 1- Obsługa wejścia 2- Przechowywanie danych 3- Funkcje użytkowe 4- Obsługa wyjścia Ewolucja baz danych: Fragment świata rzeczywistego System przetwarzania
Bardziej szczegółowoDariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Bardziej szczegółowoProgramowanie obiektowe - 1.
Programowanie obiektowe - 1 Mariusz.Masewicz@cs.put.poznan.pl Programowanie obiektowe Programowanie obiektowe (ang. object-oriented programming) to metodologia tworzenia programów komputerowych, która
Bardziej szczegółowoKomputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Bardziej szczegółowoPODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"
PODSTAWY BAZ DANYCH 5. Modelowanie danych 1 Etapy tworzenia systemu informatycznego Etapy tworzenia systemu informatycznego - (według CASE*Method) (CASE Computer Aided Systems Engineering ) Analiza wymagań
Bardziej szczegółowoBazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000
Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy
Bardziej szczegółowoBazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
Bardziej szczegółowoObiektowe bazy danych
Obiektowe bazy Obiektowy model Wykład prowadzi: Tomasz Koszlajda Plan wykładu Przesłanki dla nowej generacji systemów baz Podstawowe elementy obiektowego modelu Konstruktory złożonych typów Abstrakcyjne
Bardziej szczegółowoSystemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi
Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie
Bardziej szczegółowoModelowanie i Programowanie Obiektowe
Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do
Bardziej szczegółowoTechnologie i usługi internetowe cz. 2
Technologie i usługi internetowe cz. 2 Katedra Analizy Nieliniowej, WMiI UŁ Łódź, 15 luty 2014 r. 1 Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to paradygmat programowania,
Bardziej szczegółowoKurs programowania. Wstęp - wykład 0. Wojciech Macyna. 22 lutego 2016
Wstęp - wykład 0 22 lutego 2016 Historia Simula 67 język zaprojektowany do zastosowan symulacyjnych; Smalltalk 80 pierwszy język w pełni obiektowy; Dodawanie obiektowości do języków imperatywnych: Pascal
Bardziej szczegółowoProgramowanie współbieżne Wykład 8 Podstawy programowania obiektowego. Iwona Kochaoska
Programowanie współbieżne Wykład 8 Podstawy programowania obiektowego Iwona Kochaoska Programowanie Obiektowe Programowanie obiektowe (ang. object-oriented programming) - metodyka tworzenia programów komputerowych,
Bardziej szczegółowoBazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 3: Model związków encji. dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Co to jest model związków encji? Model związków
Bardziej szczegółowoBaza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.
PI-14 01/12 Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.! Likwidacja lub znaczne ograniczenie redundancji (powtarzania się) danych! Integracja danych!
Bardziej szczegółowoProgramowanie Obiektowe i C++
Programowanie Obiektowe i C++ Marcin Benke 2.10.2006 Dzisiaj Co umiemy Paradygmaty programowania Co będzie na wykładach Zasady zaliczania Programowanie obiektowe Co umiemy Programowałem w C++ Programowałem
Bardziej szczegółowoLITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )
LITERATURA C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom; Systemy baz danych. Kompletny podręcznik
Bardziej szczegółowoPodstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko
Podstawowe pojęcia dotyczące relacyjnych baz danych mgr inż. Krzysztof Szałajko Czym jest baza danych? Co rozumiemy przez dane? Czym jest system zarządzania bazą danych? 2 / 25 Baza danych Baza danych
Bardziej szczegółowoproblem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
Bardziej szczegółowoSZKOLENIE: Administrator baz danych. Cel szkolenia
SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.
Bardziej szczegółowoModelowanie danych, projektowanie systemu informatycznego
Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym
Bardziej szczegółowo2010-10-06 ORGANIZACJA ZAJĘĆ BAZY DANYCH PLAN WYKŁADU SCHEMAT SYSTEMU INFORMATYCZNEGO
ORGANIZACJA ZAJĘĆ Wykładowca dr inż. Agnieszka Bołtuć, pokój 304, e-mail: aboltuc@ii.uwb.edu.pl Liczba godzin i forma zajęć: 30 godzin wykładu oraz 30 godzin laboratorium Konsultacje: czwartek 10:15-12:00
Bardziej szczegółowoUML w Visual Studio. Michał Ciećwierz
UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować
Bardziej szczegółowoSpis treści. Przedmowa
Spis treści Przedmowa V 1 SQL - podstawowe konstrukcje 1 Streszczenie 1 1.1 Bazy danych 1 1.2 Relacyjny model danych 2 1.3 Historia języka SQL 5 1.4 Definiowanie danych 7 1.5 Wprowadzanie zmian w tabelach
Bardziej szczegółowoTechnologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca:
1.1. Podstawowe pojęcia Technologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca: informatykę (włącznie ze sprzętem komputerowym oraz oprogramowaniem używanym do tworzenia, przesyłania,
Bardziej szczegółowoPost-relacyjne bazy danych
Post-relacyjne bazy danych Historia języka SQL 1. Sequel-XRM 2. Sequel/2 SQL 3. ANSI SQL 1986 (ISO 1987) 4. X/Open (UNIX), SAA(IBM) 5. ANSI SQL 1989 6. ANSI/ISO SQL 92 Entry level 7. ANSI SQL 92 (SQL 2)
Bardziej szczegółowoLITERATURA. Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000
LITERATURA Wprowadzenie do systemów baz danych C.J.Date; WNT Warszawa 2000 Systemy baz danych. Pełny wykład H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom;WNT Warszawa 2006 Wprowadzenie do systemów
Bardziej szczegółowoBazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,
Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Oczekiwania? 2 3 Bazy danych Jak przechowywać informacje? Jak opisać rzeczywistość?
Bardziej szczegółowoProgramowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r.
Programowanie w Javie 1 Wykład i Ćwiczenia 3 Programowanie obiektowe w Javie cd. Płock, 16 października 2013 r. Programowanie obiektowe Programowanie obiektowe (z ang. object-oriented programming), to
Bardziej szczegółowoINFORMATYKA Pytania ogólne na egzamin dyplomowy
INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja
Bardziej szczegółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoTechnologia informacyjna
Technologia informacyjna Bazy danych Dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2016 Plan wykładu Wstęp do baz danych Modele baz danych Relacyjne bazy danych Język SQL Rodzaje
Bardziej szczegółowoPodstawy Programowania Obiektowego
Podstawy Programowania Obiektowego Wprowadzenie do programowania obiektowego. Pojęcie struktury i klasy. Spotkanie 03 Dr inż. Dariusz JĘDRZEJCZYK Tematyka wykładu Idea programowania obiektowego Definicja
Bardziej szczegółowoSystemy baz danych. mgr inż. Sylwia Glińska
Systemy baz danych Wykład 1 mgr inż. Sylwia Glińska Baza danych Baza danych to uporządkowany zbiór danych z określonej dziedziny tematycznej, zorganizowany w sposób ułatwiający do nich dostęp. System zarządzania
Bardziej szczegółowoAlicja Marszałek Różne rodzaje baz danych
Alicja Marszałek Różne rodzaje baz danych Rodzaje baz danych Bazy danych można podzielić wg struktur organizacji danych, których używają. Można podzielić je na: Bazy proste Bazy złożone Bazy proste Bazy
Bardziej szczegółowoRysunek 1: Przykłady graficznej prezentacji klas.
4 DIAGRAMY KLAS. 4 Diagramy klas. 4.1 Wprowadzenie. Diagram klas - w ujednoliconym języku modelowania jest to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Bardziej szczegółowoWykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych
Wykorzystanie standardów serii ISO 19100 oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych dr inż. Adam Iwaniak Infrastruktura Danych Przestrzennych w Polsce i Europie Seminarium, AR Wrocław
Bardziej szczegółowoTechnologie obiektowe
WYKŁAD dr inż. Paweł Jarosz Instytut Informatyki Politechnika Krakowska mail: pjarosz@pk.edu.pl LABORATORIUM dr inż. Paweł Jarosz (3 grupy) mgr inż. Piotr Szuster (3 grupy) warunki zaliczenia Obecność
Bardziej szczegółowoSystemy GIS Systemy baz danych
Systemy GIS Systemy baz danych Wykład nr 5 System baz danych Skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki Użytkownik ma do dyspozycji narzędzia do wykonywania różnych
Bardziej szczegółowoINFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji
Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak
Bardziej szczegółowoProjektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD
Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe
Bardziej szczegółowoDiagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym
Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM
Bardziej szczegółowoBazy danych Wykład zerowy. P. F. Góra
Bazy danych Wykład zerowy P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2012 Patron? Św. Izydor z Sewilli (VI wiek), biskup, patron Internetu (sic!), stworzył pierwszy katalog Copyright c 2011-12 P.
Bardziej szczegółowo1 Projektowanie systemu informatycznego
Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................
Bardziej szczegółowoPodyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle
Podyplomowe Studium Informatyki w Bizniesie Wydział Matematyki i Informatyki, Uniwersytet Łódzki specjalność: Tworzenie aplikacji w środowisku Oracle EFEKTY KSZTAŁCENIA Wiedza Absolwent tej specjalności
Bardziej szczegółowoProgramowanie Obiektowe i C++ Marcin Benke
Programowanie Obiektowe i C++ Marcin Benke Dzisiaj Co umiemy Paradygmaty programowania Co będzie na wykładach Zasady zaliczania Programowanie obiektowe Co umiemy Programowałem w C++ Programowałem w języku
Bardziej szczegółowoDziedziczenie. Tomasz Borzyszkowski
Dziedziczenie Tomasz Borzyszkowski Podstawy Zobacz: Dziedzictwo1.java Dziedzictwo2.java Dziedziczenie jest jedną z podstawowych cech OOP ponieważ umożliwia łatwe implementowanie klasyfikacji hierarchicznych.
Bardziej szczegółowoProblemy niezawodnego przetwarzania w systemach zorientowanych na usługi
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura
Bardziej szczegółowoOpisy efektów kształcenia dla modułu
Karta modułu - Bazy Danych II 1 / 5 Nazwa modułu: Bazy Danych II Rocznik: 2012/2013 Kod: BIT-2-105-s Punkty ECTS: 4 Wydział: Geologii, Geofizyki i Ochrony Środowiska Poziom studiów: Studia II stopnia Specjalność:
Bardziej szczegółowoWzorce projektowe. dr inż. Marcin Pietroo
Wzorce projektowe dr inż. Marcin Pietroo Adapter - strukturalny wzorzec projektowy, którego celem jest umożliwienie współpracy dwóm klasom o niekompatybilnych interfejsach - adapter przekształca interfejs
Bardziej szczegółowoObiektowe bazy danych
Obiektowe bazy danych Obiektowy model danych Wykład prowadzi: Tomasz Koszlajda Obiektowe bazy danych Obiektowy model danych Tematyka obiektowych baz danych obejmuje trzy jednostki wykładowe. Pierwszy wykład
Bardziej szczegółowoDiagramy związków encji. Laboratorium. Akademia Morska w Gdyni
Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie
Bardziej szczegółowoWPROWADZENIE DO BAZ DANYCH
WPROWADZENIE DO BAZ DANYCH Pojęcie danych i baz danych Dane to wszystkie informacje jakie przechowujemy, aby w każdej chwili mieć do nich dostęp. Baza danych (data base) to uporządkowany zbiór danych z
Bardziej szczegółowoRozdział 1 Wprowadzenie do baz danych. (c) Instytut Informatyki Politechniki Poznańskiej 1
Rozdział 1 Wprowadzenie do baz danych 1 Model danych 2 Funkcje systemu zarządzania bazą danych Wymagania spójność bazy danych po awarii trwałość danych wielodostęp poufność danych wydajność rozproszenie
Bardziej szczegółowoSBQL. język zapytań dla obiektowych baz danych. Kamil Adamczyk. Uniwersytet Warszawski 20.IV.2009
SBQL język zapytań dla obiektowych baz danych Kamil Adamczyk Uniwersytet Warszawski 20.IV.2009 Spis treści 1. Wstęp 2. Obiektowe bazy danych Model danych Języki zapytań Dostępne produkty 3. Sbql Główne
Bardziej szczegółowoBaza danych. Modele danych
Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych
Bardziej szczegółowoBazy danych. Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI
Bazy danych Zenon Gniazdowski WWSI, ITE Andrzej Ptasznik WWSI Wszechnica Poranna Trzy tematy: 1. Bazy danych - jak je ugryźć? 2. Język SQL podstawy zapytań. 3. Mechanizmy wewnętrzne baz danych czyli co
Bardziej szczegółowoRelacyjne, a obiektowe bazy danych. Bazy rozproszone
2 Relacyjne, a obiektowe bazy danych. Bazy rozproszone Zastosowania baz danych systemy bankowe (bankomat) systemy masowej obsługi (hipermarket) rezerwacja biletów lotniczych telefonia komórkowa (sms) Dziekanat
Bardziej szczegółowoProjektowanie logiki aplikacji
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy
Bardziej szczegółowoProgramowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Bardziej szczegółowoPorównanie systemów zarządzania relacyjnymi bazami danych
Jarosław Gołębiowski 12615 08-07-2013 Porównanie systemów zarządzania relacyjnymi bazami danych Podstawowa terminologia związana z tematem systemów zarządzania bazami danych Baza danych jest to zbiór danych
Bardziej szczegółowoProgramowanie obiektowe. Wprowadzenie
1 Programowanie obiektowe Wprowadzenie 2 Programowanie obiektowe Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Bardziej szczegółowoPojęcie bazy danych funkcje i możliwości
Pojęcie bazy danych funkcje i możliwości Baza danych to zbiór informacji zapisanych w ściśle określony sposób w strukturach odpowiadających założonemu modelowi danych. W potocznym ujęciu obejmuje dane
Bardziej szczegółowoPodstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38
Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych
Bardziej szczegółowoInformacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4
Utrwalanie danych zastosowanie obiektowego modelu danych warstwy biznesowej do generowania schematu relacyjnej bazy danych Informacje wstępne Autor Zofia Kruczkiewicz Wzorce oprogramowania 4 1. Relacyjne
Bardziej szczegółowoZARZĄDZANIU. Wykład VI. dr Jan Kazimirski
INFORMATYKA W ZARZĄDZANIU Wykład VI dr Jan Kazimirski jankazim@mac.edu.pl http://www.mac.edu.pl/jankazim MODELOWANIE SYSTEMÓW UML Literatura Joseph Schmuller UML dla każdego, Helion 2001 Perdita Stevens
Bardziej szczegółowoFUNKCJE SZBD. ZSE - Systemy baz danych 1
FUNKCJE SZBD ZSE - Systemy baz danych 1 System zarządzania bazami danych System zarządzania bazami danych (SZBD, ang. DBMS) jest zbiorem narzędzi stanowiących warstwę pośredniczącą pomiędzy bazą danych
Bardziej szczegółowoWprowadzenie do systemów informacyjnych
Uwagi ogólne: Wprowadzenie do systemów informacyjnych Projektowanie obiektowe Obiektowość jest nową ideologią, która zmienia myślenie realizatorów SI z zorientowanego na maszynę na zorientowane na człowieka.
Bardziej szczegółowoBazy danych. Plan wykładu. Rozproszona baza danych. Fragmetaryzacja. Cechy bazy rozproszonej. Replikacje (zalety) Wykład 15: Rozproszone bazy danych
Plan wykładu Bazy danych Cechy rozproszonej bazy danych Implementacja rozproszonej bazy Wykład 15: Rozproszone bazy danych Małgorzata Krętowska, Agnieszka Oniśko Wydział Informatyki PB Bazy danych (studia
Bardziej szczegółowoPODSTAWY BAZ DANYCH. 19. Perspektywy baz danych. 2009/2010 Notatki do wykładu "Podstawy baz danych"
PODSTAWY BAZ DANYCH 19. Perspektywy baz danych 1 Perspektywy baz danych Temporalna baza danych Temporalna baza danych - baza danych posiadająca informację o czasie wprowadzenia lub czasie ważności zawartych
Bardziej szczegółowoLDAP to protokół Usługi katalogowe Zakończenie LDAP. Łukasz Zubkowicz. 25 listopada 2009
to protokół 25 listopada 2009 W skrócie to protokół Lightweight Directory Access Protocol W skrócie to protokół Lightweight Directory Access Protocol standard IETF (The Internet Engineering Task Force)
Bardziej szczegółowoCzym jest baza danych?
Czym jest baza danych? Dane = znane fakty. Baza danych to zbiór powiązanych ze sobą danych, które można w jakiś sposób zarejestrować i które mają konkretne znaczenie. Przykład: książka adresowa. Jan Kowalski
Bardziej szczegółowo030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła
030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,
Bardziej szczegółowoBazy danych - wykład wstępny
Bazy danych - wykład wstępny Wykład: baza danych, modele, hierarchiczny, sieciowy, relacyjny, obiektowy, schemat logiczny, tabela, kwerenda, SQL, rekord, krotka, pole, atrybut, klucz podstawowy, relacja,
Bardziej szczegółowoAUREA BPM Oracle. TECNA Sp. z o.o. Strona 1 z 7
AUREA BPM Oracle TECNA Sp. z o.o. Strona 1 z 7 ORACLE DATABASE System zarządzania bazą danych firmy Oracle jest jednym z najlepszych i najpopularniejszych rozwiązań tego typu na rynku. Oracle Database
Bardziej szczegółowoProjektowanie bazy danych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie bazy danych Jarosław Kuchta Projektowanie Aplikacji Internetowych Możliwości projektowe Relacyjna baza danych Obiektowa baza danych Relacyjno-obiektowa baza danych Inne rozwiązanie (np. XML)
Bardziej szczegółowoTransformacja wiedzy w budowie i eksploatacji maszyn
Uniwersytet Technologiczno Przyrodniczy im. Jana i Jędrzeja Śniadeckich w Bydgoszczy Wydział Mechaniczny Transformacja wiedzy w budowie i eksploatacji maszyn Bogdan ŻÓŁTOWSKI W pracy przedstawiono proces
Bardziej szczegółowoLaboratorium 6 DIAGRAM KLAS (Class Diagram)
Laboratorium 6 DIAGRAM KLAS (Class Diagram) Opisuje strukturę programu (a także zależności między nimi), co znajduje odzwierciedlenie w kodzie. Charakteryzuje zależności pomiędzy składnikami systemu: klasami,
Bardziej szczegółowoHistoria modeli programowania
Języki Programowania na Platformie.NET http://kaims.eti.pg.edu.pl/ goluch/ goluch@eti.pg.edu.pl Maszyny z wbudowanym oprogramowaniem Maszyny z wbudowanym oprogramowaniem automatyczne rozwiązywanie problemu
Bardziej szczegółowoMODELOWANIE OBIEKTOWE
(Wykład na podstawie literatury: M.Śmiałek Zrozumieć UML 2.0, Helion 2005) UML Unified Modeling Language (język do specyfikowania, wizualizowania, konstruowania i dokumentacji tzw. artefactów oraz czynności
Bardziej szczegółowoI. Techniki wielowersyjne sterowania współbieżnością
I. Techniki wielowersyjne sterowania współbieżnością Techniki wielowersyjne multiversion concurrency control. Technika wielowersyjna oparta na znacznikach czasu Dla każdej wersji X i elementu X przechowywane
Bardziej szczegółowoSystemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową..
Bardziej szczegółowoInstrukcja do panelu administracyjnego. do zarządzania kontem FTP WebAs. www.poczta.greenlemon.pl
Instrukcja do panelu administracyjnego do zarządzania kontem FTP WebAs www.poczta.greenlemon.pl Opracowanie: Agencja Mediów Interaktywnych GREEN LEMON Spis treści 1.Wstęp 2.Konfiguracja 3.Konto FTP 4.Domeny
Bardziej szczegółowoModel semistrukturalny
Model semistrukturalny standaryzacja danych z różnych źródeł realizacja złożonej struktury zależności, wielokrotne zagnieżdżania zobrazowane przez grafy skierowane model samoopisujący się wielkości i typy
Bardziej szczegółowoPAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS PRZEDMIOTU. Obowiązuje od roku akademickiego: 2011/2012
PAŃSTWOWA WYŻSZA SZKOŁA ZAWODOWA W NOWYM SĄCZU SYLABUS Obowiązuje od roku akademickiego: 2011/2012 Instytut Techniczny Kierunek studiów: Informatyka Kod kierunku: 11.3 Specjalność: Informatyka Stosowana
Bardziej szczegółowoZdalne wywołanie procedur. Krzysztof Banaś Systemy rozproszone 1
Zdalne wywołanie procedur Krzysztof Banaś Systemy rozproszone 1 RPC Komunikacja za pomocą gniazd jest wydajna, gdyż korzystamy z funkcji systemowych niewygodna, gdyż musimy wyrażać ją za pomocą jawnego
Bardziej szczegółowoWypożyczalnia VIDEO. Technologie obiektowe
Wypożyczalnia VIDEO Jest to program do obsługi wypożyczalni i wypożyczeń klientów. Głównym zadaniem programu jest zarządzanie wypożyczeniami i drukowanie potwierdzenia wypożyczenia oraz naliczenie punktów
Bardziej szczegółowoLaboratorium z przedmiotu Programowanie obiektowe - zestaw 04
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych kolekcji. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych
Bardziej szczegółowoJęzyk UML w modelowaniu systemów informatycznych
Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 3 Diagramy przypadków użycia Diagramy przypadków użycia (ang. use case)
Bardziej szczegółowoBazy danych i ich aplikacje
ORAZ ZAPRASZAJĄ DO UDZIAŁU W STUDIACH PODYPLOMOWYCH Celem Studiów jest praktyczne zapoznanie słuchaczy z podstawowymi technikami tworzenia i administrowania bazami oraz systemami informacyjnymi. W trakcie
Bardziej szczegółowoProjektowanie obiektowe. Roman Simiński Polimorfizm
Projektowanie obiektowe Roman Simiński roman.siminski@us.edu.pl www.siminskionline.pl Polimorfizm Koncepcja polimorfizmu Słowo polimorfizm pochodzi od dwóch greckich słów: poly czyli wiele, morphos czyli
Bardziej szczegółowoMetody getter https://www.python-course.eu/python3_object_oriented_programming.php 0_class http://interactivepython.org/runestone/static/pythonds/index.html https://www.cs.auckland.ac.nz/compsci105s1c/lectures/
Bardziej szczegółowoSystemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
Bardziej szczegółowo