Als PDF Downloaden!

Werbung
Tipps & Tricks: Heat Maps
Bereich:
SQL
Erstellung:
08/2013 MP
Versionsinfo:
12.1
Letzte Überarbeitung:
08/2013 MP
Heat Map (ADO mittels ILM)
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:
Muniqsoft GmbH
Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40
IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0
Seite 1 von 4
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:
Segment Write: Segment wurde verändert (INS/UPD/DEL)
Segment Read: Segment wurde gelesen
Full Scan: Objekt wurde durch Full Scan gelesen
Lookup Scan: Objekt wurde über Index gelesen
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):
COMPRESS ADVANCED
COMPRESS FOR LOW|HIGH QUERY
COMPRESS FOR ARCHIVE LOW|HIGH
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 ]
Muniqsoft GmbH
Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40
IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0
Seite 2 von 4
Hinweis: Sie können die ILM Klausel auch bei einem CREATE TABLE verwenden.
Policies können gesetzt werden auf:
Zeilenebene (ROW) => Wenn alle Zeilen des Blocks nicht angefasst wurden
Segmentebene (SEGMENT) => Komplette Tabelle
Gruppe (GROUP) => Leider steht dazu (derzeit) nichts in der Dokumentation
Zeitspannen für Aktivierung der Policy:
Tage
Monate
Jahre
Zugriffsformen für Aktivierung der Policy:
LOW ACCESS (Wenig Zugriffe auf das Objekt)
NO ACCESS (Kein Zugriff auf Objekt)
NO MODIFICATION (Keine schreibender Zugriff)
CREATION (Erstellungszeitpunkt des Objekts)
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;
Weitere Beispiele zum Einsatz von ILM:
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
Muniqsoft GmbH
Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40
IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0
Seite 3 von 4
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)
Muniqsoft GmbH
Schulungszentrum, Grünwalder Weg 13a, 82008 Unterhaching, Tel. 089 / 679090-40
IT-Consulting & Support, Witneystraße 1, 82008 Unterhaching, Tel. 089 / 6228 6789-0
Seite 4 von 4
Herunterladen