Andre sett obligatoriske oppgaver iinf3100v2011

Like dokumenter
Andre sett obligatoriske oppgaver i INF3100 V2012

Andre sett obligatoriske oppgaver i INF3100 V2013

UNIVERSITETET I OSLO

Andre sett obligatoriske oppgaver i INF3100 V2009

Andre sett obligatoriske oppgaver i INF3100 V2010

Andre sett obligatoriske oppgaver i INF3100 V2008

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

INF3100 V2018 Obligatorisk oppgave nr. 2

UNIVERSITETET I OSLO

Spørsmålskompilering del 1

Andre sett obligatoriske oppgaver i INF3100/INF4100 V2007

Spørsmålskompilering del 1

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO

INF3100 V2015 Obligatorisk oppgave nr. 1

EKSAMENSOPPGAVE I TDT4145 DATAMODELLERING OG DATABASESYSTEMER. Faglig kontakt under eksamen: Svein Erik Bratsberg og Roger Midtstraum

INF3100 V2016 Obligatorisk oppgave nr. 1

IN3020 V2019 Obligatorisk oppgave nr. 1

Spørsmålskompilering. Basert på foiler av Hector Garcia-Molina

UNIVERSITETET I OSLO

Repetisjonsforelesning, SQL og utover

Spørsmålskompilering. Basert på foiler av Hector Garcia-Molina

Spørsmålskompilering

Transaksjonshåndtering Del 2

Etternavn Fornavn Født Død Annet Felt

UNIVERSITETET I OSLO

Transaksjonshåndtering Del 2

Transaksjonshåndtering Del 2

INF3100 V2018 Obligatorisk oppgave nr. 1

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Effektiv eksekvering av spørsmål

Effektiv eksekvering av spørsmål

Obligatorisk oppgave nr. 3 i INF1300 høsten 2009

Effektiv eksekvering av spørsmål

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det

Eksamensoppgåve i TDT4145 Datamodellering og databasesystemer

Effektiv eksekvering av spørsmål

Oppgaver INF3100. Oversikt over innholdet

INF1300 Relasjonsalgebra. Et matematisk fundament for å forstå SQL-setninger

UNIVERSITETET I OSLO

Obligatorisk oppgave nr. 3 i INF1300 høsten 2008

Relasjonsalgebra. Hva?

Effektiv eksekvering av spørsmål

DBS18 - Strategier for Query-prosessering

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas

Oppgave 1 Datamodellering 22 %

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) Institutt for Informatikk. INF Ragnar Normann 1

Databasesystemer, oversikt

INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ragnar Normann

Det matematisk-naturvitenskapelige fakultet

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

Databaser. Relasjonsmodellen 2 Læreboka: Kap. 2 Relasjonsmodellen

Oppgaver INF3100. Oversikt over innholdet

Hjemmeeksamen 1 i INF3110/4110

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det.

EKSAMENSOPPGÅVE I TDT4145 DATAMODELLERING OG DATABASESYSTEMER

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

UNIVERSITETET RELASJONSALGEBRA. Regning g med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

Databaser. Relasjonsmodellen 1 Læreboka: Kap. 2 Relasjonsmodellen Faglærere: Tore Mallaug, Kjell Toft Hansen

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

UNIVERSITETET I OSLO

INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

HØGSKOLEN I BERGEN Avdeling for ingeniørutdanning

1. Relasjonsmodellen Kommentarer til læreboka

Databaser fra et logikkperspektiv

Oppgave 1 ER- og relasjonsmodell 10 %

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Parallelle og distribuerte databaser Del I

Relasjonsalgebraen. Algebra

UNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) Institutt for Informatikk. INF Ellen Munthe-Kaas 1

Oppgave 1 Datamodellering 25 %

Løsning til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Innhold Forord Innledning Kapittel 1 Introduksjon til databaser og databasesystem

Parallelle og distribuerte databaser del I

Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

1. SQL datadefinisjon og manipulering

Oppgave 3 - normalisering

Obligatorisk oppgave 1 i INF 4130, høsten 2009

INF212 - Databaseteori. Kursinnhold

For alle ikke-trivielle FDer X A i R: eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R

Spørsmålskompilering del 2

1. SQL spørringer mot flere tabeller

Transaksjonshåndtering og samtidighetskontroll

UNIVERSITETET I OSLO

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data

Obligatorisk oppgave nr. 3 i INF1300 høsten 2011

UNIVERSITETET I OSLO SQL. Structured Query Language. (The intergalactic dataspeak) INF Ellen Munthe-Kaas 1. Institutt for Informatikk

Parallelle og distribuerte databaser

Transkript:

