Advanced compression option: Entwicklung von 11g zu 12c
-
Upload
trivadis -
Category
Presentations & Public Speaking
-
view
374 -
download
1
Transcript of Advanced compression option: Entwicklung von 11g zu 12c
Advanced Compression OptionEntwicklung von 11g zu 12c
Florian FeichtConsultant
Advanced Compression Option - Entwicklung von 11g zu 12c2 01.05.2023
Agenda
Agenda
Advanced Compression Option - Entwicklung von 11g zu 12c3 01.05.2023
1. Advanced Compression Option Überblick
2. OLTP/Advanced Row Compression
3. Secure File Compression
4. Flashback Data Archive Optimization
5. Heat Map
6. Automatic Data Optimization
7. Zusammenfassung
Advanced Compression Option - Entwicklung von 11g zu 12c4 01.05.2023
Advanced CompressionÜberblick
Features
Advanced Compression Option - Entwicklung von 11g zu 12c5 01.05.2023
OLTP Table Compression/Advanced Row CompressionSecureFiles Compression/Advanced LOB CompressionSecureFiles Deduplication/Advanced LOB DeduplicationRMAN Backup Compression
Data Pump Data Compression
Data Guard Network Compression/Data Guard Redo Transport Compression
Optimization for Flashback Data Archive History TablesExadata Flash Cache Compression
Hybrid Columnar Compression
(Source: Oracle Corporation)
(Source: Oracle Corporation)
Zusätzlich neue Features in 12c
Advanced Compression Option - Entwicklung von 11g zu 12c6 01.05.2023
Heat MapAutomatic Data OptimizationAdvanced Network Compression
Storage Snapshot Optimization
Online Move Partition
Advanced Index Compression (Source: Oracle Corporation)
(Source: Oracle Corporation)
Advanced Compression Option - Entwicklung von 11g zu 12c7 01.05.2023
OLTP CompressionAdvanced Row Compression
Funktionsweise
Advanced Compression Option - Entwicklung von 11g zu 12c8 01.05.2023
Kompression erfolgt über Deduplizierung–Symboltabellen werden pro Block angelegt
Daten werden unkomprimiert geschrieben–Komprimierung startet sobald ein Block voll ist
ALTER TABLE t11 COMPRESS FOR OLTP;
ALTER TABLE t12 ROW STORE COMPRESS ADVANCED;
(Source: Oracle Corporation)
DBMS_COMPRESSION Advisor
Advanced Compression Option - Entwicklung von 11g zu 12c9 01.05.2023
DBMS_COMPRESSION.GET_COMPRESSION_RATIO ( -- input parameters scratchtbsname => 'SCRATCH', ownname => user, tabname => i.table_name, partname => NULL, comptype => power(2,j), -- output parameters blkcnt_cmp => l_blkcnt_cmp, blkcnt_uncmp => l_blkcnt_uncmp, row_cmp => l_row_cmp, row_uncmp => l_row_uncmp, cmp_ratio => l_cmp_ratio, comptype_str => l_comptype_str );
Achtung: CPU Last und Chained Rows
Advanced Compression Option - Entwicklung von 11g zu 12c10 01.05.2023
AktionGröße in MB CPU(s)
Elapsed(s)
INSERT 1197 66,04 113,4UPDATE 1197 248,23 318,69SELECT 1197 1,87 1,87
AktionGröße in MB CPU(s)
Elapsed(s)
INSERT 728 373,85 532,7UPDATE 1143 2861,6 3154,27SELECT 1143 1,6 1,6
Unkomprimiert
OLTP komprimiert
SQL> SELECT table_name, COUNT(*) as Anzahl FROM chained_rows GROUP BY table_name;
TABLE_NAME ANZAHL-------------------- --------UNCOMPRESSED_TABLE 3COMPRESSED_TABLE 123522
Neu in 12c
Advanced Compression Option - Entwicklung von 11g zu 12c11 01.05.2023
Neuer Name Online Partition move
– Etliche Einschränkungen
• Nicht möglich für IOT’s
• Nicht möglich für SYS Objekte
• Nicht möglich für Tabellen mit Bitmap-Join oder Domain Indizes
• Parallel oder Direct Path Insert
ALTER TABLE <table name> MOVE PARTITION <partition name> ONLINE ROW STORE COMPRESS ADVANCED;
Advanced Compression Option - Entwicklung von 11g zu 12c12 01.05.2023
Secure File Compression
Vorraussetzung
Advanced Compression Option - Entwicklung von 11g zu 12c13 01.05.2023
LOB müssen als SecureFile angelegt werden
Long Datentypen werden nicht unterstützt
Komprimierungsrate ist abhängig vom–Komprimierungsfaktor (high, medium, low)–Komprimierbarkeit der „Rohdaten“
CREATE TABLE t1 ( a CLOB) LOB(a) STORE AS SECUREFILE ( COMPRESS {LOW | MEDIUM | HIGH} DEDUPLICATE CACHE NOLOGGING );
Advanced Compression Option - Entwicklung von 11g zu 12c14 01.05.2023
14
!
!
!A
B
C
SHA1 = d8e8ece…
SHA1 = da39a3…49b08de …
58911e7 …
Referenz Referenz
A B C
!Ein Original undzwei Referenzenvon Dokument "!"
Gut für …DokumentenmanagementContentmanagementeMail Server…
Funktionsweise (Deduplizierung)
Einsatzzwecke
Advanced Compression Option - Entwicklung von 11g zu 12c15 01.05.2023
CLOB’s sind für Kompression prädestiniert
BLOB’s sind datenabhängig
TABLE_NAME MB% CPU% Elapsed%BASIC_LOB 100,0 100,0 100,0 SECURE_LOB 112,5 63,3 80,4 DEPDU_LOW_LOB 108,7 130,6 114,8
DEPDU_MED_LOB 104,2 321,4 234,3DEPDU_HIG_LOB 104,6 340,9 248,3 LOW_LOB 108,4 102,9 97,8MED_LOB 108,4 299,0 226,9HIG_LOB 106,9 316,1 230,3
TABLE_NAME MB% CPU% Elapsed%BASIC_LOB 100,0 100,0 100,0 SECURE_LOB 112,2 65,2 65,6 DEPDU_LOW_LOB 10,7 98,4 77,4
DEPDU_MED_LOB 8,0 121,9 90,7DEPDU_HIG_LOB 6,4 209,8 144,6 LOW_LOB 10,7 73,0 64,4MED_LOB 7,7 96,9 77,0HIG_LOB 6,1 183,6 129,4
Advanced Compression Option - Entwicklung von 11g zu 12c16 01.05.2023
Flashback Data Archive Optimization
Übersicht Flashback Data Archive
Advanced Compression Option - Entwicklung von 11g zu 12c17 01.05.2023
Erlaubt den Stand einer Tabelle zu einem beliebigen Zeitpunkt zu lesen
Erlaubt alle Änderungen einer Tabelle nachzuvollziehen
Automatisches Housekeeping durch Setzen der Retention
Flashback Daten können komprimiert werden
(Source: Oracle Corporation)
CREATE FLASHBACK ARCHIVE fda_10_day TABLESPACE fef_archiv_obj RETENTION 10 DAY;
ALTER TABLE history_table FLASHBACK ARCHIVE f1;
Neue Features Flashback Data Archive 12c
Advanced Compression Option - Entwicklung von 11g zu 12c18 01.05.2023
User context tracking– Information über die Session, die Daten verändert können mitgeloggt werden • Logging Level kann über DBMS_FLASHBACK_ARCHIVE.SET_CONTEXT_LEVEL
konfiguriert werden
Database hardening –Erlaubt mehrer Tabellen zu einer “application” zusammenzufassen und Flash Back
Data Archive mit einem Kommando zu konfigurieren. Tabellen können alle vor Schreibzugriff geschützt werden– “application” wird mit DBMS_FLASHBACK_ARCHIVE.REGISTER_APPLICATION
erstellt
Import und Export der Historie (für Umzüge)
Advanced Compression Option - Entwicklung von 11g zu 12c19 01.05.2023
Neue Features in 12c
Advanced Compression Option - Entwicklung von 11g zu 12c20 01.05.2023
Heatmap
Übersicht
Advanced Compression Option - Entwicklung von 11g zu 12c21 01.05.2023
Erstellt eine Übersicht der letzten Zugriffe auf DB Objekte–Lesen und schreibend wird separat protokolliert–Übersicht wird im SYSAUX Tablespace protokolliert–Objekte im SYSTEM und SYSAUX werden nicht gemonitored
Erzeugt ca. 5% Overhead
Kann auf Datenbank und Session Ebene aktiviert werden
ALTER SYSTEM SET heat_map=ON;
ALTER SESSION SET heat_map=ON;
Übersicht
Advanced Compression Option - Entwicklung von 11g zu 12c22 01.05.2023
Übersichts Views und Tabellen und DBMS_HEATMAP
Advanced Compression Option - Entwicklung von 11g zu 12c23 01.05.2023
Detaillierte Übersicht auf–Object level–Segment level–Tablespace level–Extent level–Block level
View für Online Übersicht–GV$HEAT_MAP_SEGMENT
SELECT object_name, track_time, segment_write SEG_W, segment_read SEG_R, full_scan, lookup_scan FROM GV$HEAT_MAP_SEGMENT;
OBJECT_NAME TRACK_TIME SEG_W SEG_R FUL LOO----------- ------------------- ----- ----- --- ---CONF_OBJ_C1 09.05.2015 20:15:38 YES NO YES NOCONF_SERVIC 09.05.2015 20:15:38 YES NO NO YES
Weitere Views –DBA_HEATMAP_TOP_OBJECTS–DBA_HEATMAP_TOP_TABLESPACES–DBA_HEAT_MAP_SEGMENT–DBA_HEAT_MAP_SEG_HISTOGRAM–Analog dazu die user_*
Auswertungen
Advanced Compression Option - Entwicklung von 11g zu 12c24 01.05.2023
DBMS_HEAT_MAP.BLOCK_HEAT_MAP (als sys)
DBMS_HEAT_MAP.EXTENT_HEAT_MAP
OWNER SEGMENT_NAME BLOCK_ID--------------- --------------- --------------AMSMON T904_PLUGIN 243AMSMON T904_PLUGIN 244AMSMON T904_PLUGIN 245AMSMON T904_PLUGIN 246AMSMON T904_PLUGIN 247
SEGMENT_NAME BLOCK_ID BLOCKS BYTES--------------- -------------- -------------- --------------T904_PLUGIN 243 5 40960T904_PLUGIN 10280 8 65536
Advanced Compression Option - Entwicklung von 11g zu 12c25 01.05.2023
Automatic Data Optimization
Übersicht
Advanced Compression Option - Entwicklung von 11g zu 12c26 01.05.2023
Automatic Data Optimization (ADO) ist ein automatisches Information Lifecycle Management (ILM) System in der Datenbank
Verschiedene ILM Policies können erstellt werden–Werden im Maintenance Window ausgeführt–Manuelle Ausführung mit
Basiert auf Heat Map DatenAchtung kein Supplemental Logging
BEGINDBMS_ILM.EXECUTE_ILM (
ILM_SCOPE => dbms_ilm.SCOPE_SCHEMA, execution_mode => dbms_ilm.ilm_execution_offline, task_id => v_executionid
);END;/
Storage Tiering
Advanced Compression Option - Entwicklung von 11g zu 12c27 01.05.2023
(Source: Oracle Corporation)
ALTER TABLE t12 ILM ADD POLICY TIER TO LOW_COST_STORE;
Compression Tiering
Advanced Compression Option - Entwicklung von 11g zu 12c28 01.05.2023
No Compression
OLTP Compression(Source: Oracle Corporation)
ALTER TABLE t12 ILM ADD POLICYCOMPRESSSEGMENTAFTER 10 DAYS OF NO MODIFICATION;
Einsatzbereiche
Advanced Compression Option - Entwicklung von 11g zu 12c29 01.05.2023
Tiering Policies sind transparent für die Applikation• Nur Tabellendefinition muss angepasst werden• Änderungen haben keine Auswirkungen auf Zugriffsweg• Können aufeinander aufbauen
Storage Tiering für partitionierte Tabelle• Partitionen werden nach Tablespace Füllgrad verschoben
Compression Tiering für• Partitionierte Tabellen mit Storage Tiering für zusätzliche Compression• Große Archiv - Tabellen (Row Level Compression)
Advanced Compression Option - Entwicklung von 11g zu 12c30 01.05.2023
Zusammenfassung
Zusammenfassung
Advanced Compression Option - Entwicklung von 11g zu 12c31 01.05.2023
Allgemein–Kompression muss für jede Applikation separat getestet werden–OLTP Kompression für Tabellen mit Großteils SELECT und INSERT–Secure File Kompression für
• CLOB‘s• BLOB‘s mit komprimierbaren Daten
Deutlich mehr automatisierte Möglichkeiten in 12c–Heatmap
• Aktivieren falls Automatic Data Optimization genutzt werden soll–Automatic Data Optimization
• Sinnvoller Einsatz für Komprimierung und Storage Tiering
Fragen und Antworten
Florian FeichtConsultant
01.05.2023 Advanced Compression Option - Entwicklung von 11g zu 12c32