Co warto wiedzie o bazach danych

  • Published on
    11-Jan-2017

  • View
    215

  • Download
    0

Transcript

Slajd 1

Uniwersytet Otwarty AGH 8 marca 2014Spjrzmy przez okno: oto nasz wiat. Pdzimy ycie skrztne, zapobiegliwe, staramy si y dostatniej, mie wicej. [...] Wszyscy na swj sposb zapewniamy moliwie najlepsze warunki rozwoju i ycia naszym dzieciom, wnukom. [...] Burzymy stare struktury spoeczne i ekonomiczne, budujemy w ich miejsce nowe, nie oparte na tradycji, lecz na wspczesnych pomysach i pogldach. [...] Czy potrafimy - tacy, jacy jestemy - zrozumie ludzi z minionych epok, ktrzy wyznawali inna zasad wiata [...]? Byli mieszkacami profanum, [...] i z obszaru profanum tsknie spogldali w kierunku sacrum. Czy moemy to zrozumie my, ktrzy sami przebywamy w sacrum, gdzie wdarlimy si po mierci bogw?Czy zauwaylimy, odurzeni pozycj, jak zajmujemy w kosmosie, jak sami sobie przyznalimy, e ju przed ponad stu laty narodzili si dwaj bokowie, a moe tylko demony - Interes i Wydajno? Za jaki czas zechc zaj miejsce opustoszae po prawdziwych wielkich bogach archaicznych. Jaka wwczas bdzie pozycja czowieka?Krzysztof Kowalski Eros i kostucha LSW Warszawa 1990 str. 276Mariusz KLPPER

1

Mariusz KLAPPERUniwersytet Otwarty AGH 8 marca 2014Co warto wiedzie

o bazach danych

2

We wspczesnej cywilizacji informatycznej bazy danych stay si jednymi z najczciej spotykanych i wykorzystywanych struktur oraz obiektw sucych do przechowywania i szybkiego wyszukiwania informacji. Wystpuj one zarwno jako ogromne zasoby o zasigu globalnym, jak i niewielkie lokalne obiekty indywidualne. Mamy z nimi do czynienia w wielu urzdzeniach codziennego uytku, czsto nie zdajc sobie z tego w ogle sprawy

Molier MIESZCZANIN SZLACHCICEM Teatr Telewizji 1969

(Definicja wedug Wikipedii) Baza danych jest to zbir danych zapisanych zgodnie z okrelonymi reguami. W wszym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjtymi dla danego programu komputerowego specjalizowanego do gromadzenia i przetwarzania tych danych. Program taki (czsto pakiet programw) nazywany jest systemem zarzdzania baz danych (ang. database management system, DBMS).Programy do obsugi bazy danych operuj gwnie na danych tekstowych i liczbowych, lecz wikszo wspczesnych systemw umoliwia przechowywanie danych cyfrowych rnego typu: dane o nieokrelonej strukturze, grafika, muzyka, obiekty itp.

Schemat logiczny bazy danych

Schemat funkcjonalny bazy danych

Schemat organizacyjny bazy danych

Serwer bazy danych to oprogramowanie obsugujce baz danych na okrelonym sprzcie i systemie operacyjnym. Serwer moe obsugiwa kilka baz danych rwnoczenie. Baza danych to uporzdkowana kolekcja przechowujca dane zapisane w postaci tablic, indeksw i procedur pomocniczych.Tablica przechowuje w bazie danych informacje jednorodne merytorycznie (ma jednolit zawarto danych).Indeksy definiuj sposb porzdkowania i dostpu do danych a tablicach.Procedury pomocnicze to fragmenty oprogramowania suce do realizowania specyficznych operacji zwizanych ze struktur danych oraz obsug baz danych przez uytkownikwZasady ochrony danych w bazie okrelaj uprawnienia oraz warunki dostpu i obsugi danych dla uytkownikw bazy danych

Elementy skadowe bazy danych

INFORMIX Microsoft SQL ServerORACLEDbaseNovell BtrieveMySQLFirebirdMicrosoft AccessCechy serwera lokalnej bazy danych ma take Microsoft ExcelSerwer bazy danych jest oprogramowaniem narzdziowym i musi by wczeniej zainstalowany na komputerze, ktry ma obsugiwa baz danych

Niektre popularne serwery baz danych

Przykad serwera bazy danych Firebird zainstalowanego na komputerze z systemem Windows

Serwer bazy danych Firebird jako proces w systemie Windows

Fizyczne pliki baz danych Firebird na dysku

Przykad grupy baz danych na serwerze Firebird

Zawarto bazy danych w przykadowej grupie

Tablice bazy danych w przykadowej grupie

Pola wybranej tablicy w przykadowej bazie danych

Indeksowanie baz danych

Przykad indeksacji danych w bazie

Indeksy tablicy w przykadowej bazie danych

