Die Heat Map zeichnet auf Blockebene den Datenzugriff und die Veränderungshäufigkeit auf.
Mit diesem Wissen kann man Daten, die selten verwendet oder verändert werden, an Ort und Stelle komprimieren und auf einen anderen Tablespace (auf ein langsameres und billigeres Medium) verschieben.
Für die Funktionen der Heat Map, der ADO (Advanced Data Optimization) und ILM (Information Lifecycle Management) benötigen Sie die Enterprise Edition + Advanced Compression Option.
All diejenigen unter Ihnen, die das lizenziert haben, dürfen hier weiterlesen :-)
Sie können die Heat Map ein- oder ausschalten:
ALTER SYSTEM SET heat_map = ON|OFF;
Wenn Sie Heat Maps nicht eingeschaltet haben und versuchen darauf zuzugreifen, erhalten Sie:
ORA-38342: Wärmebild nicht aktiviert ?
Im Englischen klingt das etws besser:
ORA-38342: heat map not enabled
Die Heat Map kann über folgende V$*, ALL*, DBA* und USER* Views angezeigt werden.
Heat Map für die Top 1000 Objekte:
SELECT * FROM dba_heatmap_top_objects;
Heat Map für die Top 100 Tablespaces:
SELECT * FROM dba_heatmap_top_tablespaces;
Zeitpunkt des letzten Segmentzugriffs:
USER_/ ALL_/ DBA_HEAT_MAP_SEGMENT
Segmentzugriffsinformationen für (alle) Segmente:
USER_/ ALL_/ DBA_HEAT_MAP_SEG_HISTOGRAM
Ausgabe des Lese- bzw. Schreibzugriffs auf Objekte sowie des Zeitstempels des Auftretens:
SELECT object_name, track_time, segment_write,
segment_read, full_scan, lookup_scan
FROM v$heat_map_segment;
Erklärung der Spalten:
ADO kümmert sich um ein automatisches Komprimieren oder Verschieben von "Alt" Daten (gesteuert über Policies), die wenig genutzt wurden.
Mehrere Policies können additiv auf das Objekt gesetzt werden. Policynamen werden automatisch vergeben (p1, p2, ...pn)
Voraussetzung ist aktiviertes Heat Map und keine CDB (Container DB).
Mögliche Komprimierungstechniken (nur pro Segment einstellbar):
ILM Syntax:
ALTER TABLE [<owner>.]<table_name> ILM { ADD POLICY ilm_policy_clause |
{ DELETE | ENABLE | DISABLE } POLICY ilm_policy_name |
DELETE_ALL |
ENABLE_ALL |
DISABLE_ALL }
ilm_policy_clause:
{ table_compression | tiering_clause }
{ SEGMENT | GROUP | ROW }
{{ AFTER number {
{ DAY | DAYS } |
{ MONTH | MONTHS } |
{ YEAR | YEARS } }
OF {
{ LOW ACCESS } |
{ NO ACCESS } |
{ NO MODIFICATION } |
CREATION } } |
ON function_name }
tiering_clause:
TIER TO tablespace [ READ ONLY ]
Hinweis: Sie können die ILM Klausel auch bei einem CREATE TABLE verwenden.
Policies können gesetzt werden auf:
Zeitspannen für Aktivierung der Policy:
Zugriffsformen für Aktivierung der Policy:
Hinweis: Die Policies werden im Wartungsfenster geprüft und ggf. ausgeführt.
Sie können wenig benutzte Partitionen einer part. Tabelle auf einen anderen Tablespace verschieben, wenn der lokale Tablespace beginnt voll zu laufen:
ALTER TABLE emp_part ILM ADD POLICY TIER TO TABLESPACE tbs_on_sata_hdd;
Partition DEPT_2012 komprimieren, wenn 6 Monate kein (Lese-, Schreib-) Zugriff darauf erfolgte:
ALTER TABLE scott.emp_part
MODIFY PARTITION dept_2012 ILM ADD
POLICY COMPRESS FOR ARCHIVE HIGH SEGMENT
AFTER 6 MONTHS OF NO ACCESS;
Tabelle EMP blockweise komprimieren, wenn auf Zeilen 30 Tage nicht schreibend zugegriffen wurde:
ALTER TABLE scott.emp ILM ADD
POLICY ROW STORE COMPRESS ADVANCED ROW
AFTER 30 DAYS OF NO MODIFICATION;
Partition dept_2014 der Tabelle deptp komprimieren, wenn auf Zeilen 12 Monate nicht (lesen/schreibend) zugegriffen wurde:
ALTER TABLE scott.deptp MODIFY PARTITION
dept_2014 ILM ADD POLICY COMPRESS FOR
ARCHIVE HIGH SEGMENT
AFTER 12 MONTHS OF NO ACCESS;
Policy, um die Partition dept_10 der Tabelle emp_part auf günstigeren Tablespace zu verschieben:
ALTER TABLE scott.emp_part MODIFY PARTITION dept_10 ILM ADD POLICY
TIER TO tablespace_auf_sata_platte;
Heat Maps sind praktisch, wenn Sie ihr teures SAN nur für die Daten verwenden möchten, die auch wirklich häufig gelesen/geschrieben werden.
Weitere 299 Neuerungen erfahren Sie in unseren Oracle 12c Kurs (ab September 2013 bei uns in München-Unterhaching, oder als Inhouse Kurs bei Ihnen ab sofort)
In unserer Know-How Datenbank finden Sie mehr als 300 ausführliche Beiträge zu den
Oracle-Themen wie DBA, SQL, PL/SQL, APEX und vielem mehr.
Hier erhalten Sie Antworten auf Ihre Fragen.