Więzy integralności referencyjnej i klucze obce. PYTANIE NA EGZAMIN LICENCJACKI
Relacyjny model baz danych. PYTANIE NA EGZAMIN LICENCJACKI
Wszystkie wartości danych oparte są na prostych typach danych. Wszystkie dane w bazie relacyjnej przedstawiane są w formie dwuwymiarowych tabel (relacji). Każda tabela zawiera zero lub więcej wierszy (krotek) i jedną lub więcej kolumn (atrybutów). Na każdy wiersz składają się jednakowo ułożone wartości. Po wprowadzeniu danych do bazy, możliwe jest wiązanie danych i wykonywanie stosunkowo złożonych operacji w granicach całej bazy danych. Wszystkie operacje wykonywane są w oparciu o algebrę relacji, bez odwoływania się do położenia wiersza tabeli (wiersze w relacyjnej bazie danych przechowywane są w porządku zupełnie dowolnym nie musi on odzwierciedlać ani kolejności ich wprowadzania, ani kolejności ich przechowywania). Z braku możliwości identyfikacji wiersza przez jego pozycję pojawia się potrzeba obecności jednej lub więcej kolumn o wartościach niepowtarzalnych w granicach całej tabeli, pozwalających odnaleźć konkretny wiersz. Kolumny te określa się jako klucz podstawowy tabeli....
Złączenia wewnętrzne i zewnętrzne, algorytmy realizacji złączeń. Zob. Elmasri: R.15.3-15.6 PYTANIE NA EGZAMIN LICENCJACKI
HURTOWNIE DANYCH Co trzeci menedżer podejmuje większość decyzji, mając niekompletne informacje, a co drugi nie ma w swojej firmie dostępu do informacji niezbędnych do wykonywania pracy. http://magazynit.pl http://wnp.pl
Baza danych to (1) zorganizowany zbiór danych (2) reprezentujący pewien fragment świata rzeczywistego, (3) zaprojektowany, zbudowany i utrzymywany dla określonej grupy użytkowników, oraz (4) dla określonego sposobu korzystania z tych danych. Z punktu widzenia przedsiębiorstw odróżnia się: bazy operacyjne (bazy transakcyjne, OLTP lub po prostu bazy danych) bazy analityczne (hurtownie danych, bazy OLAP, Data Warehouse, Data Mart, składnice danych).
Funkcjonowanie tradycyjnych, czyli operacyjnych baz danych (np. relacyjnych czy obiektowych), opiera się na przetwarzaniu transakcji (OLTP, OnLine Transaction Processing), które obejmują wstawianie, aktualizację i usuwanie danych, oraz na obsłudze zapytań. Zadania OLTP i zapytania służą do obsługi codziennych działań przedsiębiorstwa związanych z dużą liczbą transakcji; dotyczą stosunkowo niewielkich części bazy, zwykle pojedynczych rekordów danych.
Hurtownie danych stanowią platformę integrującą: masowe (rzędu TB-ów) dane historyczne i dane zbiorcze pochodzące z różnych źródeł, i sukcesywnie uzupełniane narzędzia do przeprowadzania analiz (także wielowymiarowych) zwane narzędziami bezpośredniego przetwarzania analitycznego (OLAP, OnLine Analytical Processing) narzędzia do eksploracji danych (DM, Data Mining) narzędzia do wspomagania podejmowania decyzji (DSS, Decision Support Systems) narzędzia informowania kierownictwa (EIS, Executive Information Systems)
Do typowych funkcji hurtowni należą: analizy przy użyciu narzędzi OLAP (w tym także analizy statystyczne) obsługa zapytań ad hoc (zwykle w SQL) eksploracja danych (metody oparte na statystyce oraz metody sztucznej inteligencji) wspomaganie podejmowania decyzji (narzędzia DSS) informowanie kierownictwa (EIS) narzędzia wizualizacji danych. Funkcje te realizuje zbiór aplikacji nazywany często systemem informacji gospodarczej (Business Intelligence).
Studium przypadku Zastosowanie narzędzi BI w szwedzkim mieście Malmo pozwoliło na schwytanie seryjnego mordercy. Zdaniem miejscowej policji wykorzystanie oprogramowania QlikView pozwoliło przeanalizować informacje i raporty z 10 lat. Załadowanie danych i skonfigurowanie interaktywnych raportów zajęło 3 godziny. Ręczne porównanie tych danych przez jednego policjanta zajęłoby 43 lata.
Najważniejszym i najtrudniejszym problemem dotyczącym hurtowni jest eksploracja danych (przekopywanie danych, Data Mining). Są to wszelkiego rodzaju procesy prowadzące do odkrywania ukrytej wiedzy, nieznanych dotąd użytecznych regularności, wzorów zachowań i ich zmian, zależności między zdarzeniami, pojawiania się anomalii etc. W procesach tych wykorzystuje się używane już wcześniej w ekonomii metody statystyczne oraz używane w informatyce metody uczenia się maszyn i inne metody sztucznej inteligencji. Tworzone są również nowe oryginalne metody, specyficzne dla problematyki eksploracji danych.
Literatura: D.T. Larose: Odkrywanie wiedzy z danych. Wprowadzenie do eksploracji danych. WN PWN 2006. D. Hand i in.: Eksploracja danych. WNT 2005 J. Celko: SQL Zaawansowane techniki programowania. WN PWN 2008 strony producentów oprogramowania: www.comarch.pl, www.oracle.com, www.microsoft.com, www.statsoft.pl...
DUMP bazy w MySQL Po uruchomieniu klienta ROOT definiujemy nowego użytkownika, nadajemy mu przywileje i odświeżamy tabelę użytkowników: CREATE USER 'root2'@'localhost' IDENTIFIED BY 'root2'; GRANT ALL PRIVILEGES ON *.* TO 'root2'@'localhost'; FLUSH PRIVILEGES;
USE MYSQL; SHOW TABLES; SELECT * FROM USER \G
F:\my_SQL>mysql\bin\mysqldump new -u root2 -p Enter password: *****
F:\my_SQL>mysql\bin\mysqldump new -u root2 -p >kopia.sql Enter password: ***** Plik zostanie utworzony ma dysku f: w katalogu bieżącym!
Bazy NoSQL Baza NoSQL (Not Only SQL) nie korzystają ze sztywnej struktury modelu relacyjnego i nie spełniają wszystkich założeń ACID (Atomicity - atomowość, Consistency spójność, Isolation - izolacja, Durability - trwałość). NoSQL sprawdzają się najlepiej do zapisywania dużych ilości danych (tzw. Big Data).
Wyróżniamy kilka głównych typów NoSQL: bazy klucz-wartość (ang. key-value); pozwalają dodawać i odczytywać wartości poprzez odwołanie się do klucza. bazy kolumnowe (ang. column oriented stores); dane zapisywane są w kolumnach. Na tym modelu została oparta baza danych Cassandra wykorzystywana przez Facebook. Inne przykłady to Hypertable i Hadoop / Hbase.
bazy dokumentowe; dane przechowywane są w dokumentach, a w każdym dokumencie obowiązuje struktura klucz-wartość. Przykładowe bazy danych to MongoDB, CouchDB, IBM Domino. bazy oparte na grafach (ang. graph stores); wykorzystują indeksów tylko wskaźniki połączone z przylegającymi elementami. Najpopularniejszą bazą tego typu jest Neo4j.
bazy obiektowe (ang. object databases); model wykorzystywany w obiektowych językach programowania wysokiego poziomu. Przykłady: Versant, Objectivity, db4o, EyeDB, SBQL. inne bazy danych - zazwyczaj stanowią hybrydę kilku z wyżej wymienionych. Przykład: OrientDB.
PRZYKŁADY ZADAŃ Z EGZAMINÓW Z LAT UBIEGŁYCH Wyjaśnij, co to są wiersze widma (phantom reads).
Wymyśl konkretny przykład zależności funkcyjnej przechodniej.
Co to jest baza danych w myśl ustawy o ochronie baz danych? Kogo ustawa uważa za producenta bazy danych?
USTAWA z dnia 27 lipca 2001 r. o ochronie baz danych (z późniejszymi zm.) 1. W rozumieniu ustawy: 1) baza danych oznacza zbiór danych lub jakichkolwiek innych materiałów i elementów zgromadzonych według określonej systematyki lub metody, indywidualnie dostępnych w jakikolwiek sposób, w tym środkami elektronicznymi, wymagający istotnego, co do jakości lub ilości, nakładu inwestycyjnego w celu sporządzenia, weryfikacji lub prezentacji jego zawartości,... 4) producentem bazy danych jest osoba fizyczna, prawna lub jednostka organizacyjna nieposiadająca osobowości prawnej, która ponosi ryzyko nakładu inwestycyjnego przy tworzeniu bazy danych.
Kiedy postać 3NF jest lepsza od BCNF?
Wymień nazwy aksjomatów Armstronga.
Czy związek encji 3-go stopnia może łączyć w trójki encje dwóch typów? Jeżeli nie, to uzasadnij dlaczego. Jeżeli tak, to wymyśl przykład.
Dla bazy danych wypożyczalni kaset wideo zrealizowanej w MSQL, której fragment przedstawiono niżej, zbuduj zapytanie, które wyszuka filmy zakupione w maju lub czerwcu ubiegłego roku i jeszcze nigdy nie wypożyczane. FILM (Id, Tytuł) KASETA (Nr, IdFilmu, DataZakupu) WYPOŻYCZENIE (NrKasety, DataWypo, DataZwrotu, NrKlienta)...
Niech R rozpięta na schemacie o zbiorze atrybutów S i niech S1 i S2 to dowolne podzbiory S. Przy jakim założeniu prawdziwa jest równość πs2(πs1(r))=πs2(r)?