Obiektowe bazy danych wybrane kierunki rozwoju
|
|
- Józef Sokołowski
- 9 lat temu
- Przeglądów:
Transkrypt
1 Obiektowe bazy danych wybrane kierunki rozwoju K. TOMASZEWSKI Instytut Systemów Informatycznych Wydział Cybernetyki WAT ul. S. Kaliskiego 2, Warszawa Systemy bazodanowe stanowią jedną z kluczowych gałęzi rozwoju współczesnych systemów informatycznych. Są one jednym z podstawowych elementów architektury i mają krytyczny wpływ na funkcjonowanie całości rozwiązań informatycznych. Nieustannie trwają prace rozwojowe w obszarach systemów bazodanowych wszystkich typów. W tym artykule opisana została skrócona charakterystyka obiektowych baz Następnie przedstawione zostały wybrane propozycje nowych rozwiązań, dotyczące kategorii obiektowych baz Wybrane zagadnienia zostały podzielone na innowacje w zakresie funkcjonalności oraz nowe realizacje istniejących mechanizmów, wpływające na poprawę efektywności ich działania. Dla każdej z tych grup wyszczególniono szereg zagadnień będących przedmiotem najnowszych opracowań w dziedzinie wraz ze skróconym opisem działania. Słowa kluczowe: obiektowe bazy danych, OODB, kierunki rozwoju. 1. Wprowadzenie Na przestrzeni ostatnich lat można zaobserwować znaczący rozwój obszaru wiedzy, zajmującej się zagadnieniami utrwalania danych przetwarzanych we wszelkiego rodzaju systemach informatycznych. Od czasu pierwszych realizacji komputerowych systemów bazodanowych, w latach sześćdziesiątych ubiegłego stulecia, koncepcje implementacji rozwinęły się w kilka indywidualnych ścieżek rozwoju. W wyniku prac poszczególnych gałęzi rozwoju powstawały różne rozwiązania, takie jak płaskie (kartotekowe) bazy danych, hierarchiczne bazy danych, sieciowe bazy danych, relacyjne bazy danych, relacyjnoobiektowe bazy danych, czy czysto obiektowe bazy Obecnie, w poszczególnych gałęziach, stale trwa rozwój technologiczny, owocujący nowymi produktami na rynku komputerowych systemów baz Artykuł ten ma na celu przybliżenie wybranych zagadnień dotyczących rozwoju w dziedzinie obiektowych baz Na początku przytoczone zostaną podstawowe cechy charakterystyczne obiektowych baz danych na tle pozostałych rozwiązań. Następnie zostanie omówiony szereg rozwiązań wskazujących kierunki badań i rozwoju na przestrzeni ostatnich lat. Zagadnienia zostaną pogrupowane na dwa rodzaje, mianowicie na zagadnienia rozwoju nowych funkcjonalności, wykorzystywanych w projektowaniu i pracy z systemami obiektowych baz danych, oraz zagadnienia rozwoju nowych sposobów realizacji istniejących funkcjonalności, wpływających na poprawę efektywności ich działania, w szczególności optymalizacji, opisanej różnymi kryteriami. Wśród kryteriów optymalizacji mechanizmów działania obiektowych baz danych możemy wyszczególnić między innymi takie cechy jak minimalizowana złożoność obliczeniowa realizacji żądań, minimalizowana złożoność dostępów do pamięci podczas realizacji zapytań, minimalizowany czas przygotowania odpowiedzi na żądania czy poprawa charakterystyk niezawodności systemów obiektowych baz 2. Manifesty obiektowych baz danych Prace rozwojowe w dziedzinie obiektowych baz danych przybliżają te rozwiązania do stabilnej pozycji wśród powszechnych rozwiązań bazodanowych. Brak wytyczonych standardów stoi jednak na przeszkodzie ujednolicenia prac i masowego zastosowania obiektowych baz Dlatego już w latach 90. trwała dyskusja i podejmowane były próby stworzenia wspólnego standardu dla rozwiązań tego typu. Działania na rzecz standaryzacji cech obiektowych baz danych objawiały się m.in. kolejnymi manifestami dla rozwiązań OODBMS. Pierwszy taki manifest The OODBS Manifesto został zaprezentowany w roku 1989 [1]. 53
2 K. Tomaszewski, Obiektowe bazy danych wybrane kierunki rozwoju W opracowaniu tym przedstawiono 13 cech nawiązujących do obiektowego modelu Zostały one podzielone na trzy grupy, tzn. cechy, które obiektowa baza danych powinna posiadać, cechy opcjonalne, które mogą być dodatkowo dołączone w celu rozwinięcia funkcjonalności, oraz cechy otwarte, pozostawione do wyboru projektantów konkretnych rozwiązań. Opisane cechy stanowiły oderwanie od właściwości systemów relacyjnych baz danych, stawiając jako punkt wyjścia obiektowy model Drugi manifest Third generation database system manifesto [2] został zaprezentowany w 1990 roku. W opracowaniu tym autorzy zaproponowali trzy doktryny oraz 13 postulatów składających się na definicję systemów, tzw. systemów baz danych trzeciej generacji. Definicja oparta była na założeniu, że systemy baz danych trzeciej generacji mają stanowić rozwinięcie dla istniejących systemów relacyjnych opartych o SQL. Dotychczasowe rozwiązania miałyby być rozbudowane o szereg nowych cech, wśród których znalazłyby się cechy obiektowego modelu Trzeci manifest The third manifesto [3] został zaprezentowany w 1995 roku. W opracowaniu tym autorzy podjęli próbę opisania przyszłych systemów baz Autorzy odrzucają wcześniejsze postulaty obiektowego modelu danych i proponują pozostanie przy modelu relacyjnym. Opracowanie nawiązuje m.in. do problemu niedopasowania w dotychczasowych rozwiązaniach pomiędzy relacyjnym modelem bazy danych oraz obiektowym modelem oprogramowania aplikacji. Autorzy wskazują jednak, że niedopasowanie nie wynika z cech modelu relacyjnego, ale z zastosowania języka SQL jako metody dostępu do W pracy zaproponowano alternatywę do SQL określaną jako D. D jest pojęciem stworzonym przez autorów manifestu i stanowi specyfikację języka Innymi słowy specyfikacja ta określa wymagania, które wg autorów powinny spełniać przyszłe sposoby dostępu do Większość argumentów wniesionych przez autorów była jednak trudna do zaakceptowania przez specjalistów z dziedziny systemów baz danych 3. Standard ODMG Obserwacje sukcesu, który relacyjne systemy baz danych zawdzięczają m.in. szeroko rozpropagowanym, dobrze opisanym standardom, zmotywowały do dalszych prac nad wprowadzeniem standardów dla obiektowych baz W roku 1991 odbyły się pierwsze dyskusje grupy przedstawicieli głównych dostawców rozwiązań bazodanowych, która później przekształciła się w formalną grupę do prac nad standardem ODMG (Object Database Management Group). Prace zaowocowały zapisaniem pierwszego szkicu standardu dla obiektowych baz danych nazwanego ODMG-93: The Object Database Standard. Publikacja tego opracowania miała miejsce w 1996 roku. W 1993 roku nastąpiło stowarzyszenie ODMG z grupą OMG (Object Management Group). W 1997 roku w wyniku dalszych prac powstała kolejna wersja standardu ODMG 2.0: A Standard for Object Storage. Końcowa wersja standardu The Object Data Standard:ODMG 3.0 powstała w roku 1999 (opublikowana w roku 2000). Głównym celem standardu było zawarcie specyfikacji przenośności aplikacji opartych o obiektowe bazy Przenośność rozumiana jest tu jako możliwość pracy z różnymi produktami bazodanowymi. Pożądany efekt to umożliwienie twórcom oprogramowania utrwalania obiektów bezpośrednio z poziomu języków programowania (JAVA, C++ czy Smalltalk) do systemów baz danych, zgodnych ze standardem ODMG 3.0), bez potrzeby zarządzania właściwym procesem utrwalania. Standard ODMG 3.0 został oparty na czterech pod-stawowych komponentach: Model obiektowy (Object Model), Język specyfikacji obiektów (Object Specification Language), Obiektowy język zapytań (Object Query Language), Związanie z językami programowania (Object Binding: C++, Java, Smalltalk). 4. Obiektowe bazy danych Obiektowe bazy danych wspierają model danych oparty o paradygmaty modelowania obiektowego. Jego podstawową strukturą są obiekty. Jednak w przeciwieństwie do otwartości modelu relacyjnego, obiekty wraz z atrybutami i metodami w obiektowych bazach danych podlegają założeniom enkapsulacji. Obiekty mogą posiadać zarówno proste, jak i złożone (nieatomowe) atrybuty, takie jak: listy, zbiory, tablice czy inne struktury złożone. Metody w obiektach nadają im nową rolę odwzorowują dynamikę bytów rzeczywistych, które reprezentują. W odróżnieniu od tradycyjnego modelu relacyjnego, zamiast relacji opartych o klucze primary key i foreign key, wykorzystywane są tu atrybuty referencyjne, które wskazują zwykle na inne obiekty. 54
3 5. Cechy charakterystyczne Jedną z cech charakterystycznych obiektów w modelu obiektowym jest to, że ich atrybuty podlegają enkapsulacji. Użytkownicy, czy też programy komputerowe, nie mają możliwości bezpośredniego dostępu do atrybutów obiektów utrwalonych w obiektowej bazie Jedynym sposobem komunikacji z obiektami jest wykorzystanie metod posiadających jasno sprecyzowany sposób dostępu do Połączenie opisu statyki w formie atrybutów z opisem dynamiki zachowań w formie definicji metod sprawia, że obiekty, jako podstawowe struktury obiektowego modelu danych, umożliwiają o wiele bardziej intuicyjne modelowanie bytów rzeczywistych w procesie projektowania modelu W obiektowym modelu danych atrybuty i metody obiektów podlegają dziedziczeniu w obiektach klas specjalizujących, zgodnie ze strukturą hierarchii dziedziczenia. W takich systemach bazodanowych zwykle wspierany jest również polimorfizm oraz wielodziedziczenie. Obiekty dobrze odwzorowują cechy bytów rzeczywistych również dlatego, że utrzymują one bezpośrednie odwzorowania właściwości obiektów rzeczywistych i relacji między nimi w taki sposób, że obiekty nie tracą swojej integralności oraz tożsamości, tak jak może to mieć miejsce w modelowaniu relacyjnym. Pewne założenia integralności realizowane są tu z definicji modelowania obiektowego i są domyślnie utrzymywane. Przykładem może być hierarchia dziedziczenia, w której obiekt przykładowej klasy Bus jest pojazdem, i jak każdy inny podtyp klasy Pojazd zachowuje cechy wspólne dla wszystkich pojazdów. Inne ograniczenia integralności można jasno definiować jako część jawnej specyfikacji obiektu. Przykładem może być założenie, że dopuszczalna ładowność pojazdu nie może przekroczyć dopuszczalnej masy całkowitej pojazdu, pomniejszonej o masę własną pojazdu. Najczęściej ograniczenia integralności danych realizowane są poprzez anulowanie transakcyjnych operacji, które produkują niepoprawne dane. Alternatywnym podejściem jest zapewnienie automatycznych mechanizmów naprawiających dane niespełniające nałożonych ograniczeń. W rozwiązaniu takim dla każdego ograniczenia wykorzystywana jest reguła produkcji, sprawdzająca, czy nie doszło do naruszenia ograniczeń, a jeśli tak, to inicjowana jest operacja przywracająca integralność danych w obiektowej bazie Rolę sposobu dostępu do danych pełni nawigacja obiektowa oraz metody obiektów udostępniające enkapsulowane atrybuty. Język programowania, służący do definiowania metod w obiektach, uzależniony jest z kolei od konkretnych implementacji systemów zarządzania obiektowymi bazami Kosztem łatwości modelowania, utrzymania i zachowania integralności bazy danych jest brak możliwości doraźnego definiowania i wykorzystania dostępu do danych, charakterystycznego przy wykorzystaniu języka SQL w relacyjnych bazach 6. Efektywność stosowania Obiektowe bazy danych rozwinęły się z potrzeby lepszego wsparcia oprogramowania tworzonego w oparciu o paradygmaty obiektowości. Skuteczne metody abstrakcji w obiektowych bazach danych zapewniają enkapsulację danych i operacji wewnątrz obiektów, jasno określając sposób dostępu do nich. Pozwalają one również na przechowywanie złożonych struktur danych, które ciężko przechowywać w modelach relacyjnych. W rezultacie stanowią dobrze dopasowaną warstwę bazy danych podczas pracy z obiektowymi językami programowania. Zastosowanie systemu bazy danych, opartego o obiektowy model danych, sprawia, że dane przetwarzane w systemie nie muszą przechodzić procesu mapowania obiektowo-relacyjnego podczas utrwalania. Ogranicza to zbędne obciążenie obliczeniowe mogące być również przyczyną utraty integralności. 7. Zagadnienia funkcjonalne Rozwój obiektowych baz danych stanowi również przyczynę rozwoju technologii korespondujących z zagadnieniami systemów baz Innowacyjne paradygmaty modelowania wprowadzają innowacje w projektowaniu. Rozwojem funkcjonalnym objęte są m.in. wszelkie narzędzia wspierające procesy projektowania obiektowych baz danych, modelowania danych jak i procesy wdrażania czy utrzymania systemów obiektowych baz W obszarze zainteresowań rozwoju funkcjonalnego znajdują się m.in. prace nad wdrażaniem autoryzacji wysokiego poziomu w obiektowych bazach danych [4]. Od samego początku z rozwiązaniami utrwalania danych 55
4 K. Tomaszewski, Obiektowe bazy danych wybrane kierunki rozwoju związane były zagadnienia ochrony i kontroli dostępu do W pierwszych realizacjach systemów bazodanowych mechanizmy ograniczające dostęp nie stanowiły wewnętrznych modułów systemów zarządzania bazami Opierały się one raczej na zabezpieczeniach dostępu, wbudowanych w system operacyjny stanowiący podłoże środowiska pracy dla osadzonego systemu zarządzania bazą Wraz z rozwojem technologii powstało zapotrzebowanie na zwiększenie roli systemów zarządzania bazami danych w kontroli dostępu do Powstały aktywne rozwiązania zabezpieczeń jako wbudowane moduły zarządzające dostępem do danych, z uwzględnieniem ról użytkowników, lokalizacji, przydzielonych uprawnień i grup dozwolonych operacji, czy wybranych fragmentów schematu bazy danych w postaci zdefiniowanych widoków. Wraz z rozwojem obiektowych baz danych pojawiły się nowe zagadnienia do rozważenia, mianowicie należało przemyśleć nowe pojęcia, np. definicje klas modelu bazy danych w kontekście kontroli dostępu do nich i ograniczenia uprawnień odczytu i modyfikacji. Rozważeniu podlega to, jakie zagrożenia niesie ze sobą znajomość definicji klas i możliwość ich modyfikacji, w przypadku wykorzystania przez niepożądanych użytkowników. Omawiane są też zagadnienia formalnej definicji i wdrażania autoryzacji wysokiego poziomu w obiektowych bazach Oparte są one o logiczną specyfikację zabezpieczeń, bazującą z kolei na syntaktyce i semantyce zapytań bazodanowych. Prowadzone są również prace nad sformalizowaniem paradygmatów, znanych w dotychczasowych rozwiązaniach jako postacie normalne, i zastosowaniem w modelowaniu obiektowych baz Powstało tu pojęcie postaci normalnej hierarchii klas (Class Hierarchy Normal Form) [5]. W modelowaniu obiektowym normalizacja modelu może być realizowana z wykorzystaniem specyficznych właściwości tego modelowania, takich jak polimorfizm, enkapsulacja czy dziedziczenie klas. Zastosowanie normalizacji obiektowego modelu danych może wpłynąć na efektywność realizacji zapytań, gdyż z definicji może ograniczyć przetwarzanie zbędnych informacji o złożonej strukturze hierarchii klas dla docelowych obiektów, do których występują odwołania. Zagadnienia modelowania danych powiązane są również z problemami formalnej reprezentacji modelu, umożliwiającej integra- cję lub relokację modeli Wraz z paradygmatami obiektowego modelowania danych pojawiły się nowe koncepcje reprezentacji schematów baz danych [6]. Należy tu zwrócić uwagę na definicyjne podobieństwo cech modelowania obiektowego i notacji XML. Notacja ta elastycznie odwzorowuje elementy modelu, które mogą w sobie zawierać zarówno proste jak i złożone elementy, oraz odniesienia referencyjne. Znaczenie tych zagadnień podnosi fakt, że do tej pory istnieją już dobrze ugruntowane metody konwersji modeli relacyjnych do ich reprezentacji w notacji XML. Rozważana jest tu konwersja schematu obiektowej bazy danych do schematu w notacji XML oraz reprezentacja schematów notacji XML w postaci modelu obiektowej bazy Może to być rozpatrywane jako element pośredni w integracji między modelami relacyjnymi i obiektowymi. Nawiązując do integracji modeli danych, omawiana jest również teoria abstrakcyjnej transformacji modeli i migracji danych pomiędzy modelami relacyjnymi i obiektowymi w ujęciu niezależnym od konkretnych systemów baz danych [7]. Można sobie wyobrazić migrację danych na przykładzie konstrukcji hierarchii klas obiektowej bazy danych na podstawie schematu relacyjnej bazy Ciekawym aspektem aktualnego rozwoju w dziedzinie obiektowych baz danych są propozycje reprezentacji niedoskonałych informacji przestrzennych w rozmytych obiektowych bazach danych [8]. W tym celu do systemów obiektowych baz danych wprowadzane są założenia teorii zbiorów rozmytych. Poruszane są tu m.in. zagadnienia takie jak wprowadzanie pojęć dziedziczenia rozmytego w hierarchii klas oraz propozycje architektury rozmytych obiektowych baz Ważnym pojęciem w rozwoju obiektowych baz danych są więzy integralności. W opracowaniu [9] omawiane są propozycje specyfikacji ograniczeń integralności spełniających stawiane wymogi w modelach obiektowych baz danych oraz propozycje restrukturyzacji obiektowych baz danych w celu uproszczenia procesu weryfikacji definicji więzów integralności. W procesie takiej weryfikacji sprawdzeniu podlegać powinna spójność definicji oraz jej kompletność i realizowalność na zadanym modelu Cechą wspólną modeli danych w systemach bazodanowych jest zmienność. Dotyczy to również modeli zorientowanych obiektowo. Schemat obiektowej bazy danych może podlegać zmianom w cyklu życia zaprojektowanego 56
5 rozwiązania. Zmiany mogą być związane zarówno z korekcją nieprawidłowości popełnionych na etapie projektowania, jak i modyfikacjami działającego rozwiązania związanymi z żądaniami zmian funkcjonalności. Zmiany definicji klas w obiektowym modelu danych niosą ze sobą ryzyko nieoczekiwanych i niepożądanych skutków pracy z taką bazą Zjawisko to dotyczy zarówno relacyjnych jak i obiektowych modeli W takiej sytuacji można zastosować znane do tej pory proste rozwiązanie, tj. utrzymywanie wspólnego źródła informacji o aktualnym stanie modelu W rozwiązaniu tym przechowywane informacje mają ustawiony okres aktualności i zdefiniowaną procedurę cyklicznego uaktualniania obowiązującą klientów bazy Można zauważyć, że charakterystyki takiego rozwiązania są dopasowywane do przybliżonych, oczekiwanych czasów modyfikacji definicji modelu Zastosowanie aproksymacji może nieść ze sobą niepożądane efekty. Z jednej strony istnieje prawdopodobieństwo, że odpytania do uaktualnianego zasobu informacji o modelu będą następowały zbyt często, generując niepotrzebny ruch i zajmując zasoby obliczeniowe hostów. Z drugiej strony niedopasowanie współczynników odświeżania do częstych modyfikacji może nieść ze sobą ryzyko braku informacji o aktualnej definicji modelu Wraz z rozwojem obiektowych baz danych zaproponowano rozwiązanie powiadamiania o zmianach w wersjonowaniu definicji w obiektowym modelu danych [10]. Rozwiązanie to zakłada wykorzystanie popularnego modelu Publisher Subcriber we współpracy aplikacji klienckich z obiektowymi bazami W rozwiązaniu takim proponuje się wykorzystanie technologii agentów odpowiadających za monitorowanie zmian w modelu bazy Technologia ta uwzględnia współpracę dwóch typów agentów: Agent Publisher monitoruje stan bazy danych i w przypadku modyfikacji publikuje powiadomienia zawierające informacje o zmianach Agent typu Subscriber odbiera powiadomienia, do których jest przypisany jako subskrybent, i aktualizuje informacje po stronie klienta. Działanie takich agentów zapewnia koordynację między aplikacjami klienckimi korzystającymi z zasobów baz Zagadnienia te zyskują nową odsłonę w związku z pracami nad rozwiązaniami funkcjonalnymi obiektowych baz danych 8. Zagadnienia wydajnościowe Jak wspomniano wcześniej, wybrane zagadnienia będące przedmiotem prac rozwojowych w dziedzinie obiektowych baz danych zostały podzielone na dwie kategorie. Poza pracami nad zagadnieniami funkcjonalnymi opisanymi wcześniej, wybrano również zagadnienia, których rozwój może wpłynąć na poprawę charakterystyk wydajnościowych systemów bazodanowych zorientowanych obiektowo. Prace tego typu najczęściej koncentrują się na nowych sposobach realizacji istniejących mechanizmów, z naciskiem na poprawę charakterystyk działania baz Poprawie podlegają między innymi takie cechy jak: minimalizowana złożoność obliczeniowa realizacji żądań, minimalizowana złożoność (ilość) dostępów do pamięci podczas realizacji zapytań, minimalizowany czas przygotowania odpowiedzi na napływające żądania dostępu do danych czy maksymalizowanie niezawodności systemów obiektowych baz Poniżej omówione zostaną wybrane zagadnienia, wokół których można zauważyć koncentrację dotychczasowych prac. 9. Wertykalna fragmentacja klas Wertykalna fragmentacja klas jest techniką projektowania mającą na celu ograniczenie ilości odczytów ze źródła danych, przy wykonywaniu zadanego zbioru zapytań, poprzez minimalizację liczby odwołań do zbędnych atrybutów instancji obiektów. Osiąga się to poprzez grupowanie atrybutów o wysokiej częstotliwości dostępu w wertykalne fragmenty klas [11]. Złożoność modeli obiektowych baz danych wynikająca z hierarchii dziedziczenia oraz hierarchii kompozycji klas wpływa na komplikację definicji fragmentacji wertykalnej stosowanej w obiektowych bazach Ta grupa rozwiązań odnosi się do konkretnych rozwiązań tego problemu. 10. Horyzontalna fragmentacja klas z wykorzystaniem technik sztucznej inteligencji Obok wertykalnej fragmentacji klas proponowane są też sposoby przekształcania obiektowego modelu danych, opisywane jako fragmentacja horyzontalna. Jest to reorganizacja danych w modelu obiektowym, oparta 57
6 K. Tomaszewski, Obiektowe bazy danych wybrane kierunki rozwoju o klasteryzację danych z wykorzystaniem funkcji k-średnich [12]. Metoda ta ma na celu pogrupowanie danych w podzbiory obiektów, przyporządkowane do konkretnej klasy modelu obiektowego, według wspólnych cech charakterystycznych. Wykorzystanie technik sztucznej inteligencji oraz modeli sieci neuronowych umożliwia dynamiczne uczenie się i rozpoznawanie cech wspólnych obiektów. Proces ten realizowany jest na bieżąco, w trakcie przetwarzania. Dane wejściowe, podlegające fragmentacji, są tu modelowane w przestrzeń wektorową z nadanymi różnymi miarami podobieństwa wraz z ich geometryczną interpretacją. W rezultacie obiekty tej samej klasy są grupowane w podzbiory tej klasy według zdefiniowanych szczegółowo cech i miar podobieństwa. Wpływa to na optymalizację realizacji zapytań do danych, powiązanych cechami wspólnymi w obrębie obiektowej bazy 11. Indeksowanie Indeksowanie jest jedną z metod ograniczenia przestrzeni przeszukania podczas realizacji zapytań w obiektowych bazach Ma ono znaczący wpływ na skrócenie czasu realizacji zapytań. Indeksowanie jednowymiarowe to grupowanie obiektów według indeksów z wykorzystaniem jednowymiarowego wektora podzbiorów zbioru obiektów. Jedną z technik indeksowania jednowymiarowego jest tzw. metoda key-clustering, tworząca jednowymiarowe struktury indeksowane. Struktury te grupują obiekty według wartości identyfikatora, pomijając przynależność obiektów do poszczególnych klas. Metoda ta sprawdza się najlepiej w zapytaniach oczekujących jako wyniku dokładnie jednego obiektu odpowiadającego zadanej wartości identyfikatora, niezależnie od przynależności klasowej. Inną metodą indeksowania jest tzw. metoda class-clusstering. Metoda ta najpierw dzieli zbiór obiektów na partycje przynależności do klas, a następnie w każdej partycji tworzy jednowymiarowe struktury indeksowe według wartości zadanego klucza. Powstaje w ten sposób wiele zbiorów, ale ciągle nieuporządkowanych i jednowymiarowych. Metoda ta sprawdza się najlepiej dla zapytań, które nastawione są na wydobycie grupy obiektów przynależących do konkretnej klasy w definicji modelu obiektowego oraz spełniających pewne zadane ograniczenia. Proponowana metoda indeksowania dwuwymiarowego [14] zakłada organizację przestrzeni pamięci w dwuwymiarową strukturę grupującą dane oraz porządkującą je wg dwóch kryteriów jednocześnie. Porządkowanie odbywa się w dziedzinie wartości atrybutu klucza oraz w dziedzinie przynależności do klasy obiektów. 12. Prefetching Prefetching to koncepcja minimalizacji ilości odwołań pomiędzy klientem a systemem zarządzania bazą Istniejące strategie odwołań między klientem a serwerem można podzielić na dwie grupy: On-demand fetching i Prefetching. Nawiązując do podstawowej cechy systemów baz danych, jaką jest utrwalanie danych i obsługa żądań dostępu do danych, można opisać typową współpracę między aplikacjami klienckimi i serwerami usług persystencji. Aplikacje posługujące się w odwołaniach do danych nawigacją obiektową bazują na referencjach między obiektami. Mamy tu do czynienia z wykorzystywaniem kolejnych atrybutów referencyjnych w celu uzyskania dostępu do kolejnych instancji obiektów. Charakterystyki nawigacyjne takiego działania odpowiadają za generację znaczącej ilości odwołań między klientem a serwerem bazy Działanie takie wpływa na znaczne obciążenie zasobów wydajnościowych serwera. W rozwiązaniu opisywanym jako On-demand fetching obiekty są ściągane z serwera bezpośrednio przy występowaniu kolejnych żądań dostępu do Na korzystną ocenę takiego podejścia wpływa fakt, że przetwarzane są tylko i wyłącznie obiekty, co do których istnieje faktyczne zapotrzebowanie na dostęp. W rozwiązaniu opisywanym jako Prefetching, obiekty, do których dostęp nie jest pewny, ale spodziewany, przygotowywane są z góry [15]. Wyznaczenie tymczasowego obszaru pamięci cache po stronie klienta umożliwia przechowywanie przygotowanych wcześniej obiektów i ograniczenie liczby odwołań do serwera bazy Wymaga to oczywiście opracowania i wdrożenia metod synchronizacji wszystkich kopii Należy również podkreślić, że sytuacja, w której zostały ściągnięte dodatkowe obiekty, do których nie nastąpiło odwołanie, będzie rozpatrywana jako niepotrzebne zaangażowanie zasobów wydajnościowych systemu bazy W literaturze dość szeroko opisywane są prace nad różnymi metodami skutecznej predykcji odwołań do konkretnych grup obiektów. 58
7 13. Przetwarzanie współbieżne Przetwarzanie współbieżne w systemach bazodanowych występuje w kilku odsłonach. Pokrótce zostaną omówione wybrane zagadnienia odnoszące się do współbieżności obiektowych baz Współbieżność w systemach bazodanowych można rozpatrywać m.in. w kontekście równoległych baz Obszar ten skupiony jest na rozwoju sposobów wyboru strategii nawigacji obiektowej. Strategia nawigacji jest tu kluczowym elementem mogącym wpłynąć na poprawę wydajności realizacji zapytań. Dlatego też w literaturze proponowane i oceniane są różne algorytmy i podejścia do realizacji tego typu zadań [16]. Do technik współbieżności nawiązują również prace nad rozwojem współbieżnych języków programowania na potrzeby przetwarzania danych w systemach perstystencji zorientowanych obiektowo [17]. Prace te skupione są również na zagadnieniach wpływających na poprawę efektywności przetwarzania w rozproszonych obiektowych bazach Można sobie wyobrazić sytuację, w której mamy dane przechowywane w rozproszonej pamięci zarządzanej przez zbiór równolegle działających procesorów. Proponowane rozwiązania algorytmiczne odnoszą się do relokacji danych i poprawy stopnia zrównoleglenia operacji wykonywanych podczas przygotowania odpowiedzi na zapytania. Działania takie mają na celu skrócenie czasu obsługi żądań dostępu do danych przechowywanych w systemach obiektowych baz Wraz ze współbieżnością przetwarzania rozpatrzeniu podlegają również zagadnienia blokowania dostępu do zasobów [18]. Nawiązują one do technik znanych z tradycyjnego programowania współbieżnego. W przetwarzaniu współbieżnym zachodzi potrzeba blokowania dostępu do zasobów współdzielonych na czas realizacji operacji transakcyjnych oraz ewentualnego wywłaszczania zasobów. Techniki te omawiane są jednak w nowej odsłonie, tzn. w odniesieniu do blokowania obiektów w obiektowych modelach baz Nowe rozwiązania proponowane są z reguły w formie protokołów, określających, które instancje obiektów i jakie fragmenty obiektowego modelu danych współdzielonych podlegają blokowaniu tak, aby zminimalizować wzajemne blokowanie współbieżnych działań. 14. Optymalizacja zapytań Na poprawę efektywności obsługi żądań dostępu do danych może również wpłynąć analiza i reorganizacja napływających zapytań [19]. Znajomości logiki i semantyki zapytań może być wykorzystana do ich semantycznej optymalizacji. Proponowane rozwiązania wykorzystują wiedzę semantyczną na temat modelu danych, zdefiniowaną głównie w formie więzów integralności (Integration Constraints) zapisanych w definicji modelu Na bazie tej wiedzy możliwe jest ponowne sformułowanie zapytania do bazy danych w taki sposób, aby otrzymać zapytanie semantycznie odpowiadające pierwotnemu, które jednak może zostać przetworzone efektywniej. Nieformalnie ujmując, dwa zapytania można uznać za semantycznie tożsame, jeżeli dla tego samego modelu danych w wyniku zwrócą tożsame zbiory wynikowe, oraz spełniają te same zbiory więzów integralności. Napływające zapytania można również analizować pod kątem możliwości zrównoleglenia realizacji. Wśród najnowszych prac proponowane są ogólne algorytmy zrównoleglenia przetwarzania zapytań, bazujące na identyfikowaniu niezależnych fragmentów zapytań dla obiektowych modeli Napływające zapytania podlegają analizie i są dzielone na szereg zapytań niezależnych, a następnie przetwarzane współbieżnie. Techniki takie charakteryzują się dużym stopniem skomplikowania, ale i znaczącym wzrostem efektywności przetwarzania zapytań w obiektowych bazach 15. Pozostałe zagadnienia Poza powyższymi grupami zagadnień odnoszących się do poprawy efektywności przetwarzania w obiektowych bazach danych, proponowane są również bardziej innowacyjne podejścia. Jednym z ciekawszych projektów badawczych są propozycje zorientowania obiektowej bazy danych na wzór modelu sieci peer-to-peer (p2p) [20]. Stanowi to oderwanie od tradycyjnych modeli systemów bazodanowych i ma na celu wykorzystanie cech charakterystycznych działania architektury p2p, tzn. zorientowania komponentów na równorzędnych, niezależnych od siebie węzłach oraz dynamicznej komunikacji. Poprzez formułowanie rozwiązań opartych o tę architekturę dąży się do uzyskania lekkości, elastyczności i skalowalności działania obiektowych baz Dodatkową, ważną cechą takiego 59
8 K. Tomaszewski, Obiektowe bazy danych wybrane kierunki rozwoju podejścia jest wysoka tolerancja błędów działania przy zachowaniu wysokiej niezawodności systemu. Działanie takiej sieci mogłoby się opierać o typowe dla sieci peer-to-peer mechanizmy indeksowania, dzięki którym użytkownicy mogliby wyszukiwać i odwoływać się do interesujących fragmentów danych, wykorzystując efektywne algorytmy routingu p2p. Inne ciekawe prace skupiają się na współpracy z obiektowymi systemami bazodanowymi w warunkach przerywanej komunikacji [21]. Założenia te odnoszą się głównie do pracy z urządzeniami mobilnymi. Można sobie wyobrazić aplikacje klienckie korzystające z dostępu do serwera obiektowej bazy danych osadzone na urządzeniach mobilnych. Podstawowym problemem jest umożliwienie pracy urządzenia, niezależnie od tego, czy komunikacja sieciowa jest dostępna, czy nie. Proponowane rozwiązania będą odpowiedzialne za zachowanie lokalnych zmian w warunkach przerywanej łączności. Zmiany te zostaną z powodzeniem zintegrowane z pozostałymi danymi, gdy połączenie sieciowe stanie się znów dostępne i zostanie wznowiona komunikacja. Mechanizmy te przełożą się bezpośrednio na konstrukcje bazodanowe odpowiedzialne za zarządzanie procesem reintegracji danych przechowywanych w przygotowanej pamięci cache urządzenia. Konstrukcja mechanizmów pozwalających na pracę w warunkach przerywanej łączności ma znaczenie z punktu widzenia zachowania integralności danych przy utrzymaniu wysokiego stopnia niezawodności pracy. 16. Bibliografia [1] M. Atkinson et al., The Object-Oriented Database System Manifesto, Proceedings of 1st International Conference on Deductive and Object-Oriented Databases, Kyoto, Japan, December [2] Committee for Advanced DBMS Function. Third generation database system manifesto. SIGMOD Record 19,3, [3] Hugh Darwen and C.J. Date, The third manifesto. Technical report, 503/manifesto.ps, 1995 [4] N. Xianjun, A Logic Specification and Implementation Approach for Object Oriented Database Security, Workshop on Knowledge Discovery and Data Mining, IEEE, (2008). 60 [5] M. Ubaid, A Pattern for the Effective Use of Object Oriented Databases, IEEE, (2009). [6] T. Naser, Transforming Object-Oriented Databases into XML, IEEE, , (2007). [7] R. Alhajj, Reengineering Relational Databases to Object-Oriented: Constructing the Class Hierarchy and Migrating the Data, IEEE, (2001). [8] G. Bordogna, Linguistic Representation of Imperfect Spatial Information in a Fuzzy Object Oriented Database, , IEEE, (2002). [9] B. Zaqaibeh, Restructuring Object- -oriented Database Model to Ease Checking the Integrity Constraints, Proceedings of Student COnference on Research and Development, (2003). [10] K. Palanivel, Publisher-Subscriber: An Agent System for Notification of Versions in OODBs, IEEE (2009). [11] Ch. Fung, An Evaluation of Vertical Class Partitioning for Query Processing in Object Oriented Databases, IEEE Transactions on knowledge and data engineering, 14, (2002). [12] A. Darabant, Semi supervised learning techniques: k-means clustering in OODB Fragmentation, IEEE (2004). [13] M. Faheem, Fragmentation and allocation of object-oriented databases for simple attributes and complex methods: a costbased technique, Proceedings of the Enabling Technologies for the New Knowledge Society: ITI 3rd International Conference on Information and Communications Technology, (2005). [14] J-H. Lee, 2D-CHI: A Tunnable Two- -Dimensional Class Hierarchy Index for Object-Oriented Databases, Proceedings of the Computer Software and Applications, , (2000). [15] W-S. Han, A Formal Framework for Prefetching Based on Type-Level Access Pattern in Object-Relational DBMSs, IEEE Transactions on knowledge and data engineering, 17, (2005) [16] G. Wang, Comparision of Parallel Algorithms for Path Expression Query in Object Database Systems, Proceedings of Database Systems for Advanced Applications Conference, (2001). [17] K. Kimura, Dynamic Performance Optimalization Mechanism for Parallel Object-Oriented Database Programming
9 Languages, Proceedings of the International Database Engineering and Applications Symposium, (2000). [18] W. Jun, A multi-granularity locking-based concurrency control in object-oriented database systems, The Journal of Systems and Software, 54, (2000). [19] J. Grant, Logic-Based Query Optimization for Object Databases, IEEE Transactions on knowledge and data engineering, 12, (2000). [20] G. Chiao, A P2P Object-Oriented Database System that Supports Multi- Attribute and Range Queries with Improved Query Response Time, Proceedings of the Information Technology Symposium, (2010). [21] S. Chang, An Approach to Disconnected Operation in an Object-Oriented Database, Proceedings of the Third International Conference on Mobile Data Management, (2002). Object-Oriented Databases Review of Development Directions K. TOMASZEWSKI Database systems are one of the key sectors for the development of modern information systems. They are one of the basic elements of architecture and have a critical impact on the functioning of all solutions. There is constantly ongoing development work in the areas of database systems of all types. At first, this article summarizes the standardization of OODB attempts. Next, few proposals for major improvements has been described. Selected issues have been divided into innovation in terms of functionality as well as new implementations of existing mechanisms, which improve the efficiency of their operations. For each group a number of issues, which are the subject of the latest developments, have been listed with short description. Keywords: OODB, review, development. 61
Poję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
Wykł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
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
INFORMATYKA 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
Symulacyjna metoda badania procesu obsługi żądań dostępu do danych w OODB
Symulacja w Badaniach i Rozwoju Vol. 4, No. 1/2013 Karol TOMASZEWSKI Instytut Systemów Informatycznych, Wydział Cybernetyki WAT ul. S. Kaliskiego 2, 00-908 Warszawa E mail: ktomaszewski@wat.edu.pl Symulacyjna
Baza 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!
Modelowanie 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
Bazy 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
Transformacja 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
SZKOLENIE: 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.
PODSTAWY 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
Wrocławska Wyższa Szkoła Informatyki Stosowanej. Bazy danych. Dr hab. inż. Krzysztof Pieczarka. Email: krzysztof.pieczarka@gmail.
Wrocławska Wyższa Szkoła Informatyki Stosowanej Bazy danych Dr hab. inż. Krzysztof Pieczarka Email: krzysztof.pieczarka@gmail.com Literatura: Connoly T., Begg C., Systemy baz danych Praktyczne metody projektowania,
Programowanie 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)
AUREA 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
Obiektowość BD Powtórka Czas odpowiedzi. Bazy Danych i Systemy informacyjne Wykład 14. Piotr Syga
Bazy Danych i Systemy informacyjne Wykład 14 Piotr Syga 18.01.2019 Motywacja Ograniczenia relacyjnych baz danych proste typu i struktury klucze (w tym sztuczne) relacje między tabelami uwzględniane w triggerach
Podstawy 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
Alicja 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
Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ
(INT) Inżynieria internetowa 1.Tryby komunikacji między procesami w standardzie Message Passing Interface. 2. HTML DOM i XHTML cel i charakterystyka. 3. Asynchroniczna komunikacja serwerem HTTP w technologii
Informacje 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
Projektowanie 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
Zagadnienia (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
Programowanie 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
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Bazy danych Database Kierunek: Rodzaj przedmiotu: obieralny Rodzaj zajęć: wykład, laboratorium Matematyka Poziom kwalifikacji: I stopnia Liczba godzin/tydzień: 2W, 2L Semestr: III Liczba
Bazy 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.
OFERTA SZKOLENIOWA PROGRESS SOFTWARE
OFERTA SZKOLENIOWA PROGRESS SOFTWARE Szanowni Państwo, Zapraszamy do zapoznania się z naszą ofertą szkoleń w systemie Progress. Kursy organizowane są dla małych grup 3-6 osobowych, w Warszawie. Każdy uczestnik
Projektowanie struktury danych
Jarosław aw Kuchta Rozproszonych Projektowanie qhta@eti.pg.gda.pl J.Kuchta@eti.pg.gda.pl Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja relacyjnej
Projektowanie relacyjnych baz danych
Mam nadzieję, że do tej pory przyzwyczaiłeś się do tabelarycznego układu danych i poznałeś sposoby odczytywania i modyfikowania tak zapisanych danych. W tym odcinku poznasz nieco teorii relacyjnych baz
Podstawowe 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
Bazy 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
Podstawowe 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
Komputerowe 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
Model 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
Baza 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
K1A_W11, K1A_W18. Egzamin. wykonanie ćwiczenia lab., sprawdzian po zakończeniu ćwiczeń, egzamin, K1A_W11, K1A_W18 KARTA PRZEDMIOTU
(pieczęć wydziału) KARTA PRZEDMIOTU 1. Nazwa przedmiotu: BAZY DANYCH 2. Kod przedmiotu: 3. Karta przedmiotu ważna od roku akademickiego: 2014/2015 4. Forma kształcenia: studia pierwszego stopnia 5. Forma
RELACYJNE BAZY DANYCH
RELACYJNE BAZY DANYCH Aleksander Łuczyk Bielsko-Biała, 15 kwiecień 2015 r. Ludzie używają baz danych każdego dnia. Książka telefoniczna, zbiór wizytówek przypiętych nad biurkiem, encyklopedia czy chociażby
Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ
(INT) Inżynieria internetowa 1. Tryby komunikacji między procesami w standardzie Message Passing Interface 2. HTML DOM i XHTML cel i charakterystyka 3. Asynchroniczna komunikacja serwerem HTTP w technologii
Systemy 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
BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski
BAZY DANYCH wprowadzenie Opracował: dr inż. Piotr Suchomski Prowadzący Katedra Systemów Multimedialnych dr inż. Piotr Suchomski (e-mail: pietka@sound.eti.pg.gda.pl) (pok. 730) dr inż. Andrzej Leśnicki
Bazy 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
Projektowanie warstwy danych
Jarosław Kuchta Internetowych Projektowanie warstwy danych qhta@eti.pg.gda.pl J.Kuchta@eti.pg.gda.pl Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja
Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek
Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC Jarosław Świerczek Punkty funkcyjne Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie
Program wykładu. zastosowanie w aplikacjach i PL/SQL;
Program wykładu 1 Model relacyjny (10 godz.): podstawowe pojęcia, języki zapytań (algebra relacji, relacyjny rachunek krotek, relacyjny rachunek dziedzin), zależności funkcyjne i postaci normalne (BCNF,
Systemy 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
Diagramy 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
Grafowy model bazy danych na przykładzie GOOD
GOOD p. 1/1 Grafowy model bazy danych na przykładzie GOOD (Graph-Oriented Object Database Model) Marcin Jakubek GOOD p. 2/1 Plan prezentacji Przykłady modeli danych Zastosowania Inne modele grafowe Wizualizacja
Diagramy 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
DLA SEKTORA INFORMATYCZNEGO W POLSCE
DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej
Jarosław Kuchta Projektowanie Aplikacji Internetowych. Projektowanie warstwy danych
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie warstwy danych Zagadnienia Sposoby zapisu danych zewnętrznych Odwzorowanie dziedziny problemu w dziedzinę danych Normalizacja relacyjnej
Baza danych. Baza danych to:
Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych Rodzaj zajęć: wykład, laboratorium BAZY DANYCH I SYSTEMY EKSPERTOWE Database and expert systems Forma
Spis 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
Pojęcie systemu baz danych
Pojęcie systemu baz danych System baz danych- skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki. Składa się z zasadniczych elementów: 1) Danych 2) Sprzętu 3) Programów 4)
SBQL. 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
Systemy 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
2010-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
Wykład 2. Relacyjny model danych
Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających
Usługi analityczne budowa kostki analitycznej Część pierwsza.
Usługi analityczne budowa kostki analitycznej Część pierwsza. Wprowadzenie W wielu dziedzinach działalności człowieka analiza zebranych danych jest jednym z najważniejszych mechanizmów podejmowania decyzji.
LITERATURA. 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
Dariusz 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
Wykład 7. Projektowanie kodu oprogramowania
Wykład 7 Projektowanie kodu oprogramowania Treść wykładu cykl życiowy oprogramowania zagadnienia inżynierii oprogramowania tworzenie oprogramowania z gotowych elementów tworzenie niezawodnego oprogramowania
I. KARTA PRZEDMIOTU CEL PRZEDMIOTU
I. KARTA PRZEDMIOTU 1. Nazwa przedmiotu: BAZY DANYCH 2. Kod przedmiotu: Bda 3. Jednostka prowadząca: Wydział Mechaniczno-Elektryczny 4. Kierunek: Automatyka i Robotyka 5. Specjalność: Informatyka Stosowana
Przygotowała Elżbieta Pastucha na podstawie CityGML OGC Standard for Photogrammetry by Thomas H. Kolbe, Claus Nagel, Alexandra Stadler
Przygotowała Elżbieta Pastucha na podstawie CityGML OGC Standard for Photogrammetry by Thomas H. Kolbe, Claus Nagel, Alexandra Stadler Wirtualne modele miast 3D Nowa Generacja Wykorzystanie: Symulacje
Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Szczególne problemy projektowania aplikacji Jarosław Kuchta Miejsce projektowania w cyklu wytwarzania aplikacji SWS Analiza systemowa Analiza statyczna Analiza funkcjonalna Analiza dynamiczna Analiza behawioralna
WPROWADZENIE DO UML-a
WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,
Faza Określania Wymagań
Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie
Specjalizacja magisterska Bazy danych
Specjalizacja magisterska Bazy danych Strona Katedry http://bd.pjwstk.edu.pl/katedra/ Prezentacja dostępna pod adresem: http://www.bd.pjwstk.edu.pl/bazydanych.pdf Wymagania wstępne Znajomość podstaw języka
Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08
Spis treści Wstęp.............................................................. 7 Część I Podstawy analizy i modelowania systemów 1. Charakterystyka systemów informacyjnych....................... 13 1.1.
Szkolenie autoryzowane. MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2
Szkolenie autoryzowane MS 6232 Wdrażanie bazy danych Microsoft SQL Server 2008 R2 Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje Opis szkolenia Szkolenie, gdzie uczestnicy zapoznają
WPROWADZENIE 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
Cel przedmiotu. Wymagania wstępne w zakresie wiedzy, umiejętności i innych kompetencji 1 Język angielski 2 Inżynieria oprogramowania
Przedmiot: Bazy danych Rok: III Semestr: V Rodzaj zajęć i liczba godzin: Studia stacjonarne Studia niestacjonarne Wykład 30 21 Ćwiczenia Laboratorium 30 21 Projekt Liczba punktów ECTS: 4 C1 C2 C3 Cel przedmiotu
Indeksy w bazach danych. Motywacje. Techniki indeksowania w eksploracji danych. Plan prezentacji. Dotychczasowe prace badawcze skupiały się na
Techniki indeksowania w eksploracji danych Maciej Zakrzewicz Instytut Informatyki Politechnika Poznańska Plan prezentacji Zastosowania indeksów w systemach baz danych Wprowadzenie do metod eksploracji
ERDAS ADE Suite edytor baz danych Oracle Spatial
ERDAS ADE Suite edytor baz danych Oracle Spatial III Konferencja naukowo-techniczna WAT i GEOSYSTEMS Polska, Serock, 12 czerwca, 2008 ERDAS, Inc. A Hexagon Company. All Rights Reserved Czym jest ERDAS
Bazy 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ść?
Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.
Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-
Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia
Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia Przedmiot: Bazy danych Rodzaj przedmiotu: Podstawowy Kod przedmiotu: MBM 1 S 0 5 64-4 _1 Rok: III Semestr: 5 Forma studiów:
Problemy 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
Relacyjne bazy danych
Relacyjne bazy danych W roku 1970 dr Edgar Ted Codd z firmy IBM zaprezentował relacyjny model danych. W modelu tym dane miały być przechowywane w prostych plikach liniowych, które to pliki nazywane są
Programowanie 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
Projektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury
Wykład 1 Inżynieria Oprogramowania
Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI
ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia
ZP/ITS/11/2012 Załącznik nr 1a do SIWZ ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia Przedmiotem zamówienia jest: Przygotowanie zajęć dydaktycznych w postaci kursów e-learningowych przeznaczonych
Hurtownie danych - przegląd technologii
Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Projektowanie Zorientowane na Dziedzinę. ang. Domain Driven Design
Projektowanie Zorientowane na Dziedzinę ang. Domain Driven Design 2 Projektowanie Stan posiadania Przypadki użycia Model dziedziny Operacje systemowe Kontrakty dla operacji systemowych Problemy do rozwiązania
Projektowanie 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)
Monitoring procesów z wykorzystaniem systemu ADONIS
Monitoring procesów z wykorzystaniem systemu ADONIS BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management
ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia 23.03.2015 r.
ZAPYTANIE OFERTOWE Wrocław, dnia 23.03.2015 r. W związku z realizacją przez Nova Telecom spółka z ograniczoną odpowiedzialnością, projektu pn.: Wdrożenie zintegrowanego systemu klasy B2B, umożliwiającego
Program nauczania. Systemy baz danych. technik informatyk 351203
Program nauczania Systemy baz technik informatyk 351203 Treści nauczania Lp. Temat Liczba godzin Efekty kształcenia 1. Zapoznanie z pojęciem baz 53 1. Pojęcie bazy podstawowe definicje 2 PKZ(E.b)11 2.
Programowanie 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,
KIERUNKOWE EFEKTY KSZTAŁCENIA
WYDZIAŁ INFORMATYKI I ZARZĄDZANIA Kierunek studiów: INFORMATYKA Stopień studiów: STUDIA I STOPNIA Obszar Wiedzy/Kształcenia: OBSZAR NAUK TECHNICZNYCH Obszar nauki: DZIEDZINA NAUK TECHNICZNYCH Dyscyplina
Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
EXSO-CORE - specyfikacja
EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.
Technologia 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,
STUDIA NIESTACJONARNE I STOPNIA Przedmioty kierunkowe
STUDIA NIESTACJONARNE I STOPNIA Przedmioty kierunkowe Technologie informacyjne prof. dr hab. Zdzisław Szyjewski 1. Rola i zadania systemu operacyjnego 2. Zarządzanie pamięcią komputera 3. Zarządzanie danymi
Projekt: MS i CISCO dla Śląska
Projekt: MS i CISCO dla Śląska Ścieżki szkoleniowe planowane do realizacji w projekcie Administracja bazami danych Katowice, październik 2012 Projekt jest współfinansowany przez Unię Europejską w ramach
Kumulowanie się defektów jest możliwe - analiza i potwierdzenie tezy
Kumulowanie się defektów jest możliwe - analiza i potwierdzenie tezy Marek Żukowicz 14 marca 2018 Streszczenie Celem napisania artykułu jest próba podania konstruktywnego dowodu, który wyjaśnia, że niewielka
Dopasowanie IT/biznes
Dopasowanie IT/biznes Dlaczego trzeba mówić o dopasowaniu IT-biznes HARVARD BUSINESS REVIEW, 2008-11-01 Dlaczego trzeba mówić o dopasowaniu IT-biznes http://ceo.cxo.pl/artykuly/51237_2/zarzadzanie.it.a.wzrost.wartosci.html
Analiza i projektowanie aplikacji Java
Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie
Zagadnienia egzaminacyjne AUTOMATYKA I ROBOTYKA. Stacjonarne I-go stopnia TYP STUDIÓW STOPIEŃ STUDIÓW SPECJALNOŚĆ
(ARK) Komputerowe sieci sterowania 1.Badania symulacyjne modeli obiektów 2.Pomiary i akwizycja danych pomiarowych 3.Protokoły transmisji danych w systemach automatyki 4.Regulator PID struktury, parametry,