BAZY DANYCH

bazy-danychWstęp do Baz Danych

Bazy danych dynamiczne ? operacyjne ? wykorzystywane w codziennym funkcjonowaniu firm, tam gdzie mamy do czynienia z gromadzeniem, przechowywaniem i modyfikowaniem danych.

Dane są dynamiczne, bo ulegają ciągłym zmianom i odzwierciedlają aktualny stan jakiegoś obiektu. (obsługi pacjentów, zamówień, prenumeratorów). W niniejszym artykule przedstawimy sposoby na przetwarzanie danych, odzyskiwanie danych oraz zabezpieczanie danych komputerowych

Bazy danych statyczne ? analityczne ? wykorzystywane do przechowywania danych historycznych (do analizy zmian zjawisk w czasie ).

Dane są statyczne, co oznacza, że rzadko się zmieniają, odzwierciedlają stan obiektu w określonym momencie czasu (próbki, dane statystyczne).

Dane ? wartości przechowywane w bazie, niezrozumiałe bez odpowiedniej interpretacji (wiek? czy waga?)

Informacje ? dane przetworzone, zrozumiałe dla użytkownika

Krótka historia

Dane są elementem majątku organizacji.

Dane od zawsze były gromadzone w organizacjach w postaci różnego rodzaju kartotek. Dawniej były one obsługiwane ręcznie lub automatycznie, obecnie w większości przypadków wykorzystuje się w tym celu sprzęt komputerowy.

Etapy rozwoju systemów baz danych ? (rozwój systemów baz danych był związany z ogólnym rozwojem technologii komputerowych)

  1. Etap pierwszy – tradycyjny

  • Systemy obsługiwały problemy zrutynizowane

  • Dane były gromadzone dla każdego programu osobno

  • Programy działały niezależnie ( języki programowania – COBOL, FORTRAN)

  • Dane się powielały

  1. Etap drugi – uwarunkowany rozwojem sprzętu, zwłaszcza pamięci o dostępie bezpośrednim

  • Powstało specjalne oprogramowanie zwane Systemem Zarządzania Danymi SZD

  • Oddzielono dane od programów

  • Wielu użytkowników mogło korzystać z e wspólnych zbiorów danych

  • Nadal występowała redundancja danych (powielanie się danych)

  1. Etap trzeci – powstanie SZBD (System Zarządzania Bazą Danych)

  • Oprogramowanie wchodzące w skład bazy danych, a więc SZBD, umożliwia przeorganizowanie bazy bez wpływu na programy użytkowe

  1. Etap czwarty- wyodrębnienie:

  • Systemu Zarządzania Bazą Danych

  • Systemu Zarządzania Bazą Modeli (opisu)

  • Systemu Zarządzania Bazą Wiedzy

Obecnie są wykorzystywane głównie technologie, które można zaliczyć w większości do etapu trzeciego, a czasem do czwartego.

Na tym etapie wykładu celowym wydaje się zdefiniowanie pojęcia – ?baza danych?.

W literaturze spotykamy się z różnym rozumieniem tego pojęcia:

  • Wg. Komitetu CODASYL ? baza danych ? jest to zestaw zbiorów (kolekcja) utrzymywanych w określony sposób przez użytkowników w procesach zakładania, aktualizacji i obsługi zapytań.

  • Wg. C. J. Date ? baza danych ? jest zbiorem danych operacyjnych wykorzystywanych przez systemy użytkowe organizacji. Oprogramowanie wchodzące w skład bazy danych, a więc SZBD umożliwia przeorganizowanie bazy bez wpływu na programy użytkowe.

Administrowanie danymi a administrowanie bazą danych

Administrowanie danymi jest funkcją, związaną z zarządzaniem, planowaniem i dokumentowaniem zasobów danych organizacji. Kluczową ideą koncepcji administrowania danymi jest spostrzeżenie, że dane, podobnie jak kapitał, kadry powinny być traktowane jako zasoby wymagające zarządzania. W tym sensie funkcja administrowania danymi jest widziana jako podstawowa część strategii zarządzania informacjami organizacji.

