Bazy+Danych+wykady+semIII (1), POLITECHNIKA ŚLĄSKA Wydział Mechaniczny-Technologiczny - MiBM POLSL, Inżynierskie, Semestr 3, Bazy danych, Od starosty, BAZY DANYCH, BAZY DANYCH x, Wyk jak nasz


Bazy Danych.

Wykład 1.

Prowadzący: Madejewski.

Zakres wykładów:

  1. Podstawowe pojęcia z dziedziny baz danych.

  2. Systemy IDEF0 i modelowanie obiegów danych.

  3. Architektura baz danych (model hierarchiczny, sieciowy i relacyjny).

  4. Projektowanie schematu relacyjnej bazy danych.

  5. Normalizacja.

  6. Podstawy języka SQL.

  7. Zabezpieczenia systemu baz danych.

Literatura:

Systemy działające na konkretach (na przykładzie firmy zajmującej się wynajmem):

0x01 graphic

Dział sprzedaży:

0x01 graphic

Dział umów:

Są to dwa rozdzielne zbiory danych.

Ograniczenie specjalizowanych aplikacji operujących na dedykowanych strukturach plików:

Bazy danych.

Podejście charakterystyczne dla baz danych.

0x01 graphic

Property - rzeczy do wynajęcia

Owner - właściciel

Renter - wynajmujący

Lease - dzierżawca

DBMS - rzeczy do wynajęcia + właściciel + wynajmujący + dzierżawca + struktura plików

W bazach danych jedną z charakterystycznych cech jest oddzielenie opisów struktury danych od konkretnej aplikacji tym samym opis struktury danych staje się informacją przechowywaną niezależnie od programu i informacja ta może być przechowywana wraz z danymi.

Systemy baz danych stanowią odpowiedz na konieczność kontroli dostępu do danych, ich zawartości wykraczającą poza kontrolę którą mogły zapewnić dedykowane aplikacje.

Def.: Baza danych jest zbiorem logicznie uporządkowanych danych oraz ich opisów. Stałym elementem baz danych jest katalog systemu w którym znajdują się opisy struktur danych. W poprawnie zaprojektowanym systemie baz danych możliwe jest modyfikowanie struktury danych bez naruszenia zawartości danych.

Def.: ENCJA - to każdy przedmiot, zjawiskom, stan lub pojęcie - każdy obiekt który potrafimy (chcemy) odróżnić od innych obiektów. Encją jest zatem każdy stół, samochód itp.. Encją jest niedźwiedź, jako element składowy życia na ziemi. Encja to każdy obiekt dający się zidentyfikować na podstawie swoich atrybutów.

Def.: ATRYBUT - cechy encji które dają się wyrażać przez przydanie im pewnych wartości - są to cechy encji wynikające z ich natury, dające się wyrazić liczbami bądź prostymi określeniami słownymi. Stół ma np.: liczbę nóg, samochód - marka i pojemność silnika.

Wywołanie atrybutów wymaga także określenia dziedziny wartości tych atrybutów, np.: w przypadku dat urodzenia studentów w systemie dziekanat należało by założyć jakiś minimalny wiek studenta powiedzmy 15 lat w celu uniknięcia błędów przy wprowadzaniu danych, lub należało by kontrolować długość nazwiska, itp..

W systemach baz danych takie zbiory ograniczeń mogą być przechowywane niezależnie od danych, nie muszą też stanowić części aplikacji operującej na danych.

W systemach baz danych występują dwa typy języków:

Bazy danych zapewniają następujące usługi:

Mechanizmy perspektyw.

Użytkownik bazy danych ma zawsze dostęp do informacji zawartych w bazie. Informacje zaś są pozyskiwane drogą zapytań z danych zapisanych w bazie tym samym informacja taka jest np.: średnia ze studiów nie musi być nigdzie zapisana w bazie danych jako dana jest po prostu wyznaczana na podstawie istniejących wpisów w bazie danych. W ogólnym przypadku użytkownik może w ogóle nie operować na surowych danych znajdujących się w bazie danych.

