Institutionen för atavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12 Jourhavane lärare: Patrick Lambrix/Almut Herzog (28 26 05/28 26 08) Poäng: Tentan består av 2 elar. För gokän krävs 50% av maxpoäng på båa elar. Betygsräkningen baseras på et totala resultatet och inte på e olika elarna. Anvisningar: Förutom anvisningarna på skrivningsomslaget gäller följane. Skriv klart och tyligt. Antaganen utöver e som står i uppgiften måste anges. (Gjora antaganen får naturligtvis inte föränra en givna uppgiften.) Hjälpmeel: lexikon, miniräknare LYCKA TILL! 1(5)
Praktisk el (16 poäng) ppgift 1 (5 p): Datamoellering me EER iagram Va är a) total participation i ett relationship b) ett sammansatt (composite) attribut c) ett härlett (erive) attribut ) en svag entitet e) super- och subklasser f) karinalitet i EER-sammanhang? Förklara begreppen a-f) me hjälp av ett eller flera exempel. Det blir poängavrag om exempel tas oragrant från tentan. ppgift 2 (5 p): PNR månaslön årtal poäng namn Anställ N gick M Kurs namn RegNr Bil 1 1 äger Säljare Tekniker Extern Intern ko Senior Junior 1 har assistent N Översätt ovanståene EER-iagram i relationer. Dessa relationer kommer u att använa i nästa uppgift också! Se till att in översättning inte försvårar nästa uppgift. I e fall som u valt att inte använa stanarreglerna som om finns beskrivna i kursboken så ska anleningen till att u gjort ett annat val motiveras! Annars gäller: Primärnyckel ska vara unerstruken. Främmane nycklar ska unerstrykas me strecka linje. Den refererae tabellen och attributet måste anges. Exempel: 2(5)
TABELL1 Attribut1 TABBELL2 Attribut3 Attribut2 Attribut4 Tabell1(Attribut1) ppgift 3 ( 6p): SQL a) Lista lägsta, högsta och genomsnittslön för etta företag. b) Vilka juniorsäljare äger en bil? Lista eras namn. c) Vilka externa kurser besöktes av tekniker år 2003? Lista kursko och kursnamn. ) Tjänar man bättre om man har gått många kurser? För varje månaslön, lista genomsnittspoängen. Sortera listan efter månaslön. 3(5)
Teoretisk el (18 poäng) ppgift 4 (3p): Normalisering. a) I vilken normalform är följane relation R(A, B, C, D, E, F) me funktionella beroenen F={ABC DEF, A D, AB E, C F} b) Normalisera relationen stegvis (1NF 2NF 3NF BCNF) till BCNF. c) Visa att in normalisering i b) uppfyller lossless join -egenskapet genom att skriva SELECT-satsen som återskapar R från relationerna r i i BCNF. ppgift 5 (3p): Datastrukturer Svara me sant eller falskt på följane påståene. Du får skriva en motivering men et behövs inte för att få fulla poäng. För varje påståene gäller att rätt svar ger 0,5 poäng, fel svar ger 0,5 poängsavrag, inget svar ger inga poäng. Hela uppgiften ger lägst 0 poäng. a) En fil som innehåller 10.000 poster me fast läng à 200 bytes och en blockstorlek på 4.000 bytes tar inte upp mer än 50 isk blocks. b) Vi insättning av poster i en heap-fil läggs posterna så att filen allti är sortera på ett fält i posten. c) Ett inex gör allti atabassökningar snabbare. ) I tabellen PERSON(PNR, Namn, Aress) är et lämpligt att skapa ett bitmap inex på PNR. e) I ett B-trä har man pekare till ata i atafilen enbart i lövnoerna (leaf noes). f) I tabellen Äger(PersonID, BilRegNr) är PersonID en lämplig kaniat för ett primärt inex. ppgift 6 (1 + 2 + 1 = 4p): Transaktioner och samtiighetskontoll a) Förklara tvåsfaslåsning och ge ett exempel. Varför använs etta? b) Ge 4 anomalier som man vill unvika genom att ha samtiighetskontroll i ett atabassystem är man tillåter flera samtiiga transaktioner. Ge ett exempel (tisschema) för varje anomali. c) Va är woun-ie i transaktionssammanhang? Förklara principen. ppgift 7 (2p): Information retrieval Beskriv vektormoellen me hjälp av komponenterna D, Q, F och R. Ge exempel för varje komponent. (Förklara tf och if!) D: hur representeras okumenten? Q: vilka frågor kan ställas och hur representeras frågorna? F: hur kopplar man ihop frågorna och okumenterna för att få svar på frågorna? R: gör man en rankning av svaren och i så fall, hur? ppgift 8 (2+1 = 3p): Databankintegration a) Jämför för- och nackelar av atabankintegrationsmetoerna länkrivna feerationer och vyintegration. b) Ge 2 använningssätt för ontologier. 4(5)
ppgift 9 (3p): Databasåterställning a) Beskriv metoen för återställning me uppskjuten uppatering (recovery with eferre upate). Använ systemloggen nean för att exemplifiera metoen. (Observera att för varje write-item lagras bara 1 väre i systemloggen nean.) b) Visa alla steg som görs vi återställningen av atabasen. c) Ange för varje variabel (A, B, C, D och E) va väret är efter återställningen. (Om et inte går att få fram från systemloggen, ange etta.) Part of system log: Start-transaction T1 Write-item T1, A, 10 Checkpoint Start-transaction T2 Write-item T1, B, 10 Write-item T2, C, 10 Commit T1 Start-transaction T3 Checkpoint Start-transaction T4 Write-item T3, D, 20 Write-item T4, E, 5 Write-item T2, C, 30 Commit T2 system crash 5(5)