Andre sett obligatoriske oppgaver iinf3100v2011 Oppgavesettet skal i utgangspunktet løses av grupper på to og to studenter som leverer felles besvarelse. Vi godkjenner også individuelle besvarelser, men oppfordrer dere altså til heller å finne en å samarbeide med. Vi godkjenner ikke grupper med mer enn to studenter. Vi vil ved behov foreta stikkprøver der vi plukker ut enkeltpersoner som må gjennomgå sin besvarelse med oss. Gjennomføring og innlevering av oppgaven skal skje i henhold tilgjeldende retningslinjer ved Institutt for informatikk, se http://www.ifi.uio.no/studier/skjemaer/erklaring.pdf http://www.ifi.uio.no/studier/skjemaer/declaration.pdf (norsk) (engelsk) Enhver innlevering av besvarelse på en obligatorisk oppgave tas som en bekreftelse på at retningslinjene er lest og forstått. Innleveringsfrist: Fredag 6. mai kl. 16:00. Fristen er absolutt, og det blir ikke gitt utsettelse. Alle spørsmålene må besvares for å få godkjent besvarelsen. Skriv fulle navn og brukernavn øverst i besvarelsen. Besvarelsen sendes med e-post på PDF-format til gruppelæreren til den av dere som har navn først i alfabetet. E-posten med besvarelsen skal ha følgende form på subjectfeltet: Subject: Oblig 2 inf3100 (brukernavn1, brukernavn2) Studenter som har fått godkjent den obligatoriske oppgaven og likevel vil trekke seg fra eksamen, bør levere en papirkopi til gruppelæreren for å få en påtegning om at oppgaven er godkjent. Dette gjelder bare studenter som trekker seg før 14-dagersfristen. 1

Oppgave 1 3 Relasjonsdatabaser Løs oppgave 1 (FDer og MVDer), oppgave 2 (SQL) og oppgave 3 (dekomposisjon) fra eksamen i INF3100 våren 2010. (Scenario: Relasjonsdatabase over klassiske komponister.) Oppgave 4 Relasjonsalgebra Uttrykk i relasjonsalgebra at (etternavn, fornavn) irelasjonenkomponist er primærnøkkel, der Komponist er som beskrevet i oppgave 1. Hint: Husk at vi i relasjonsalgebraen kan ha boolske uttrykk som er på formen E 1 E 2 der E 1 og E 2 er relasjonsalgebrauttrykk. Oppgave 5 Tofasecommit Løs oppgave 3b (distribuerte transaksjoner) fra eksamen i INF3100 våren 2009. Oppgave 6 Implementasjon Ta utgangspunkt i relasjonsdatabasen i oppgave 1. Betrakt følgende SQLspørring som finner alle verker for sopran og piano: select from where Verk.etternavn, Verk.fornavn, Verk.opusnr, Verk.tittel Verk, Detaljer Verk.etternavn = Detaljer.etternavn and Verk.fornavn = Detaljer.fornavn and Verk.opusnr = Detaljer.opusnr and Detaljer.besetning = so&pf ; 6a Parsering (i) Bruk den enkle grammatikken under til å lage et parseringstre for spørringen over. 2

Elementære syntaktiske kategorier som <attribute>, <relation> og <pattern> oversettes med henholdsvis navnet på attributtet, navnet pårelasjonen og en streng i enkle anførselstegn. <query> ::= <SFW> <SFW> ::= SELECT <sellist> FROM <fromlist> WHERE <condition> <sellist> ::= <attribute> <sellist> ::= <attribute>, <sellist> <fromlist> ::= <relation> <fromlist> ::= <relation, <fromlist> <condition> ::= <condition> AND <condition> <condition> ::= <attribute> = <attribute> <condition> ::= <attribute> = <pattern> <condition> ::= <attribute> LIKE <pattern> 6b Logisk spørreplan (i) Konverter parseringstreet i oppgave 6a til en logisk spørreplan i relasjonsalgebra (tegn uttrykkstreet). (ii) Optimer den logiske spørreplanen i punkt (i) hvis den ikke alt er på optimal form (tegn det nye uttrykkstreet). 6c Datalagring Anta at vi har en disk med følgende spesifikasjoner for lagringavvåredata: Diskplater: 10 (med 2 overflater hver) Spor: 10.000 pr. overflate Antall sektorer pr. spor: 1000 (en ikke-sonet disk) Byte pr. sektor: 512 Byte pr. gap : 64 Gjennomsnittlig søketid: 5ms Spor-spor søk: 0,5 ms Rotasjonshastighet: 15.000 RPM 3

