Uniwersytet Otwarty AGH 8 marca 2014

Slides:



Advertisements
Podobne prezentacje
Indeksy w bazie danych Oracle
Advertisements

Zabezpieczenia w programie MS Access
przetwarzaniu informacji
Rola komputera w przetwarzaniu informacji.
BEZPIECZEŃSTWO DANYCH W KOMPUTERZE
Sieci komputerowe.
Komponenty bazy danych Baza danych Jest to uporządkowany zbiór powiązanych ze sobą danych charakterystycznych dla pewnej klasy obiektów lub zdarzeń,
WPROWADZENIE DO BAZ DANYCH
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE Zarządzanie.
Wycofywanie potwierdzonych transakcji
Systemy operacyjne.
Systemy operacyjne Bibliografia:
Wykład 2 Wojciech Pieprzyca
Wykład 5 Wojciech Pieprzyca
Programowanie wizualne PW – LAB5 Wojciech Pieprzyca.
Artur Szmigiel Paweł Zarębski Kl. III i
Rozproszone bazy danych
Systemy zarządzania treścią CMS
1 Podstawy informatyki H. P. Janecki- 2006_ Systemy Operacyjne W6.
Modele baz danych - spojrzenie na poziom fizyczny
Bezpieczeństwo baz danych
Łukasz Sobczak. 1)Co to jest Office 2010 Web Apps 2)SharePoint 2010 a narzędzia pakietu office 3)Integracja Office Web Apps z SharePoint )Problemy.
Uniwersytet Otwarty AGH 26 listopad 2011
Rozwój aplikacji przy wykorzystaniu ASP.NET
System operacyjny. System operacyjny Co to jest system operacyjny: jest szczególnym rodzajem programu, którego zadaniem jest koordynowanie pracy.
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
Systemy operacyjne.
Budowa systemu komputerowego
BUDOWA I DZIAŁANIE SIECI KOMPUTEROWYCH
Maciej Kujawiński i Daniel Krystyniak, klasa 2G
Bazy danych podstawowe pojęcia
Prezentacja i szkolenie
Sieciowe Systemy Operacyjne
Bazy danych.
Narzędzia administracyjne
Maszyna wirtualna ang. virtual machine, VM.
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Wybrane zagadnienia relacyjnych baz danych
BAZA ADRESOWA WOJEWÓDZTWA ŁÓDZKIEGO
Uniwersytet Otwarty AGH 10 listopad 2012
Komendy SQL do pracy z tabelami i bazami
dr Łukasz Murowaniecki T-109
Bazy danych Microsoft access 2007.
Archiwizacja bazy danych
System plików.
Jednym z podstawowych celów tworzenia sieci komputerowych jest współdzielenie zasobów, takich jak pliki lub drukarki. Każdy z takich zasobów musi być udostępniony,
Temat 4: Funkcje Systemu Zarządzania Bazą Danych (SZBD)
System Zarządzania Bazą Danych
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego.
PHP + MySQL Podstawy pracy z bazą danych Damian Urbańczyk.
Podstawy języka skryptów
Uniwersytet Otwarty AGH 14 marzec 2015
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Zagrożenia i ochrona systemu komputerowego
BAZY DANYCH MS Access.
Model warstwowy ISO-OSI
Uniwersytet Otwarty AGH 7 listopada 2015 Spójrzmy przez okno: oto nasz świat. Pędzimy życie skrzętne, zapobiegliwe, staramy się żyć dostatniej, mieć więcej.
Uniwersytet Otwarty AGH 14 listopada 2015 Spójrzmy przez okno: oto nasz świat. Pędzimy życie skrzętne, zapobiegliwe, staramy się żyć dostatniej, mieć więcej.
Systemy operacyjne - Budowa systemu komputerowego i jego zadania
Prezentacja programu PowerPoint
Bezpieczeństwo informacji Jak chronić nasze zasoby w komputerze? Jak zarchiwizować i skompresować pliki?
Temat: Tworzenie bazy danych
Wiele czasu spędzamy, szukając szczęścia, choć świat wokół nas jest pełen cudowności. Samo życie na Ziemi i chodzenie po niej jest cudem, tymczasem większość.
Strukturalny język zapytań SQL - historia
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Technologie Informacyjne Bazy danych
Czym są i jak służą społeczeństwu?
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