Jzyk zapyta SQL (Structured Query Language) to uniwersalny jzyk programowania umoliwiajcy administratorom i uytkownikom komunikacj i obsug baz danych. Serwer jzyka SQL jest czci oprogramowania serwera baz danych wbudowan w pakiet obsugi baz danychJzyk SQL ma znormalizowan syntaktyk, ale jest wiele jego dialektw dla rnych serwerw SQL. SQL umoliwia operowanie na bazie danych (redagowanie jej zasobw) oraz uzyskiwanie informacji z bazy danych przy pomocy zapyta.Skrypty SQL to sekwencje zapisw jzyka SQL wysyane przez aplikacje uytkowe do serwera SQL, ktry zamienia je na operacje bezporednio wykonywane na danych i/lub strukturach w bazie. Serwer SQL jest wic interpreterem zapyta i polece jzyka SQL.

Komunikacja uytkownika z baz danych

Podstawowe grupy polece jzyka SQLZapytania i polecenia jzyka SQL s nazywane skryptami SQL Zawsze dotycz one konkretnej tablicy w bazie danych, lub struktury caej bazy. Przy pomocy skryptw SQL mona take tworzy, modyfikowa i kasowa tablice oraz inne obiekty w bazie danych. W niektrych wersjach SQL przy pomocy skryptw SQL mona take tworzy i kasowa cae bazy danych.

select INOD_MIEJSC, INOD_ULICA, INOD_NAZWA from INDEKS_KONTRAH where Upper(INOD_MIEJSC) like %KRA%order by INOD_MIEJSC, INOD_ULICA, INOD_NAZWIS

Przykad zapytania do bazy danych w jzyku SQL

Wyniki zapytania SQL

Przykadowy skrypt SQL tworzcy tablic w bazie danych

Trygery (wyzwalacz) to wbudowana w struktur bazy danych procedura napisana w jzyku SQL, ktra jest wykonywana automatycznie jako reakcja na pewne zdarzenia w tabeli bazy danych. Wyzwalacze mog np. ogranicza dostp do pewnych danych, rejestrowa zmiany danych, nadzorowa modyfikacje danych lub wykonywa akcje zwizane ze zmianami w tabeli Procedura wbudowana jest to napisana w jzyku SQL sekwencja programu, ktra jest wbudowana w struktur bazy danych i moe by uywana przez uytkownika bazy poprzez wywoanie jej skryptem SQL. Pozwala to na zmniejszenie liczby krokw wymiany danych pomidzy uytkownikiem a baz danych. Uatwia ona i ujednolica operowanie baz, przyczynia si do wzrostu wydajnoci systemu zarzdzania baz danych, oraz pozwala wprowadzi wygodn i przejrzyst komunikacj pomidzy baz danych a uytkownikiem

Trygery i procedury wbudowane w baz danych

Przykadowy tryger bazy danych

Przykadowa procedura wbudowana bazy danych

Transakcje w bazie danych Z bazy danych zazwyczaj rwnoczenie korzysta wielu uytkownikw. Kady z nich (zalenie od posiadanych uprawnie) moe wyszukiwa oraz/albo aktualizowa informacje w bazie danych. System zarzdzania baz danych musi zapewni z jednej strony moliwo sprawnego korzystania z bazy przez uytkownikw, jak te zabezpieczenie poprawnoci i integralnoci danych w bazie. Dodatkowo system zarzdzania baz danych musi zabezpieczy baz przed skutkami ewentualnych awarii technicznych lub funkcjonalnych .

Ilo 32

Pobranie 10

Zapis 22

Ilo 32

Pobranie 15

Zapis 17

Byo 32

Pobrano 25

Zapisane jest 17Uytkownik AUytkownik BWynik w bazie danych

Przykad utraty integralnoci danych w bazie

Ilo 32

Pobranie 10

Zapis 22

Ilo 22

Pobranie 15

Zapis 7

Byo 32

Pobrano 25

Zapisane jest 7Uytkownik AUytkownik BWynik w bazie danych

Start transakcji

Czekaj

Koniec transakcji

Czekaj

Start transakcji

Koniec transakcjiSchemat dziaania transakcji w bazie danych

Zarwno rozpoczcie, jak i zakoczenie transakcji jest inicjowane dziaaniem uytkownika. Podczas trwania transakcji dane uywane w jej trakcie nie s zmieniane w bazie danych. Informacje o kolejnych krokach transakcji s pamitane w bazie danych. Dane rzeczywiste w bazie s zmieniane dopiero po zakoczeniu transakcjiTransakcja moe by w dowolnym momencie przerwana przez uytkownika lub przyczyny zewntrzne. Wtedy skutki transakcji s usuwane z bazy danych i adne dane w bazie nie s zmieniane.Transakcja moe by zoona, moe obejmowa wiele krokw procedury i wiele rnych zasobw bazy danychRealizowanie transakcji obcia serwer bazy danych i zwalnia procedury korzystania z bazy danychBdne wykonanie transakcji moe uszkodzi baz danych, lub zablokowa niektre jej zasobyAdministrator bazy danych posiada na og narzdzia umoliwiajce usunicie z bazy skutkw bdnych transakcji.

