• No results found

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

N/A
N/A
Protected

Academic year: 2022

Share "Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Juha Takkinen 2008-05-22

Skriftlig tentamen i kurserna

TDDD12 och TDDB48 Databasteknik 2008-05-24 kl. 14–18

Lokal

KÅRA, T1 och T2.

Tillåtna hjälpmedel

Inga.

Resultat

Resultatet publiceras inom tolv arbetsdagar i LADOK.

Poänggränser

Du kan få maximalt 40 poäng. För att få godkänt, betyg 3, krävs minst 10 poäng i respektive tentamensdel (Praktik och Teori). För betygen 4 och 5 krävs totalt 28 respektive 36 poäng.

Lärarjour

Under tentamenstiden finns möjlighet att ställa frågor och få förtydliganden från dels Juha Takkinen, tel. 0731-500 393, som besöker tentamenslokalen kl. 15, och dels Lena Strömbäck, tel. 0709-396 776, som besöker salen kl. 17.

Instruktioner

Ge relevanta och motiverade svar på endast det som efterfrågas. Poängav- drag kan ges för svar som ej är direkta svar på en fråga. Du kan svara på svenska eller engelska. Läs även instruktionerna på tentamensomslaget.

Lycka till!

(2)

1. EER-modellering (6 p. totalt): Företaget IT.nu har specialiserat sig på att leverera IT-kurser som håller en avancerad, forskningsnära

utbildningsnivå. Företaget har 30 lärare, alla med doktorstitel, och kan hantera upp till och med 100 deltagare per utbildningsperiod. Man har fem avancerade kurser i IT-teknik, som var och en hålls av ett lärarlag

bestående av två eller flera lärare. Varje lärare kan vara med i max två lärarlag åt gången. Uttagningen av lärarlagen före varje utbildningsperiod baseras på respektive lärares specialkunskaper. När en lärare inte

undervisar så håller han eller hon på med forskning på företaget. Varje kursdeltagare kan gå max en avancerad kurs per utbildningsperiod.

Skapa en EER-modell som håller reda på det som företaget IT.nu sysslar med enligt ovanstående beskrivning. Var noga med att motivera dina val av entiter och relationstyper samt attribut. Skriv ned alla antaganden som du gör om företagets data. Ange alla kardinaliteter.

2. Översättning till relationer (4 p. totalt): Se EER-diagrammet överst på nästa sida till relationer. Diagrammet föreställer en minivärld med

hyresobjekt (strandtomt eller bergstomt), hyrestagare och avtal.

a. Översätt EER-diagrammet till relationer. (3 p.)

b. Föreslå en constraint som förhindrar att man hyr samma hyresobjekt två gånger under en och samma tidsperiod. (1 p.)

För full poäng måste du motivera varför du har valt att översätta

diagrammet på det sätt som du har gjort samt redovisa alla antaganden om bland annat constraints. Markera primärnycklar med heldragen

understrykning och främmande nycklar med streckad understrykning i schemat, med en pekare från den främmande nyckeln till det/de attribut som den främmande nyckeln refererar till.

(3)

3. SQL (6 p. totalt): Företaget Sjung.nu säljer nedladdningsbar musik (”enheter”) och har implementerat följande relationer i sin databas.

Primärnycklar är dubbelheldraget understrukna medan främmande nycklar är enkelheldraget understrukna.1

KUND(Kundnr, Namn, Epost, Operativsystem, DefaultFilformat2) KUNDORDER(Ordernr, Kundnr, Orderdatum, Ordertid,

KolladAvAnstalldId, ForlagId, FilNedladdad3, NedladdadDatum, NedladdadKlockslag)

FORLAG(ForlagId, Namn, Pris)

ANSTALLDA(AnstalldId, Namn, BorjatAr4, SlutatAr5, NarmasteChef6) ORDERENHET(Ordernr, Enhetnr, Antal)

ENHET(Enhetnr, Namn, Pris, Storlek7)

Formulera SQL-frågor för följande fall:

1. Relationen mellan främmande nycklar och primärnycklar anses här självförklarande, där inget är an- givet. Fråga annars jourhavande lärare!

2. mp3, wma m.fl.

3. Boolesk ja/nej 4. Startår för anställd 5. Sista anställningsår

6. Närmaste chef är också anställd 7. Storlek i antal byte

(0, N)

(1, 1)) (0,N)

(1, 1)

(4)

WinXP, Vista eller MacOS. (1 p.)

c. Antag att tabellen ORDERENHET finns i databasen men saknar informationen att Enhetnr ska vara främmande nyckel till Enhetnr i ENHET. Ange SQL-rad som inför detta. (1 p.)

d. Lista namnet på varje musikfil som har sålts, tillsammans med antalet nedladdningar och intäkter för respektive fil. (3 p.)

4. Normalisering (4 p. totalt): För att vidareutbilda professionella golfspelare, som ju reser mycket och inte kan gå på ett universitet på normalt sätt, har Linköpings universitet för dessa personer börjat erbjuda distansundervisning. Golfspelarna kommer att kunna läsa flera olika

inriktningar samtidigt. Nedan syns ett utdrag ur relationen i databasen som man kommer att använda.

a. Ange primärnyckeln för relationen. (1 p.)

b. Identifiera alla funktionella beroenden. OBS! Alla namn är unika i relationen. (1 p.)

c. Är relationen i 3NF? Motivera ditt svar. Om inte, konvertera den till 3NF.

