1.doc

(632 KB) Pobierz
Podstawowe pojęcia

Podstawowe pojęcia

Baza danych-przechowywane dane organizacyjne w sposób scentralizowany w jednym miejscu zamiast zamiast zamiast wielu oddzielnych plikach.

Właściwości bazy danych

Współdzielenie danych-dane wykorzystywane przez wielu;

Integracja-baza nie powinna mieć danych redundancyjnych,celem jest przechowywanie tylko jednego logicznego elementu danych;

Integralność-dokladne odzwierciedlenie obszaru analizy;

Bezpieczeństwo-ograniczenie dostępu,określenie zbioru upoważnionych użytkowników w odniesieniu do calej lub do czesci bazy;

Abstrakcja-baza to model rzeczywistości,informacje SA tylko proba reprezentowania właściwości obiektow w swiecie rzeczywistym;

Niezależność-oddzielenie danych od procesow,które używają tych danych.celem jest osiagniecie sytuacji w której organizacja danych jest niewidoczna dla użytkowników użytkowników programow uzytkowych;

SZBD-zorganizowany zbior narzedzi  umożliwiający dostep i zarzadzanie jedna lub wiecej bazami.jest to powloka bd która dokonuje operacje na bd:

1.pielegnacja danych-dodanie nowych struktur do bd,usuniecie,modyfikacja,wstawianie danych ,aktualizacja,usuwanie danych z istniejących struktur

2.wyszukiwanie-wydobywanie danych przez uzytkowniko

3.kontrola danych-tworzenie i monitorowanie użytkowników bd,ograniczenie dostępu,nadzorowanie dzialania bd

Generacje baz danych:

-pierwsza (lata 50-te) – pliki o dostępie sekwencyjnym

-druga (lata 60-te) – pliki o dostępie bezpośrednim na dyskach magnetycznych

-trzecia (lata 70-te) – prerelacyjna

-czwarta (lata 80-te) – relacyjna

-piąta (lata 90-te) – postrelacyjna

Spotyka się poglądy, że są tylko 3 generacje: przedrelacyjna, relacyjna, postrelacyjna. W I generacji z każdym programem związany był odpowiedni plik danych, nośnikami danych i programów były taśmy magnetyczne. W II generacji pozostawał statyczny związek programu z odpowiadającym mu plikiem, ale bazy danych mogły być użytkowane w trybie dialogowym, możliwy był wielodostęp oraz dostęp bezpośredni do rekordu przez jego adres. W III generacji rozróżniono dane na poziomie logicznym i fizycznym. Stworzono modele danych dla opisu struktur danych z logicznego punktu widzenia. Zaproponowano 2 modele danych: hierarchiczny i sieciowy. IV generacja to model relacyjny Codda, charakteryzuje się powstaniem języka zapytań oraz teorii relacyjnych baz danych, np.: hierarchiczna: IMS, sieciowa: IDS, IDMS, ADABAS, relacyjna: ORACLE, INFORMIX, DB2, PROGRES, MY SQLSERVER. V generacja – najbardziej znane podejścia to dedukcyjne (oparte na rachunku predykatów) oraz obiektowe. Rozwój baz danych obiektowych wynikał z potrzeb przedstawiania multimedialności.

Najbardziej zaawansowanym rozwiązaniem w dziedzinie baz obiektowych jest język UML.

Modele danych

Funkcjonowanie systemów baz danych opiera się w istocie na określonym modelu danych, często kojarzonym z modelem konceptualnym. Każdy model wycinka rzeczywistości (dziedziny przedmiotowej) odzwierciedlać winien 2 klasy cech: statyczne i dynamiczne.

S – statyczna definiująca strukturę, reguły jej tworzenia.

D – dynamiczna definiująca zestaw operacji w danej strukturze.

Zestaw reguł opisujących strukturę zazwyczaj jest definiowany przy pomocy języka opisu danych, określającego dopuszczalne struktury danych w ramach modelu.

W większości modeli danych część reguły tworzenia struktury podzielona jest na:

­            specyfikacje struktury – M

­            specyfikację więzów integralności – I

M – umożliwia generowanie struktur i kategorii schematu bazy danych

I – generowanie więzów integralności definiujące ograniczenia związane z tworzeniem i użytkowaniem schematu bazy danych.

Zestaw cech dynamicznych dziedziny przedmiotowej jest zazwyczaj wyrażany w języku manipulacji danymi, który definiuje dopuszczalne działania, operacje na bazach danych.

Język SQL w podejściu relacyjnym posiada cechy zarówno języka opisu danych, jak i języka manipulacji danymi.

