Metoda list inwersyjnych

Transkrypt

Metoda list inwersyjnych
METODA
WYSZUKIWANIA
STRUKTURA
BAZY DANYCH
CZAS WYSZUKIWANIA
REDUNDANCJA I
ZAJĘTOŚĆ PAMIĘCI
AKTUALIZACJA
PYTANIA
OGÓLNE
PYTANIA
SZCZEGÓŁOWE
Bardzo krótki
Dochodzi czas
przecięcia list
Duża redundancja:
r
METODA
KLASYCZNA
Złożona,
konieczność
pamiętania list
inwersyjnych
R
  (d
j 1
j
)N
N
Złożona. Konieczność zmiany
w listach.
 g
N – liczba obiektów
r – liczba deskryptorów
METODA ZE
ZMNIEJSZONYM
ZBIOREM LIST
INWERSYJNYCH
METODA
DEKOMPOZYCJI
OBIEKTOWEJ
METODA
DEKOMPOZYCJI
ATRYBUTOWEJ
Maleje liczba r
Nieco większy
niż w metodzie
Złożona, konieczność zmiany w
klasycznej.
listach przy mniejszej liczbie
Dochodzi czas
list.
przeglądu  0
Zmniejsza się długość list
w podsystemach
Krótszy czas
Złożona, konieczność zmiany w niż w metodzie
listach, dla każdego
klasycznej dla
podsystemu.
jednego
podsystemu.
Jak w metodzie
klasycznej.
Mniejsza liczba
list.
Złożona,
pamiętanie
podsystemów i
list w
podsystemach.
Złożona,
pamiętanie
podsystemów i
list w
podsystemach.
Maleje liczba r w
podsystemach
Złożona, konieczność zmiany w
listach, dla każdego
podsystemu.
Krótki czas
wyszukiwania
w
podsystemie.
   ( g   p )
i
i
i
Jak wyżej. Dochodzi
czas przeglądu
0
Krótszy czas niż w
metodzie klasycznej dla
jednego podsystemu.
Krótki czas
wyszukiwania w
podsystemie.
MODYFIKACJE metody list inwersyjnych:
PORZĄDKOWANIE ADRESÓW OBIEKTÓW NA LISTACH (poprawia czas wyszukiwania odpowiedzi)
ZAZNACZANIE PRZEDZIAŁÓW ADRESÓW (MODYFIKACJE zmniejszające zajętość pamięci)
Zamiast: L(d1)={1, 2, 3, 4, 5, 8, 12, 13, 14, 15, 16, 20} mamy: L’(d1)={1  5, 8, 12 16, 20}
LISTY DLA PAR DESKRYPTORÓWZ ZAZNACZENIE CZĘSCI WSPÓLNEJ (MODYFIKACJE zmniejszające zajętość pamięci)
Zamiast list: L(d1)={1, 2, 5, 7, 10, 12, 13} oraz L(d2)={3, 5, 7, 9, 10, 12, 15, 18}
Mamy: L(di,dj) = { {1, 2, 13}  {5, 7, 10, 12}  {3, 9, 15, 18} }
LISTY WIELODESKRYPTOROWE – szczególne przypadek list dla par deskryptorów (MODYFIKACJE zmniejszające zajętość pamięci)
Zamiast list L(d1)={1, 2, 5, 7, 8, 12, 17} oraz L(d2)={1, 4, 5, 9, 10, 17, 20} mamy 1 listę: L(d1*d2) = {1, 5, 17}
TWORZENIE LIST DLA PEWNEGO POZBIORU DESKRYPTORÓW (MODYFIKACJE zmniejszające zajętość pamięci i spracające czas
wyszukiwania)
Tworzymy listy inwersyjne tylko dla wybranego podzbioru D’ deskryptorów, gdzie D’  D. Wybrany zbiór może byd zbiorem
deskryptorów najczęściej występujących w pytaniach do systemu S lub zbiorem deskryptorów pewnego atrybutu (pewnych
atrybutów). Tworzymy listy inwersyjne (di)
Gdzie:
di  D’
 di  D'