Uniwersytet Otwarty AGH 8 marca 2014 Spójrzmy przez okno: oto nasz świat. Pędzimy życie skrzętne, zapobiegliwe, staramy się żyć dostatniej, mieć więcej. [...] Wszyscy na swój sposób zapewniamy możliwie najlepsze warunki rozwoju i życia naszym dzieciom, wnukom. [...] Burzymy stare struktury społeczne i ekonomiczne, budujemy w ich miejsce nowe, nie oparte na tradycji, lecz na współczesnych pomysłach i poglądach. [...] Czy potrafimy - tacy, jacy jesteśmy - zrozumieć ludzi z minionych epok, którzy wyznawali inna zasadę świata [...]? Byli mieszkańcami profanum, [...] i z obszaru profanum tęsknie spoglądali w kierunku sacrum. Czy możemy to zrozumieć my, którzy sami przebywamy w sacrum, gdzie wdarliśmy się po śmierci bogów? Czy zauważyliśmy, odurzeni pozycją, jaką zajmujemy w kosmosie, jaką sami sobie przyznaliśmy, że już przed ponad stu laty narodzili się dwaj bożkowie, a może tylko demony - Interes i Wydajność? Za jakiś czas zechcą zająć miejsce opustoszałe po prawdziwych wielkich bogach archaicznych. Jaka wówczas będzie pozycja człowieka? Krzysztof Kowalski „Eros i kostucha” LSW Warszawa 1990 str. 276 Uniwersytet Otwarty AGH 8 marca 2014 Mariusz KLPPER

o bazach danych Co warto wiedzieć Uniwersytet Otwarty AGH 8 marca 2014 Mariusz KLAPPER

We współczesnej cywilizacji informatycznej bazy danych stały się jednymi z najczęściej spotykanych i wykorzystywanych struktur oraz obiektów służących do przechowywania i szybkiego wyszukiwania informacji. Występują one zarówno jako ogromne zasoby o zasięgu globalnym, jak i niewielkie lokalne obiekty indywidualne. Mamy z nimi do czynienia w wielu urządzeniach codziennego użytku, często nie zdając sobie z tego w ogóle sprawy

Molier MIESZCZANIN SZLACHCICEM Teatr Telewizji 1969

Baza danych jest to zbiór danych zapisanych zgodnie z określonymi regułami. W węższym znaczeniu obejmuje dane cyfrowe gromadzone zgodnie z zasadami przyjętymi dla danego programu komputerowego specjalizowanego do gromadzenia i przetwarzania tych danych. Program taki (często pakiet programów) nazywany jest „systemem zarządzania bazą danych” (ang. database management system, DBMS). Programy do obsługi bazy danych operują głównie na danych tekstowych i liczbowych, lecz większość współczesnych systemów umożliwia przechowywanie danych cyfrowych różnego typu: dane o nieokreślonej strukturze, grafika, muzyka, obiekty itp. (Definicja według Wikipedii)

Schemat logiczny bazy danych

Schemat funkcjonalny bazy danych

Schemat organizacyjny bazy danych

Elementy składowe bazy danych Serwer bazy danych to oprogramowanie obsługujące bazę danych na określonym sprzęcie i systemie operacyjnym. Serwer może obsługiwać kilka baz danych równocześnie. Baza danych to uporządkowana kolekcja przechowująca dane zapisane w postaci tablic, indeksów i procedur pomocniczych. Tablica przechowuje w bazie danych informacje jednorodne merytorycznie (ma jednolitą zawartość danych). Indeksy definiują sposób porządkowania i dostępu do danych a tablicach. Procedury pomocnicze to fragmenty oprogramowania służące do realizowania specyficznych operacji związanych ze strukturą danych oraz obsługą baz danych przez użytkowników Zasady ochrony danych w bazie określają uprawnienia oraz warunki dostępu i obsługi danych dla użytkowników bazy danych

Niektóre popularne serwery baz danych INFORMIX Microsoft SQL Server ORACLE Dbase Novell Btrieve MySQL Firebird Microsoft Access Cechy serwera lokalnej bazy danych ma także Microsoft Excel Serwer bazy danych jest oprogramowaniem narzędziowym i musi być wcześniej zainstalowany na komputerze, który ma obsługiwać bazę danych

Przykład 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

Przykład grupy baz danych na serwerze Firebird

Zawartość bazy danych w przykładowej grupie

Tablice bazy danych w przykładowej grupie

Pola wybranej tablicy w przykładowej bazie danych

Indeksowanie baz danych

Przykład indeksacji danych w bazie

Indeksy tablicy w przykładowej bazie danych