Perspektywy to sposób udostępniania użytkownikowi informacji w postaci i zakresie określonym w czasie projektowania bazy danych. Perspektywy uwzględniają zakres uprawnień konkretnego użytkownika do korzystania z danych.

Informacje dostępne w ramach danej perspektywy mogą być uzyskane z danych zebranych i przetworzonych z wielu różnych plików bazy danych, które mogą być ponadto rozmieszczone w różnych systemach komputerowych.

Kontrola redundacji danych.

Redundacja to jest występowanie wielu zapisów tych samych danych. Kontrola redundacji w bazach danych zaczyna się już na etapie projektowania bazy danych. W przypadku relacyjnych baz danych proces który zapewnia uporządkowanie danych w poszczególnych zbiorach zwany jest normalizacją. Bazy danych zapewniają większą wydajność pracy programistów.

Role użytkowników systemów baz danych:

Aplikacje dedykowane budowane do operowania na ściśle określonych strukturach danych mają również zalety do nich należy:

Wady baz danych:

Wykład 2.

Architektura ASCI-SPARC jako podstawa budowy systemu zarządzania danymi.

Cele architektury ASCI-SPARC:

0x01 graphic

Powyższy schemat składa się z trzech poziomów, a mianowicie z:

Języki czwartego poziomu (4GL):

Model danych jest to reprezentacja danych sporządzona w pewien usystematyzowany sposób. Modele danych dzielą się na:

Wśród modeli opartych na zapisie rekordowym wyróżnia się:

Elementy składowe systemu zarządzania bazy danych.

0x01 graphic

Podstawowe elementy systemu zarządzania bazą danych:

Elementy programu zarządzającego bazą danych:

Architektura systemu zarządzania bazą danych z wielodostępem:

Wady (serwera plików):

Zalety:

Katalog systemowy (słownik) - jest to zbiór informacji opisujących dane zapisane w bazie (metodane). Jego typowa zawartość to spis uprawnionych użytkowników bazy danych dla nazwy encji (obiektów bazy danych), ograniczenia związane z każdym elementem występującym w bazie danych (np.: ograniczenie wartość atrybutów), określenie zakresów danych dostępnych dla konkretnego użytkownika i sposobu dostępu.

Wykład 3.

Ochrona informacji i polityka bezpieczeństwa

Konieczne jest w każdym przypadku opracowanie i przestrzeganie właściwych metod:

0x01 graphic

Miejsce przechowywania informacji (2 typy zagrożeń)

  1. sprzęt komputerowy, bazy danych, dokumenty elektroniczne, dokumenty papierowe, umysły pracowników (zabezpieczenia sprzętu, zabezpieczenie e-mailów)

  2. bank, kurierzy, telekomunikacja (kluczowe informacje zawsze trafiają do banku, bank żąda konkretnych informacji - mają one najwyższy stopień poufności)

Procedura tworzenia i optymalizacji systemu bezpieczeństwa.

0x01 graphic

Grupy informacji:

Informacja powinna zawierać:

Opis procesów pracy.

Do opisów procesów pracy stosuje się m.in. dwie odmiany systemów: IDEFO i DFD. System IDEFO i DFD powstały w latach 70-tych na potrzeby sił powietrznych USA. W systemach IDEFO występują następujące elementy opisu procesu:

0x01 graphic

W systemach IDERO opis procesów pracy jest realizowany na szeregu płaszczyznach. Poczynając od szczebla najwyższego jakim jest dana instytucja. Poszczególne warstwy opisują coraz niższe szczebla hierarchii dochodząc do poziomu konkretnych stanowisk roboczych.

Czynności:

    1. Plany (projekt, technologie)

    2. Oszacuj stopień wykorzystania zasobów

    3. Kieruj pracą wydziału

    4. Wykonaj zadania danej obrabiarki (stacji roboczej)

    5. Transportuj materiał

0x01 graphic

