klucz główny – jedna lub więcej kolumn tabeli, w których wartości jednoznacznie identyfikują każdy wiersz w tabeli. Klucz główny jest wybierany ze zbioru kluczy kandydujących. Pozostałe klucze – klucze wtórne.
klucz wtórny - zbiór atrybutów z jednej relacji, który odpowiada kluczowi kandydującemu pewnej relacji.
transakcje (metoda znaczników czasu) - Elementy bazy danych nie są tu blokowane (oszczędza to czas realizacji). Ta metoda nie traci czasu na blokowanie, lecz realizuje transakcję lub umieszcza ją w kolejce Ta metoda wymaga pewnego czasu na realizację transakcji. Jest efektywna gdy nie ma konfliktów między transakcjami. Zasada tej metody polega na nadawaniu każdej transakcji znacznika czasowego. Są one liczbami generowanymi w każdym takcie zegara. Istnieje szeregowalność pojawiających się transakcji. Każda transakcja ma inny znacznik czasowy, niezależnie od tego co chce robić. Znaczniki powinny być jak najmniejszymi liczbami. Należy często kopiować bazę, aby znaczniki nie były zbyt duże. Najczęściej są one 16-bitowe.
oprogramowanie łączące ODBC – standardowe, zwane otwartym łączem z bazami danych. Standard opracowany przez Microsoft na zasadzie interfejsu. ODBC sprowadza się do definiowalnej biblioteki wywołań dostępu do b. d. Umożliwia programiście otworzenie połączenia aplikacji ze środowiskiem b. d. Sprowadzamy dane z b. d. do aplikacji klienta. Program sterownika ODBC odwołuje się do sterowników poszczególnych systemów zarządzania b. d. (DBMS), a te do różnych systemów ZBD.
struktura szbd - Nagłówek - skład: nazwa relacji, nazwa zbioru z krotkami, liczba pól, typy kolumn. Tabela - skład: header krotki (znacznik kasowania znajdujący się obok krotki; służy do tego aby fizycznie nie usuwać rekordów; może on być także nieco bardziej rozbudowany; w związku z powyższym bazie danych potrzebne jest okresowe czyszczenie), krotka. S.Z.B.D. zawiera też pliki indeksowe – znajdują się w nich informacje o metodach wyszukiwania rekordów; zawierają wartość klucza i numer rekordu, w którym ta wartość występuje; można założyć po jednym pliku indeksowym dla każdego klucza.
funkcje i zadania DBMS - organizacja plików (dotyczy sposobu przechowywania danych na urządzeniach zewnętrznych), mechanizmy dostępu (sposób zapisu wymaga odpowiednich mechanizmów dostępu do plików), Zarządzanie transakcjami (kontrola współbieżności i spójności baz danych), zarządzanie słownikami (słownik zawiera pewne informacje ogólne o systemie bazodanowym), zarządzanie zapytaniami, sporządzanie kopii i odtwarzanie bazy danych po awarii.
Szeregowany harmonogram transakcji - Harmonogram jest szeregowalny (dający się uszeregować), jeżeli wynik działania tego harmonogramu jest równoważny wynikowi otrzymanemu za pomocą pewnego harmonogramu sekwencyjnego. Jeżeli w momencie pojawienia się harmonogramu okaże się że jest on szeregowalny, to transakcja może być wykonywana w systemie bazodanowym. W module zarządzania blokadami sprawdza się czy harmonogram jest szeregowalny. Nie każdy harmonogram jest sprawdzany przy realizacji w implementacjach BD. Większość harmonogramów jest sprawdzana z punktu widzenia operacji zapisu, odczytu, zablokowania, odblokowania. Poprzez program sprawdzający szeregowalność harmonogramu można osiągnąć rozwiązanie problemu impasu. Dla wszystkich jednostek bazy danych wprowadza się jeden lub więcej protokołów przestrzeganych przez wszystkie transakcje.
ERD - To metoda graficzna modelowania schematu logicznego bazy danych. Diagramy ERD składają się z trzech głównych elementów: zbioru encji (analogia klasy, encje jako elementy zbioru encji są odpowiednikami obiektów, będących instancjami klasy), atrybutów (element, którego wartość charakteryzuje własność encji) i związków (opisują połączenia między dwoma lub większą liczbą zbiorów encji).
metody blokowania - metoda całkowitego blokowania wszystkich jednostek, blokowanie zapisu jednej jednostki. Ta metoda zakłada że blokada zakładana jest na wszystkie kopie. Blokowanie kopii jest częścią blokowania jednostki. Transakcja blokuje zapis jednostki A, gdy zablokuje zapis dowolnej jej kopii. Transakcja całkowicie blokuje jednostkę A, gdy blokuje wszystkie jej kopie. Pozostale metody: metoda węzła pierwotnego, żetonu w formie pierwotnej, węzła centralnego.
JDBC - Javowy odpowiednik ODBC, podobnie jak ODBC ten sterownik działa przekazując wywołania sterownikowi JDBC. Używa 2 różnych architektur współpracy z serwerem danych:
1. sterownik JDBC komunikuje się bezpośrednio z serwerem danych i tłumaczy instrukcje JDBC na wywołania rozpoznawane przez daną bazę
2. sterownik JDBC wymienia dane ze sterownikiem ODBC na serwerze i tłumaczy instrukcje JDBC na wywołania ODBC, a dopiero zadaniem sterownika ODBC lub serwera jest komunikacja z serwerem danych
2-Phase Commit - dla zapewnienia własności atomowości transakcji rozproszonych opracowano protokół zatwierdzania dwufazowego. Faza 1 – Prepare: węzły (serwery) biorące udział w transakcji przygotowują się do jej zatwierdzenia (na żądanie koordynatora transakcji), Faza 2 – Commit: gdy wszystkie węzły są gotowe do zatwierdzenia transakcji następuje jej rzeczywiste zatwierdzenie.
2-Phase Locking - szeregowalność jest zachowana, jeżeli cała transakcja ma dwie fazy: rosnącą i skracającą. Faza 1 rosnaca (zakladanie zamkow), miedzy 1 a 2 faza jest potwierdzenie (commit) trwajace milisekundy. Faza 2 skracajaca (zwalnianie zamkow).
Moduł Zarządzania Transakcjami - odpowiada za spójność bazy danych i spójność całego systemu. Musi on gwarantować, że wiele jednocześnie przetwarzanych zapytań w systemie nie będzie sobie wzajemnie przeszkadzać oraz, że żadne dane nie zostaną utracone, nawet wówczas gdy nastąpi awaria systemu. Moduł MZT współdziała z modułem obsługi zapytań (procesorem zapytań), ponieważ zwykle MZT musi mieć dostęp do szczegółów o danych, na których przetwarza się bieżące zapytania, w celu uniknięcia konfliktów. Może się zdarzyć, część przetwarzania będzie musiała być wstrzymana (opóźniona) by uniknąć konfliktów. Poprawność wykonania transakcji jest osiągnięta dzięki własnościom transakcji określanym symbolem ACID. A (atomicity) – niepodzielność, C (consistancy) – spójność, I (isolaton) – izolacja, D (durability) – trwałość.
suma mnogościowa – suma krotek dwóch lub więcej relacji (krotki się nie powtarzają); warunkiem poprawności jest wzajemna zgodność pól i ich typów w obu relacjach, z których ta suma powstaje; w SQL: „SELECT nazwisko, imię FROM studenci UNION nazwisko, imię FROM nauczyciel”.
różnica mnogościowa – polega na pobraniu krotek występujących w pierwszej relacji a nie występujących w drugiej; składnia j.w. ale używamy słowa kluczowego MINUS.
serwer stron – przedmiotem zarzadzania sa fizyczne strony dyskowe. klient – aplikacja, menedzer obiektow, plikow/indeksow, pamieci podrecznej <-> serwer menedzer stron pamieci podrecznej, dziennika blokowania, alokacja pamieci we/wy -> obiektowa baza danych.
klucz potencjalny - klucz o minimalnej ilości atrybutów; jest to kolumna lub zbiór kolumn, które mogą występować jako jednoznaczny identyfikator wierszy w tabeli.
zadania modułu zarządzania pamięcią - Wybór właściwych danych z pamięci i w razie potrzeby dostosowanie tych danych do wymagań modułów, które odwołują się do MZP. W prostych systemach baz danych MZP może być tym samym co system plików podstawowego systemu operacyjnego. Wówczas MZP składa się z dwóch modułów: Zarządzania plikami (przechowuje dane o miejscu zapisania plików na dysku i na polecenie modułu zarządzania buforami przesyła zawartość bloku lub bloków danych z pliku dyskowego) i Zarządzania buforami (obsługuje pamięć operacyjną, wybierając w pamięci operacyjnej strony, które zostaną przydzielone dla wybranych z pliku bloków danych. Blok z dysku może być przez chwilę przechowywany w pamięci operacyjnej ale musi zostać przesłany z powrotem na dysk, gdy tylko pojawi się potrzeba zapisu w miejsce pamięci operacyjnej innego bloku danych; powrót bloku na dysk może również nastąpić w wyniku żądania modułu obsługi transakcji).
Co oznaczają skróty ISBL, QUEL, QBL (języki zapytań do relacyjnych baz danych)
ISBL – oparty na algebrze relacji (suma mnogościowa, iloczyn mnogościowy, selekcja, projekcja, łączenie); obowiązuje tu inna notacja zapisu niż w algebrze krotek.
QUEL – język oparty na relacyjnym rachunku krotek; używa się też frazy typu „range is”, która określa zmienną krotkową, która wskazuje te krotki, które należą do danej relacji i spełniają określone warunki; używa się też frazy typu „reprieve into” (<- to na pewno nie po angielsku) – gdzie należy umieścić wyszukane krotki; można zadawać pytania odnośnie dwóch tub więcej tabel; można usuwać, dodawać i sortować krotki; język QUEL został rozszerzony o tzw. funkcje agregujące – obliczenia sumy, min, max w danej kolumnie; QUEL można zanurzyć w języku C.
QBE – (Query By Example) oparty na relacyjnym rachunku dziedzin (kolumn); ma charakter dialogowy, wizualny; zakresem zmiennej jest atrybut a nie cała krotka; działa zasada typu: „szukaj takich krotek, że x<y+30”; wprowadzono funkcje agregujące: suma, min, max, średnia, ilość wystąpień; język wyposażony w mechanizmy typowe dla DML pozwalające na zmianę wartości oraz dodanie nowej tabeli, dodawanie i usuwanie atrybutów
odbieranie użytkownikowi prawa dostępu – REVOKE [przywilej] ON baza_danych.* FROM ‘[użytkownik]'@'[host]' np. revoke all on *.* from ‘guest’@’localhost’
Etapy projektowania RBD - analiza „miniświata” (konstrukcja modelu konceptualnego), transformacja modelu konceptularnego do modelu relacyjnego, tabele i relacje, proces normalizacji danych, tabele i relacje znormalizowane, wybór struktur fizycznych i określenie zasad dostępu do bazy danych, skrojenie systemu.
wips1