Komunikacja użytkownika z bazą danych Język zapytań SQL (Structured Query Language) to uniwersalny język programowania umożliwiający administratorom i użytkownikom komunikację i obsługę baz danych. Serwer języka SQL jest częścią oprogramowania serwera baz danych wbudowaną w pakiet obsługi baz danych Język SQL ma znormalizowaną syntaktykę, ale jest wiele jego dialektów dla różnych serwerów SQL. SQL umożliwia operowanie na bazie danych (redagowanie jej zasobów) oraz uzyskiwanie informacji z bazy danych przy pomocy zapytań. Skrypty SQL to sekwencje zapisów języka SQL wysyłane przez aplikacje użytkowe do serwera SQL, który zamienia je na operacje bezpośrednio wykonywane na danych i/lub strukturach w bazie. Serwer SQL jest więc interpreterem zapytań i poleceń języka SQL.

Podstawowe grupy poleceń języka SQL Zapytania i polecenia języka SQL są nazywane skryptami SQL Zawsze dotyczą one konkretnej tablicy w bazie danych, lub struktury całej bazy. Przy pomocy skryptów SQL można także tworzyć, modyfikować i kasować tablice oraz inne obiekty w bazie danych. W niektórych wersjach SQL przy pomocy skryptów SQL można także tworzyć i kasować całe bazy danych.

Przykład zapytania do bazy danych w języku SQL select INOD_MIEJSC, INOD_ULICA, INOD_NAZWA from INDEKS_KONTRAH where Upper(INOD_MIEJSC) like %KRA% order by INOD_MIEJSC, INOD_ULICA, INOD_NAZWIS

Wyniki zapytania SQL

Przykładowy skrypt SQL tworzący tablicę w bazie danych

Trygery i procedury wbudowane w bazę danych Trygery (wyzwalacz) to wbudowana w strukturę bazy danych procedura napisana w języku SQL, która jest wykonywana automatycznie jako reakcja na pewne zdarzenia w tabeli bazy danych. Wyzwalacze mogą np. ograniczać dostęp do pewnych danych, rejestrować zmiany danych, nadzorować modyfikacje danych lub wykonywać akcje związane ze zmianami w tabeli Procedura wbudowana jest to napisana w języku SQL sekwencja programu, która jest wbudowana w strukturę bazy danych i może być używana przez użytkownika bazy poprzez wywołanie jej skryptem SQL. Pozwala to na zmniejszenie liczby kroków wymiany danych pomiędzy użytkownikiem a bazą danych. Ułatwia ona i ujednolica operowanie bazą, przyczynia się do wzrostu wydajności systemu zarządzania bazą danych, oraz pozwala wprowadzić wygodną i przejrzystą komunikację pomiędzy bazą danych a użytkownikiem

Przykładowy tryger bazy danych

Przykładowa procedura wbudowana bazy danych

Transakcje w bazie danych Z bazy danych zazwyczaj równocześnie korzysta wielu użytkowników. Każdy z nich (zależnie od posiadanych uprawnień) może wyszukiwać oraz/albo aktualizować informacje w bazie danych. System zarządzania bazą danych musi zapewnić z jednej strony możliwość sprawnego korzystania z bazy przez użytkowników, jak też zabezpieczenie poprawności i integralności danych w bazie. Dodatkowo system zarządzania bazą danych musi zabezpieczyć bazę przed skutkami ewentualnych awarii technicznych lub funkcjonalnych .

Przykład utraty integralności danych w bazie Użytkownik A Użytkownik B Wynik w bazie danych Ilość 32 Ilość 32 Było 32 Pobranie 10 Pobranie 15 Pobrano 25 Zapis 22 Zapis 17 Zapisane jest 17

Schemat działania transakcji w bazie danych Użytkownik A Użytkownik B Wynik w bazie danych Ilość 32 Czekaj Było 32 Start transakcji Ilość 22 Start transakcji Pobranie 10 Pobrano 25 Pobranie 15 Zapis 22 Zapisane jest 7 Zapis 7 Koniec transakcji Koniec transakcji Czekaj

Najważniejsze uwarunkowania transakcji Zarówno rozpoczęcie, jak i zakończenie transakcji jest inicjowane działaniem użytkownika. Podczas trwania transakcji dane używane w jej trakcie nie są zmieniane w bazie danych. Informacje o kolejnych krokach transakcji są pamiętane w bazie danych. Dane rzeczywiste w bazie są zmieniane dopiero po zakończeniu transakcji Transakcja może być w dowolnym momencie przerwana przez użytkownika lub przyczyny zewnętrzne. Wtedy skutki transakcji są usuwane z bazy danych i żadne dane w bazie nie są zmieniane. Transakcja może być złożona, może obejmować wiele kroków procedury i wiele różnych zasobów bazy danych Realizowanie transakcji obciąża serwer bazy danych i zwalnia procedury korzystania z bazy danych Błędne wykonanie transakcji może uszkodzić bazę danych, lub zablokować niektóre jej zasoby Administrator bazy danych posiada na ogół narzędzia umożliwiające usunięcie z bazy skutków błędnych transakcji.