WIĘZY INTEGRALNOŚCI czyli reguły spójności, kompletności i poprawności bazy danych i poszczególnych danych opisujących dziedzinę przedmiotową. Więzy integralności można podzielić na statyczne i dynamiczne.

Przykładami statycznych są:

1.określenie rodzaju i dopuszczalnego zakresu danych, np.: symbol pracownika jest polem numerycznym o maksymalnym zakresie 6 znaków,

2.unikalność kluczy, encji, relacji i innych kategorii poszczególnych modeli danych,

3.liczebność związków,

4.zależności hierarchiczne,

5.inne zależności semantyczne i liczbowe (np. maksymalna stawka ubezpieczeniowa dla określonej grupy wiekowej).

Więzy dynamiczne sterują transformacjami danych, zwłaszcza w odniesieniu do operacji aktualizacji, zapewniając ich spójność (np. płaca pracownika nie może maleć).

Rodzaje modeli danych:

­            wysokiego poziomu lub konceptualne,

­            wdrożeniowe,

­            niskiego poziomu lub fizyczne.

Modele konceptualne pozwalają na opis dziedziny przedmiotowej w kategoriach danych i związków między nimi w sposób przystępny dla użytkownika bazy danych. Spośród znanych modeli konceptualnych warto wymienić modele: związków encji, binarny, obiektowy, rachunek predykatów.

Modele na poziomie wdrożeniowym mogą być zrozumiałe zarówno przez użytkowników jak i zbliżone do sposobu przechowywania danych w pamięci. Modele te najczęściej stanowią podstawę komercyjnych SZBD. Zalicza się do nich 4 rodzaje modeli: hierarchiczny, sieciowy, relacyjny i obiektowy, przy czym zarówno model relacyjny jak i obiektowy są z pogranicza poziomu konceptualnego i wdrożeniowego.

Fizyczne modele danych opisują sposób przechowywania danych w pamięci komputerów i przedstawiają formaty rekordów czy ścieżki dostępu. Typowymi pojęciami z tego zakresu są metody adresowania, pliki indeksowo-sekwencyjne, struktury łańcuchowe i pierścieniowe, pliki odwrócone czy wyszukiwanie wielokluczowe

Obiektowy model danych

Podstawowymi pojęciami modelu podstawowego są obiekt, jego identy­fikator (klucz), atrybut, metody, enkapsulacja i przesyłanie komunikatów, klasy obiektów, hierarchie klas oraz dziedziczenie

Obiektowa bd sklada się z klas obiektow i obiektow powiazanych pewna liczba mechanizmow abstrakcji

Obiekty: pakiet danych i procedur.Dane sa utrzymywane w atrybutach obiektu,a procedury sa definiowane za pomoca metod obiektu.metody sa przesylane za pomoca komunikatow.

Hermetyzacja-proces umieszczania danych i procesow w jednym opakowaniu u ramach zdefiniowanego interfejsu i udestepniania go na zewnatrz w sposób kontrolowany przez ten interfejs.

Klasa obiektu:jest zgrupowaniem podobnych obiektow.Uzywana do określania wspolnych atrybutow metod i związków.obiekty sa wiec instencjami pewnej klasy.KO definiuja schemat bazy danych.Obiekty definiuja zawartość bd.

Mechanizmy abstrakcji:uogólnienie,agregacja

Klasa klasyfikuje obiekt lub obiekt jest instancja klasy

Dziedziczenie:związane z pojeciem hierarchi uogólnienia.

Dziedziczenie struktury:podklasa dziedziczy atrybuty swojej nadkla

Dziedziczenie zachowania:dziedziczenie metod;

Dziedziczenie pojedyncze:podklasa może mieć tylko 1 nadklase

Dziedziczenie wielokrotne:klasa dziedziczy od wiecej niż 1 nadklas

Operowanie danymi:

1.metody tworzenia-tworza nowe instancje klasy

2.metosy usuwania-usuniecie niechcianych obiektow

3.metody dostępu-operacje właściwości obiektow

4.metody przekształcania-operacje przekazuja nowe obiekty uzyskane z istniejących obiektow

Komunikaty musza zawierac nazwe metody,id obiektu i parametry metody

Polimorfizm oznacza, że ta sama nazwa może odnosić się do róznych metod i atrybutów w róznych obiektach. Podobnie metody o róznych nazwach mogą realizować identyczne procedury. Jest to możliwe dzięki przypisaniu każdemu obiektowi unikalnego identyfikatora

