<Insert Picture Here> Oracle Datenbank 11g Advanced Compression Option DOAG Regionalgruppe Jena/Thüringen am 30. April 2008 Karin Patenge Oracle Deutschland GmbH karin.patenge@oracle.com
Agenda Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Oracle Advanced Compression Überblick Advanced Compression besteht aus: Unstrukturierte Datenkompression LOB Daten (SecureFiles) Kompression für Backup Daten: Fast RMAN DATA PUMP Strukturierte / Relationale Datenkompression Neu: OLTP Table Compression Komprimierung auf Block-Level Alle Datentypen Network Traffic Kompression Data Guard Redo logs Standby Backups
Kompression unstrukturierter Daten SecureFiles 2 Verfahren Deduplikation Eliminiert automatisch redundante Kopien Komprimierung Syntax SQL> CREATE TABLE images (id NUMBER, image BLOB) LOB(image) STORE AS SECUREFILE (TABLESPACE lob_tbs { COMPRESS DEDUPLICATE }); SQL> ALTER TABLE t1 MODIFY LOB(blob_col) (DEDUPLICATE LOB VALIDATE); SQL> ALTER TABLE t1 MODIFY LOB(blob_col) (COMPRESS HIGH);
Kompression von Netzwerk-Traffic ReDo Log Streams Kompression einschalten für ReDo Logs bei Übertragung nach Standby DB COMPRESSION Attribut setzen für den LOG_ARCHIVE_DEST_n Initialisierungsparameter SQL> SELECT dest_name, compression FROM v$archive_dest; Benutzen von ReDo Compression Eigenschaft des Oracle Data Guard Brokers (Default = Disable )
Kompression von Backup-Daten RMAN FAST RMAN Konfiguration für Kompression RMAN> CONFIGURE COMPRESSION ALGORITHM zlib ; Syntax für Kompression RMAN> backup as COMPRESSED BACKUPSET database archivelog all Vom RMAN Client unterstützte Komprimierung SQL> select * from v$rman_compression_algorithm;
Kompression von Backup-Daten Data Pump In 10gR2 Komprimierung von Metadaten für den Export mit Data Pump > expdp sh/sh@orcl10g DIRECTORY=dpump_dir1 DUMPFILE=10g_sh_comp.dmp COMPRESSION=METADATA_ONLY 11g Komprimierung von Tabellendaten beim Export als Inline Operation Dito für Dekompression beim Import > expdp sh/sh@orcl11g DIRECTORY=dpump_dir1 DUMPFILE=11g_sh_comp.dmp COMPRESSION={ METADATA_ONLY ALL DATA_ONLY }
OLTP Tabellenkompression Anlegen von Tabellen mit Table Compression SQL> CREATE TABLE <table_name> COMPRESS NOCOMPRESS (FOR {ALL DIRECT_LOAD } OPERATIONS}; Ein- und Ausschalten der Table Compression Nur neue Blöcke erhalten den neuen Tabellen Status SQL> ALTER TABLE <table_name> COMPRESS NOCOMPRESS (FOR {ALL DIRECT_LOAD } OPERATIONS}; Demo-Skript: http://www.oracle.com/technology/obe/11gr1_db/perform/compress/compress.htm
OLTP Kompressionsprozess
OLTP Tabellenkompression Local Symbol table contains duplicate values within the block
Indexkompression Key Compression Index wird unterteilt in Prefix (Grouping piece) und Suffix Wiederholungen im Prefix werden nur 1x gespeichert Suffix Werte teilen sich Prefix Werte Suffix Werte für einen Prefix werden im selben Block gespeichert Prefix Default: Alle außer der letzten Schlüsselspalte Max. 2 Schlüsselspalten im Prefix Syntax SQL> CREATE INDEX ord_customer_idx_demo ON orders (customer_id, sales_rep_id) COMPRESS <integer>;
Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Advanced Compression Vergleich Oracle DB 10gR2 und 11g Testszenario mit User SH Table Compression mit CREATE TABLE betrachtet Skript auf http://www.oracle.com/technology/obe/11gr1_db/perform/com press/compress.htm Data Pump Export
Advanced Compression Ergebnisse Oracle DB 10gR2 und 11g NOCOMPRESS Oracle 10g COMPRESS NOCOMPRESS Oracle 11g COMPRESS Count(*) 918842 918842 918842 918842 Anzahl Blöcke 4433 3971 4433 2308 Größe in MB 36 32 36 19 No Compression Oracle 10g COMPRESSION= METADATA_ONLY No Compression Oracle 11g COMPRESSIO N=ALL expdp in KB 45.368 45.368 45.504 6.316
Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Oracle Advanced Compression im Test Tests auf Datenbestand eines Kunden Folgende Komprimierungstechniken waren von Interesse: Index Tabelle Strukturierte Datentypen wie NUMBER, VARCHAR2 Betriebsart: für alle Operationen (*) Unstrukturierte Daten wie LOB als SECUREFILE (*) Partitionen Keine Reorganisationarbeiten waren nach der Einstellung der Komprimierung notwendig!! (*) nur mit Oracle Advanced Compression Option
Komprimierungsalgorithmen im Einzelnen Tabelle: Reduzierung von Mehrfacheinträgen von strukturierten Daten auf Blockebene FOR ALL OPERATIONS: Komprimierung nach jedem Erreichen von PCTFREE-Grenze (Batch) Index: Index Compress: Reduzierung von Mehrfacheinträgen im Index auf Blockebene Bitmap Index SecureFiles: DEDUPLICATION: Reduzierung von Mehrfacheinträgen der LOBs COMPRESS HIGH: LOB-Komprimierung über zlib-algorithmus (nicht dokumentiert)
Mitbewerber DB2 Data Compression Basiert auf Lempel-Ziv Algorithmus Compression Dictionary wird für Komprimierung/Dekomprimierung der Daten benötigt Erstellung des Compression Dictionary auf Basis einer Datenanalyse durch REORG Utility LOAD Utility dynamisch bei DML Operationen (DB2 Version 9.5) Restriktionen Keine LOB-, XML-, LONG-Spalten Komprimierung Daten Replikation wird nicht unterstützt (Datapropagator) Keine Index-Key Komprimierung
Komprimierung im Vergleich mit DB2 Index Tabelle LOB-Segment Ebene Reorganisation Algorithmus Oracle 11g Bitmap und komprimierter B*Index Ja Möglich mit SECUREFILES Komprimierung Block Nicht notwendig Unterschiedlich (siehe vorher) Nicht möglich Ja DB2 Version 9.5 Nicht möglich Tabelle mit separatem Dictionary Erhöht Komprimierungsrate Lempel Ziv
Testergebnisse im Vergleich Oracle 11g DB2 Version 9.5 Einsparung (**) beim LOB Test mit REORG (*) Einsparung beim LOB Test ohne REORG Einsparung beim Test ohne LOB-Daten mit REORG Einsparung beim Test ohne LOB-Daten ohne REORG 45,87% n.a. wie oben 70% n.a. wie oben 3,65% 3,21% 38,23 % 27,45 % (*) REORG kann optional im DB2 durchgeführt werden, um ein exakteres Compression Dictionary zu erstellen (**) Einsparung:= (Größe nicht kompr. Objekt - Größe kompr. Objekt) *100 / Größe nicht kompr. Objekt
Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Tipps und Tricks Oracle speichert effizient auch ohne Komprimierung NUMBER Datentyp wird variable lang abgespeichert Große Blockgröße wählen Separaten Tablespace mit großer Blockgröße wählen Sortiertes Laden Sortiert laden bei nicht selektiven Spalten Index-Komprimierung nicht vergessen! Große LOBs, die häufig vorkommen DEDUPLICATE und DISABLE STORAGE IN ROW (im Test nicht verwendet) COMPRESS HIGH Komprimierungseinstellung über: CREATE TABLE auf Tabellen- und LOB-Segmentebene ALTER TABLE MOVE COMPRESS bei existierenden Daten ALTER TABLE MOVE PARTITION COMPRESS bei Partitionen
Nutzen und Ausblick Nutzen Reduziert Storage Höhere Performance durch weniger I/O Weniger Hauptspeicher durch komprimierte Daten im Buffer Cache Schnellere Backups Kleinerer ReDo-Stream Weniger Bandbreite Geringere Energiekosten Ausblick Compression Advisor (Angekündigt) Ermittelt voraussichtliche Komprimierungsrate für unkomprimierte Tabellen Zeigt aktuelle Komprimierungsrate für komprimierte Tabellen
Oracle Advanced Compression im Überblick Vergleich Oracle 10gR2 und 11g Vergleich Oracle 11g und IBM DB2 Zusammenfassung und Ausblick Weiterführende Informationen
Weitere Informationen Oracle Technology Network (OTN) Überblick http://www.oracle.com/technology/products/database/compression/index. html http://www.oracle.com/technology/deploy/performance/pdf/s291861.pdf Öffentliche Foren http://forums.oracle.com/forums/forum.jspa?forumid=497 http://forums.oracle.com/forums/forum.jspa?forumid=61 Oracle Magazine Competitive Whitepaper http://docs.oraclewhitepapers.com/oraclewhitepapers/oracle-oracledatabase-207/ Oracle By Example (OBE) Demo http://www.oracle.com/technology/obe/demos/11gr1/11gr1_compress/11g r1_compress_viewlet_swf.html DOAG News Ausgabe Q2/2008 Artikel von Thomas Niewel und Ulrike Schwinn
Q&A