Zbiór czynności, za które jest odpowiedzialny administrator danych:

  1. Konsultacja ? na temat wszystkich aspektów związanych z metadanymi organizacji (dane na temat danych)

  2. Zbiorowa świadomość ? informowanie na temat znaczenia danych, dostępu do nich, i celu dla jakiego są przechowywane

  3. Wymagania dotyczące danych ? tworzenie ogólnej architektury danych w organizacji.

  4. Analiza danych – -używanie metodyki analizy danych do tworzenia biznesowych modeli danych

  5. Kontrola danych ? implementowanie standardów zapewniających kontrolę dostępu do danych

  6. Definicja danych ? standardy

  7. Integralność danych

  8. Prywatność danych ? czuwanie nad tym aby organizacja działała zgodnie z prawem dotyczącym państwowych przepisów na temat danych

  9. Współdzielenie danych ? między aplikacje.

Potrzeba administrowania danymi:

  1. W tej samej organizacji jest tworzonych wiele aplikacji, które używają różnych definicji tych samych danych

  2. Dane trzymane przez wiele różnych aplikacji są niespójne

  3. Osoby podejmujące decyzje w organizacji otrzymują niezgodne między sobą dane pochodzące z różnych źródeł tej samej organizacji.

  4. Osoby podejmujące decyzje w organizacji dane za późno, aby móc je użyć

  5. Osoby podejmujące decyzje w organizacji za dużo nieistotnych danych

  6. Istnieją zauważalne braki w danych zebranych w organizacji

  7. Działy w organizacji nie mają jasnego wyobrażenia, po co zbierają pewne dane.

Trudności w administrowaniu danymi

  • W środowisku istnieją wcześniejsze systemy aplikacji

  • Administrowanie musi pogodzić dane zebrane w różnych obszarach organizacji

  • Opinie działów co do wymagań dotyczących danych znacznie się często różnią

Miejsce funkcji administrowania danymi w organizacji. Zwykle w dziale systemów informacyjnych, ponieważ jest zadaniem związanym z przetwarzaniem danych

Administrowanie bazą danych:

techniczna implementacja systemów baz danych

zarządzanie systemami baz danych

opracowywanie zasad ich użycia

sprawowanie kontroli.

Podstawowe funkcje administratora bazy danych:

  1. Archiwowanie danych (strategia archiwowania)

  2. Tworzenie kopii zapasowych i odtwarzanie danych (np.: w wypadku awarii sprzętu)

  3. Kontrola danych (grupy, hasła, dostęp)

  4. Standardy danych

  5. Szacowanie wpływu zmian na użycie danych trzymanych w systemie baz danych

  6. Monitorowanie na bieżąco działania systemu

  7. Projektowanie fizyczne bazy

  8. Zapewnienie prywatności, bezpieczeństwa i integralności danych na poziomie fizycznym

  9. Szkolenie użytkowników

Wymagania stawiane systemom z bazą danych:

  • Kontrolowana redundancja (świadoma)

  • Różnorodne korzystanie z bazy (różni użytkownicy)

  • Możliwość szybkiej pracy konwersacyjnej

  • Łatwość rozwoju i reorganizacji

  • Dostępność i wydajność (różny stopień)

  • Tajność (różny stopień)

  • Zabezpieczenie przed zgubieniem danych

  • Szybka odnowa po awariach

  • Fizyczna i logiczna niezależność danych – zmiany w sprzęci i metodach są niezależne od zmian w ilości danych i strukturze danych)

RELACYJNE BAZY DANYCH