Integralnośc danych:integralność wewnetrzna wynika ze związku

1.Klasa-klasa-nadklasa nie może być usunieta przed podklasami

2.klasa-obiekt-klasa nie może być usunieta przed jej obiektami

3.int.dzidziny-atrybuty sa definiowane na wczesniej utworzonych klasach lub na zbiorach identyfikatorow obiektow

4.int.referencyjna-istnienie kluczy obcych

Integralność dodatkowa wprowadzana za pomoca więzów w metod

Obiektowy model danych

Podstawowymi pojęciami modelu podstawowego są [14] obiekt, jego identy­fikator (klucz), atrybut, metody, enkapsulacja i przesyłanie komunikatów, klasy obiektów, hierarchie klas oraz dziedziczenie. Obiektowa baza danych stanowi kolekcję obiektów, gdzie każdy obiekt reprezentuje encję, pojęcie, zdarzenie, ciąg liczb, łańcuch znaków, sekwencję krotek, schemat bazy danych czy słow­nik (skorowidz danych). Jest to więc dowolny aspekt, przedmiot odpowiedni do zastosowania bazy danych. Wszystkie obiekty mają dwie podstawowe cechy [15, s. 493]: pamięć (prwate memory) oraz interfejs (public interface). Pamięć prze­chowuje stan obiektu, podczas gdy interfejs stanowi „protokół" składający się z zestawu komunikatów, na które obiekt odpowiada. Obiekt posiada unikalny identyfikator, niezależny od wartości jego atrybutów.

Każdy obiekt posiada jeden lub więcej atrybutów oraz jedną lub więcej metod, które działają na wartościach atrybutów. Wartości atrybutów stanowią o stanie obiektu. Specyfikacja atrybutu może obejmować, poza jego nazwą, rów­nież więzy integralności. Atrybut może mieć pojedynczą wartość lub zestaw wartości ze swojej dziedziny. Użytkownik komunikuje się z obiektami (oraz obiekty między sobą) poprzez przesyłanie komunikatów, powodujących zmiany stanu obiektów lub przesłanie wyników. Poprzez komunikaty obiekty wyko­nują wszystkie operacje, m.in. wyszukiwanie wartości, obliczenia i aktualizacje. Środkiem, którym obiekt odpowiada na komunikat, jest metoda, czyli procedura uaktywniana po przesłaniu komunikatu do obiektu.

Istotną cechą obiektowych modeli danych jest zasada enkapsulacji (encap-sulation). Oznacza ona, że zarówno dane (atrybuty i wartości) w obiekcie, jak i operacje wykonywane na nim powinny być modelowane równocześnie. W ten sposób pamięć obiektu zawiera jego aktualny stan wraz z metodami, które są wdrożeniami operacji. Interfejs użytkownika uaktywnia metodę, czyli zestaw operacji wykonywanych na obiekcie.

Wszystkie obiekty posiadające ten sam zestaw atrybutów mogą być grupo­wane w klasy obiektów. Klasa może być także obiektem, jest wówczas metaklasą. Z kategorią klasy wiąże się pojęcie dziedziczenia. Podklasa dziedziczy zarówno atrybuty, jak i metody superklasy obiektu w danej hierarchii. Oznacza to, że dzięki dziedziczeniu obiekty, nawet o różniącej się strukturze, mogą posiadać te same metody dotyczące wspólnej części atrybutów. A zatem każda klasa (sub-klasa) obiektów w hierarchii dziedziczy wszystkie atrybuty i metody superklasy i może posiadać dodatkowe atrybuty i metody

Hierarchiczny model danych

Model ten wiąże się z tzw. strukturą „drzewiastą" — dane przedstawia się w po­staci prostej struktury drzewa z określoną liczbą poziomów podrzędności. Jest to w określonych sytuacjach naturalny sposób modelowania rzeczywistości. Każde drzewo składa się z jednego rekordu nadrzędnego i zbioru rekordów pod­rzędnych połączonych wiązaniami. Dopuszczalna jest dowolna liczba rekordów podrzędnych i poziomów podrzędności. W nawiązaniu do przykładu relacyj­nego modelu danych, jego hierarchiczny odpowiednik przedstawiony został na rys. 3.8.

Model hierarchiczny użytkowany jest w IBM-owskim systemie zarządzania bazą danych IMS. Jego stosowanie powoduje określone praktyczne problemy w zakresie aktualizacji baz danych.

Podstawa pierwszych komercyjnych SZDB.Najbardziej znany to IMS firmy IBM.Hierarchiczny uzywa 2 struktur danych:

