1. co to jest klauzula time slice (kwant czasu ale jak to sie ma do
DBMS?)
2. ziarnistosc
Grube ziarna (baza danych, relacja) -mały stopień współbieżności
Miałkie ziarna (np. element krotki)-duża pracochłonność zakładania zamków,
duże zapotrzebowanie na dodatkową
pamięć na zamki, przeciążenie sieci
Na dodatek, to trzeba zgrać z innymi mechanizmami, np. buforowaniem w RAM.
Testy dla systemów relacyjnych pokazują, że optymalną ziarnistość zapewnia
fizyczna strona.
Jest to wynik przykry (i tendencyjny), ponieważ uniemożliwia bardziej inteligentne
mechanizmy przetwarzania transakcji, takie, które rozumieją semantykę tego, co blokują
(np. predicate locking).
Pomysł (Gray, 1977) polega na tym, aby obiekty do blokowania organizować
hierarchicznie i blokować w nich tyle, ile trzeba. Pomysł bardzo dobry dla obiektowych
baz danych.
A blokuje
do aktualizacji
cały obiekt
A blokuje
B blokuje
do aktualizacji
do aktualizacji
kawałek obiektu
kawałek obiektu
A blokuje
do czytania
cały obiekt
B blokuje
do czytania
kawałek obiektu
Problem ze zmiennÄ…
ziarnistością polega na
tym, że (chyba) nikt nie
odważył się sprawdzić to
w powszechnej praktyce.
3. baza oparta na rekordach
Cechy modeli danych w bazach danych opartych na rekordach:
·ð Baza danych jest zwykle strukturÄ… niewielu typów rekordów, a każdy taki typ rekordu
jest strukturą o stałym formacie ,
·ð Każdy typ rekordu skÅ‚ada siÄ™ ze staÅ‚ej iloÅ›ci tzw. pól,
·ð Pola w rekordzie sÄ… zwykle staÅ‚ej dÅ‚ugoÅ›ci (zależne to jest od implementacji),
·ð Model oparty na rekordach nie wÅ‚Ä…cza mechanizmów bezpoÅ›redniej reprezentacji
kodu w bazie danych,
·ð Oddzielny jÄ™zyk jest kojarzony z modelem w celu użycia szybkich zapytaÅ„ do bazy
danych i aktualizacji.
·ð Model rekordowy zostaÅ‚ szeroko wykorzystany w tzw. hierarchicznych, sieciowych i
relacyjnych bazach danych.
4. bazy federacyjne ich zalety (to sÄ… akurat ich cechy...)
·ð Jest to kolekcja heterogenicznych, autonomicznych baz danych, poÅ‚Ä…czonych sieciÄ…
komputerową, zarządzana specjalnym systemem określanym jako Federacyjny System
Zarządzania Bazą Danych (FSZBD). Może włączać dziesiątki, setki, tysiące lub
więcej lokalnych baz danych.
·ð FSZBD umożliwia tworzenie aplikacji globalnych, dziaÅ‚ajÄ…cych na caÅ‚oÅ›ci
federacyjnej bazy danych. Jest ona zdefiniowana schematem federacyjnym, będącym
sumą schematów eksportowych lokalnych baz danych.
·ð FSZBD zapewnia warunki pracy twórców aplikacji globalnych okreÅ›lane jako
przezroczystość i niezależność danych.
·ð FSZBD może być zainstalowany w wielu wÄ™zÅ‚ach sieci (m.in. w każdym lokalnym
miejscu FBD), umożliwiając tworzenie aplikacji globalnych w wielu miejscach
geograficznych. Poszczególne FSZBD współpracują ze sobą celem zapewnienia
spójności i integralności przetwarzania.
Aplikacje Aplikacje
globalne globalne
FSZ FSZ
Przestrz Przestrz
BD BD
eń eń
.
robocza robocza
1 m
Schemat Schemat
FBD FBD
.
Sieć
kompute
rowa
.
Schemat Schemat Schemat
eksportowy 1 eksportowy 2 eksportowy n
Osłona 1 Osłona 2 Osłona n
API 1 API 2 API n
Lokal Lokal Lokal
.
ny BD 1 ny BD 2 ny BD n
SZBD SZBD SZBD
1 2 n
Aplikacje Aplikacje Aplikacje
.
lokalne lokalne lokalne
5. klauzule unique i not null opisac i podac przyklad uzycia
·ð Każda kolumna w tabeli może być zdefiniowana jako NOT NULL. Oznacza to, że
.
użytkownik nie może wprowadzić wartości null do tej kolumny.
·ð DomyÅ›lnÄ… specyfikacjÄ… dla kolumny jest NULL. To znaczy wartoÅ›ci null sÄ…
dozwolone w kolumnie.
·ð Każda kolumna może być również zdefiniowana jako UNIQUE (jednoznaczna). Ta
klauzula zabrania użytkownikowi wprowadzania powtarzających się wartości do
kolumny.
·ð KombinacjÄ™ NOT NULL i UNIQUE możemy użyć do zdefiniowania cech klucza
głównego.
·ð przykÅ‚ad:
CREATE TABLE Moduły
(NazwaModułu Character( 30) NOT NULL UNIQUE,
Poziom Smallint DEFAULT 1,
KodKursu Character(3),
NrPrac Integer) ;
6. Napisac o sposobach blokowania (czyli 2PL..)
·ð Dynamiczne dwufazowe blokowanie (2PL): transakcje ustanawiajÄ… zamki do czytania
(S) które następnie mogą podwyższyć do zamków do aktualizacji (X). Jeżeli zamek
jest S, to odrzucana jest próba założenia zamka X, jeżeli zamek jest X, to odrzucana
jest jakakolwiek próba założenia innego zamka. System prowadzi dziennik i graf
czekania, umożliwiając odtworzenie po zerwaniu i przeciwdziałając zakleszczeniu.
·ð Czekasz-umieraj (wait-die) dwufazowy (WD): Tak jak dla 2PL, ale transakcja której
odmówiono dostępu ginie. Są odmiany tego algorytmu: z dwóch transakcji w
konflikcie ginie młodsza, ginie starsza, ginie ta, co się mniej narobiła, ginie ta, która
jest mniej ważna, itd.
·ð Dynamiczne dwufazowe blokowanie bez podwyższania zamków: tak jak 2PL, ale
nie ma podwyższania zamków z S do X.
·ð WstÄ™pne żądanie zasobów (opis już byÅ‚ ???).
7. scharakteryzowac JDBC
]ð Java także wykorzysta technologiÄ™ ODBC. ZostaÅ‚a ona realizowana jako interfejs
niezależny od architektury bazy danych i ma nazwę JDBC (ang. Java DataBase
Connectivity).
]ð JDBC jest pomostem pomiÄ™dzy przestrzeniami bazy danych, majÄ…cÄ… sterownik
ODBC, i aplikacji, napisanej w języku Java. Interfejs ten operuje na poziomie SQL.
]ð DziÄ™ki JDBC aplikacje bazodanowe napisane w Javie sÄ… niezależne od sprzÄ™tu oraz
stosowanej bazy danych. Niezależność od systemu operacyjnego zapewnia sama Java.
]ð Sterownikiem JDBC, Å‚Ä…czÄ…cym aplikacjÄ™ z konkretnÄ… bazÄ… danych, nazywa siÄ™ zestaw
klas, które implementują interfejs ODBC. Zadaniem JDBC jest ukrycie przez
programista wszelkich specyficznych własności bazy danych. Dzięki temu
programista może skupić się wyłączne na swojej aplikacji, nie wdając się w szczegóły
związane z obsługą używanej przez niego bazy danych.
]ð Aby umożliwić niezależność od platformy, JDBC udostÄ™pnia menedżera sterowników
ODBC, który dynamiczne zarządza różnymi obiektami sterowników. Obiekty te będą
wykorzystywać zapytania do bazy danych.
]ð kolejność czynnoÅ›ci:
·ð zaÅ‚adowanie do pamiÄ™ci potrzebny sterownik JDBC
·ð poÅ‚Ä…czenie z bazÄ… danych
·ð wykonanie zapytania SQL
·ð wywoÅ‚anie danych ze zbioru skutecznego (czyli w pÄ™tli while stosujemy
funkcjÄ™ next() na obiekcie ResultSet i uzyskujemy kolejny rekord)
8. ERD
Diagramy związków encji (ang. entity relationship diagram)
·ð To metoda graficzna modelowania schematu logicznego bazy danych,
·ð diagramy ERD skÅ‚adajÄ… siÄ™ z trzech głównych elementów (zbioru encji, atrybutów i
związków)
Definicje składowych diagramu ERD
·ð Zbiór encja (entity sets) analogia klasy, encje jako elementy zbioru encji sÄ…
odpowiednikami obiektów, będących instancjami klasy inaczej rzeczowniki
odwzorowujące obiekty modelowanego świata rzeczywistego
·ð Atrybut jest to taki element, którego wartość charakteryzuje wÅ‚asność encji
·ð ZwiÄ…zek opisuje poÅ‚Ä…czenie miÄ™dzy dwoma lub wiÄ™kszÄ… liczbÄ… zbiorów encji
9. jakies atrybuty byly podane (id_czasteczki, x,y,z, predkosc
czasteczki) i napisac jakie zaleznosci funkcjonalne wystepuja
10. zadania i funkcje DBMS
11. Funkcje z innego slajdu:
12. suma mnogosciowa i przyklad
·ð Operator sumy jÄ™zyka SQL odpowiada operatorowi sumy algebry
·ð relacyjnej.
·ð Daje on możliwość poÅ‚Ä…czenia wyników dwóch zgodnych zapytaÅ„.
·ð Na przykÅ‚ad poniższe zapytanie produkuje wynik Å‚Ä…czÄ…cy informacje na temat
modułów studia informatyczne z modułami na wydziale elektrycznym .
SELECT NazwaModulu, Poziom
FROM Moduly
WHERE KodKursu = 'CSD'
UNION
SELECT NazwaModulu, Poziom
FROM Moduly WHERE KodKursu = 'EED'
13. co to harmonogram szeregowalności
Współbieżne wykonanie transakcji jest poprawne wtedy i tylko wtedy jeżeli jego efekt jest
dokładnie taki sam jak efekt wykonania tych transakcji pojedynczo po kolei.
Ta własność nosi nazwę szeregowalności (serializability)
Plan wykonania transakcji:
·ð Transakcje rozbija siÄ™ na mniejsze fragmenty zwane operacjami.
·ð Plan ustala jak po kolei majÄ… być wykonywane operacje z poszczególnych transakcji.
·ð Plan jest szeregowalny, jeżeli jego koÅ„cowy efekt jest taki sam, jak wykonanie
transakcji po kolei.
14. Co oznacza skrót PRIMARY KEY i kiedy się go stosuje czy
coÅ› takiego
·ð Każda relacja musi mieć klucz główny. DziÄ™ki temu możemy zapewnić, aby wiersze
nie powtarzały się w relacji.
·ð Klucz główny to jedna lub wiÄ™cej kolumn tabeli, w których wartoÅ›ci jednoznacznie
identyfikują każdy wiersz w tabeli.
·ð W każdej relacji może istnieć wiele kluczy kandydujÄ…cych.
·ð Klucz kandydujÄ…cy to kolumna lub zbiór kolumn, które mogÄ… wystÄ™pować jako
jednoznaczny identyfikator wierszy w tabeli.
·ð Klucz główny jest wybierany ze zbioru kluczy kandydujÄ…cych.
·ð Każdy klucz kandydujÄ…cy, a wiÄ™c także każdy klucz główny, musi mieć dwie
właściwości: musi być jednoznaczny i nie może mieć wartości null.
·ð Każdy klucz kandydujÄ…cy musi być jednoznacznym identyfikatorem. Dlatego nie
może być żadnych powtarzających się układów wartości w kolumnach kluczy
kandydującego lub głównego.
·ð Wartość klucza głównego musi być okreÅ›lona dla każdego wiersza w tabeli.
15. Coś tam z użyciem brokera, czyli architektura serwer-broker-
klient
]ð DostÄ™p do odlegÅ‚ych zasobów sieci komputerowej odbywa siÄ™ miedzy klientem
(klientami) a serwerem (serwerami) nie odbywa się bezpośrednio lecz za
pomocą pośrednika (brokera)
]ð PoÅ›rednik zapewnia przezroczystość do odlegÅ‚ych geograficznie zasobów,
]ð Broker przedstawia wszystkie zasoby w postaci zbioru obiektów, dziÄ™ki czemu
możliwe jest ujednolicenie operacji wykonywanych na zasobach, niezależnie
od ich implementacji i realizacji wewnętrznej,
]ð Fizyczna lokalizacja obiektów nie jest istotna dla użytkownika, gdyż poÅ‚ożenie
obiektów znane jest brokerowi,
]ð PoÅ›rednik otrzymuje zadanie od klienta, lokalizuje serwer z potrzebnymi
zasobami, przekazuje zlecenie oraz przekazuje zwrotnie wynik zlecenia
zrealizowanego przez serwer do klienta
Architektura:
Host klienta
Host serwera
zlecenie
Wywołanie
Pośrednik (Broker)
operacji
wynik,
parametry WY
Klien
Obiek
t
t
16. Czym się różni baza danych od hurtowni danych
z Wikipedii:
Hurtownia danych (ang. data warehouse) rodzaj bazy danych, która jest zorganizowana i
zoptymalizowana pod kątem pewnego wycinka rzeczywistości. Hurtownia danych jest
wyższym szczeblem abstrakcji niż zwykła relacyjna baza danych (choć do jej tworzenia
używane są także podobne technologie). W skład hurtowni wchodzą zbiory danych
zorientowanych tematycznie (np. hurtownia danych klientów). Dane te często pochodzą z
wielu zródeł, są one zintegrowane i przeznaczone wyłącznie do odczytu.
Architektura bazy hurtowni jest zorientowana na optymalizację szybkości
wyszukiwania i jak najefektywniejszą analizę zawartości. Stąd bywa, że hurtownie danych
nie są realizowane za pomocą relacyjnych baz danych, gdyż takie bazy ustępują szybkością
innym rozwiÄ…zaniom. Nie stosuje siÄ™ transakcji.
17. Podaj klauzulę w TSQL, które stosuje się do określenia
kolejności występowania zdarzeń
krótko co to jest w ogóle:
Transact-SQL jest podstawowym językiem programowania baz danych w środowisku MS
SQL Server. Jest zmodyfikowaną i uzupełnioną o elementy typowe dla proceduralnych języ-
ków programowania wersją standardu SQL-92. (mam tutaj na myśli zmienne i instrukcje,
które sterują wykonaniem programu). Te właśnie rozszerzenia dają nam większe możliwości
w stosunku do standardu jakim jest SQL.
pewnie chodzi o to: Keywords for flow control in Transact-SQL include BEGIN and END,
BREAK, CONTINUE, GOTO, IF and ELSE, RETURN, WAITFOR, and WHILE.
http://en.wikipedia.org/wiki/Transact-SQL
18. Jakaś populacja i trzeba było napisać jakie relacje w niej
zachodzą i czy jest prawidłowo coś tam, były tam chyba data
egzaminu, egzaminator, imiÄ™ i nazwisko osoby egzaminowanej,
uprawnienia czy jakoś tak, nie pamiętam dokładnie (???)
19. Co oznacza ACID i po co go wprowadzono
Własności transakcji: ACID
Atomowość (atomicity) - w ramach jednej transakcji wykonują się albo
A wszystkie operacje, albo żadna
Spójność (consistency) - o ile transakcja zastała bazę danych w spójnym
stanie, po jej zakończeniu stan jest również spójny. (W międzyczasie stan może
C
być chwilowo niespójny)
Izolacja (isolation) - transakcja nie wie nic o innych transakcjach i nie musi
uwzględniać ich działania. Czynności wykonane przez daną transakcję są
I
niewidoczne dla innych transakcji aż do jej zakończenia.
Trwałość (durability) - po zakończeniu transakcji jej skutki są na trwale
D
zapamiętane (na dysku) i nie mogą być odwrócone przez zdarzenia losowe (np.
wyłączenie prądu)
20. Metoda znaczników czasowych w dostępie do bazy, omówić
zastosowanie
·ð Każda transakcja w momencie startu dostaje unikalny stempel czasowy, na tyle
precyzyjny, aby móc po stemplach rozróżniać transakcje.
·ð Å»adna zmiana nie jest nanoszona do bazy danych; transakcja dziaÅ‚a na swoich
własnych kopiach, aż do potwierdzenia.
·ð Każdy obiekt bazy danych przechowuje 2 stemple czasowe: transakcji, która ostatnio
brała obiekt do czytania i transakcja, która ostatnio brała obiekt do modyfikacji.
·ð W momencie potwierdzenia sprawdza siÄ™ stemple transakcji oraz wszystkich
pobranych przez nią obiektów. Można dość łatwo wyprowadzić reguły zgodności, np.
Jeżeli obiekt był aktualizowany i stempel na obiekcie do aktualizacji jest taki sam jak
stempel transakcji, to OK, a inaczej zerwij i uruchom od nowa.
Jeżeli obiekt był tylko czytany i stempel na obiekcie do aktualizacji jest starszy niż
stempel transakcji, to OK; inaczej zerwij i uruchom od nowa.
.... (trochę dalszych reguł).
Metoda jest o tyle przyjemna (i to zajebiście, prawda Bożenka?), że zerwanie transakcji
oznacza zlikwidowanie tylko lokalnych kopii obiektów - nie potrzeba nic robić w bazie
danych.
21. budowa DBMS
Aktualizacje
Modyfikacja
zapytania
schematu
Procesor
zapytań
Moduł
ZarzÄ…dzania
Transakcjami
(MZT)
Moduł Zarządzania
Pamięcią
(MZP)
Dane
Metadane
22. Ben Zvi
23. co to ROLLBACK czy jakos tak
ROLLBACK WORK mówi, że należy porzucić transakcję, a wszystkie zmiany danych
dokonane przez transakcję SQL mają być anulowane. Baza danych, z punktu widzenia
użytkowników, powinna się znajdować w takim stanie, jakby nie były wykonywane żadne
zmiany.
24. różnica mnogościowa
25. odnośnie poprawności relacji (???)
26. jakies czasteczki, w sloiku opisane: id_czasteczki,
wspolrzedne x,y,x; predkosc czasteczki, jakie sa relacje, gdzie jest
klucz, czy wogole to jest dobrze zrobione
27. coÅ› chyba o bazach temporalnych i bitemporalnych
Temporalna baza danych - baza danych posiadajÄ…ca informacjÄ™ o czasie
wprowadzenia lub czasie ważności zawartych w niej danych. Temporalne
bazy danych są często administrowane automatycznie, poprzez usuwanie
nieaktualnych danych lub ich archiwizowanie.
The two different notions of time - valid time and transaction time - allow
the distinction of different forms of temporal databases. A historical
database stores data with respect to valid time, a rollback database
stores data with respect to transaction time. A bitemporal database stores
data with respect to both valid time and transaction time.
28. opisac modul zarzadzania pamiecia
Zadaniem Modułu Zarządzania Pamięcią jest:
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 moduł ten 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
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.
29. etapy projektowania relacyjnej bazy danych
MINIÅšWIAT
Analiza miniświata konstrukcja
Diagramy ERD
modelu konceptualnego
Transformacja modelu konceptualnego
do modelu relacyjnego
Tabele i relacje
Proces normalizacji bazy danych
Tabele i relacje znormalizowane
Wybór struktur fizycznych i określenie
zasad dostępu do bazy danych
Fizyczna struktura bazy
danych
Strojenie systemu
30. baza danych oparta o pliki (czy cos takiego)
Problemy z koncepcji zadządzania bazami danych opartej na przetwarzaniu plików:
" Redundancja danych i niezgodność (niespójność, sprzeczność) danych
(informacje mogą być powielane w kilku miejscach, aktualizacja kopii danych
nie musi być realizowana równocześnie),
" Trudności w dostępie do danych (nowe aplikacje muszą przestzregać reguł
wcześniej zaimplementowanych w bazie danych),
" Niekompatybilność danych (dane w różnych plikach, w różnych formatach,
trudności w zapisie nowych programów aplikacji, odwołujących się do bazy
danych),
" Wielu współużytkowników bazy danych (potrzeba równoległej pracy w jednym
czasie wielu użytkowników, konieczność użycia protekcji dla równoczesnych
aktualizacji bazy danych),
" Problem ochrony (każdy użytkownik powinien mieć dostęp do danych
przeznaczonych jedynie dla niego)
" Problem integralności danych (np.: wartość salda ujemnego na koncie klienta
nie może przewyższać wartości zasięgniętego przez klienta kredytu) - problem
trudny do zaimplementowana zwłaszcza wówczas gdy warunki integralności
danych sÄ… zmienne,
" Problem optymalizacji zapytań do bazy danych (musiał być realizowany na
poziomie każdej aplikacji, odwołującej się do bazy danych.
31. opisac model hierarchiczny i sieciowy
model hierarchiczny:
Rekordy zorganizowane w drzewa
Rozwiązanie problemu powtarzalnych grup opiera się na stosowaniu rekordów danych,
które są złożone z kolekcji innych rekordów.
Optymalizacja przechowywanych danych i operacja poszukiwania bardziej wydajna (np.
jaki samochód zawiera określoną część?)
model sieciowy:
Dane w tym modelu reprezentowane sÄ… przez rekordy
Związki między danymi są reprezentowane przez wskazania (pointer)
W sieciowym modelu baz danych wykorzystano pomysł wskazników wewnątrz bazy
danych. Rekordy mogą zawierać odwołania do innych rekordów.
" Wskazniki wewnątrz bazy danych czyli rekordy mogą odwoływać się do innych
rekordów
" Dwa typy rekordów każdy przechowywany w innej tablicy
" Słowniki do przechowywania często powtarzających się nazw.
" Odnośniki tzw. Klucze.
" Pojęcie nil lub puste oznaczające koniec listy
" Tego typu operację można przyspieszyć poprzez stosowanie innych powiązanych list.
" Powoduje to powstanie nadmiernie złożonej struktury.
" Pisanie aplikacji dla tego typu baz danych jest bardzo złożone.
Zalety wszystkie rekordy jednego typu, powiązane z określonym rekordem innego typu,
można znalezć bardzo szybko idąc według wskazników od rekordu początkowego.
Wady - bardzo ciężko wydobyć niektóre informacje
Nazwa Symbo Kurs Wskazn
kraju l ik
Język n
Język nil
n+1
32. co to sa wyrazenia sciezkowe, gdzie sie je stosuje (oglnie
wszystko co wiesz na ten temat)
Wyrażenia ścieżkowe służą do specyfikacji operacji nawigacji w głąb obiektów złożonych,
wzdłuż związków łączących obiekty lub do wyników zwróconych przez wywołania metod
bezparametrowych. Pojedyncza, dowolnie długa ścieżka, może łączyć te trzy przypadki
nawigacji.
http://wazniak.mimuw.edu.pl/index.php?title=ZSBD-2st-1.2-w5.tresc-1.1-Slajd7
33. jak mozna chronic baze danych przed awaria
back up
recovery
log
rollback
checkpoint
replication
34. co to jest spojnosc danych i podac przyklady kiedy dane
moga byc niespojne (cos w tym stylu)
35. byla podana jakas przykladowa tabela i trzeba bylo
zaktualozowac jakis wiersz przy okreslonych warunkach (cos w
stylu ze pracownik o nazwisku Kowalski ma zarabiac o 20% wiecej
jesli jego zarobki nie przekraczaj 2000zl)
UPDATE tabela SET pensja=pensja*1.2 WHERE nazwisko= Kowalski AND pensja<=2000
36. Normalizacja:
#Nr miasta
nazwa miasta
nr regionu
nazwa regionu
nr państwa
nazwa państwa
nr stolicy
nazwa stolicy
Odległość miasta od stolicy
Ilość zakładów w mieście
Ilość ludziów w mieście
Status Miasta
(#nr_miasta, nazwa_miasta, ile_ludzi, ile_zakladow, status)
(#nr_regionu, nazwa_regionu)
(#nr_państwa, nazwa_państwa)
(#nr_stolicy, nazwa_stolicy)
(#nr_miasta, #nr_stolicy, odległość)
(#nr_miasta, #nr_regionu)
(#nr_regionu, #nr_panstwa)
(#nr_panstwa, #nr_miasta)
(#nr_panstwa, #nr_stolicy)
37. Select: tabelki te same co wszyscy, a polecenie - zaznacz
wszystkie oceny towaru, którego zamówiono ponad 20 sztuk i
ktorych ankiety były robione w Szczecinie.
38. Potem było zadanie z zaprojektowaniem bazy danych dla
firmy kurierskiej rozwożącej paczki i dokumenty - miało być
zapewnione przypisywanie paczki do konkretnego dostawcy,
informacje o zamówieniach w trakcie realizacji, możliwość
wydruków i raportów i zestawień dochodów z pewnego okresu
czasu
(#id_dostawcy, imie, nazwisko, pensja)
(#id_zamowienia, #id_dostawcy, #id_klienta, adres, cena, data) dzieki tej tabelce i kolumnie
data bedziemy mogli zsumowac dochod z okreslonego czasu, np.
SELECT SUM(cena) FROM zamowienia WHERE data>data1 AND data
(#id_klienta, imie, nazwisko, adres,...)
39. modul zarzadzania transakcjami
qð ModuÅ‚ ZarzÄ…dzania Transakcjami (MZT) odpowiada za spójność bazy danych i
spójność całego systemu.
qð 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.
qð 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.
qð Może siÄ™ zdarzyć, część przetwarzania bÄ™dzie musiaÅ‚a być wstrzymana (opózniona)
by uniknąć konfliktów.
qð Poprawność wykonania transakcji jest osiÄ…gniÄ™ta dziÄ™ki wÅ‚asnoÅ›ciom transakcji
określanym symbolem ACID.
vð A (atomicity) niepodzielność,
vð C (consistancy) spójność,
vð I (isolaton) izolacja,
vð D (durability) trwaÅ‚ość.
40. co to AVG i przyklad uzycia
Funkcja agregująca, może być wykorzystana podczas użycia GROUP BY
SELECT NazwaWydziału, avg(Pensja), count(*) FROM Wykładowcy
GROUP BY NazwaWydziału
41. zadanko z narodzinami, mamy takie elementy jak: urodzone
dziecko dostaje id narodzin (blizniaki dostaja rozne id), jedna
matka, wiele pielegniarek, wiele lekarzy. podano przyklad tabeli:
(dziecko, matka, pielegniarka, lekarz). czy podany przyklad jest
poprawny, jesli nie to jak go poprawic...
Nie jest poprawny ponieważ dane w pierwszych dwóch kolumnach (dziecko, matka) będą się
często powtarzać. Wg mnie powinno być tak:
(#dziecko, matka)
(#dziecko, pielęgniarka)
(#dziecko, lekarz)
42. normalizacja - mamy jedna tabele, w jakiej jest postaci i dlaczego,
jezeli nie jest w V to ja do niej doprowadzic:
#id_filmu
tytul_filmu
#id_producenta
nazwa_producenta
prezes
#id_studia
nazwa_studia
Jest to pierwsza postać (wyznaczone klucze, atomowość).
Ostatecznie w V postaci będzie:
film(#id_filmu, tytul_filmu)
producent(#id_producenta, nazwa_producenta, prezes)
studio(#id_studia, nazwa_studia)
(#id_filmu, #id_producenta)
(#id_filmu, #id_studia)
(#id_producenta, #id_studia)
43. kiedy X w relacji R jest w pelni funkcjonalnie zalezne od Y
(cos w tym stylu)
w relacji R(X,Y,...)
X jest funkcjonalnie zależne od Y, gdy dla każdego y ze zbioru Y przyporządkowany jest
jeden x ze zbioru X. Oznaczamy to Y->X
44. zapytanie SQL, było chyba 5 tabel (klient, produkt, ankieta,
oceniający, zakup), należało napisać zapytanie w którym uzyskamy
ile produktów zakupionych przez Jana Kowalskiego zostało
ocenionych przez jakiegoÅ› Nowaka
tabele do tego zadania:
klient(id, imie, nazwisko, miasto, adres)
produkt(id, nazwa, kategoria, producent, cena)
ankieta(id_produktu, id_oceniajacego, ocena)
oceniajacy(id, imie, nazwisko)
zakup(id, id_produktu, id_klienta, data, cena)
45. bazy danych z serwerami stron
klient serwer
aplikacja
Pamięć Menadżer
Menadżer
podręczna
Menadżer
stron pamięci
dziennika
stron
obiektów
podręcznej
blokowania
Menadżer
plików/indeksów
Menadżer stron
Alokacja pamięci
pamięci
WE/WY
podręcznej
strony
Pamięć
podręczna
obiektów
Pamięć
podręczna
stron
46. bylo chyba jeszcze pytanie o relacyjne bazy danych
" Dane w tym modelu reprezentowane sÄ… przez rekordy umieszczone w tabelach,
" Każda tabela przechowuje rekordy tego samego typu,
" Każda tabela ma określoną stałą dla niej ilość kolumn o unikalnych nazwach,
" Elementy tabeli (atrybuty) są wypełnione atomowymi wartościami,
" Każda krotka tabeli musi być jednoznacznie określona przez wartość atrybutów
przypisanych krotce krotki w tabeli bazy danych nie mogą się powtarzać (muszą być
różne)
47. procesor zapytan
" Moduł przetwarzania zapytań obsługuje nie tylko zapytania ale również aktualizuje
dane i metadane.
" Jego zadaniem jest znalezienie najlepszego sposobu wykonania zadanych operacji i na
wydaniu poleceń do modułu MZP, który wykona te polecenia.
" Zwykle zapytania kierowane do Procesora Zapytań formułowane są w języku
wysokiego poziomu (SQL).
" Procesor Zapytań zwykle przekształca te zapytania na operacje lub ciągi operacji,
które należy wykonać na bazie danych.
" Często najtrudniejszą operacją przetwarzania zapytań jest optymalizacja zapytania, tj.
wybór dobrego planu realizacji zapytania określenie właściwego ciągu poleceń dla
systemu zarządzania pamięcią, którego wykonanie zagwarantuje lepszą realizację
odpowiedzi na zapytanie (np.: zagwarantuje najkrótszy czas realizacji odpowiedzi na
zapytanie).
48. normalizacja - napisac w ktorej NF i jesli nie w 5, doprowadzic
do 5
tabela byla w 1NF, dotyczyla mieszkan:
#id_lokalu
#rodzaj_mieszkania (spoldzielcze, mieszkaniowe) - moze sie
zmieniac w bazie
#typ_mieszkania (1M, 2M, 3M)
#jeszze jeden atrybut kluczowy
metraz
ilosc osob w mieszkaniu
...
49. typy danych w bazach danych
Typy napisowe (String)
qð Character(N) - Napis znakowy o staÅ‚ej dÅ‚ugoÅ›ci. Jeżeli na wejÅ›ciu znajdzie siÄ™
napis o mniejszej długości niż N, to na końcu napisu są dodawane spacje,
qð Character Varying (N) - Napis znakowy o minimalnej dÅ‚ugoÅ›ci 1 i maksymalnej
długości określonej przez system. Jeżeli na wejściu pojawi się napis o mniejszej
długości niż N, to jest przechowywana tylko właściwa długość napisu.
qð Bit - Napisy bitowe głównie używane dla danych graficznych i dzwiÄ™ku. d. Bit
Varying. Napisy bitowe zmiennej długości,
Typy liczbowe:
qð Numeric - Synonim dla Decimal,
qð Decimal(M, N) - Liczba dziesiÄ™tna o dÅ‚ugoÅ›ci M z N miejscami po przecinku
dziesiętnym,
qð Integer - Liczba caÅ‚kowita z zakresu wartoÅ›ci okreÅ›lonych przez system,
qð Smallint - Liczba caÅ‚kowita z mniejszego zakresu wartoÅ›ci okreÅ›lonych przez
system,
qð Float - Liczba przechowywana w reprezentacji zmiennopozycyjnej,
qð Real - Jest synonimem Float,
qð Double Precision.
Typy daty i godziny (Datetime) :
qð Date - Daty okreÅ›lone przez system,
qð Time - Godziny okreÅ›lone przez system,
qð Timestamp - Daty i godziny z uwzglÄ™dnieniem uÅ‚amków sekund
qð Interval - PrzedziaÅ‚y miÄ™dzy datami.
50. wymienic anomalie w bazach danych
Anomalie przy aktualizacji bazy danych (np. zmiana adresu wypożyczającego co będzie
gdy nastąpi awaria w bazie danych? dłuższy niż konieczny czas aktualizacji tabeli bazy
danych)
Anomalie przy usuwaniu (np.. Usunięcie wszystkich pozycji wypożyczeń gdy czytelnik
dokonał zwrotu książki),
Anomalie przy wstawianiu danych do bazy danych (np. nie można umieścić w bazie danych
danych o czytelniku, który nie wypożyczył żadnej książki ale jest czytelnikiem
wypożyczalni),
51. usuwanie tabeli, krotki i kolumny - napisac polecenia i
pokazac na przykladzie
DROP TABLE tabela
DELETE FROM tabela WHERE warunek
ALTER TABLE tabela DROP COLUMN kolumna
52. opisac schemat bazy danych z czyms obiektowym, niestety
nie pamietam:/ (najgorsze teoretyczne z tego zestawu)
53. podane atrybuty - rok ukonczenia studiow, nazwa uczelni,
kierunek, nazwisko absolwenta, tytul uzyskany po studiach:
-napisac jakie wystepuja zaleznosci
-czy dana relacja jest poprawna (uzasadnic pewnie)
54. T/F
- relacje typu 1:1 sÄ… najlepszymi zwiÄ…zkami w relacyjnym modelu danych NIE
- w PostgreSQL domyślnie jest włączona opcja COMMIT automatycznego zatwierdzania
transakcji TAK
- użycie klauzuli LIKE w warunku WHERE zapytania selekcyjnego może wystąpić jedynie w
odniesieniu do pól tekstowych TAK
- Opcja SET VIEW jest sposobem definiowania więzów integralności NIE ?
- w relacyjnych bazach danych możliwe jest utworzenie wirtualnych i zmaterializowanych
perspektyw TAK
- integralność dziedziny możemy częściowo określać podając odpowiedni typ danych dla
kolumny w CREATE TABLE TAK
- wiązania przy pomocy sprytnych wskazników są podstawą dostępu do baz danych
obiektowych z poziomu języka C++ TAK
- instrukcje INSERT, DELETE, UPDATE nie dokonują same trwałych zmian w bazie danych
i aby wprowadzić na trwałe zmiany należy wykonać instrukcję SAVE BASE NIE
- czy krotka moze sie powtarzac, NIE
- czy redundancja to nadmiarowość danych poza tabelami, NIE
- OBL czy zawwiera sie w OQL, (tu chyba chodzi o ODL a nie OBL) wygląda na to że TAK
OQL -> http://pl.wikipedia.org/wiki/OQL
ODL -> http://pl.wikipedia.org/wiki/ODL
- czy 1:n to najlepsza forma relacji TAK
- czy kolejnosc kolumn ma znaczenie NIE
- czy klucz obcy korzysta z tej samej dziedziny co klucz glowny TAK (przy założeniu że
chodzi o klucz główny tabeli do której odnosi się klucz obcy w innej...)
Wyszukiwarka
Podobne podstrony:
pózniak koszałka,bazy danych, pytania i odpowiedzi
późniak koszałka,bazy danych, pytania i odpowiedzi(1)
kołaczek,bezpieczeństwo i ochrona danych, pytania i odpowiedzi
grzebyk, transmisja danych, pytania i odpowiedzi
tariov,podstawy transmicji danych, pytania i odpowiedzi
bazy danych pytania
Odpowiedzi Bazy Danych
Oświetlenie pytania i odpowiedzi(1)
czas pracy w 2010 roku w pytaniach i odpowiedziach
Socjologia pytania i odpowiedzi
BAZY DANYCH Streszczenie z wykładów
Strona polecenia do bazy danych
barcz,METODY NUMURYCZNE,pytania i odpowiedzi 2
więcej podobnych podstron