Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT NazwaUczelni, NazwaWydziału, NazwaKatedry
- FROM Uczelnie u, Wydziały w, Katedry k
- WHERE u.IDuczelni = w.IDUczelni AND w.IDWydziału = k.IDWydziału AND k.IDKatedry = p.IDKatedry AND
- ((SELECT COUNT(IDpracownika) FROM Pracownicy WHERE Tytuł_naukowy = 'dr.' AND IDKatedry = k.IDKatedry) =
- (Select MAX(COUNT(IDpracownika)) FROM Pracownicy WHERE Tytuł_naukowy = 'dr.' GROUP BY IDKatedry));
- - Anomalie powstają gdy próbujemy w jednej tabeli (w żargonie matematycznym - relacji) umieścić zbyt wiele danych.
- - Redundancja - nadmiarowość danych w bazach danych. Wady: konieczność utrzymania spójności kopii, marnowanie miejsca, anomalie.
- - SQL - strukturalny język zapytań używany do tworzenia, modyfikowania relacyjnych baz danych oraz do umieszczania i pobierania
- danych z baz danych.
- Typy zapytań SQL:
- DML - język manipulowania danymi (INSERT, UPDATE, DELETE, SELECT)
- DDL - język definiowania danych (CREATE, DROP, ALTER)
- DCL - język kontroli danymi (GRANT, REVOKE, COMMIT, ROLLBACK, SAVEPOINT) - wyk10
- 1. Opisać budowę indeksu w formie B+ drzewa.
- B+ -DRZEWA - są przykładem dynamicznej struktury indeksowej.
- Nowe strony mogą być wstawiane w dowolnym miejscu indeksu,
- bez konieczności tworzenia łańcuchów stron nadmiarowych.
- Wiąże się to z koniecznością dynamicznego rozszerzania i kurczenia
- samego drzewa. Drzewo B+ jest wyważone względem wysokości,
- każdy liść znajduje się na tej samej głębokości
- 2. Omówić metody zapisu w pliku rekordu o zmiennej długości - wykład 10 E. Busłowska
- strona pdf 3
- Zapis rekordu o zmiennej długości
- • Zapis rekordu o zmiennej długości można reprezentować przez zapis o stałej długości (każde pole będzie reprezentowane w
- rekordzie)
- • dla pól o zmiennej długości (stałą liczba pól w rekordzie) można wykorzystywać separatory (?, %, $), które nie występują w
- wartości żadnego pola, w celu określenia końca pól o zmiennej długości
- - Na początku rekordu umieszczamy tablicę wskaźników do początków kolejnych pól, wówczas uzyskujemy bezpośredni dostęp do wartości
- i-tego pola, efektywne przechowywanie wartości NULL;
- 3. Metody organizacji pliku rekordów:
- - Plik nieuporządkowany: rekordy są przechowywane na stronach pliku w dowolnym porządku, nowy rekord jest wstawiany do pierwszej
- strony na której jest wolne miejsce, przy wyszukiwaniu przechodzimy po wszystkich stronach do chwili napotkania szukanego rekordu
- albo końca pliku gdy rekordu nie ma w pliku, organizacja nieuporządkowana jest wygodna przy wykonywaniu zapytań dotyczących
- wszystkich rekordów lub większości rekordów: select * from emp;
- - Pliki posortowane: rekordy są zapisywane na kolejnych stronach względem klucza rekordu, reprezentacja wygodna gdy
- rekordy przetwarza się zawsze w pewnym ustalonym porządku lub tylko ich pewien zakres względem tego porządku,
- brak korzyści gdy chcemy odwołać się do rekordów w oparciu o wartości innych pól, które nie są polami uporządkowania - dostęp
- wymaga wyszukiwania liniowego (średnio b/2 bloków);
- - pliki haszowane: plik jest kolekcją segmentów, segment to strona główna plus zero lub więcej stron nadmiarowych alokowanych do
- segmentu w razie potrzeby, przydział rekordu do segmentu odbywa się w oparciu o wartość funkcji haszującej zastosowanej do klucza
- wyszukiwania rekordu którym jest jedno lub więcej pól rekordu;, Organizacja pliku haszowanego jest użyteczna przy wyborze rekordu z
- pliku w oparciu o wartość lub wartości pewnych pól rekordu, organizacja rekordów w pliku haszowanym nie zachowuje kolejności
- wartości klucza wyszukiwania, zastosowanie jednej organizacji rekordów w pliku zazwyczaj nie wystarcza w aplkacji baz danych w
- których wyszukiwanie odbywa sie względem wartości różnych kluczy wyszukiwania. Rozwiązanie tego problemu polega na skorzystaniu z
- osobnych struktur indeksowych;
- 4. Indeks to struktura danych na dysku umożliwiająca szybkie wyszukiwanie danych w bazie danych na podstawie wartości klucza
- wyszukiwania jak np. nazwisko osoby. W najprostszej postacji wyszukiwanie polega na tym, że mając wartość poszukujemy
- rekordów w których ta wartość występuje w danym polu.
- 5. Rodzaje indeksów:
- - Indeks główny - założony na atrybucie porządkującym unikalnym;
- - Indeks zgrupowany - założony na atrybucie porządkującym nieunikalnym
- - Indeks wtórny - założony na atrybucie nieporządkującym
- A. Select id_pacjenta, imię, nazwisko from pacjent Where miejscowo=’Białystok’;
- B. Select id_oddzialu, Count(*) from pacjent Group by id_oddzialu;
- C. Select id_oddzialu from pacjent Where imię=’Anna’ and nazwisko=’Nowak’;
- A. indeks wtórny, klucz - miejscowość, wygląd pozycji danych – para (k,(w1,.., wn));
- B. indeks zgrupowany, id_oddzialu, (k, w)
- C. indeks wtórny ze złożonym kluczem wyszukiwania, imie i nazwisko, k(w1, ..., wn)
- - k(w1,wn) będzie gdy masz wiele rekordów zawierających klucz k. Wtedy w1,...,wn jest listą zawierającą te rekordy. W tym przykładzie będzie to w A i C (na jednym oddziale może być kilka kobiet o imieniu i nazwisku Anna Nowak, tak samo na jednym oddziale może być wiele osób z Białegostoku)
- - k,w masz wtedy, gdy danemu kluczowi odpowiada jedna wartość (podpunkt B, wtedy danemu oddziałowi odpowiada tylko jedna wartość/rekord - wartość count(*)
- 6. Dwie operacje w transkacji są w stanie konfliktu, jeżeli spełniają wszystkie trzy z następujących warunków:
- - należą do różnych transakcji,
- - uzyskują dostęp do tego samego elementu X,
- - przynajmniej jedna z operacji jest operacją zapisz_element();
- S: r1(X); r2(X); w1(X); r1(Y); w2(X); w1(Y);
- r1(X), w2(X)
- r2(X), w1(X)
- w1(X), w2(X)
- 7. Harmonogramy odtwarzalne - dla których w momencie zatwierdzenia transakcji T już nigdy nie było konieczne jej wycofywanie
- Harmonogram S jest odtwarzalny, jeżeli żadna transakcja T w harmonogramie S nie jest zatwierdzona do momentu aż wszystkie
- transakcje T, które zapisały element odczytywany przez transakcję T, zostaną zatwierdzone.
- S: r1(X), w1(X), r2(X), w2(X), c1, c2 (+)
- S: r1(X), w1(X), r2(X), w2(X), c2, c1 (-)
- Harmonogramy nieodtwarzalne - nie spełniają powyższego wymogu, stąd nie powinno się pozwalać na ich występowanie (przykład:
- problem aktualizacji tymczasowej i problem utraconej aktualizacji).
- A. indeks zgrupowany, klucz - id_odziału, wygląd pozycji danych - k(w1, ..., wn);
- B. indeks wtórny, klucz - miejscowość, wygląd pozycji danych - (k, w);
- C. indeks wtórny, złożony klucz wyszukiwania - imię i nazwisko, wygląd pozycji danych - k(w1, ..., wn);
Advertisement
Add Comment
Please, Sign In to add comment