Tik-76.141 Tietokanta-algoritmit Tenttitehtävät 17.5.1995

1. Selvitä virtuaalisen hajautuksen periaatteet.

2. Tarkastellaan relaatioiden R ja S karteesisen tulon R x S laskentaa, kun kumpikaan relaatio ei mahdu kokonaisuudessaan keskusmuistiin. Käytettävissä on M keskusmuistipuskuria. Esitä tehokas algoritmi, joka laskee tulon, ja arvioi algoritmin vaativuus.

3. Anna tapahtumapari varustettuna kaksivaihelukinnan mukaisin lukon asettamis- ja avaamiskäskyin ja tapahtumien lukkiutuva ajoitus.

4. Olkoon E_1 ja E_2 relaatiolausekkeita. Näytä, ettei

pi_S(E_1 \ E_2)==pi_S(E_1)\pi_S(E_2)

päde yleisesti.

5. Tarkastellaan datalog-ohjelmaa

1. p(X, Y) :- r(X, Y)

2. p(X, Y) :- s(X, Z)p(Z, U)p(Y, U)

3. query (Y) :- p(a, Y).

Tässä r ja s ovat tietokantarelaatioita (EDB-relaatioita). Anna ohjelman sääntö-maaliverkko ja sen vahvasti yhtenäiset komponentit sekä niiden mukainen naiivi (tai puolinalivi) kokoava laskenta-algoritmi, joka sisältää säännöt laskevat relaatioalgebran lausekkeet.