Typ rekordu-zbior nazwanych pol,kazde pole jest uzywane do przechowywanie prostego atrybutu jakiegos typu jak integer lub charakter

Nadrzedny-podrzedny-zwiazek jeden do wiele miedzy dwoma typami rekordow

Integralność danych: np. nie można wstawiac rekordu podrzędnego dopóki nie zostanie powiazany z rekordem nadrzednym

Sieciowy model danych

Sieciowy model danych utrzymuje konwencję modelu hierarchicznego, tj. repre­zentowanie danych przez rekordy i wiązania. Jednak każde wystąpienie rekordu może mieć dowolną liczbę rekordów podrzędnych i nadrzędnych. Wiązania re­alizowane są przez rekordy specjalne, zwane łącznikami, reprezentujące zwią­zek pomiędzy rekordami i zawierające dane opisujące ten związek. Wszystkie wystąpienia łączników danego rekordu powiązane są łańcuchem

Przelomowy moment to propozycja DBTG w 1971.Ostatnio w 1986 zarekomendowanie przez ANSI jezyka definicji sieciowycych(NDL)

2 struktury: typ rekordu(pola mogą przechowywac wiele wartości lub wartości złożone) i typ kolekcji(opis związku jeden do wielu miedzy tr)

Jezyk programowania i sbd to dwa rozne systemy oprogramowanie laczone interfejsem.

Integralność dotyczy członkostwa w kolekcji i trybu wstawiania:może być zdefiniowane jako wymagane lub opcjonalne;

Diagramy związków encji

Etapy zstępującej analizy danych: selekcja encji,określenie związków między encjami,dobór atrybutów

Dze-metoda analizy z gory na dol.pierwotnie zaproponowany jako model danych jest obecnie stosowana technika modelowania koncepcyjnego.trzy kategorie-encja,związek,atrybut.do metody e-r zaproponowano kilka rozszerzen:zw. rekurencyjne i trójargument, role

Encja-rzecz,która w przedsiębiorstwie jest rozpoznawalna jako istniejaca niezależnie i jednoznacznie zidentyfikowana.encja jest abstrakcja złożoności pewnej dziedziny.pewien aspekt swiata rzeczywistego.encja jest obiektem rzeczywistym,zdarzeniem,pojeciem.

Typ encji-kategoria encji,a encja instancja

Związek-jest pewnym powiazaniem miedzy encjami.moze być binarny miedzy 2 encjami i n-argumentowe miedzy jedna, trzema..

Relacja jest powiazaniem miedzy encjami,charakteryzuje się dwoma regulami:liczebnością i uczestnictwem.

Dwie encje mogą być powiazane wiecej niż jednym związkiem

Zawieranie i wykluczanie to dwa rozne rodzaje zwiazkow

Atrybut-uzywane do odróżnienia jednej encji od innej.np nazwadzialu i lokalizacja sa atrybutami które charakteryzuja encje dzial.

Liczebność-dotyczy liczby instancji biorących udzial w związku.

Uczestnictwa-czyli opcjonalnosc udzialu encji w związku.opcjonalne,gdy istnieje przynajmniej jedna encja która nie bierze udzialu w związku;

Związek rekurencyjny-zwiazek jednoargumentowy.

Role-pokazuja rozne spojrzenia na encje.pracownik może pelnic role kierownika i jednoczesnie podwładnego w innym związku.

Diagram klas UML

Diagram klas (zwany poprzednio także diagramem asocjacji klas lub modelem obiektowym) jest pojęciem centralnym we wszystkich znanych metodykach obiektowych. Z reguły diagram klas jest

zmodyfikowanym diagramem encja-związek (z nieco innym znaczeniami) rozbudowanym o nowe elementy. W porównaniu do diagramów encja-związek (objaśnionych np. w [BCN92])

diagramy klas wprowadzają istotną nowość, mianowicie metody przypisane do specyfikowanych klas. Oprócz tego zasadniczego elementu pojawiają się w diagramach klas różnorodne oznaczenia

o charakterze pomocniczym. Diagram klas pokazuje klasy w postaci pewnych oznaczeń graficznojęzykowych powiązanych w sieć zależnościami należącymi do trzech kategorii:

  Dziedziczenie (inheritance), czyli ustalenie związku generalizacji/specjalizacji pomiędzy klasami.

  Asocjacja (association), czyli dowolny związek pomiędzy obiektami dziedziny przedmiotowej, który ma znaczenie dla modelowania.

  Agregacja (aggregation), czyli szczególny przypadek asocjacji, odwzorowujący stosunek całość-część pomiędzy obiektami z modelowanej dziedziny przedmiotowej.

