Wprowadzenie do baz danych
Transkrypt
Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles’a Bachman’a pierwszy system zarządzania bazami danych. W 1970 r. E.F.Codd zaproponował relacyjny model danych. Jednym z pierwszych implementacji modelu relacyjnego były: Ingress i System R. Trochę historii c.d. Oracle i DB2 dostępne były dopiero około roku 1980. W latach 90 skupiono się na obiektowych bazach danych W latach 90 rozprzestrzeniły się bazy danych Open Source takie jak PostgreSQL oraz MySQL Definicja bazy danych Baza danych to zbór informacji zapisanych w ściśle określony sposób w strukturach odpowiadających założonemu modelowi danych, czyli obejmuje dane oraz program komputerowy wyspecjalizowany do gromadzenia i przetwarzania tych danych. Taki program nazywamy „Systemem zarządzania bazą danych”. Baza danych oznacza zbór danych, opisujący pewien wybrany fragment rzeczywistości. Cechy charakterystyczne baz danych Trwałość danych Rozmiar wolumenu danych Złożoność danych Trwałość danych Oznacza, że dane przechowywane w bazie danych nie są ulotne. Czyli okres przechowywania danych jest ograniczony wyłącznie okresem żywotności nośnika danych. Po zapisaniu danych do baz danych ich trwałość jest niezależna od istnienia i działania aplikacji oraz od platformy sprzętowo-programowej. Rozmiar wolumenu danych Często dane gromadzone w bazie danych nie mieszczą się w pamięci operacyjnej, więc do ich przechowywania potrzebna jest pamięć zewnętrzna (np. Dyskowa). Złożoność danych Złożoność ich struktur i zależności pomiędzy nimi Złożoność semantyczna danych Na dane są często nakładane ograniczenia integralności, które gwarantują pojawienie się w bazie, danych spełniające te ograniczenia 6 podstawowych wymagań dla baz danych Spójność baz danych Wierne odzwierciedlenie danych rzeczywistych: dane przechowywane w bazie danych są takie jak w świecie rzeczywistym, który ta baza danych reprezentuje Spełnienie ograniczeń nałożonych przez użytkowników Brak anomalii wynikających ze współbieżnego dostępu do danych 6 podstawowych wymagań dla baz danych c.d. Efektywne przetwarzanie danych : czyli wstawianie nowych danych, modyfikowanie istniejących, usuwania oraz wyszukiwania danych Poprawne modelowanie świata rzeczywistego : struktura bazy danych musi odzwierciedlać w poprawny sposób obiekty świata rzeczywistego i powiązania pomiędzy tymi obiektami ( musi być zgodny z tzw modelem danych). 6 podstawowych wymagań dla baz danych c.d. Autoryzacja dostępu do danych: czyli dostęp do bazy danych mają tylko jej użytkownicy identyfikowani unikalną nazwą i hasłem. Możliwość równoczesnej pracy wielu użytkowników Wsparcie dla metadanych : metadane to dane o bazie danych, czyli opisują dane przechowywane w bazie, struktury danych, użytkowników i ich uprawnienia. Model danych Spójny zestaw pojęć, który służy do opisywania danych i związków pomiędzy nimi oraz manipulowania danymi i ich związkami Pewna reprezentacja wziętych ze świata rzeczywistego obiektów, zdarzeń i powiązań między nimi Abstrakcja, która koncentruje się na istotnych, swoistych aspektach pewnego fragmentu rzeczywistości, a pomija cechy przypadkowe Składniki modelu danych Część strukturalna : zawiera zbiór zasad, zgodnie z którymi powinny być konstruowane bazy danych Część wykonawcza : opisuje typ dopuszczalnych operacji na danych Modele baz danych Hierarchiczny : świat rzeczywisty jest opisywany za pomocą drzew Sieciowy : świat modelowany jest opisywany za pomocą grafów Relacyjny : wykorzystywanie tabel dwuwymiarowych Obiektowy : składniki programowania obiektowego (obiekty) Logiczny : wykorzystanie logiki Podział baz danych Bazy proste: Kartotekowe Hierarchiczne Bazy złożone: Relacyjne Obiektowe Relacyjno - obiektowe Strumieniowe Temporalne SZDB System zarządzania bazą danych System zarządzania bazą danych oprogramowanie bądź system informatyczny służący do zarządzania bazą danych. System zarządzania bazą danych może być również serwerem bazy danych (SBD) lub też może udostępniać bazę danych lokalnie – na określonym komputerze. System zarządzania bazą danych SZDB oferuje dostęp do danych przechowywanych w bazie danych oraz wykonywanie operacji na danych. Prosta def. moduł programowy, którego zadaniem jest zarządzanie całą bazą danych oraz realizowanie żądań aplikacji użytkowników Elementy środowiska SZDB Wyróżnia się pięć podstawowych elementów środowiska SZBD: 1. sprzęt, 2. oprogramowanie, 3. dane, 4. procedury, 5. ludzie. 1. Sprzęt Sprzętem może być: pojedynczy komputer, duży, wielodostępny komputer, sieć komputerów. 2. Oprogramowanie Program SZBD Program aplikacji System operacyjny SZBD może posiadać wbudowane narzędzie czwartej generacji do tworzenia i zarządzania danymi w bazie danych 3. Dane / 4. Procedury Dane w bazie danych Procedury – to instrukcje i polecenia, które dotyczą procesu projektowania bazy danych, jak i późniejszego jej użytkowania. Użytkownicy bazy danych oraz pracownicy zarządzający bazą potrzebują udokumentowanych procedur pozwalających korzystać z systemu. Przykładowe procedury: uruchomienia i zamknięcia SZBD, logowania się do SZBD, wykorzystania konkretnej funkcji SZBD czy aplikacji, zmiany struktur i ilości tabel, poprawy efektywności bazy danych, tworzenia kopii bazy danych, obsługi awarii sprzętu lub oprogramowania 5. Ludzie Administrator bazy danych Projektant bazy danych Twórca aplikacji dla użytkowników Użytkownik - klient KLIENCI SIEĆ SZBD BAZA DANYCH Przykłady SZBD Komercyjne: Oracle IBM DB2 UDB IBM Informix(R) Dynamic Server Microsoft SQL Server Sybase Adaptive Server Przykłady SZBD Niekomercyjne: MySQL PostgreSQL FireBird