Wie die Datenbank ILM unterstützt

Ähnliche Dokumente
Andrea Held. Motivation ILM: Definition und Strategien Lösungen für Oracle Datenbanken. Empfehlungen

Automatisierung durch Information Lifecycle Management

Oracle Advanced Compresion 10g versus 11g

IT-Symposium

Automatisierte Datenmigration mit dynamischen SQL

Datenbanken und Oracle, Teil 2

Oracle Backup und Recovery mit RMAN

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht)

Backup & Recovery in Oracle 11g Funktionen und Features

DOAG Demo Kino: Advisors, Monitoring Werkzeuge in der Datenbank Ulrike Schwinn Business Unit Database Oracle Deutschland B.V.

Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])

Verschlüsseln als Überlebensstrategie

Index- und Zugriffsstrukturen für. Holger Brämer, 05IND-P

Oracle Datenbankadministration Grundlagen

Oracle Backup und Recovery

Oracle OLAP 11g: Performance für das Oracle Data Warehouse

Oracle Datenbankadministration Aufbau

Oracle 10g Flashback. Andrea Held

DOAG 2010 ORACLE PLATTFORM MIGRATION CROSS PLATFORM TRANSPORTABLE TABLESPACES (XTTS)

Oracle Datenbank Performance

Die Datenmanipulationssprache SQL

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen.

Partitionierung im Data Warehouse mit ORACLE 11g und 12c. Reinhard Wahl DOAG Konferenz Nürnberg, November 2014

Inhalt. 1. Indextypen B*Baum-Index Reversed Key Index Bitmap Index Funktionsbasierter Index

Cassandra Query Language (CQL)

Einführung in SQL. Sprachumfang: Indizes. Datensätzen. Zugriffsrechten

IBM Informix Tuning und Monitoring

SQL Optimizer und SQL Performance

Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin

MySQL 5.1. Kristian Köhntopp

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

SQL structured query language

Komprimierung in der Datenbank

Oracle Warehouse Builder 3i

Hochschule Karlsruhe Technik und Wirtschaft Anhänge: Fakultät für Informatik und Wirtschaftsinformatik SS 2013 Prof. Schmidt.

Indexing und Performance Tuning

SQL-Anweisungen. SELECT (SQL Data Query Language)

3. Architektur eines DBS (Oracle)

SharePoint Provider for Oracle


SQL-Vertiefung. VU Datenbanksysteme. Reinhard Pichler

ETL Prozesse in der Oracle-Datenbank

Datensicherheit und Hochverfügbarkeit

Erhöhung der Manageability durch SQL-Profile

Performance by Design Wie werden performante ETL-Prozesse erstellt?

Oracle 9i Einführung Performance Tuning

Inhaltsverzeichnis. Geleitwort der Fachgutachterin Vorwort Einführung Architektur eines Oracle-Datenbanksystems...

3.17 Zugriffskontrolle

Physische Datenbankdefinition in. Arthur Bauer

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning

Kapitel 33. Der xml-datentyp. In diesem Kapitel: Der xml-datentyp 996 Abfragen aus xml-datentypen 1001 XML-Indizierung 1017 Zusammenfassung 1023

ETL-Prozesse in der Oracle-Datenbank

Datenbankstatistiken im Griff mit DBMS_STATS. DOAG 2012 Konferenz + Ausstellung Nürnberg 21. November 2012

Oracle Exadata Storage Server Performance erklärt SmartScan

1001 Möglichkeiten eine Staging Area zu füllen. Sven Bosinger its-people GmbH

Hochverfügbarkeit - wie geht das?


Einsatz des Recovery Managers für Backup und Restore.

Listener: Bei Oracle erfolgt die Steuerung (konventionell) via listener.ora (Listener Konfiguration), tnsnames.ora (Client Konfiguration)

Kurs. Teil 7 UNDO-Management. Universität Hannover. Agenda. Einführung. Nutzung RBS Oracle 9i Einführung Performance Tuning.

Themen des Kapitels. 2 Oracle Features und Architektur

Themenblock: Erstellung eines Cube

Einführung in SQL. 1. Grundlagen SQL. Structured Query Language. Viele Dialekte. Unterteilung: i. DDL (Data Definition Language)

Einführung relationale Datenbanken. Themenblock: Erstellung eines Cube. Schlüssel. Relationenmodell Relationenname Attribut. Problem.

MySQL in großen Umgebungen

Backup und Restore von Oracle- Datenbanken in Niederlassungen

SQL-Befehlsliste. Vereinbarung über die Schreibweise

