Accenni di Oracle Database Oracle Tipi di tabelle in Oracle Tipi di

Database Oracle
• È una collezione di dati collocati in uno o più file
• Contiene strutture fisiche e logiche (oggetti)
Accenni di Oracle
Dr. Daniele Barone
Dr. Simone Grega
Tipi di tabelle in Oracle
• Tabelle relazionali
• Tabelle relazionali a oggetti:
– sfrutta caratteristiche come l’ereditarietà dei tipi
• Tabelle di solo indice:
– crea una tabella che memorizza i dati in una struttura
a indice, consentendo l’ordinamento dei dati stessi.
• Tabelle esterne:
– E’ possibile creare tabelle esterne per accedere a file
esterni al database come se queste fossero
memorizzate all’interno del database.
– Tabelle: per la memorizzazione dei dati
– Indici: per il recupero veloce dei dati
–…
• Per gli oggetti è possibile:
– creare dei sinonimi,
– limitarne l’accesso,
– visualizzarli in database diversi (attraverso i database
link)
Tipi di tabelle in Oracle(2)
• Tabelle partizionate:
– E’ possibile dividere una tabella in più
partizioni, che consentono di gestire
separatamente ogni parte della tabella
(semplifica e migliora le prestazioni di
manutenzione e delle query)
• Viste materializzate:
– è una replica di dati recuperati tramite una
query.
1
Tipi di tabelle in Oracle(3)
• Tabelle temporanee
• Tabelle riunite in cluster:
– se due tabelle vengono interrogate insieme, è
possibile memorizzarle fisicamente insieme
tramite una struttura chiamata cluster.
• Tabelle eliminate:
– è possibile recuperare rapidamente le tabelle
eliminate.
Meta dati e tablespace
• Per tutte le strutture logiche Oracle mantiene un
dizionario dati che registra una serie di metadati
per ciascun oggetto:
–
–
–
–
Una definizione,
Proprietario,
I privilegi correlati,
Etc.
• Per gli oggetti che richiedono dello spazio fisico
di memorizzazione, Oracle allocherà dello
spazio in una tablespace.
Tipi di Indici in Oracle
• Indici B*-tree:
– indice standard; utile per la selezione delle
righe che soddisfano un criterio di
equivalenza o di intervallo.
•
•
•
•
•
Indici bitmap
Indici a chiave inversa
Indici basati su funzioni
Indici partizionati
Indici di testo
Struttura fisica del database Oracle (1)
La struttura fisica di Oracle è composta dalle seguenti tipologie di file:
– TABLESPACE: è costituita da uno o più file di dati (DataFile); un file di dati può
far parte di una e una sola taplespace. Oracle Database 10g crea almeno due
tablespace per ciascun database, SYSTEM e SYSAUX, a sostegno delle
proprie esigenze di gestione interne.
– DATAFILE: ogni database ne può avere vari; contengono tutti i dati del
database (tabelle,indici,dati utente,ecc). Un datafile può essere associato a solo
un database. Un insieme di datafile formano un unità logica chiamata
tablespace;
– CONTROLFILE: è necessario per specificare la struttura fisica del database.
Ogni volta che viene avviata un’istanza, tale file si occupa, per esempio, di
identificare il database e i file di log necessari;
– REDOLOG: ogni database ha un insieme di due o più redolog file. Registrano
tutti i cambiamenti effettuati sui dati; assicurano che tutti i cambiamenti siano
registrati anche se, a causa di failure, non dovessero essere scritti sui datafile
(operazione di rolling forward).
2
Istanza Oracle
• Un istanza di Oracle è costituita da un
‘area di memoria chiamata area globale di
sistema (SGA, System Global Area) e dai
processi in background che interagiscono
tra la SGA e i file del database sul disco.
– In un Real Application Cluster (RAC) di
Oracle lo stesso database viene utilizzato da
più di un istanza.
3