Anteprima
Vedrai una selezione di 1 pagina su 5
Teoria risposte domande frequenti esame Basi di Dati Pag. 1
1 su 5
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

Illustrare, attraverso un esempio, un indice primario di tipo HASH

Mostrare un esempio di anomalia di AGGIORNAMENTO FANTASMA e come il 2PL può prevenire tale

anomalia

Vincolo: x+y+z=10

R1(x) -> R1(y) -> R2(x) -> R2(y) -> R2(z) -> W2(z) -> R1(z)

La T1 vedrà la BD in uno stato inconsistente, a causa della W2(z) sovrapposta all’esecuzione.

Il 2PL può prevenire tale anomalie adottando una politica di locking che obbliga le transazioni a

richiedere tutti i lock sulle risorse prima del loro utilizzo ed a rilasciarli solo dopo averle utilizzate.

Illustrare attraverso un esempio la differenza tra il 2PL ed il 2PL stretto

R1(X), W1(X), R2(X), Rollback(T1), W2(X)

Il 2PL, rilasciando le risorse prima del commit, non risolve l’anomalia della Dirty Read .

[ R2(X) ha letto un valore successivamente eliminato per effetto della Rollback ].

Il 2PL stretto risolve questo problema rilasciando i lock solo dopo il commit/rollback.

Differenza tra SISTEMA INFORMATIVO e SISTEMA INFORMATICO

Per Sistema Informativo si intende l’insieme delle componenti dedicate all’acquisizione, elaborazione,

memorizzazione, recupero e condivisione delle informazioni.

Un Sistema Informatico è la tecnologia di supporto del sistema informativo.

Proprietà ACID delle transazioni

Atomicità: una transazione è eseguita nella sua interezza

Consistenza: una transazione deve lasciare la BD in uno stato consistente

Isolamento: gli effetti parziali delle transazioni incomplete non sono visibili alle altre

Durabilità: gli effetti di una transazione committed sono registrate in modo permanente

Illustrare attraverso un esempio la differenza tra indici di tipo B-TREE e di tipo B+-TREE

Basi di Dati 2 Giuseppe D’Alterio

Gli alberi di tipo B+Tree presentano i RID solo nelle foglie.

Differenza tra Trigger a livello di tupla ed a livello di statement

Un trigger statement-level è attivato una sola volta (anche se 0 tuple sono aggiornate);

un trigger row-level è attivato una volta per ogni riga modificata.

Esempio di un’anomalia di perdita di aggiornamento e possibile risoluzione mediante un algoritmo di

gestione della concorrenza

R1(X), R2(X), W2(X), W1(X)

La Write della T2 è persa perché sovrascritta dalla W1(X).

Una possibile risoluzione potrebbe prevedere l’utilizzo del 2PL, così da rilasciare la risorsa solo dopo il

commit della transazione che la sta utilizzando.

Differenza tra Theta Join, Inner Join ed Equi Join

r r x r

∨¿<¿ =σ (r )

Theta Join: 1 χ 2 χ 1 2

Inner Join intende un Theta Join che esclude i dangling records.

χ

Equi Join è un Theta Join avente come condizione un’uguaglianza.

Vincoli di integrità referenziale

Date due relazioni r1 ed r2, con r1 dotata di chiave esterna FK relativa alla PK di r2, si dice che tra r1

ed r2 sussite un vincolo di integrità referenziale se per ogni occorrenza di FK in t1 r1 esiste t2

r2|t1[FK] = t2[PK] oppure è NULL.

Datawarehouse

Una DWH è una BD relazionale:

- Subject Oriented

- Integrata

- Time Variant

- Non volatile

- Progettata ai fini dell’analisi dei dati

Si illustrino le principali caratteristiche dei sistemi informativi direzionali.

Basi di Dati 3 Giuseppe D’Alterio

Dire quando uno schema di relazione R(X) è in forma normale di Boyce e Codd . Se uno schema non è

in forma normale di quali proprietà deve godere una sua decomposizione effettuata ai fini della

normalizzazione?

- è 1NF

- Ogni dipendenza funzionale non banale Y -> Z, Y è superchiave di R(X)

Approcci alla programmazione di una base di dati

- SQL EMBEDDED: le istruzioni SQL sono nel sorgente dell’applicazione;

- SQL/CLI: le funzioni per comunicare con il DBMS sono racchiuse in apposite librerie driver,

vedendo poi la nascita dello standard ODBC per l’accesso ad una BD da parte di

un’applicazione.

Inoltre, vengono definiti dei linguaggi di programmazione, specifici del DBMS, per arricchire l’SQL con

istruzioni tipiche di linguaggi di programmazione. Ad esempio il PL/SQL di Oracle.

Struttura di un DBMS

Basi di Dati 4 Giuseppe D’Alterio

Dettagli
Publisher
A.A. 2016-2017
5 pagine
1 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher giuseppe.d di informazioni apprese con la frequenza delle lezioni di Basi di Dati e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof Moscato Vincenzo.