Schemat na poziomie wydziału.

0x01 graphic

Systemy operujące informacjami (bazy danych) na poziomie wydziału produkcyjnego muszą być w stanie udzielać informacji (odpowiedzi) na takie pytania jak:

Modele DFD opisują wyłącznie część informacyjną procesów pracy. Zapis tych modeli składa się z następujących elementów:

Obiekty wewnętrzne wyznaczają otoczenie modelowego procesy pracy. Budowa modeli DFD wymaga stosowania się do pewnych reguł takich jak:

Modele DFD budowane są również na różnych poziomach. Uogólnienia tym górnym tylko obiekty na najniższym poziomie takiej struktury mają swoje odzwierciedlenie rzeczywiście przesyłanych w strumieniach informacji, procesach pracy czy obiektach zewnętrznych. Na każdym poziomie szczegółowości modelu istnieją ograniczenia co do ilości procesów które mogą być w niej przedstawiane. Takich procesów powinno być nie mniej niż 4 i nie więcej niż 8. jeżeli w modelu konieczne jest odwołanie się do elementów fizycznych to mogą one wystąpić w postaci przypisów w dołączonych konkretnych procesów, wyjątkowo w postaci obiektów zewnętrznych. Każdy proces musi mieć zarówno wejście jaki wyjście przy czym nie mogą występować procesy tylko 1 we i 1 wy.

Wykład 4.

Wprowadzanie danych do baz danych.

Wśród systemów oprogramowania realizujących operacje na strumieniach danych określonych w opisach procesów pracy należą następujące typy narzędzi programowych:

  1. to takie które operują na wspólnej sieci komputerowej i pozwalają one na prowadzenie telekonferencji i przesyłanie poczty elektronicznej wraz z załącznikami.

  2. to systemu gromadzenia danych wspólnych dla konkretnego projektu umożliwiają one zarządzanie projektem, koordynację pracy członków zespołu oraz udostępniania fragmentów projektu i gromadzenie opinii na ich temat

  3. oprogramowanie do pracy grupowej i pozwala na pracę zespołu z wykorzystaniem tych samych dokumentów i możliwe jest definiowanie drogi obiegu dokumentu

  4. oprogramowanie pozwalające na dostęp do dokumentów wybranym użytkownikom systemu w tym samym czasie. Najczęściej takie oprogramowanie będzie służyło do udostępniania obrazów (prezentacji) wyświetlanych na monitorze prowadzącego dne spotkanie

  5. oprogramowanie którego cechą jest operowanie na dokumentach tworzonych i edytowanych w danym momencie, w danym miejscu. Do tego rodzaju oprogramowania należy zaliczyć oprogramowanie wspomagające prowadzenie spotkań w postaci burzy mózgów, systemy wspomagania podejmowania decyzji oraz zapisu przebiegu spotkań i narad

Wprowadzanie danych do baz danych może odbywać się z wykorzystaniem szeregu technik

1. skanowanie - proces konwersji danych od formatu stosowanego w tworzonej bazie danych może obejmować przeniesienie danych z nośnika papierowego do postaci elektronicznej. Należy wyróżnić 2 przypadki:

SKANOWANIE SERYJNE.

0x01 graphic

Proces OCR jest zawsze obciążony błędem w związku z tym trzeba się liczyć, z błędnie odczytanymi znakami ok. 3% OCR korzystają ze słowników dla podniesienia poprawności odczytu.

2. Indeksowanie jest procesem opatrzenia dokumentu lub dodania do jego zawartości unifikalnego znaku, jest to klucz do relacji zawierających dane dokumenty

* - mapy bitowe np. TIFF

- - SQL indices - przez udostępnianie klucza do dokumentu

PREPARE

  1. przygotowanie dokumentu - określanie typu dokumentów oraz pola indeksowania

  2. przygotowanie dokumentów - przygotowanie fizyczne

  3. określanie stref które będą poddawane analizie OCR

SCAN

  1. wczytywanie danych

  2. powtórne skanowanie

  3. analiza zawartości odczytanych danych

