4.2. Produkty wyjściowe - zoptymalizowane zapytania (p. 1-3, str. 3)
Zastosowania różnych metod dostępu do danych poprawiające wydajności bazy danych - (1) podział tabel, (2) sekwencyjność w dostępie do baz danych, klastry, (3) użycie indeksów.
4.2.1. Pytanie zawierające selekcję na tabeli Tytuł - często zadawane pytanie o tytuły beletrystyczne
Tytuł (Id tytułu, tytuł, autor, ISBN, typ ksiazki)
a) liczba krotek w tabeli Tytuł jest równa n,
b) 0.9 n to krotki zawierające wartość atrybutu typ tytu 1 u=’Techniczna’
c) 0.1 n to krotki zawierające wartość atrybutu typ_tytulu=’Beletrystyczna’
d) na stronie pliku przechowuje się t krotek, stąd mamy n/t. Zakłada się najgorszy wariant, w którym każda krotka jest na innej stronie, czyli t=l
Pytanie
Select * From Tytuł Where typ_tytulu=’Techniczna’
Czasochłonność w technice sekwencyjnej Do i:= 1 to n
if Tytul[i].typ_ksiazki=’Beletrystyczna’
Dodaj krotkę Tytul[i] do wynikowej tabeli
tl’=n - czasochłonność czytania krotek z tabeli Tytuł t2’=0.In - czasochłonność zapisu krotek z tabeli Tytuł o typ_Tytulu=’Beletrystyczna’
TT=l.ln
Czasochłonność po dodaniu indeksu na atrybucie typ tytułu w tabeli Tytuł
Do i:= 1 to O.ln
//następuje bezpośrednie odwołanie poprzez indeks 'Beletrystyczna' do 0.In krotek w tabeli Tytuł if Tytul[i].typ_ksiazki=’Beletrystyczna’
Dodaj krotkę Tytul[i] do wynikowej tabeli
tl”= 0.In - czasochłonność czytania krotek z tabeli Tytuł
t3”= 0. In - czasochłonność zapisu krotek z tabeli Tytuł jako wyniku selekcji
Tl”=0.1n+0.1=0.2n
Tl”=0.2n
Zofia Kruczkiewicz, 1-6, p325 C3
7 Internetowe bazy danych, Wykład 5