Views in SQL. 2 Anlegen und Verwenden von Views 2

LOB Komprimierung mit Oracle 11g. Einführung. SecureFiles. Nötige Lizenzierungen. Mathias Zarick. Consultant. Oktober 2009

Einführung in SQL Datenbanken bearbeiten

Transaktionen in der Praxis. Dr. Karsten Tolle

Oracle Database 12c: New Features for Administrators NEU

SQL Tutorial. SQL - Tutorial SS 06. Hubert Baumgartner. INSO - Industrial Software

Oracle 9i Einführung. Performance Tuning. Kurs. Teil 9 Sortiervorgänge. Universität Hannover. Sortiervorgänge. Migration. Konfiguration.

Datumsangaben, enthält mindestens Jahr, Monat, Tag

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

11. Backup & Recovery. Datenbankadministration

NoSQL mit Postgres 15. Juni 2015

Oracle Datenbank Architektur nicht nur für Einsteiger. Martin Klier Klug GmbH integrierte Systeme, Teunz

DOAG Regionaltreffen München 2008

IBM Informix SQL. Seminarunterlage. Version vom

MySQL New Features 5.6

Historisierung mit Flashback Database Archive (FDA)

ANDREAS PROUZA. Wien,

Unterabfragen (Subqueries)

Wanderwege weltweit Entwicklung einer Overlay-Karte aus OSM-Daten

Data Warehousing und Data Mining

Konstante Relationen

Data Warehouse schnell gemacht Performanceaspekte im Oracle DWH

Sructred Query Language

Gliederung. 1) Speicherplatz-Zuordnung und -Verwaltung 2) Indizes 3) Explain Plan 4) Join-Operationen 5) Der Optimizer 6) Parallelisieren

Fördercontrolling im öffentlichen Bereich Aspekte beim Aufbau eines DWH. Software mit Format.

Oracle Automatic Storage Management (ASM) Best Practices

Change Log. Fehlerbehebung bei den Funktionen Edit SQL, Set Session_user und Set current Schema..

Oracle 12c: Neuerungen in PL/SQL. Roman Pyro DOAG 2014 Konferenz

XML in der Oracle Datenbank "relational and beyond"

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1

5. Datendefinition in SQL

SQL und MySQL. Kristian Köhntopp

Transkript:

<Insert Picture Here> Wie die Datenbank ILM unterstützt Oracle Data Warehouse Detlef Schröder, Leitender Systemberater BI & DWH Oracle Deutschland B.V.&Co. KG

Information Lifecycle Die neuesten Daten stehen im Fokus Alle Daten müssen verfügbar sein 2009 2006-2008 Vor 2006 Aktiv weniger Aktiv Historisch Archiv

Agenda: Partitioning Compression ILM Backup

Partitioning

Partitioning unterstützt viele Aufgaben Query Performance Partition Pruning Partitioning Ladeprozess Unterstützung ILM (Information Lifecycle Management) Leichterer Umgang mit Indizierung Unterstützung im Backup-Prozess Unterstützung bei der Aktualisierung von Materialized Views (Partition Change Tracking) Partitionierungs- Kriterium fachlich anwendbar oder nicht? Partitioning Typ: - Range - List - Hash Unterstützung bei der Komprimierung Hochverfügbarkeit auch während des Ladens und Maintenance

Partitioning Die Grundfunktionalität Local Index Kollektive Sicht auf alle Daten SELECT... FROM... Global Partitioned Index Global Index Partitionsbezogene Sicht ADD, DROP, SPLIT, MOVE, MERGE, TRUNCATE, COMPRESS

Partitioning Die Grundfunktionalität Kollektive Sicht Partition-bezogene Sicht Local Index Performance SELECT... FROM... Manageability Availability Global Partitioned Index Global Index Separate Compression Read Only TS versch. Platten Basis für ILM Backup / Recovery Scheduled Downtime Archiving ADD, DROP, SPLIT, MOVE, MERGE, TRUNCATE, COMPRESS Hilfsmittel im ETL PEL Local Indexing

Wie wird partitioniert Partition Key Eine oder mehrere Spalten in der Tabelle bestimmen den tatsächlichen Speicherort eines Datensatzes Separate Tablespaces Pro Partition einen eigenen Tablespace Vereinfachte Wartung Tablespace Segment Extent Blocks

Partitioning ist transparent Gesamte Tabelle selektieren SELECT * FROM orders; Alle Partitionen werden selektiert Abfrage nur auf eine Partition SELECT * FROM orders WHERE order_dat between to_date Partition ('2007-01-01') Pruning: AND to_date ('2007-01-31'); Automatische Beschränkung auf betroffene Partition SQL-Abfrage ist von Partitionierung unabhängig Jan 2007 Feb 2007 Mär 2007 Apr 2007 Mai 2007 Jun 2007