Najwaniejsze uwarunkowania transakcji

Zakleszczenie bazy danych (deadlock)Wprowadzenie transakcyjnoci w bazie danych stwarza ryzyko powstania tak zwanego zakleszczenia. Wystpuje ono wtedy, kiedy dwa niezalene procesy wykonywane w bazie danych daj wzajemnego dostpu do danych zablokowanych wczeniej w rama transakcji kadego z procesw. Obydwa procesy pozostaj wtedy w trwaym stanie oczekiwania, niemoliwym do usunicia, gdy aden proces nie moe si uaktywni bez zwolnienia zasobu innego procesu, a inny proces nie moe zwolni zasobu, gdy take jest w stanie oczekiwania na dostp do zasobw drugiego procesu czekajcego. Taki stan powoduje trwae zawieszenie pracy obu procesw i zawieszenie wsppracy ich uytkonwikw z baz danych. Zjawisko zakleszczania jest bardzo trudno wyeliminowa, nie ma take sprawnych i niezawodnych metod wykrywania go.

Zasad jest chronienie dostpu do danych w bazie przy pomocy identyfikatorw uytkownika i hase dostpu. Ochrona moe by realizowana na rnych poziomach: caej bazy danych, poszczeglnych tablic w bazie, a nawet okrelonych pl w tablicach.Ochron danych w bazach zarzdzaj specjalni pracownicy nazywani administratorami bazy danychWszystkie profesjonalne serwery baz danych maj bardzo bogate narzdzia administracyjne dla ochrony danych w bazie. Niezalenie od tego ochron danych realizuj si take na poziomie oprogramowania uytkowego.Ochrona przed nieuprawnionym dostpem do informacji przechowywanych w bazach danych jest obecnie jednym z najpowaniejszych problemw cywilizacji informacyjnej

Ochrona dostpu do danych w bazie

Moliwe przyczyny uszkodzenia bazy danych:= techniczne awarie sprztu= awarie oprogramowania serwera bazy danych= bdy w oprogramowaniu uytkowym dla bazy danych= nieprawidowe obsugiwanie bazy danych= bdne dziaania uytkownikw bazy danych= przyczyny losowe zwizane z prac wspbien uytkownikw= zdeterminowane dziaania przestpczeSposoby zabezpieczania i rekonstrukcji bazy danych:= kopiowanie awaryjne bazy danych= rwnolega praca z dwoma kopiami bazy danych= narzdzia i procedury administratora bazy= staranna i skuteczna ochrona dostpu do bazy danych= okresowa weryfikacja integralnoci bazy danych= weryfikacja i testowanie oprogramowania uytkowego= tworzenie zapisw archiwalnych na innych nonikach danych

Zabezpieczanie bazy danych przed skutkami awarii

GOOGLEYouTubeePuaPPatnik ZUSStrona www Skad Osobowy AGHKsika adresowa telefonu komrkowegoStruktury bazodanowe mona napotka na wielu witrynach Internetowych w zwizku z opcj Szukaj

Niektre znane aplikacje majce cechy serwerw bazy danych

Spjrzmy przez okno: oto nasz wiat. Pdzimy ycie skrztne, zapobiegliwe, staramy si y dostatniej, mie wicej. [...] Wszyscy na swj sposb zapewniamy moliwie najlepsze warunki rozwoju i ycia naszym dzieciom, wnukom. [...] Burzymy stare struktury spoeczne i ekonomiczne, budujemy w ich miejsce nowe, nie oparte na tradycji, lecz na wspczesnych pomysach i pogldach. [...] Czy potrafimy - tacy, jacy jestemy - zrozumie ludzi z minionych epok, ktrzy wyznawali inna zasad wiata [...]? Byli mieszkacami profanum, [...] i z obszaru profanum tsknie spogldali w kierunku sacrum. Czy moemy to zrozumie my, ktrzy sami przebywamy w sacrum, gdzie wdarlimy si po mierci bogw?Czy zauwaylimy, odurzeni pozycj, jak zajmujemy w kosmosie, jak sami sobie przyznalimy, e ju przed ponad stu laty narodzili si dwaj bokowie, a moe tylko demony - Interes i Wydajno? Za jaki czas zechc zaj miejsce opustoszae po prawdziwych wielkich bogach archaicznych. Jaka wwczas bdzie pozycja czowieka?DZIKUJZA SPOTKANIEUniwersytet Otwarty AGH 8 marca 2014Krzysztof Kowalski Eros i kostucha LSW Warszawa 1990 str 276Mariusz KLAPPERZapraszam 29 marca 2014 rokuna rozmow o systemie ANDROID