i
Zadanie 1.
Dany jest system informacyjny S. Fragment zawartych w nim opisów wygląda następująco:
(wiek, młodzież) = {1,2,3,4,9,11,14,16,17}
(wiek, dorosły) = {5,6,12,13,18,19}
(wiek, starszy) = {7,8,10,15,20}
(sport, brak)= {1,2,3}
(sport, basen) = {9,14,16,20}
(sport, rower i biegi) = {4,5,6,8,10,12,17,19}
(sport, wędrówki górskie) = {7,11,13,15,18}
(hobby, sztuka) = {1,2,3,9}
(hobby, film i muzyka) = {5,6,8,11,12,13,14,15,17,18,19,20}
(hobby, książka) = {4,7,10,16}
a)
b)
c)
Ile opisanych jest tu obiektów ? Podaj opisy tych obiektów.
Oblicz redundancję w tym systemie.
Zastosuj do w/w opisów możliwe modyfikacje i uzasadnij ich wpływ na efektywnośd systemu.
Zadanie 2
Dany jest system informacyjny
frekwencja Srednia_ocen
X1
WYSOKA
a
X2
NISKA
B
X3
WYSOKA
C
X4
NISKA
A
X5
WYSOKA
B
X6
NISKA
C
X7
WYSOKA
A
Zadanie 3.
X8
X9
X10
Liczba_nagród
C1
C3
C2
C3
C1
C3
C2
NISKA
WYSOKA
NISKA
1.
2.
Dla podanego systemu informacyjnego, którego funkcja informacji q
przedstawiona jest w poniższej tabeli:
Dziedzina
Wydawnictwo Twarda oprawa
X1 INFORMATYKA PWN
Tak
X2 INFORMATYKA WNT
Tak
X3 INFORMATYKA WNT
Tak
X4 Matematyka
WNT
Tak
X5 INFORMATYKA PWN
Tak
X6 Fizyka
PWN
Tak
X7 Matematyka
WNT
Tak
X8 Matematyka
PWN
Nie
X9 Chemia
PWN
Nie
X10 Matematyka
WNT
Tak
A
A
c
C3
C1
C3
Zbuduj listy inwersyjne wiedząc, że najczęściej zadawane są
pytania dotyczące pary (frekwencja,wysoka)(srednia_ocen,a)
oraz tych samych deskryptorów pojedynczo. Pamiętaj, aby
utworzona struktura była optymalną.
Oblicz redundancję w systemie klasycznym oraz tym,
zaproponowanym przez siebie.
S= <X,A,V,q>
X = {x1,x2,..,x10}
A = {dziedzina, wydawnictwo, twarda oprawa}
V dziedzina = {informatyka, matematyka, fizyka, chemia}
V wydawnictwo = { PWN, WNT}
V twarda oprawa = {tak, nie}
Przedstaw postad kartoteki wyszukiwawczej w metodzie list inwersyjnych
zmodyfikowana w ten sposób, aby szybko można było wyszukiwad
informacje na pytania o cechę „Dziedzina” oraz „Wydawnictwo”.
Umotywuj, jak reorganizacja kartoteki wpłynie na czas wyszukiwania.
Zadanie 4.
Funkcja informacji systemu informacyjnego S została podana w postaci tablicy:
lp
imię
nazwisko
staż
dział
pensja
1
Jan
Kowalski
5
sale
średnia
2
Andrzej
Korzeo
2
sale
niska
3
Tadeusz
Nowak
7
helpdesk
średnia
4
Jan
Nowak
10
sale
wysoka
5
Adam
Kowalski
4
development
wysoka
6
Sebastian
Mikrut
2
development
średnia
7
Michał
Cieślak
3
development
średnia
8
Adam
Myśliwiec
13
helpdesk
wysoka
9
Artur
Paoski
4
helpdesk
niska
Zbuduj kartotekę wyszukiwawczą dla metody list inwersyjnych. Zastosuj te modyfikacje list inwersyjnych, które zmniejszają zajętośd pamięci.
Zadanie 5
Dany jest system informacyjny S zorganizowany zgodnie z metodą list inwersyjnych. W systemie tym zastosowano kilka modyfikacji. Listy inwersyjne wyglądają tu
następująco:
(d1) = {56,9}
(c6) = {6,8}
(a2) = {5,6,10}
(d2) = {1,3,8,10}
(c5) = {9}
(a3) = {1,2,7,8}
(b5 * d3) = {2,4}
(b2) = {79}
(c4 * b1) = {}
(b3 * c5) = {1,3,5}
(b4) = {6,10}
(c3) = {2,4,7,10}
(a1) = {3,4,9}
Wymieo I uzasadnij jakich modyfikacji dokonano w tym systemie. Jakich modyfikacji można było dokonad w tym systemie ponad te, które tu widad ?
Zadanie 6
Dany jest system informacyjny S, dla którego dany jest zbiór atrybutów: A={A1, A2, A3}.
Opisy obiektów mają następującą postad:
X1: x
X6: b*p*z
X11: c*k*z
X2: b*k*x
X7: b*n*y
X12: a*m*z
X3: b*n*y
X8: b*k*x
X13: a*m*x
X4: b*n*z
X9: a*m*x
X14: a*m*x
X5: b*k*z
X10: c*k*z
X15: a*m
Przedstaw propozycję organizacji bazy danych systemu S zorganizowanego w postaci list inwersyjnych. Reorganizacja powinna zapewnid przede wszystkim minimalny
czas wyszukiwania i ewentualnie zmniejszenie redundancji.
Zadanie 7
Zadane są listy inwersyjne:
L(a1)= {3, 4, 9}
L(a2)= {5, 6, 10}
L(a3)= {1, 2, 7, 8}
L(a4)= {}
L(a5)= {}
L(a6)= {}
L(b1)= {}
L(b2)= {7, 8, 9}
L(b3)= {1, 3, 5}
L(b4)= {6, 10}
L(b5)= {2, 4}
L(b6)= {}
L(c1)= {}
L(c2)= {}
L(c3)= {2, 4, 7, 10}
L(c4)= {}
L(c5)= {1, 3, 5, 9}
L(c6)= {6, 8}
Odtwórz opisy obiektów.
Dla jakich modyfikacji metody list inwersyjnych Twoja odpowiedź jest poprawna, a dla jakich nie ? (Uzasadnij swoją odpowiedź !!!).
L(d1)= {5, 6, 7, 9}
L(d2)= {1, 3, 8, 10}
L(d3)= {2, 4}
L(d4)= {}
L(d5)= {}
L(d6)= {}

Podobne dokumenty