• Non ci sono risultati.

Compito di Complementi di Basi di Dati 11 febbraio 2009

N/A
N/A
Protected

Academic year: 2021

Condividi "Compito di Complementi di Basi di Dati 11 febbraio 2009"

Copied!
2
0
0

Testo completo

(1)

Compito di Complementi di Basi di Dati

11 febbraio 2009

Esercizio 1:

Si supponga che per memorizzare i dati relativi ad un insieme di automobili sia stata usata un’unica tabella GestioneAuto con la seguente struttura:

GestioneAuto(T arga, CasaCostruttrice, P residente, Sede, M odello, AnnoCostruzione, P roprietario).

Si assuma che:

(i) ogni automobile sia identificata univocamente dalla targa;

(ii) ogni casa costruttrice sia identificata univocamente dal nome (esempio, Fiat);

(iii) ogni modello sia identificato univocamente dal nome (esempio, Panda 750);

(iv) proprietari e presidenti siano identificati univocamente dal loro codice fiscale;

(v) ogni sede sia identificata univocamente dal nome;

(vi) ogni automobile possa avere uno o pi`u proprietari;

(vii) ogni proprietario possa possedere una o pi`u automobili;

(viii) ogni casa costruttrice abbia un unico presidente e un’unica sede;

(ix) case costruttrici diverse possano avere lo stesso presidente;

(x) case costruttrici diverse possano avere la stessa sede.

Con riferimento allo schema dato, si esegua quanto segue.

(a) Determinare le dipendenze funzionali della relazione GestioneAuto, indicando, per ciascuna di esse, il requisito codificato.

(b) Determinare le chiavi candidate e gli attributi primi e non primi di GestioneAuto.

(c) Stabilire se GestioneAuto `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 GestioneAuto `e o meno in BCNF (in caso di risposta negativa, con riferimento all’insieme determinato al punto (a), si determini il sottoinsieme delle dipendenze che violano la BCNF).

(e) Stabilire se GestioneAuto `e o meno in 3NF (in caso di risposta negativa, con riferimento all’insieme determinato al punto (a), si determini il sottoinsieme delle dipendenze che violano la 3NF).

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

Esercizio 2:

Si considerino i seguenti schedule:

s1: r1(x), r2(x), w1(x), r3(x), w3(x), w2(y)w1(y);

1

(2)

s2: r2(x), w2(y), r1(x), w1(x)r3(x), w3(x), w1(y);

s3: r1(x), r2(x), w1(x), r3(x), w3(x), w1(y), w2(y).

(a) Per ogni coppia si, sj, con 1 ≤ i, j ≤ 3 e i 6= j, stabilire se si e sj sono o meno equivalenti rispetto alle viste e se sono o meno equivalenti rispetto ai conflitti.

(b) Stabilire se gli schedule dati appartengono o meno a VSR, CSR, TS, 2PL e 2PL stretto.

Esercizio 3:

Con riferimento alle tecniche per il controllo obbligatorio dell’accesso ai dati (sicurezza multilevello), si mostri come viene caratterizzato il livello di sicurezza del valore di un singolo attributo e di un’intera tupla. In particolare, si discuta il legame tra il livello di sicurezza dei valori dei singoli attributi e quello dell’intera tupla. Successivamente, si definisca la nozione di chiave apparente e si illustrino le condizioni che vengono imposte sugli attributi della chiave apparente.

Infine, sia data l’istanza {((Gradoli C), (150 S), (discreto T S), T S), ((Gradoli C), (150 S), (ottimo S), S), ((F abbri C), (200 C), (buono T S), T S)} della relazione:

DIRIGEN T E(N OM E, ST IP EN DIO, LIV ELLO, CLASSIF ICAZION E), il cui attributo classificazione non `e, ovviamente, visibile all’utente.

1. Come appare tale relazione ad un utente (classificato come utente) di livello C?

2. Si supponga che un utente (classificato come utente) di livello C tenti di aggiornare gli stipendi di Gradoli e Fabbri, portandoli rispettivamente a 230 e 250 milioni. Qual `e il risultato di tali operazioni?

Esercizio 4:

Si consideri un disco con dimensione del blocco B = 1024 byte. 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 Pr= 7 byte e dimensione dei puntatori ai blocchi P = 6 byte.

(a) Si calcoli l’ordine p del B-albero che massimizza l’occupazione dei nodi.

(b) Si calcolino gli ordini p e pleaf rispettivamente dei nodi interni e dei nodi foglia del B+-albero che massimizza l’occupazione dei nodi.

(c) Assumendo che ogni nodo del B-albero sia pieno al 70%, determinare il numero di livelli di un B-albero in grado di gestire un milione di record.

(d) Assumendo che ogni nodo del B+-albero sia pieno al 70%, determinare il numero di livelli di un B+-albero in grado di gestire un milione di record.

Riferimenti

Documenti correlati

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

Determinare il numero medio di accessi a blocco richiesto da una ricerca con indice secondario costruito su un campo chiave V 0 , diverso dalla chiave primaria, di dimensione 9

[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

(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

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