Verschiedene Varianten Partitioning-Typen Range List Hash Reference Interval System Virtual Column Subpartitioning-Typen Range - Hash Range - List Range - Range List - Range List - Hash List - List

CREATE TABLE "BESTELLUNG" ( "BESTELLNR" NUMBER(10) NOT NULL, "KUNDENCODE" NUMBER(10), "BESTELLDATUM" DATE, "LIEFERDATUM" DATE, "BESTELL_TOTAL" NUMBER(12, 2), "AUFTRAGSART" VARCHAR2(30), "VERTRIEBSKANAL" NUMBER ) PARTITION BY LIST ("VERTRIEBSKANAL") SUBPARTITION BY LIST ("AUFTRAGSART") SUBPARTITION TEMPLATE ( SUBPARTITION Produkt VALUES ('ARTIKEL','TAUSCHWARE','PRODUKT'), SUBPARTITION Service VALUES ('SERVICE','REISE'), SUBPARTITION Storno VALUES ('RETOURE','KOMMISSION'), SUBPARTITION Andere VALUES (default) ) ( PARTITION Telefon VALUES (1,2,3), PARTITION Aussendienst VALUES (4,5), PARTITION Web VALUES (6,7), PARTITION PARTNER VALUES (8,9,10) ); Beispiel List - List select sum(bestell_total) from bestellung subpartition (partner_storno) group by Kundencode; --------------------------------------------------------------------------------------------------- Id Operation Name Rows Bytes Cost (%CPU) Time Pstart Pstop --------------------------------------------------------------------------------------------------- 0 SELECT STATEMENT 5 60 19 (6) 00:00:01 1 PARTITION LIST ALL 5 60 19 (6) 00:00:01 1 4 2 HASH GROUP BY 5 60 19 (6) 00:00:01 3 PARTITION LIST ALL 1000 12000 18 (0) 00:00:01 1 4 4 TABLE ACCESS FULL BESTELLUNG 1000 12000 18 (0) 00:00:01 1 16 ---------------------------------------------------------------------------------------------------

...Und zu guter Letzt: Partition Advisor Erweiterung des SQL Access Advisors Partitionierung von nicht-partitionierten Materialized Views, Tabellen und Indizes Generierung von ausführbaren Skripts Nutzung via EM Tuning Pack Package DBMS_ADVISOR

Partition Exchange Loading (PEL) Financial Production Temporäre Tabelle Neuer Monat Human Res. Store Supplier P1 P2 P3 P4 Z1 Z2 Z3 Z4 4 4 9 8 Monat 13 Zeit Marketing Service Parallel Direct Path INSERT (Set Based) CREATE TABLE AS SELECT (CTAS) CREATE Indizes / Statistiken anlegen EXCHANGE Tabelle Unvergleichbar schnell! Monat 12 Monat 11 Monat 10 DROP PARTITION Faktentabelle Region

Partition Exchange Loading (PEL) -- Leere Partition an Zieltabelle hinzufügen ALTER TABLE Bestellung ADD PARTITION "Nov08" VALUES LESS THAN (to_date('30-nov-2008','dd-mon-yyyy')); 1 -- Neue leere temporäre Tabelle erstellen CREATE TABLE Bestellung_temp AS SELECT * FROM Bestellung WHERE ROWNUM < 1; 2 -- Inhalte laden INSERT INTO "PART"."BESTELLUNG_TEMP" (BESTELLNR, KUNDENCODE, BESTELLDATUM, LIEFERDATUM, BESTELL_TOTAL, AUFTRAGSART, VERTRIEBSKANAL) VALUES ('2', '3', TO_DATE('23.Nov.2008', 'DD-MON-RR'), to_date('23.nov.2008', 'DD-MON-RR'), '44', 'Service', '6'); 3 Commit; -- Erstellen Index auf temporäre Tabelle CREATE INDEX Ind_Best_Dat_Nov ON Bestellung_temp ("BESTELLNR") NOLOGGING PARALLEL; -- Temporäre Tabelle an die Zieltabelle anhängen ALTER TABLE Bestellung EXCHANGE PARTITION "Nov08" WITH TABLE Bestellung_temp INCLUDING INDEXES WITHOUT VALIDATION; 5 4

Einsatz von Compression