Historyczny rozwój logicznych modeli baz danych

  1. Model hierarchiczny

  • Najstarszy

  • Struktura drzewiasta, jeden rekord główny (korzeń). Każdy rekord musiał być podrzędny tylko wobec jednego rekordu, ale sam mógł mieć dowolną ilość rekordów podrzędnych.

  • Dostęp do danych zawsze od korzenia. Użytkownik musiał znać strukturę przechowywanych danych.

  1. Model sieciowy

  • Każda tabela mogła uczestniczyć w wielu relacjach

  • Należało znać strukturędanych żeby znaleźć odpowiedź, ale poszukiwanie można było zaczynać od dowolnego miejsca.

  • Zmiana bazy wymagała zmiany programu

  1. Model relacyjny ? cechy podstawowe

  • Fizyczna kolejność rekordów i pól w tabeli jest bez znaczenia dla użytkownika

  • Użytkownik nie musi znać fizycznego miejsca przechowywania rekordów

  • Dostęp poprzez język zapytań (np. SQL)

  1. Model obiektowy

  • Obiekt – gromadzi strukturę i procedurę obsługi, oraz posiada właściwość dziedziczenia

  • Polecane w aplikacjach niestandardowych, np.: geograficznych

Relacyjne bazy danych – pojęcia podstawowe

Tabela INWENTARZ

Kod części Opis Ilość Cena hurtowa Cena detaliczna

XG 12

Gwóźdź

47

0,52

1,35

C1 ? 98

Gniazdo nr 4

3

16,73

26,98

W2A

Kosz

5

9,38

14,95

KL7

Śruba nr 4

62

0,12

0,67

AT8E

Śruba nr 5

38

0,08

0,21

MVP8

Wkręt okrągły

4

7,88

15,00

Pola Rekordy

Pole ? (atrybut) ? najmniejsza wyróżniona struktura w logicznej bazie danych. (Nazwy pól nigdy nie są częścią danych, służą jedynie jako etykiety pól.)

Rekord ? (krotka) ? reprezentuje pojedynczą instancję. Rekord zawiera pełny opis wszystkich pól.

Tabela ? składa się z logicznej kombinacji pól i rekordów, których kolejność jest obojętna. Tabela może dotyczyć:

  • Obiektu ? reprezentuje wówczas cechy osoby, miejsca, itp.

  • Zdarzenia ? cechy spotkania, wizyt, transakcji, …

Relacja ? logiczne powiązanie między tabelami, realizowane poprzez klucze lub tabele łączące.

Klucz ? pole zawierające dla każdego rekordu unikatową wartość (np. Kod części)

Informacje na temat tabeli:

Nazwy przypisywane tabelom powinny spełniać pewne kryteria:

  • Unikatowe i zrozumiałe

  • Czytelnie opisujące temat (części_silnika a nie tylko części)

  • Nie używać skrótów i zlepków liter

  • Nie wykorzystywać nazw własnych

  • Używać liczby mnogiej

Każda tabela powinna być określona przez trzy parametry:

Nazwa tabeli

Typ tabeli

Opis tabeli