Zakleszczenie bazy danych (deadlock) Wprowadzenie transakcyjności w bazie danych stwarza ryzyko powstania tak zwanego zakleszczenia. Występuje ono wtedy, kiedy dwa niezależne procesy wykonywane w bazie danych żądają wzajemnego dostępu do danych zablokowanych wcześniej w rama transakcji każdego z procesów. Obydwa procesy pozostają wtedy w trwałym stanie oczekiwania, niemożliwym do usunięcia, gdyż żaden proces nie może się uaktywnić bez zwolnienia zasobu innego procesu, a inny proces nie może zwolnić zasobu, gdyż także jest w stanie oczekiwania na dostęp do zasobów drugiego procesu czekającego. Taki stan powoduje trwałe zawieszenie pracy obu procesów i zawieszenie współpracy ich użytkonwików z bazą danych. Zjawisko zakleszczania jest bardzo trudno wyeliminować, nie ma także sprawnych i niezawodnych metod wykrywania go.

Ochrona dostępu do danych w bazie Zasadą jest chronienie dostępu do danych w bazie przy pomocy identyfikatorów użytkownika i haseł dostępu. Ochrona może być realizowana na różnych poziomach: całej bazy danych, poszczególnych tablic w bazie, a nawet określonych pól w tablicach. Ochroną danych w bazach zarządzają specjalni pracownicy nazywani administratorami bazy danych Wszystkie profesjonalne serwery baz danych mają bardzo bogate narzędzia administracyjne dla ochrony danych w bazie. Niezależnie od tego ochronę danych realizuję się także na poziomie oprogramowania użytkowego. Ochrona przed nieuprawnionym dostępem do informacji przechowywanych w bazach danych jest obecnie jednym z najpoważniejszych problemów cywilizacji informacyjnej

Zabezpieczanie bazy danych przed skutkami awarii Możliwe przyczyny uszkodzenia bazy danych: = techniczne awarie sprzętu = awarie oprogramowania serwera bazy danych = błędy w oprogramowaniu użytkowym dla bazy danych = nieprawidłowe obsługiwanie bazy danych = błędne działania użytkowników bazy danych = przyczyny losowe związane z pracą współbieżną użytkowników = zdeterminowane działania przestępcze Sposoby zabezpieczania i rekonstrukcji bazy danych: = kopiowanie awaryjne bazy danych = równoległa praca z dwoma kopiami bazy danych = narzędzia i procedury administratora bazy = staranna i skuteczna ochrona dostępu do bazy danych = okresowa weryfikacja integralności bazy danych = weryfikacja i testowanie oprogramowania użytkowego = tworzenie zapisów archiwalnych na innych nośnikach danych

Niektóre znane aplikacje mające cechy serwerów bazy danych GOOGLE YouTube ePuaP Płatnik ZUS Strona www „Skład Osobowy AGH” Książka adresowa telefonu komórkowego Struktury bazodanowe można napotkać na wielu witrynach Internetowych w związku z opcją „Szukaj”

na rozmowę o systemie ANDROID Spójrzmy przez okno: oto nasz świat. Pędzimy życie skrzętne, zapobiegliwe, staramy się żyć dostatniej, mieć więcej. [...] Wszyscy na swój sposób zapewniamy możliwie najlepsze warunki rozwoju i życia naszym dzieciom, wnukom. [...] Burzymy stare struktury społeczne i ekonomiczne, budujemy w ich miejsce nowe, nie oparte na tradycji, lecz na współczesnych pomysłach i poglądach. [...] Czy potrafimy - tacy, jacy jesteśmy - zrozumieć ludzi z minionych epok, którzy wyznawali inna zasadę świata [...]? Byli mieszkańcami profanum, [...] i z obszaru profanum tęsknie spoglądali w kierunku sacrum. Czy możemy to zrozumieć my, którzy sami przebywamy w sacrum, gdzie wdarliśmy się po śmierci bogów? Czy zauważyliśmy, odurzeni pozycją, jaką zajmujemy w kosmosie, jaką sami sobie przyznaliśmy, że już przed ponad stu laty narodzili się dwaj bożkowie, a może tylko demony - Interes i Wydajność? Za jakiś czas zechcą zająć miejsce opustoszałe po prawdziwych wielkich bogach archaicznych. Jaka wówczas będzie pozycja człowieka? DZIĘKUJĘ ZA SPOTKANIE Krzysztof Kowalski „Eros i kostucha” LSW Warszawa 1990 str 276 Zapraszam 29 marca 2014 roku na rozmowę o systemie ANDROID Uniwersytet Otwarty AGH 8 marca 2014 Mariusz KLAPPER