Anwendung für Komprimierung Nicht nur für Indizes Strukturierte Daten in Tabellen (bzw. Partitionen) mit DIRECT Load Mit Advanced Compression auch für Unstrukturierte Datentypen (SecureFiles) Konventionelles DML (OLTP Compression) DataPump Daten und RMAN Redo Traffic mit Data Guard Redo Logs Standby Backups

Konzept der Table Compression Unkomprimierter Block Komprimierter Block Lokale Symboltabelle Mehr Daten pro Block

Advanced Compression in Oracle 11g Overhead Free Space Uncompresse d Compressed Inserts are again uncompress ed Inserts are uncompress ed Block usage reaches PCTFREE triggers Compression Block usage reaches PCTFREE triggers Compression

Tabellen-Komprimierung in 11g Komprimierungseinstellung durch CREATE TABLE beim Neuanlegen ALTER TABLE MOVE COMPRESS bei existierenden Daten ALTER TABLE MOVE PARTITION COMPRESS bei Partitionen Beispiel - Syntax: CREATE TABLE sales_history( ) COMPRESS FOR BASIC OLTP Im Enterprise Manager:

Welche Daten komprimiert werden Strukturierte Daten Numbers Character Semistrukturierte Daten Dokumente Spreadsheets XML Unstrukturierte Daten Media Bilddaten Medizinische Daten OLTP Table Compression (Advanced Compression und normale Compression) SecureFiles Compression (Advanced Compression)

Eigenschaften OLTP Table Compression Block-Autonomie: Komprimierte, nicht komprimierte und halb komprimierte Blöcke existieren nebeneinander Batch-Compression Redundanzen in einem Block aufgelöst Blöcke liegen im Data Cache komprimiert vor Alle Informationen zur Dekompression eines Datensatzes liegen in seinem Block Schnelle Dekompression durch einfaches Pointing beim Lesen

Verwendung OLTP Table Compression Parameter COMPATIBLE in der INIT.ORA auf 11.1 oder 11.2 Erweiterung von COMPRESS COMPRESS [FOR {BASIC OLTP }] Default: DIRECT_LOAD OPERATIONS OLTP und Direct Loads: OLTP (kostenpflichtige Advanced Compression Option, kurz: ACO) Tabelle oder Tablespace anlegen CREATE TABLE... COMPRESS FOR OLTP; CREATE TABLESPACE... COMPRESS FOR OLTP; Tabelle erbt Komprimierung vom Tablespace

Verwendung OLTP Table Compression Compression für existierende Tabelle einschalten ALTER TABLE t2 COMPRESS FOR OLTP; Keine Komprimierung für existierende Datensätze Existierende Tabelle komprimieren ALTER TABLE MOVE COMPRESS; ALTER TABLE MOVE COMPRESS FOR OLTP; ALTER TABLE MOVE PARTITION COMPRESS; Partitionen: Lokale Bitmap Indizes werden UNUSABLE Normale Komprimierung mit PCTFREE=0, Advanced Compression mit PCTFREE=10

Best Practices OLTP Table Compression Komprimieren der zehn größten Tabellen 20% der Tabellen verbrauchen 80% des Speicherplatzes Bessere Kompressionsraten mit größeren Blöcken Höhere Wahrscheinlichkeit mehrfacher gleicher Werte Sortiertes Laden nach nicht selektiven Spalten B-Tree Index Kompression Index validieren und INDEX_STATS analysieren index_stats.opt_compr_count liefert Prefix Länge N index_stats.opt_compr_pctsave liefert Einsparung in % Bitmap CREATE Indexes INDEX sind idx_comp an sich hoch ON komprimiert... COMPRESS N; Geeignet für niedrige bis mittlere Kardinalität

Komprimierung im Überblick Komprimierung Index Strukturierte Tabellendaten Unstrukturierte Daten Reorganisation Data pump RMAN Data Guard Algorithmus Bitmap und komprimierter Index Für alle Arten von Operationen: FOR BASIC OLTP Möglich mit SecureFiles COMPRESS, DEDUPLICATION Nicht notwendig Mit Option COMPRESSION=ALL CONFIGURE COMPRESSION ALGORITHM='...' LOG_ARCHIVE_DEST_3= '...COMPRESSION=ENABLE' Unterschiedlich je nach Einsatz

Abschätzen der Compression Ratio Compression Advisor (für Oracle 9i und höher) http://www.oracle.com/technology/products/database/compression/compression-advisor.html

Informationen Advanced Compression auf OTN: http://www.oracle.com/database/advanced-compression.html Data Sheet: http://www.oracle.com/technology/products/database/oracle11g/ pdf/advanced-compression-datasheet.pdf White Paper: http://www.oracle.com/technology/products/database/oracle11g/ pdf/advanced-compression-whitepaper.pdf

