Strutture di memoria Gestione delle strutture di memoria Dr. Grega Dr. Barone Control File • DBA deve comprendere le relazioni tra le strutture di memorizzazione di un database: – Fisiche: gestite dal sistema operativo (es. file di memorizzazione dati sul disco); – Logiche: gestite dall’Oracle database server (es. tablespace). • Oracle Enterprise Manager (OEM) fornisce un interfaccia web-based per la gestione e il monitoring di queste strutture (Amministrazione -> Memoria). Redo log file • Contiene le informazioni sul database associato che devono essere accessibili da parte di un'istanza, sia all'avvio sia durante il normale funzionamento. • Memorizzano tutti i cambiamenti fatti sui dati. • Memorizza lo stato della struttura fisica del database. • Enterprise Manager visualizza le informazioni dettagliate relative ai gruppi di redo log files del database. • Enterprise Manager visualizza le informazioni dettagliate relative al control file del database corrente attraverso tre sezioni (Generale, Avanzate, Sezione Record). Segmenti di rollback • Area di memoria di una tablespace che contiene le informazioni relative alle transazioni utilizzate per garantire l’integrità dei dati durante un rollback e per fornire coerenza di lettura in più transazioni. • Struttura utilizzata per tracciare le informazioni di undo. • Enterprise Manager visualizza le informazioni dettagliate relative ai segmenti di rollback. • Un gruppo è costituito da un redo log file e le sue copie. Il processo log writer ha il compito di scrivere su questi files. • Log di archivio: vengono creati dopo l'inizio dell'archiviazione automatica dei redo log file in linea e dei redo log file archiviati manualmente. File di dati • Qualsiasi file utilizzato per memorizzare dei dati in un db. Un db è composto da una o più tablespace, che a loro volta sono composte da uno o più file di dati. • Possono essere spezzettati in: – Segmenti: contengono specifici tipi di oggetti del db (es. tabella – segmento dati). – Blocchi: più piccole unità di memorizzazione di un db. • Enterprise Manager visualizza le informazioni dettagliate relative ai file di dati. 1 Tablespace • File o insieme di file utilizzato per memorizzare dati. Un db Oracle è costituito almeno dalla tablespace SYSTEM e USERS. • Enterprise Manager visualizza le informazioni dettagliate relative alle tablespaces. Tablespace - Parametri di creazione • Gestita localmente o dal dizionario – la prima memorizza le informazioni sugli extent nelle intestazioni dei file di dati mentre la seconda memorizza questi dati nel dizionario; • Tipo: – tre tipologie (Permanente, Temporanea o di Undo). • Stato: – tre tipologie (Lettura/Scittura, Solo lettura, Non in linea). Tablespace – spazio sprecato • Operazioni sulle tablespaces (aggiornamenti, cancellazioni, creazioni, ecc…) possono comportare sprechi di spazio e non efficiente utilizzo della memoria. • Soluzioni: – Operazione di restringimento: dati sono compattati all’inizio della tabella; – Operazione di riorganizzazione: compattazione dei dati sulla base dello spazio libero a disposizione. Segment Advisor Segment Advisor • Enterprise Manager utilizza segment advisor per fornire suggerimenti sul fatto che un oggetto possa essere adatto a un'operazione di riduzione in base al livello di frammentazione dello spazio nell'oggetto. • E’ configurato anche per essere eseguito automaticamente a intervalli regolari Gestione delle operazioni di Undo • Quando una transazione modifica il db, Oracle copia i dati originali prima della modifica. Questa copia costituisce gli Undo data. • E’ necessario per: – Consentire le operazioni di rollback ; – Mantenere la consistenza dei dati; – Operazioni di Flashback. • Memorizzati nella tablespace chiamata Undo. – Oracle salva gli Undo data fino a che la transizione non ha fatto il commit. – Oracle mantiene un tempo di attesa in cui gli Undo data non vengono sovrascritti (Retention Time). – Oracle automaticamente setta la tablespace con l’opzione autoextend. 2 Undo Advisor • Assiste l'utente nel dimensionamento corretto della tablespace di undo. • E’ necessario per impostare il periodo di tempo per il quale la tablespace di undo deve mantenere i dati e per analizzare l'impatto delle nuove impostazioni di conservazione degli undo. Esercitazione • Esplorazione delle strutture di memoria analizzate. – Creazione di redo log file multipli; • Attività di gestione di tablespaces: – – – – – Visualizzazione; Creazione; Modifica; Cancellazione; Gestione dello spazio di memoria. • Gestione delle operazioni di Undo Riferimenti – Gestione Istanza Oracle • Esercitazione: http://www.oracle.com/technology/obe/ 10gr2_2day_dba/storage/storage.htm • Aspetti teorici: 2 Day DBA • Approfondimenti: Oracle Database Administrator's Guide 3