• Non ci sono risultati.

Compito di Complementi di Basi di Dati 18 settembre 2009

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Complementi di Basi di Dati 18 settembre 2009"

Copied!
2
0
0

Testo completo

(1)

Compito di Complementi di Basi di Dati

18 settembre 2009

Esercizio 1:

Siano dati la relazione R(A, B, C, D, E, F ) e l’insieme di dipendenze funzionali: {AB → C, C → A, BC → D, ACD → B, D → EF, BE → C, CF → BD, CE → AF }.

(a) Determinare le chiavi candidate e gli attributi primi e non primi di R.

(b) Stabilire se R `e o meno in BCNF (in caso di risposta negativa, si determini il sottoinsieme delle dipendenze che violano la BCNF).

(c) Stabilire se R `e o meno in 2NF (in caso di risposta negativa, si indichino gli attributi che violano la 2NF e se ne illustri il perch´e).

(d) Stabilire se R `e o meno in 3NF (in caso di risposta negativa, si determini il sottoinsieme delle dipendenze che violano la 3NF).

(e) Determinare una copertura minimale di F . Stabilire se F possiede altre coperture minimali, fornendo, in caso affermativo, (almeno) un’altra copertura minimale.

(f) Nel caso in cui R non sia in 3NF, fornire una scomposizione lossless join in 3NF di R che conservi le dipendenze.

Esercizio 2:

Si illustrino le differenze tra 2PL e 2PL stretto, spiegando le ragioni che hanno portato all’introduzione di 2PL stretto.

Successivamente, si stabilisca se i seguenti schedule appartengono o meno a VSR, CSR, 2PL e 2PL stretto.

1. r0(x), r3(x), w3(x), r0(y), r3(z), w3(z), w2(y), w2(z), w0(t), w1(z), w1(t);

2. r2(z), r2(y), w2(y), r3(y), r3(z), r1(x), w1(x), w3(y), w3(z), r2(x), r1(y), w1(y), w2(x);

3. r3(y), r3(z), r1(x), w1(x), w3(y), w3(z), r2(z), r1(y), w1(y), r2(y), w2(y), r2(x), w2(x).

Esercizio 3:

Si descrivano le modalit`a di gestione degli accessi tramite indici da parte dell’ottimizzatore. In parti- colare, si discuta l’influenza della presenza di uno o pi`u predicati valutabili e/o di uno o pi`u predicati non valutabili sulle modalit`a di valutazione delle condizioni presenti in un’interrogazione.

Esercizio 4:

Sia dato un file con r = 2000000 record memorizzati su un disco con dimensioni del blocco B = 1024 byte.

I record abbiano lunghezza fissa R = 100 byte e siano di tipo unspanned. La dimensione del campo chiave primaria sia V 1 = 10 byte. La dimensione del puntatore ad un blocco sia P = 5 byte. La dimensione del puntatore a record sia P = 6. Si assuma che il file non sia ordinato rispetto ad alcun campo.

[4a] Determinare il numero di accessi a blocco richiesti da una ricerca con indice secondario costruito sulla chiave primaria.

1

(2)

[4b] Determinare il numero di accessi a blocco richiesti da una ricerca con indice secondario denso costruito su un campo non chiave di dimensione V 2 = 15 byte.

[4c] Si considerino gli indici secondari definiti ai punti precedenti e li si converta in indici multilivello.

Per entrambi i casi, calcolare il numero di livelli dell’indice, il numero di blocchi per ogni livello ed il numero di accessi necessario per accedere ad un blocco del file di dati.

Riferimenti

Documenti correlati

(e) Stabilire se T EAT RI ` e o meno in BCNF (in caso di risposta negativa, con riferimento all’insieme determinato al punto (a), si determini il sottoinsieme delle dipendenze

Si considerino un B-albero e un B + - albero che abbiano come campo di ricerca un campo chiave non ordinante di dimensione V = 15 byte, dimensione dei puntatori ai record di dati P r

Determinare il numero di accessi a blocco richiesti da una ricerca basata su un indice secondario denso costruito su un campo chiave non ordinante V con dimensione pari a 9 byte,

Successivamente, si determini la dimensione di un B-albero, con campo di ricerca il campo chiave V, puntatore ai dati di dimensione pari a 7 byte e puntatore ausiliario di

La quota associativa possa variare da un anno all’altro e da socio a socio (le quote pagate dal socio Adriano Panetta negli anno 2001 e 2002 possano essere diverse, cos`ı come

Infine, si determini la dimensione e il numero di accessi a blocco richiesti da una ricerca basata su un B-albero, con campo di ricerca il campo chiave V 2, puntatore ai dati

(a) Determinare il numero di accessi a blocco richiesti da una ricerca basata sul valore del campo chiave in presenza delle seguenti organizzazioni del file: (i) non ordinato,

Infine, si tenga presente che uno stesso cliente pu`o effettuare pi` u prenotazioni dello stesso tipo di camere presso lo stesso albergo in periodi diversi (ad esempio, il cliente