PRZETWARZANIE OBRAZÓW - image processing

  1. korekta kątowego usytuowania skanowanego obrazu

  2. rozpoznawanie kodów paskowych - kody paskowe są standardowym sposobem oznaczania typów dokumentów przewidzianych do masowego (seryjnego) skanowania. Rozpoznanie kodu paskowego decyduje o sposobie przetwarzania skanowanego dokumentu. [ Dokumenty mogą składać się z wielu obrazów skanowanych. Analiza zawartości dokumentu może więc wymagać połączenia wielu obrazów składowych w dokument wynikowy. Przykładem może być skanowanie dokumentów wielostronicowych ]

  3. rozpoznawanie znaków OCR - odczyt zawartości dokumentu

Proces wprowadzania danych do bazy danych.

  1. projektowanie formularzy - do projektu formularza w celu usprawnienia późniejszego seryjnego skanowania. stosuje się szereg narzędzi programowych w każdym przypadku narzędzia takie muszą umożliwiać następujące zadania: projekt, formularz, (znacznik dokumentu , kod dokumentu)

  2. odczyt zawartości dokumentów - udostępnianie danych może mieć miejsce za pośrednictwem druku czy przy pomocy faksu. Wiele z tych przypadków udostępniania druku przy pomocy faksu zostały zastąpione przez formularze wypełniane i przesyłane przez pocztę elektroniczną.

  3. pamięci EE PROM - zapis danych w tych pamięciach jest szeroko stosowany np. do znakowania narzędzi. Stosuje się również do znakowania pojazdów. Pojemność takiej pamięci to kilka kb a poszczególne pamięci mają swoje unikalne kody. Kody te wraz z datą i godziną odczytu mogą stanowić indeks do oznaczenia odczytywanej informacji. Odczyt z takiej pamięci może odbywać się za pomocą wiązań dotykowych i bezdotykowych (fale radiowe)

  4. biometria - w ich ramach stosowane są następujące metody identyfikacji użytkowej systemów komputerowych:

Wprowadzanie danych w systemach produkcyjnych.

Poprawne zarządzanie pracą produkcyjną np. w walcowniach wymaga aktualizacji informacji o przebiegu produkcji co ok. 15min (wg danych hut z obszaru Beneluksu)

Często zamiast nanoszenia czytelnego opisu w formie znaków numerycznych nanoszone są oznaczenia kodów w formie szeregu nawierconych otworów (nadrukowane numery są czytelne jeżeli są świeże, gorzej jak wyschną, np. najpierw na przedmiot nanosimy białe tło a następnie na tło numeryczny opis). Oznakowania nanoszone na poszczególne produkty mają mieć gwarantowaną żywotność sięgająca kilkudziesięciu lat w innych przypadkach wymaga się ich odporności na wysokie temperatury lub dopuszczenia kontaktu z żywnością. Często informacje o produktach nanosi się na odpowiednio zaprojektowane formularz lub gromadzi przy pomocy specjalistycznych tabletów graficznych

KODY paskowe są efektywnym i szeroko stosowanym nośnikiem danych przydatnym do automatyzacji procesów wprowadzania danych. W 1949r w USA opatentowano kody. Kody paskowe mogą być nanoszone bezpośrednio na produkt, mogą być wypalane lub grawerowane na produkcie lub drukowane na nalepkach umieszczanych na projektach. W przypadku prób wprowadzania nalepkami produktów hutniczych problemem jest wybór niezawodnego kleju do nanoszenia tego typu oznakowań. Kody paskowe to ciąg następujących po sobie pasków jasnych i ciemnych.

0x01 graphic

Wykład 5.

Modelowanie.

Złożenie modelu logicznego stanowiącego podstawę projektu bazy danych wymaga założenia zbioru encji wraz z ich atrybutami a następnie określeniu ich powiązania.

Należy rozróżnić dwa pojęcia.