W zależności od pełnionej przez tabele funkcji mogą wystąpić poniższe typy (na tym etapie projektowania bazy danych będzie występował tylko pierwszy typ ?dane?, kolejne pojawią się pózniej:

  • Dane ? przechowuje dane opisujące jeden temat i jest wykorzystywana do generowania informacji

  • Połączenie ? do łączenia dwóch tabel między którymi występuje relacja wiele_do_wiele

  • Podzbiór ? opisujące poddtemat ?tabeli-matki? w bardziej szczegółowy sposób

  • Tabela walidacji ? do zapewnienia integralności danych

  • Powinien w zwięzły i przejrzysty sposób określać cel stworzenia takiej tabeli i jej znaczenie dla organizacji (jeśli są trudności ze stworzeniem takiego opisu, to należy się zastanowić czy taka tabela jest potrzebna)

  • Opis nie powinien być uzależniony od innych opisów tabel

  • W opisie nie powinny się pojawiać konkretne przykłady.

Informacje na temat pól:

Każde pole należy poddać analizie, czy spełnia kryteria stawiane ?polu doskonałemu?

  • Reprezentuje cechę tematu tabeli

  • Nie zawiera wartości będącej wynikiem połączenia albo operacji matematycznej na wartościach innych pół (stwarzałoby to problemy w przypadku aktualizacji)

  • Jest unikatowe w zakresie całej struktury bazy danych (powtarzają się tylko te pola, które są niezbędna do stworzenia relacji między tabelami)

  • Zachowuje identyczne atrybuty we wszystkich tabelach, w których występuje.

  • Zawiera pojedynczą wartość

Jeżeli tak nie jest, należy wykonać poniższe czynności:

Usuwanie pól wielowartościowych– (kilka wystąpień tego samego rodzaju danych)

  • Należy stworzyć z tego pola odrębną tabelę i poprzez wybrane pole powiązać ją z tabelą macierzystą

Było:

Prowadzący

Imię i nazwisko prowadzącego

Adres prowadzącego

Telefon domowy prowadzącego

Prowadzone kursy

Jan Kowalski

42-512 Sosnowiec ul. BBBbbb 47/21

266-55-55

CK, DK, WR

Jest:

Prowadzący

Imię i nazwisko prowadzącego

Adres prowadzącego

Telefon domowy prowadzącego

Jan Kowalski

42-512 Sosnowiec ul. BBBbbb 47/21

266-55-55

Kursy_prowadzących

Imię i nazwisko prowadzącego

Prowadzony kurs

Jan Kowalski

CK

Jan Kowalski

DK

Jan Kowalski

WR

  • Nie można go rozłożyć na części składowe

Usuwanie pól segmentowych ? (więcej danych różnego typu)

Było:

Prowadzący

Imię i nazwisko prowadzącego

Adres prowadzącego

Telefon domowy prowadzącego

Jan Kowalski

42-512 Sosnowiec ul. BBBbbb 47/21

266-55-55

Jest:

Prowadzący

Imię prowadzącego

Nazwisko prowadzącego

Kod prowadzącego

Miasto prowadzą

cego

Ulica prowadzą

cego

Numer_domu prowadzącego

Telefon domowy prowadzącego

Jan

Kowalski

42-512

Sosnowiec

BBBbbb

47/21

266-55-55

Informacje na temat kluczy:

Klucze:

  • Umożliwiają identyfikację każdego rekordu

  • Umożliwiają definiowanie relacji

  • Umożliwiają wprowadzenie i egzekwowanie różnych rodzajów integralności tabel

Rodzaje kluczy:

  • Kandydujące ? tworzy się zbiór kluczy kandydujących (KK), z których potem wybrany zostanie jeden podstawowy (KP).

Klucz kandydujący powinien spełniać pewne warunki:

  • Musi jednoznacznie identyfikować każdy rekord w tabeli do której należy (może to być jedno pole lub zespół pól)

  • Musi zawierać unikatowe wartości

  • Nie może zawierać wartości zerowych

  • Składa się z minimalnej liczby pól niezbędnej do uzyskania niepowtarzalności

  • Jego wartość nie może być opcjonalna

  • Każde pole w tabeli musi być funkcyjnie zależne od wartości klucza kandydującego

  • Jego wartości powinno modyfikować się jedynie w wyjątkowych przypadkach

Czasem tworzy się sztuczne klucze kandydujące (dołącza się pole do tabeli np.: ID_procownika)

  • Podstawowe ? dla każdej tabeli ze zbioru kluczy kandydujących wybiera się jeden klucz podstawowy (najlepszy ? możliwie prosty)

Wszystkie klucze podstawowe w bazie muszą się różnić (wyjątek – podzbiory)

  • Obce ? występują w przypadku tworzenia relacji jeden_do_jeden i jeden_do_wielu.

Informacje na temat relacji:

  1. Rodzaje relacji

  • Jeden ? do jeden ? pojedynczemu rekordowi z tabeli A odpowiada dokładnie jeden rekord z tabeli B, a pojedynczemu rekordowi z tabeli B dokładnie jeden rekord z tabeli A.

  • Jeden ? do wielu – pojedynczemu rekordowi z tabeli A odpowiada jeden lub więcej rekordów z tabeli B, a pojedynczemu rekordowi z tabeli B odpowiada dokładnie jeden rekord z tabeli A.

  • Wiele ? do ? wiele – pojedynczemu rekordowi z tabeli A odpowiada jeden lub więcej rekordów z tabeli B, a pojedynczemu rekordowi z tabeli B odpowiada jeden lub więcej rekordów z tabeli A.

  1. Definiowanie relacji – Tworzenie połączeń między dwiema tabelami pomiędzy którymi istnieje relacja

  • Jeden-do jeden ? poprzez klucz obcy. Do tabeli podporządkowanej dołącza się kopię klucza podstawowego z tabeli głównej.

Przykładem takiej relacji jest powiązanie:

DZIAŁY ?? KIEROWNICY

  • Jeden- do ? wielu – poprzez klucz obcy. Do tabeli leżącej po stronie ?wiele? dołącza się kopię klucza podstawowego z tabeli ?jeden?.

Jest to najczęściej występująca relacja

Przykładem takiej relacji może być:

MATKI ? DZIECI

BUDYNKI ? POMIESZCZENIA

  • Wiele ? do ? wielu ? poprzez tabelę łączącą, która rozbija relację ?wiele_do_wiele? na dwie relacje ?jeden_do_wiele?. Tabela łącząca posiada ?złożony klucz podstawowy?, który zawiera w sobie klucze podstawowe z tabel głównych.

Przykładem takiej relacji jest:

STUDENCI ?? WYKŁADY

ZAMÓWIENIA?? PRODUKTY

Istneje możliwość dołączania do tabeli łączącej jeszcze innych pól, co zmniejsza powtórzenia w tabelach.

Definiowanie cech relacji:

  • Reguły usuwania ? dotyczą rekordów w tabeli głównej z relacji ?jeden_do_jeden? oraz w tabeli leżącej po stronie ?jeden? w relacji ?jeden_do_wielu?.

  1. Reguła restrykcyjna (R) ? rekord nie może zostać skasowany, jeśli istnieją powiązane z nim rekordy podporządkowane. Muszą one być skasowane wcześniej.

  2. Reguła kaskadowa (C) – żądany rekord zostanie skasowany razem z powiązanymi z nim rekordami.

  • Typy uczestnictwa ? określają, czy do wprowadzenia rekordu do tabeli leżącej po drugiej stronie relacji wymagane jest istnienie jakiegoś rekordu w tabeli analizowanej.

  1. Uczestnictwo obowiązkowe ? w rozpatrywanej tabeli musi istnieć przynajmniej jeden rekord zanim zaczniemy wprowadzać rekordy do drugiej z nich.

  2. Uczestnictwo opcjonalne ? dana tabela może być pusta przy przystępowaniu do umieszczania rekordów w drugiej tabeli.

  • Stopień uczestnictwa ? określa ile rekordów w jednej z tabel może być powiązanych z pojedynczym rekordem w drugiej tabeli.

Proces projektowania bazy danych

System zarządzania relacyjnymi bazami danych musi dawać możliwość:

  • Tworzenia relacyjnej bazy danych

  • Modyfikowania relacyjnej bazy danych

  • Generowania aplikacji z której będzie korzystał użytkownik

Znajomość metodologii projektowania systemów ogranicza ilość błędów. (przestrzeganie zbioru procedur).

Tworzenie systemów baz danych można sprowadzić do następujących etapów:

Świat rzeczywisty ?

Analiza wymagań ?

Modelowanie koncepcyjne ?

Modelowanie logiczne ?

Modelowanie fizyczne ?

SYSTEM BAZY DANYCH

Proces projektowania bazy danych

  1. Analiza wymagań

  • Ocena funkcjonowania organizacji

  • Ocena wymagań informacyjnych

  • Ocena przepływu informacji

  1. Modelowanie danych

  • Tworzenie struktury nowej bazy danych

  • Tworzenie diagramów związków

  • Analiza zależności

  1. Normalizacja

  • Rozkład dużych tabel na mniejsze w celu uniknięcia redundancji, oraz problemów z modyfikowaniem i usuwaniem rekordów.

Sprawdzenie struktur baz danych z „postaciami normalnymi” (zestaw kryteriów, które musi spełniać dana tabela, aby mogła być uznana za poprawną i nie przyczyniała się do powstawania błędów).

Formułowanie celu i założeń wstępnych systemu

Definicja celu powinna być krótka i zwięzła, nie powinna opisywać konkretnych zadań. Powinna opisywać ogólny cel bazy danych w sposób zrozumiały dla twórców bazy i jej przyszłych użytkowników.

np.: ?celem bazy danych jest przechowywanie danych wykorzystywanych w obsłudze sprzedaży detalicznej oraz usług serwisowych świadczonych klientom?

Założenia wstępne to ogólne zadania, jakie mają spełniać dane przechowywane w projektowanej bazie (każde założenie powinno być reprezentowane przez pojedyncze zdanie).

Poprawnie sformułowane założenia wstępne ułatwią definiowanie pól, tabel, relacji,…

np.:?Chcemy przechowywać informacje o zawieranych przez nas umowach.

Chcemy przechowywać informacje o klientach.?

Analiza istniejącej bazy danych

Etapy analizy istniejącej bazy danych

  • Analiza sposobu gromadzenia danych

  • Zebrać przykładowe egzemplarze formularzy

  • Wydrukować ekrany z programów obsługi danych

  • Analiza sposobu prezentowania informacji

  • Zebrać wszystkie przykładowe raporty (np.: stan magazynu)

  • Przeprowadzenie wywiadów z pracownikami i kierownictwem

  • Jak organizacja wykorzystuje swoje dane (wyodrębnić obiekty, zdarzenia, cechy, później będzie to wykorzystane przy definiowaniu tabel i pól)

  • Skąd pochodzą dane do raportów (później ma to znaczenie przy definiowaniu relacji)

  • Informacje których brakuje w raportach (a pracownicy odczuwają potrzebę ich posiadania)

  • Przewidzieć możliwy, najbliższy rozwój organizacji

Nowe kierunki rozwoju baz danych

Właściwości nowych baz danych:

  • Rozproszenie (danych i zarządzania)

  • Dane złożone (zarządzanie danymi o strukturze hierarchicznej (dziedziczenie))

  • Multimedia (przechowywanie tekstów, grafiki, obrazów, animacji, dźwięku, video).

Systemy rozproszone ? takie, w których występuje rozłożenie danych przez ich fragmentaryzację (podział) lub replikację do różnych konfiguracji sprzętowych i programistycznych na ogół rozmieszczonych w różnych (geograficznie) miejscach organizacji.

Fragment danych stanowi pewien podzbiór wszystkich danych całej bazy danych.

Replikacja danych stanowi kopię całości lub jakiejś części danych przechowywanych w innej części całej bazy danych.

Przykład : Dane reprezentują zarządzanie kadrami w przedsiębiorstwie. Każdy region przechowywany jest u siebie, od czasu do czasu rozważamy je razem.

Zasadniczym celem rozproszonej bazy danych jest to, aby dla użytkownika wyglądała ona jak jedna, scentralizowana baza danych. Trzy rodzaje przezroczystości:

  • Geograficzna ? użytkownicy nie muszą wiedzieć, w którym dokładnie miejscu są przechowywane dane.

  • Fragmentaryzacji ? użytkownicy nie muszą wiedzieć, w jaki sposób dane są podzielone.

  • Replikacji – użytkownicy nie muszą wiedzieć, w jaki sposób dane są powtarzane.

(W każdej bazie jest przechowywana kopia informacji o strukturze firmy)

Powody tworzenia rozproszonych baz danych

  1. Jeżeli istotne jest odwzorowanie w systemie geograficznego podziału organizacji. (departamenty, oddziały)

  2. Większą kontrolę nad danymi możemy uzyskać przechowując je w miejscu, gdzie są one potrzebne.

(Aktualizacji może dokonywać tylko oddział odpowiadający za ten fragment bazy)

  1. Utrzymywanie replikacji danych zwiększa niezawodność systemu. (przechowywanie wiernej kopii danych na wypadek awarii, kiedy zatrzymanie pracy organizacji jest niemożliwe).

  2. Działanie systemu może się istotnie poprawić, jeśli dokonane będzie prawidłowe rozproszenie danych. (przyspieszenie dostępu do danych przy operacjach wyszukiwania i aktualizacji, jeśli są one kierowane do lokalnej bazy danych zamiast do dużej scentralizowanej bazy danych)

Inteligencja ? sztuczna inteligencja i jej implementacja w kontekście baz danych.

Relacyjne bazy danych reprezentują fakty. Integralność i funkcje modyfikacji implementowane są w programach użytkowych, na zewnątrz relacyjnej bazy danych.

Dedukcyjne bazy danych (inteligentne) reprezentują fakty, więzy integralności, zapytań i funkcje modyfikacji. Mają aktywny charakter, przechowują reguły.

Inteligentne bazy danych oferują możliwość przechowywania więzów integralności centralnie w samej bazie danych. Co oznacza, że:

  • Kopiowanie kodu jest zmniejszone;

  • Systemy są mniejsze, łatwiejsze do konserwowania;

  • Lepsza wydajność w środowisku przetwarzania.

Systemy hipermedialne ? systemy informacyjne mające postać węzłów różnych rodzajów mediów połączonych w jedną całość siecią asocjacyjnych powiązań. (np.: systemy hipertekstowe)

Brak wewnętrznej struktury danych. Struktura zapytań jest trudna do zrealizowania. Nieukierunkowane wyszukiwanie.

Np.: The National Gallery System ? użytkownik może uzyskać dostęp do informacji jedną z wielu dróg:

  • Przez nazwisko artysty

  • Obszar historyczny

  • Okres artystyczny

GIS ? geograficzne systemy informacyjneDane przestrzenne

Systemy te opierają się na założeniu, że każdy obiekt w przestrzeni można opisać punktami, którym można przypisać współrzędne w przestrzeni euklidesowej.

Trzy aspekty systemów GIS:

  • Mapa (aspekt kartograficzny)

  • Analiza przestrzenna (analiza i modelowanie danych)

  • Baza danych

Pytania do takiego systemu mogą mieć charakter:

  • Atrybutowy

Przykład:

Pytanie: Wymień wszystkich właścicieli gruntów, w których glebie znajduje się żelazo?

Odpowiedź: łączy dane o właścicielach gruntów z własnościami mineralnymi działek ziemi.

  • Analityczny ? wymagające analizy przestrzennej

Przykład:

Pytanie: Dlaczego na tym odcinku rzeki występują okresowe powodzie?

Techniczne aspekty przechowywania i przetwarzania danych

Przyczyny utraty danych:

  • Niemożliwe do wyeliminowania (awarie zasilania, czynniki pogodowe)

  • Awarie sprzętu

  • Środków łączności

  • Urządzeń klimatyzacyjnych

  • Oprogramowania

Dwie podstawowe metody zabezpieczania przed utratą danych:

  • Zastosowanie bezpiecznego przetwarzania informacji – transakcyjnego

(Gdyby nie było przetwarzania transakcyjnego.

Np.: Przelew z jednego konta na drugie. W czasie awarii zmiana mogłaby się zdążyć wykonać w pierwszym rekordzie, a w drugim nie.

Transakcja – procedura posiadająca wyraźny koniec i początek. Zastosowanie flag, precyzyjnie określających stopień zaawansowania transakcji.

Jedna flaga – stan transakcji.

Druga flaga – stan modyfikacji danych.

Przebieg procedury transakcyjnej:

  • Rozpoczęcie transakcji – ustawienie flagi 1

  • Przepisanie obu rekordów do wewnętrznego bufora

  • Ustawienie flagi2

  • Modyfikacja rekordu1

  • Modyfikacja rekordu 2

  • Aktualizacja obu rekordów w bazie

  • Zgaszenie flagi2

  • Zakończenie transakcji – zgaszenie flagi 1.

  • Zastosowanie redundancji najważniejszych zasobów:

  • Elementów przetwarzania informacji

  • Zasilania systemu komputerowego

  • Przechowywanych informacji

powiązane posty