Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
schema della basi di dati: parte invariante nel tempo: caratteristiche dei dati
istanza o stato della base dei dati: parte variabile nel tempo
lo schema della relazione costituito dalla sua intestazione : dal nome della re
lazione seguito dal nome dei suoi attributi (colonne)
l'istanza di una relazione costituita dall'insieme (variante nel tempo) delle su
e righe
lo schema la componente intensionale
l'istanza la componente estensionale
architettura di DBMS articolata su 3 livelli:
esterno, logico e interno
schema logico: descrizione dell'intera base di dati mediante modello logico del
dbms (relazione, gerarchico, reticolare o a oggetti)
schema interno: rappresentazione dello schema logico per mezzo di strutture fisi
che di memorizzazione
schema esterno: descrizione di una porzione della base di dati per mezzo del mod
ello logico. E' possibile associare uno schema logico a piu' schemi esterni (puo
' coincidere con quello logico) gli accessi alla base di dati avvengono solo med
iante il livello esterno
indipendenza dei dati: applicativi interagiscono a livello elevato di astrazione
prescindendo dai dettagli realizzativi di costruzione
indipendenza fisica: consente di interagire con il DBMS in modo indipendente dal
la struttura fisica dei dati. E' possibile modificare le strutture fisiche senza
influire sulla descrizione dei dati
indipendenza logica: la modifica di uno schema esterno non influenza lo schema l
ogico e la sottostante organizzazione fisica dei dati
linguaggi di definizione dei dati: data definition language definisce schemi log
ici, esterni e fisici e le auths
linguaggi di manipolazione dei dati: data manipulation language: per l'interroga
zione e l'aggiornamento delle istanze della base di dati
utenti:
dba: responsabile della progettazione amministrazione e controllo della base di
dati. garantisce affudabilit e prestazioni, gestisce auth accesso dati
progettisti/programmatori di applicazioni: usano il DML per interagire con la ba
se di dati
utenti finali: possono utilizzare programmi che realizzano attttivit predefinite
a frequenza elevata o casuali fornendo interrogazioni non predefinite
vantaggi:
i dati una risorsa comune a disposizione di molteplici componenti
modello unificato e preciso utilizzabile in applicazioni attuali e future
controllo centralizzato dei dati
riduzione di ridondanze e inconsistenze
indipendenza dei dati porta a sviluppare applicazioni piu flessibili
svantaggi:
prodotti costosi e complessi
sefvizi non scorporabili
- le nuple di una relazione sono tra loro distinte: tra gli elementi di un insie
me non possono esservi duplicati, una tabella rapprenta quindi una relazione sol
o se le sue righe sono l'una diversa dall'altra
ogni n-upla al proprio interno ordinata: definito un ordinamento tra i domini
si tende a privilegiare notazioni non posizionali: associamo a ogni occorrenza d
el dominio della relazione un nome detto attributo
D insieme dei domini
corrispondenza tra attributi e domini dom: X -> D associa a ogni attributo A e X
un dominio dom(A) e D
una tupla su un insieme di attributi X una funzione t che associa a ciascun attr
ibuto A e X un valore di dom(A)
Una relazione su X quindi un inseme di tuple su X: a differenza della def. matem
atica gli elementi della tupla sono individuati per attributo e non per posizion
e.
Una base di dati in genere costituita da pi relazioni: le tuple contengono valori
comuni per stabilire corrispondenze: i riferimenti tra dati in relazioni divers
e sono rappresentati per mezzo di valori dei domini. E non mediante puntatori o
altro
Rispetto a un modello basato su puntatori, il modello relazionale
- richiede di rappresentare solo ci che rilevante dal punto di vista dell'applica
zione
- indipendenza fisica dei dati che quindi risulta facilmente trasferibile
uno schema di relazione costituito dal R nome della relazione da un insieme di n
omi di attributi. indicato con R(X). A ciascun attributo associato un dominio
uno schema di base di dati un insieme di schemi di relazione con nomi diversi
un'istanza di relazione (o relazione) su R(X) un insieme r di tuple su X
un'istanza di base di dati (o base di dati) in R un insieme di relazioni r dove
ogni ri una relazione di Ri(Xi)
sono ammissibili relazioni su un solo attributo
le informazioni devono essere rappresentate per mezzo di tuple di dati omogenee
valore null: assenza di informazione valore aggiuntibvo rispotto a quelli del do
minio e ben distinto da essi
vincolo di integrit
propriet che deve esssere soddisfatta dalle istanze che rappresentano informazion
i corrette. predicato che associa un boolean. se true soddisfa il vincolo. Una i
stanza che soddisfa tutti i vincoli corretta
vincolo intrarelazionale: se il suo soddisfacimento definito rispetto a singole
relazioni della base di dati
- vincolo di tupla: vincolo che pu essere valutato su ciascuna tupla indipendente
mente dalle altre
- vincolo su valori o vincolo di dominio: rifeirmento a singoli valori
vincolo interrelazionale: coinvolge pi relazioni
vincoli di tupla: espressione boleana con aritmetica di confronto su valori di a
ttributo
il join naturale un operatore che correla dati in relazioni diverse sulla base d
i valori uguali in attributi con lo stesso nome. Il risultato una relazione sull
'unione degli insiemi degli attributi degli operandi e le sue tuple sono ottenut
e combinando le tuple degli operandi con valori uguali sugli attributi comuni
In generale il join naturale riXr2 di r1(X1) e r2(X2) la relazione definita su X
1X2:
r1Xr2 = { t su X1X2 | eistono t1
r1, t2
r2 con t[x1] =t1 e t[x2]=t2 }
le tuple del risultato sono ottenuto combinando tuple degli operandi con valori
uguali sugli attributi comuni: il grado della relazione ottenuta come risultato
di un join minore o uguale della somma dei gradi dei due operandi perch gli attri
buti omonimi degli operandi compaiono una sola volta nel risultato
E' molto frequente eseguire join sulla base di valori della chiave di una delle
relazioni coninvolte. In molti casi anche definito tra gli attributi coinvolti u
n vincolo di integrit referenziale.