WYKLAD 10 30.11.2005
NIERELACYJNE MODELE DANYCH
Model prosty -płaskie pliki I generacja
Model klasyczny
Hierarchiczny II generacja
Sieciowy III generacja
Model relacyjny IV generacja
Modele postrelacyjne V generacja
Model semantyczny
Model obiektowy
Model dedukcyjny
MODEL PROSTY
Dane są zorganizowane w postaci systemu plików
Szczególna odmiana - dane w jednym pliku
Gdy nie potrzebujemy złożonej struktury danych
Gdy praca z danymi będzie sekwencyjna
Syst. plików takie jak:
ISAM
SAM
CSAM
WISS
Model prosty - wady i zalety
Zalety:
Prostota
Podstawa zarządzania danymi na poziomie fizycznym do dziś
Wady:
Brak mechanizmów zabezpieczających:
Przed niepowołanym dostępem
Przed utratą spójności
Trudności wynikające z podziału pól danych
Znak specjalny
Długość pola
Dane- wyłącznie ciąg znaków
Dostęp tylko sekwencyjny
HIERARCHICZNY MODEL DANYCH
Brak jednolitych podstaw teoretycznych
Struktura ma postać drzewa:
Węzły- typy rekordów
Łuki - związki nadrzędny-podrzędny
Dostęp do danych realizowany w języku programowania(tzw. języku gospodarza)
Brak możliwości zaprezentowania relacji wiele do wiele
Rekord - zbiór nazwanych pól
Jeden z rekordów wyróżniony jako unikatowy klucz
Uporządkowanie rekordów wg wartości jednego z pól
System IMS( IBM, 1978)
Język manipulacji danymi- DL/1
Zgromadzoną olbrzymia ilość danych w systemie
Wykorzystany w projekcie Apollo
System 2000
WIĘZY INTEGRALNOŚCI
Nie można wstawić rekordu podrzędnego dopóki nie ma on powiązania z rekordem nadrzędnym
Usunięcie rekordu nadrzędnego automatycznie usuwa wszystkie rekordy podrzędne
Jeżeli podrzędny typ rekordu jest związany z więcej niż jednym typem nadrzędnym to musi on (rekord podrzędny) zostać powielony dla każdego z rekordów nadrzędnych.
Zalety:
Łatwość stosowania
Szybkość działania
Wady:
Brak możliwości reprezentacji wiązań n-m
Skomplikowane wstawianie i usuwanie danych
Dostęp do warstw podrzędnych jedynie poprzez warstwy nadrzędne
SIECIOWY MODEL DANYCH
Główny rozwój tego modelu przypada na lata siedemdziesiąte XX w.
Struktura danych ma postać grafu(sieci):
wierzchołki -typy rekordów
łuki - typy kolekcji związki między typami rekordów
Początek DBTG CODASYL (1971)
Wykorzystany m.in. w ADABAS
Ostatnie istotne zdarzenie NDL (1986)
CODASYL
Rekordy stanowią kolekcje(set)
Jeden rekord nadrzędny
Wiele rekordów podrzędnych
Kolekcja realizowana jako lista zamknięta
Brak bezpośredniej reprezentacji wiązań n-m
Język manipulacji: CODASYL- pozwalający na określenie sposobu automatycznego włączania rekordów do kolekcji
System IDS(General Electric)
System IDSM
WIĘZY INTEGRALNOŚCI
Dotyczące członkostwa w kolekcji:
Wymagane
Opcjonalne
Dotyczące trybu wstawiania
Ręczny
Automatyczny
Zalety:
Wbudowane wsparcie więzów integralności
Możliwość definiowania więzów n-m
Wady:
Złożony i skomplikowany w użyciu
Trudny w nawigacji
Trudność implementacji zmian struktury
POSTRELACYJNE MODELE DANYCH
Ważniejsze z wymagań stawiane bazom danych piątej generacji
Reprezentowanie posługiwanie się złożonymi zagnieżdżonymi obiektami
Przechowywanie i wyszukiwanie dowolnie długich danych
Definiowanie dowolnych typów i operowanie nimi
Reprezentowanie i zarządzanie zmianami w bazie danych (pojęcie czasu, wersje pojedynczych i złożonych zagnieżdżonych obiektów, wersje schematów)
Reprezentowanie i operowanie pojęciami semantycznymi takimi jak hierarchia, agregacja
Zarządzanie długotrwałymi transakcjami
Podstawowe mechanizmy do wspomagania programów użytkowych ….
SEMANTYCZNY MODEL DANCH
Pierwotnie rozwijany w celu przezwyciężenia słabości modelu relacyjnego:
Słaba reprezentacja świata rzeczywistego
Semantyczne przeładowania
Trudności w zarządzaniu złożonymi obiektami
Modele semantyczne koncentrują się na reprezentacji danych
Próbują dostarczyć bogaty zbiór narzędzi do budowy schematów
Umożliwiają określenie w schemacie BD znaczenia lub semantyki dotyczących dziedziny aplikacji
OBIEKTOWY MODEL DANYCH
Brak zgodnej definicji obiektowości
Skupia się na operowaniu danymi przekazywaniu komunikatów do metod obiektów:
Tworzenia
Usuwania
Dostępu
Przekształcenia
Simulla
Smalltalk (Xerox)
ODMG (Object Database Management Group) prace nad standaryzacją
Bazą danych(SQL-92)
Obiektów(OMG)
Obiektowych języków programowania(ANSI)
ODMG-93- język SQL
Liczące się ODBMS
Jasmine
Gemstone
O2
Object store
Objectivity/DB
Versant ODBMS
Obiektowy model danych
Obiekt
Dane
Procedury
Klasa - grupa podstawowych obiektow
Mechanizmy abstarakcji
Uogólnienie
Agregacja
Dziedzinowe
Pojedyncze
Wielokrotne
WIĘZY INTEGRALNOŚCI
Intgeralność wewnętrzna
Integralność klasa-klasa
Integralność klasa-obiekt
Integralność dziedziny
Integralność referencyjna
Integralność dodatkowo wprowadzona przez więzy w treści metod
Zalety:
Możliwość reprezentacji złożonych obiektów
Rozszerzalność- typy danych definiowanych przez użytkownika, możliwość wielokrotnego użycia tych samych obiektów w różnych kontekstach
Trwałość i tożsamość obiektów
Enkapsulacja, hierarchia, dziedziczenie
Metod i funkcje przechowywane z danymi
Możliwości takie jak: wersjonowanie,rejestracja zmian
Możliwość nowych zastosowań (bazy multimedialne, przestrzenne, aktywne)
Wady:
Systemy BD trudne do optymalizacji
Szybkość
Zasobochłonność
Brak dopracowania mechanizmów zarządzania dużą bazą obiektów
Mała liczba ekspertów od technik obiektowych
Trudne do oszacowania koszty związane z migracją dużych systemów
Brak opracowanych standardów
SYSTEMY TYPU GIS
Zbieranie informacji
GPS
Zdjęcie satelitarne mapy
Wykonywanie czynności
Transformacja na danych
Interakcja z użytkownikiem
Inne systemy przestrzenne są pochodną GISu
Wykonywanie czynności
Wprowadzenie i weryfikacja danych
Przechowywanie i zarządzanie danymi
Wyświetlanie i prezentacja danych
Theme(kolekcja obiektów) ma schemat i instancje - np. rzeki, państwa, miasta
Obiekt geograficzny - byt ze świata rzeczywistego
Opis
Komponent przestrzenny
Kształt
Położenie
Topologia
Możliwe operacje na danych:
Projekcja
Selekcja
Unia
Nałożenie
Selekcja geometryczna
Okienkowanie
Zapytanie punktowe
Zapytanie obcinające
Merger
Operacje topologiczne
Operacje metryczne
Przechowywanie danych przestrzennych:
Użycie baz relacyjnych
Podejście luźno związane
Podejście zintegrowane
Modelowanie światów
Model encyjny
Fidel- based model
Reprezentacja światów:
podział
reprezentacje wektorowe
wektory Fidel-based model
półprzestrzenna reprezentacja
Reprezentacja zbioru obiektów:
Spaghetti
Model sieciowy
Model topologiczny
DEDUKCYJNY MODEL DANYCH
Obejmuje zastosowanie logiki formalnej do definiowania danych operowania danymi i integralności danych
Teoriodowodowe postrzegania bazy danych
Języki
Katalogu
Prolog( PROgramation en LOGique- programowanie oparte na logice)
Struktury danych
Asercje
Stale i zmienne
Spójniki
Operowanie danymi
Dodawanie i usuwanie
Zapytania
INTEGRALNOŚĆ DANYCH
WIĘZY INTEGRALNOŚCI
…
Zalety:
Wyciąganie niejawnych informacji zapisanych jawnie faktowi reguł
Łatwe tworzenie klauzul rekurencyjnych
Intuicyjne wyznaczanie celów
Wady:
Brak determinizmu
Słabo rozwinięty system zabezpieczeń
Mimo istnienia standardu Prologa poszczególne implementacje znacznie się różnią
XML'owe BD
XML-enabled,oznaczające bazę umożliwiającą eksport i import dokumentów XML'owych, jednak przechowują dane w wewnętrznej postaci innej niż XML-owe
Native XML ”sugerująca przechowywanie XML'a w naturalnej postaci, bez ingerencji w strukturę” -co może oznaczać w praktyce niewiele więcej niż zarządzanie blokami tekstu
BD wspierające rozwiązania XML'owe
Tamino XML Serwer
Tamino XML Mobile
ORACLE
IBM DB2
Microsoft SQL Serwer 2000
dbXML
Zalety:
doskonały format zapisu informacji
wykorzystanie standardu UNICODE eliminuje większość problemów z przechowywaniem tekstu
jednolitość formatu
Wady:
format tekstowy
wątpliwa możliwość przechowywania innych rodzajów danych
konieczność konwersji zawartości reprezentowalnej tekstowo, ale niebędącej typu tekstowego(liczby, daty)
TEMPORALNE BD
Dla procesów zmieniających się w czasie
Posiadających informacje o czasie wprowadzenia i/ lub czasie ważności
Temporalny język zapytań (temporalny PROLOG)
Często administrowane automatycznie, poprzez usuwanie …
STRUMIENIOWE BAZY DANYCH
Podejście DAHP(Database Human Active Passive)
Implementacja ciągłych zapytań w systemie zarządzania danymi (nie w aplikacji)
Modul rejestracji danych umieszczony w systemie zarządzania danymi (wbudowany)
WYKŁAD 11 14.12.2005
HURTOWNIA DANYCH- baza analityczna
ZADANIE I
Wirtualny dziekanat- jakie dane powinien zawierać?
Studenci (przyjmowanie studentów)
Pracownicy
Przedmioty
Plan zajęć dla kierunku, ( jakie przedmioty i kiedy, pracownicy→przedmioty)
Wyniki (wpisać oceny)
Wirtualny dziekanat na szczeblu rektorskim -dodatkowo:
Decyzje czy stać nas na wprowadzenie zajęć?
Jak analizować koszty zajęć?
Ile kosztuje kształcenie studenta:
na jakich kierunkach
w jakim systemie (dzienne, zaoczne)
Skąd bierzemy dane?
Rozkład zajęć w semestrze
Koszty utrzymania budynków
Potrzebne dochody
Koszty → system finansowo-księgowy, budynki, amortyzacja, energia (koszty rodzajowe IV zespól)
Płace
Plan zajęć (wymiar: dzień tygodnia, godziny, przedmioty, wykładowcy, sala)
Liczba studentów grupie
Przychody ( w układzie stacjonarne (dzienne) →subwencje ze strony państwa, za niezadowalające wyniki w nauce, w układzie niestacjonarne (zaoczne, wieczorowe))
Trzeba zaplanować ilu studentów będzie przyjętych na I roku→ dane z rocznika statystycznego (dane demograficzne)
Ile dotacji- czy dopłacamy, czy nie
Jakie grupy małe czy duże → co się bardziej opłaca?
Hurtownia procesów:
Proces dydaktyczny studenta
efekty→ student trafił do wykładowcy X a nie Y, procesy oceny jakościowe
Wymiary |
Miary |
|
|
Co obrazuje kostka?
Cele systemu: zintegrować dane i umiejętnie przedstawić 3 podejścia
w postaci modelu relacyjnego analiza za pomocą OLAPu relacyjnego- ROLAP, czas przetwarzania dłuższy niż w drugim podejściu, dane relacyjne w tabelach płaskich, relacje zagnieżdżone, przetwarzanie trwa dłużej, prezentacja danych łatwiejsza
dane w postaci tablic wielowymiarowych, systemy MOLA
Część w postaci relacyjnej i w postaci wielowymiarowej HOLAP(system hybrydowy)
Problem przetwarzania danych
Koszt→ skąd?
Place na pracowników→ na jakim stanowisku?→ Ile kosztuje jeden wykład?
Reprezentacja danych musi być przemyślana
Dane w postaci hurtowni→ problem z tworzeniem i aktualizacją
Płace→ obliczamy na okres miesiąca
Plan→ na semestr
Problem - źle wyliczone place→wszystko w kostkach nie da się poprawić danych w hurtowni→ należy odciąć kostkę w odpowiednim miejscu i odtworzyć ją na nowo. Można ładować dane z opóźnieniem( np. płace po 3 miesiącach). Czasami dla prognoz potrzebne są dane z jednego miesiąca.
ZADANIE II
Firma handlowa, prowadzi sprzedaż 10-ciu produktów na terenie Europy, potrzebna analiza co i gdzie należy sprzedawać?
Wymiary |
Miary |
|
|
Miejsce sprzedaży- złożone-kraj, miasta, regiony
Wymiary- mogą mieć charakter hierarchiczny, w przestrzeni wielowymiarowej pytania z różnych punktów widzenia.
Chaos→magazyn danych→analiza
Czego poszukujemy? → Regularności danych lub ich nieregularności (wyjątków danych).
Kostka
Produkt
Czas
Miejsce sprzedaży