(1 p.)

d. Är relationen i BCNF? Motivera ditt svar. Om inte, konvertera den till BCNF. (1 p.)

Namn Inriktning Lärare

Lee Janzen Datalogi Donald Knuth

Bobby Jones Datorsystem John von Neumann Horace Rawlins Datalogi Alan Turing

Payne Stewart Kognitionsvetenskap George Boole Jack Nicklaus Datalogi Donald Knuth Payne Stewart Systemvetenskap Herbert Simon

(5)

Del 2: Teori

5. Relationsmodellen (4 p. totalt): Ange om respektive påstående nedan är sant eller falskt. Motivera gärna. Du får +1 p. för varje korrekt svar och –1 p. för varje felaktigt svar, dock aldrig lägre än 0 p. totalt. Avstår du från att svara får du 0 p.

a. SQL-fråganSELECT * FROM R; ger samma tupler i svaret som SELECT * FROM R ORDER BY a; antaget att a finns i R.

b. antag att relationen R(A, B, C, D, E) har de funktionella beroendena AB-->C, C-->B och D-->E. Då är en av supernycklarna ABD.

c. SQL-fråganSELECT a, c FROM T WHERE b=c;motsvaras av uttrycket

π

b, c(

σ

a=c(T)) i relationsalgebra.

d. SELECT * FROM R NATURAL JOIN S; ger samma resultat som SELECT * FROM R LEFT NATURAL JOIN S; antaget att R(a, b) och S(b, c) gäller.

6. Transaktioner (4 p. totalt):

a. Vad menas med en serialiserbar transaktionsplan (eng. serializable transaction schedule)? Exemplifiera. (2 p.)

b. I nedanstående transaktionsplan, lägg in läs- och skrivlås på sådant sätt att schemat följer ett tvåfaslåsningsprotokoll. Redogör också steg-för-steg vad som händer när schemat exekveras. Rita gärna. Notation: r1 =

transaktion 1 läser, w1 = transaktion 1 skriver o.s.v. (2 p.)

r1(C), r2(B), r3(A), w1(B), w2(A), w3(D)

7. Index (8 p. totalt): Ett företags kunddatabas innehåller 400 000 kunder (d.v.s. antal poster i kundtabellen). Varje kundpost är 1000 byte och

nyckelfältet är personnumret. Blockstorleken är 4096 byte, filen lagras non- spanning.

a. Vad blir blockfaktorn och hur många block behövs för att lagra filen?

(2 p.)

b. Hur många blockaccesser behövs för att hitta data om en kund givet att du har personnumret om filen är osorterad? (1 p.)

c. Hur många blockaccesser krävs för att hitta en kund givet att du har personnumret om filen är sorterad på personnumret? (1 p.)

Man vill förbättra prestandan genom att skapa ett index på fältet

personnummer för tabellen. En indexpost har storleken 100 byte. Vilken typ av index kan användas och hur många blockesser krävs för att hitta en post om:

d. Kunddatafilen är sorterad? (2 p.) e. Kunddatafilen är osorterad? (2 p.)

(6)

8. Databasåterställning (4 p. totalt): Ett företag har råkat ut för en databaskrasch och måste återställa sin databas. Företaget använder omedelbar uppdatering där transaktionerna kan skriva till databasen före commit (variant 2). Följande loggfil finns sparad efter kraschen som

beskriver allt som hänt sedan senaste backup av databasen:

start_transaction A write A x 3 7

write A y 4 10 commit A

checkpoint

start_transaction B write B z 3 5

commit B

start_transaction C write C x 3 8

crash

Beskriv processen för återställning i följande fall. För full poäng måste du tala om vad som händer med varje transaktion i loggfilen:

a. Hårddisken är intakt och all data som fanns på den finns kvar. (2 p.) b. All data från databasen som fanns på hårddisken, förutom loggfilen, är

förstörd (2 p.)

References

Related documents

Tre månader efter olyckan svarade 25 % av patienterna i gruppen med en markering högre än siffran 7 på smärtskalan. Tre månader efter olyckan hade 25 % av patienterna ingen

Betrakta systemet som visas i figur 1. Komponenterna antas vara OK eller ¬OK.. Nu vill man lägga till tester så att alla fel blir detekterbara och isolerbarheten beträffande

Tillåtna hjälpmedel: TeFyMa, Beta, Physics Handbook, Reglerteknik (Glad och Ljung), Formelsamling i statistik och signalteori samt

Luftbälgen har en höjd ζ, ett tryck p och en volym V (p, ζ) som beror av höjden och trycket i bälgen. Luftmassan i bälgen m kan höjas genom att öppna en av signalen u 1 styrd

Tillåtna hjälpmedel: TeFyMa, Beta Mathematics handbook, Physics Handbook, Reglerteknik (Glad och Ljung), Formelsamling i statistik och signalteori samt miniräknare.. Ansvarig

Exempelvis vilka, om några, modeller som behövs, vilka parametrar som finns i diagnossystemet och hur ni skulle ka- librera dessa, och hur prestanda för systemet skulle kunna anges.

Med det i fokus så betyder det att sjuksköterskan har en betydande roll, inte bara för att föräldrar ska ta makten över situationen utan även att familjen skall kunna

De som har en anställningstid över 15 år rapportar förvisso återigen sett till medelvärde både högre grad av nöjdhet samt upplever att de har en mer närvarande chef