Information Life-cycle Management (ILM) <Insert Picture Here>

Kostenentwicklung im Data Warehouse Anteile Kosten für schnelle und ausfallsichere Platten Datenvolumen 60 50 40 30 20 10 Lesezugriffe / Datenaktivitäten 0-3 -2-1 heute Jahre

Information Lifecycle Management (ILM) mit Oracle ASM Dieser Monat Dieses Jahr Vorjahre Aktiv Weniger Aktiv Historisch Archiv Disk Gruppe P Disk Gruppe L Disk Gruppe H Current Month Last 11 months Year 2002 and 2001 and 2000 Years 1995-1999 High End Speicher Mittlere Systeme Kostengünstiger Speicher

Partitioning und ILM Assistent 80% 15% September Laden und Lesen Oktober Okt 08 Sep 08 High End Speicher 3% August Aug 08 komprimiert 1% 1% Juli Juni Jul 08 komprimiert Jun 08 komprimiert Mai 08 komprimiert Mittlere Systeme Apr 08 komprimiert Mar 08 komprimiert. Kostengünstiger Speicher

Rechenbeispiel 1 Terabyte Plattenplatz High End Speicher Mittlere Systeme Kostengünstiger Speicher 40 / GB 8 / GB 1 / GB 5% aktiv 35% weniger aktiv 60% Historisch 40*1000*0,05 8*1000*0,35 1*1000*0,60 2000 2800 600

Rechenbeispiel 1 Terabyte Plattenplatz Ohne ILM 40 *1000 Mit ILM 2000 2800 600 Mit ILM und Compression (Faktor 2,5) 2000 / 2,5 2800 / 2,5 600 / 2,5 40.000 5.200 + Partition Software 2.160 + Partition Software

Hochrechnung auf größere Datenmengen Euro 200000 150000 100000 Ohne ILM Die Unterschiede vergrößern sich überproportional mit dem Wachsen der Datenmenge 50000 Mit ILM Mit ILM und Compression 0 1 2 3 4 Terabyte

Automatisierung mit dem ILM Assisten

Berechnung der Kostenersparnis im ILM Assistenten

Backup im Data Warehouse <Insert Picture Here>

Warum eine eigene B&R - Strategie für das Data Warehouse Kosten! Kosten! Kosten! Datenmengen sind viel größer Kosten für OLTP analoge Verfahren zu hoch Änderungsvorgänge finden kontrolliert statt Keine Online Updates durch Benutzer Zeitpunkt - bezogene Batch Läufe sind wiederholbar Fehlerhafte Daten können gezielt wieder entladen werden Ein Warehouse enthält oft historische Daten Statische Daten die nicht mehr geändert werden Sind bereits gesichert und müssen nicht regelmäßig neu gesichert werden

Gezielte Backup-Strategie für das DWH Neue Ladeperiode EXCHANGE New Month Recovery Manger (RMAN) Read Only Read Only Read Only Read Only Month 13 Month 12 Month 11 Month 10 Drop Partition Archiv

Backup Inkrementelles Sichern (kein Full Backup). Arbeiten mit Read-Only Tablespaces. Wiederherstellung von Datenbeständen durch Wiederholung von ETL-Läufen berücksichtigen. Flashback-Funktionalität nutzen, um eine Recovery- Fähigkeit zu erreichen. Keine Daten sichern, die durch Lade-Prozesse oder Aggregationen wieder herstellbar wären. Kein Backup für Stage-Bereich.

Backup Management List RMAN backups Listet alle Backups auf Perform maintenance Löschen obsoleter Backups mit einem einzigen Click

DW Recovery Methode Best Practice#3 Read-Only Tablespaces Verwendung von Partitionierung und Read-only Tablespaces zur Minimierung der Datenmenge Read-only Tablespaces müssen nur einmal gesichert werden Ältere Daten können können sehr leicht zu Read Only Tablespaces konvertiert werden Sichern mit RMAN Achtung: Hier wird Backup Zeit gespart, nicht Recovery - Zeit Jan Feb Mar Apr May Jun Jul Read-only Tablespace Read-write Tablespace Read-write Tablespace

DW Recovery Methode Best Practice#4 Nologging Operations Die meisten Data Warehouse Systeme nutzen NOLOGGING Operationen um Bulk-data Processing zu erreichen Wöchentliches Backup des DWH Tägliches Speichern der neuen Lade-Inkremente