Databasen inneholder følgende antall tupler: Komponist: 1.000 Verk: 100.000 Detaljer: 50.000 Itillegggjelderfølgendeinformasjonomdiversestørrelser: Hver blokk har en header (hode) på 20 byte. Hver record (post) har et hode på 10 byte. Hvert attributt har følgende størrelse i antall bytes: Komponist Verk Detaljer etternavn: 50 etternavn: 50 etternavn: 50 fornavn: 50 fornavn: 50 fornavn: 50 nasjonalitet: 20 opusnr: 2 opusnr: 2 født: 4 tittel: 60 deltittel: 60 død: 4 genre: 15 besetning: 15 år: 4 (i) Hva er diskens utnyttbare kapasitet? (ii) Hvilke faktorer inngår i å aksessere en blokk på disken, og hva er gjennomsnittlig aksesstid for en vilkårlig 4 Kbyte blokk? (iii) Hvor storplass trenger disse relasjonene på disken itilfellet unspanned lagring (dvs. hvis ingen enkelt post er delt over flere blokker)? (iv) Hvor lang tid tar det å lese hele relasjonen Verk uavbrutt hvis vi antar vilkårlig plassering av data i diskblokker på disken? (v) Hvis pekere er på 8 byte, hvor mange blokker må aksesseres og hva er gjennomsnittlig aksesstid totalt for å finne et tuppel (en post) i Verk for en gitt verdi av attributtet etternavn hvis Verk har tynn indeks på etternavn og indeksen er realisert ved et B + -tre? 4

Oppgave 7 Transaksjoner Gitt tre transaksjoner T 1, T 2 og T 3 : T 1 : T 2 : T 3 : r 1 (A); r 1 (B); w 1 (A); w 1 (Z); r 2 (A); r 2 (B); w 2 (B); w 2 (Z); r 3 (C); w 3 (C); w 3 (Z) Betrakt følgende eksekveringsplan S av T 1, T 2 og T 3 : S : r 1 (A); r 1 (B); r 2 (A); w 1 (A); r 2 (B); r 3 (C); w 2 (B); w 2 (Z); w 1 (Z); w 3 (C); w 3 (Z) 7a Samtidighetskontroll, pessimistisk protokoll Anta at vi har eksklusive låser. Låsene skal brukes på vanlig måte, ved at hver lese- og skriveaksjon skal ha en forutgående låseaksjon og en etterfølgende opplåsningsaksjon. Dessuten skal hver transaksjon benytte tofaselåsing (2PL). La aksjonen l i (Y ) bety at T i tar låsen på Y og u i (Y ) at T i frigir låsen på Y. (i) Legg inn aksjoner av formen l i (Y ) og u i (Y ) ihveravt 1, T 2 og T 3 slik at de oppfyller reglene for bruk av låsene under 2PL, og samtidig frigir låser så snart som mulig. (ii) Beskriv hva som skjer hvis vi prøver å utføre aksjonene i de resulterende transaksjonene slik atlese/skriveaksjonene utføresmest mulig i samsvar med rekkefølgen angitt av S. Anta så at vi har to typer låser en delt (S-lås, shared lock) og eneksklusiv (X-lås), der en S-lås kan oppgraderes til (byttes ut med) en X-lås ved behov. Låsene skal forøvrig brukes som vanlig for S/X-låser og i henhold til 2PL. La aksjonene ls i (Y ) og lx i (Y ) bety at T i tar henholdsvis S-låsen og X-låsen på Y,ogu i (Y ) at T i frigir alle sine låser på Y. (iii) Legg inn aksjoner av formen ls i (Y ), lx i (Y ) og u i (Y ) ihveravt 1, T 2 og T 3 slik at de oppfyller reglene for bruk av låsene under 2PL, og slik at transaksjonene ikke benytter X-låser mer enn strengt nødvendig (dvs. de benytter oppgradering der dette er mulig). Låser skal frigis så snart som mulig. 5

(iv) Beskriv hva som skjer hvis vi prøver å utføre aksjonene i de resulterende transaksjonene slik atlese/skriveaksjonene utføresmest mulig i samsvar med rekkefølgen angitt av S. 7b Samtidighetskontroll, optimistisk protokoll Vi skal så se på hva som skjer hvis vi bruker en tidsstemplingsprotokoll. Anta at T 1, T 2 og T 3 får tidsstemplene t 1, t 2 og t 3 hvor t 1 <t 2 <t 3. (i) Beskriv hva som skjer med T 1, T 2 og T 3 hvis vi prøver å utføre aksjonene irekkefølgenangittavs. Anta så at T 2 aborterer (må rulles tilbake) etter at alle aksjonene dens er utført. (ii) Beskriv hva som skjer med T 1, T 2 og T 3 hvis vi prøver å utføre aksjonene irekkefølgenangittavs. 7c Logging Det semantiske innholdet av transaksjonen T 1 består av følgende operasjoner der x og y er lokale arbeidsvariable for T 1 og derfor ikke skal logges: T 1 : x := A; y := B; A := x 5; Z := 200; (i) Beskriv postene i undo-loggen for transaksjonen T 1 når vi initielt har verdiene A =10, B =4og Z =100. (ii) Når skal de forskjellige typene loggposter skrives til disk? Slutt på obligatorisk oppgave 2 6