Administrowanie bd

Funkcje administratora:

1.projektowanie fizyczne-admin danych zajmuje się projektowaniem koncepcyjnym i logicznym systemow bd, a administrator baz danych projektowaniem fizycznym i implementacja bd;

2.standardy i udokumentowanie danych-zapewnienie,ze fizyczne dane sa udokumentowane w standardowy sposób tak aby rozne aplikacje i użytkownicy mogli sprawnie z nich korzystac]

3.monitorowanie uzycia danych i strojenie systemow bd-monitorowanie na bieżąco dzialania systemow bd i zapewnienie odpowiedniej wydajności tych systemow

4.archiwizacja danych-tworzenie strategii archiwizacji danych wychodzących z uzycia

5.kopia zapasowa i odtwarzanie danych-opracowanie strategii tworzenia kopii zapasowej i odtwarzanie danych w wypadku powstania awarii sprzętu lub oprogramowania

Administrowanie DBMS

1.instalacja dbms i jej składowych

2.kontrola konfiguracji-wprowadzenie polityk i procedur zarzadzania modyfikacjami i zmianami w oprogramowaniu systemu bd

3.monitorowanie uzycia i strojenie dbms-nadzorowanie na bniezaco systemow baz danych i dostosowanie elementow struktury dbms dla zapewnienia efektywnego dzialania takich systemow.

Administrowanie środowiskiem bd

1.kontrola danych-tworzenie grup użytkowników,przypisywanie uprawnien, hasel, dostępu

2.szacowanie wpływu-zmian na uzycie danych w sys. Bd

3.prywatnosc,bezpieczeństwo,integralność-zapewnienie ze integralność danych,bezpieczeństwa i prywatności sa stosowane na poziomie fizycznym

4.szkolenie

Struktura ZSBD

SZBD = oprogramowanie umożliwiające tworzenie i użytkowanie bazy danych. Każdy system zarządzania bazą danych (SZBD), czyli oprogramowanie umożli­wiające użytkowanie baz danych, ma swoją organizację. Polega ona na logicz­nym uporządkowaniu i powiązaniu różnych składników SZBD. Oczywiście or­ganizacja ta jest uzależniona od rodzaju SZBD. Można wyróżnić kilka kryteriów ich klasyfikacji, wśród których najistotniejsze to:

1.użytkowany model danych (uwzględniany jest tu poziom wdrożeniowy modeli danych):hierarchiczne,sieciowe,relacyjne,obiekt

2.liczba użytkowników

systemy obsługujące wielu użytkowników równocze­śnie

systemy obsługujące pojedynczego użytkownika (np. MS Access)

3.stopień centralizacji

  systemy scentralizowane (na jednej instalacji kompute­rowej)

  systemy rozproszone (na wielu instalacjach połączonych siecią)

  systemy wielobazowe (luźno połączone, o wysokim stopniu lokalnej     niezależności)

 

SQl

SQL jest podzielony na 3 główne części:

1.definicja danych-dotyczy konstrukcji i posługiwania się tabelami i indeksami za create table index drop…(integralność danych)

2.operowanie danymi-wydobywanie danych z bd za pomoca select

3.kontrola danych

3 sposoby użytkowania SQL:

1 Interaktywny lub samodzielny SQL – służy wyszukiwaniu i manipulowaniu danymi w bazie danych. Użytkownik poprzez interaktywne wprowadzanie kolejnych instrukcji SQL wpływa na dane zgromadzone w bazie. Rezultatem interaktywnego zapytania jest tabela wirtualna przechowywana w pamięci komputera.

2 Statyczny SQL – stały kod SQL, przygotowany przed wykonaniem programu. Istnieją dwie jego wersje:

2a zanurzony (osadzony) SQL – kod SQL znajduje się w programie źródłowym innego języka; odwołania do bazy danych w języku SQL

2b  modułowy SQL – gotowe moduły SQL są łączone z modułami kodu innego języka

3 Dynamiczny SQL – kod SQL generowany przez aplikację w czasie jej wykonywania w wyniku interakcji z użytkownikiem. Jest użytkowany zamiast statycznego SQL, gdy potrzebny kod nie może być określony podczas pisania programu, ponieważ zależy on od wyboru użytkownika

hurtownia danych

tematyczny,zintegrowany,określony w czasie i nielotny zbior danych uzywanych do wspierania procesu podejmowania decyzji kierowniczy.

...

Zgłoś jeśli naruszono regulamin