Przechodząc do definicji związku pomiędzy encjami należy wyróżnić dwa typy encji:

Nie istnieje żadna reguła pozwalająca na stwierdzenie czy dana encja jest mocna czy słaba. Decyzję podejmuje się w trakcie analizy danego modelu.

Tworzenie wykresów związku encji ułatwia stworzenie poprawnego modelu logicznego świata, którego obrazem ma być tworzona baza danych. Model taki składa się z encji oraz powiązań między nimi. Poszczególne encje są na takich wykresach charakteryzowane przez nazwę oraz przez podanie dla nich atrybutów kluczowych.

Fakt istnienia powiązań pomiędzy poszczególnymi encjami jest dodatkową informacją pozwalającą na budowę poprawnej bazy danych.

Poszczególne encje w ramach danego modelu mają szereg atrybutów, które można podzielić na proste i złożone.

Atrybuty proste.

Atrybuty złożone - to takie które składają się z szeregu niezależnych elementów.

Atrybuty mają być pojedyncze i złożone.

Atrybuty pojedyncze - dla danej encji może mieć tylko pojedynczą wartość w przeciwnym przypadku mamy możliwość zapisania wielu atrybutów, wartości dla danej encji (kropka).

Atrybuty pochodne - to takie, których wartości wyznaczane są na podstawie innych atrybutów w tym na podstawie atrybutów innej encji.

Tworzenie modelu graficznego w tym graficznej reprezentacji poszczególnych encji umożliwia już na wczesnym etapie budowy bazy danych uzgodnienia z użytkownikiem bazy danych poprawnego widzenia świata.

Powiązania wstępne pomiędzy encjami mogą również mieć atrybuty. W ogólnym przypadku należy dążyć do unikania tworzenia modeli, których powiązania mają swoje atrybuty, takie modele poddają się trudniej reprezentacji w postaci modeli reprezentacyjnych.

Pod pojęciem klucza rozumiemy pewien zbiór identyfikujący relacje. Taki zbiór pozwala na jednoznaczne identyfikowaniu poszczególnych elementów danej relacji który ma być używany jako klucz być jednocześnie minimalnych zbiorem.

Minimalnym to znaczy takim którego żaden podzbiór nie jest zbiorem identyfikującym relacje. Dana relacja może mieć jednocześnie wiele różnych zbiorów identyfikujących. Zbiory takie nazywamy kluczami kandydującymi. Z pośród nich wybiera się jeden klucz noszący nazwę klucza relacji. Wybór klucza relacji podyktowany jest względami związanych z usprawnieniem operowania na danych i jego przydatności.

Związki.

Związek określa fakt istnienia pewnego rodzaju połączenia pomiędzy elementami różnych typów encji. Związek określany jest przez jego stopień. Stopniem związku nazywamy powiązania różnych typów encji, których elementy można w danym związku jednocześnie wystąpić.

Każde powiązanie musi nosić indywidualną nazwę.

Reprezentacja powiązań przy pomocy sieci schematycznych.

Ponieważ poszczególne elementy różnych obrazów encji mogą pozostawać z sobą w związkach to fakty takie należy zapisać. Zapis ten wymaga rozważania cech danego powiązania właściwych dla danego modelu świata.

Tworzenie sieci schematycznej i przedyskutowanie jej struktury z użytkownikiem pozwala na wykrycie szeregu reguł, które w następnym etapie projektu mogły nie być w sposób czytelny sformułowane.

W powiązaniach pomiędzy encjami mogą występować powiązania rekursyjne (nleży ich unikać ponieważ baza danych może dawać nie jednoznaczne wyniki dla takich samych zapytań).

Przy powiązaniach pomiędzy encjami należy określić typ powiązań. Pod pojęciem typu powiązań będziemy rozumieć 1 z 3 przypadków:

Tworząc modele baz danych należy unikać tworzenia modeli których występują powiązania 1:1. W przypadku N:N najczęściej konieczne będzie tworzenie wiele typów encji.

16



Wyszukiwarka