Oracle Core für Einsteiger: InMemory Column Store



Ähnliche Dokumente
Oracle Core für Einsteiger: Datenbank I/O

Oracle Datenbank Architektur - nicht nur für Einsteiger

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

Maschinensizing. Martin Klier. Performing Databases GmbH Maschinensizing 2/47

Oracle Database 12c In-Memory Option 7/18/2014. Eckart Mader Oracle Deutschland B.V. & Co. KG. Karlsruhe, den

DOAG Konferenz Was Sie bei modernen Datenbank-Systemen anders machen müssen!

Prozessarchitektur einer Oracle-Instanz

Datenbanken und Oracle, Teil 2

Hochverfügbarkeit - wie geht das?

Datenbanken Konsistenz und Mehrnutzerbetrieb III

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

Themen des Kapitels. 2 Oracle Features und Architektur

3. Architektur eines DBS (Oracle)

Oracle Exadata Storage Server Performance erklärt SmartScan

Oracle DB 12c: Die In-Memory-Option Oliver Zandner System-Berater für Oracle-DB-Technologien Oracle Hannover. Available July 2014

Oracle Datenbank - Recovery

Indexing und Performance Tuning

Symposium on Scalable Analytics. Skalierbare Analysen mit EXASolution

Wie profitiert SAP MaxDB von SSD Technologie?

Exadata und In-Memory Datenbewirtschaftung und Analyse Extrem mit Exadata und InMemory (Erfahrungsbericht)

Einführung in Hauptspeicherdatenbanken

Oracle EngineeredSystems

The Unbreakable Database System

Oracle 9i Einführung Performance Tuning

Tuning des Weblogic /Oracle Fusion Middleware 11g. Jan-Peter Timmermann Principal Consultant PITSS


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

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

Themen des Kapitels. 2 Oracle Features und Architektur

HANA Solution Manager als Einstieg

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

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

Kostenlos aber effektiv: Performanceanalyse mit Statspack und SQL* Benedikt Nahlovsky. Performing Databases GmbH Mitterteich

Oracle Real Application Clusters: Requirements

Oracle Automatic Storage Management (ASM) Best Practices

MySQL Replikation - Die Eier legende Wollmilchsau?

die wichtigsten Caches (SGA) sind on-the-fly änderbar.

Performance Tuning

Zeilen- vs. spaltenorientierte Datenhaltung im Hauptspeicher Begriffe, Modellierung und reale Probleme mit der Oracle InMemory-Technologie

Oracle 9i Einführung Performance Tuning

Oracle In-Memory - Das entscheidende Datenbank-Feature für Echtzeit-Analytics Dr.-Ing. Holger Friedrich

Oracle AWR und ASH Analyse und Interpretation

Citrix Provisioning Server Marcel Berquez. System Engineer

Oracle 12c Live Demo In-Memory DB Option Theorie und Praxis

Oracle Database 10g Die RAC Evolution

Oracle Hot Standby. XE, SEOne, SE. Maximum Performance Mode. WIN, Linux, Unix Einfache Lösung. bis zu 10 Standby DB

Oracle In-Memory & Data Warehouse: Die perfekte Kombination?

Architektur von Cassandra

Oracle Tuning - Theorie und Interpretation

Aktuelle Entwicklungen

IT-Symposium Ralf Durben. Business Unit Datenbank. ORACLE Deutschland GmbH. 1

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

Kurs. Teil 4 Shared Pool. Universität Hannover. Agenda. Überblick. Library Cache Oracle 9i Einführung Performance Tuning. Trefferquote.

Oracle Datenbank Architektur - nicht nur für Einsteiger

1 Einführung Ziele der Vorlesung Die Idee Lernkarte Selbsttest-Frage 3 Literaturhinweise 3

IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte

Atos - For internal use

PostgreSQL in großen Installationen

nettrainment V3.0 - Login via BSH Intranet (One-Click)

Wanderwege weltweit Entwicklung einer Overlay-Karte aus OSM-Daten

Hochschul- und Studentenprojekte mit GeoMedia

IBM Informix Tuning und Monitoring

Oracle Database In-Memory und SAP Flat Cubes im Einsatz DOAG Konferenz 2018

Freiberuflicher IT-Berater Schwerpunkte: Unix, Oracle, Netzwerk. Dipl.-Inform. Joachim Jäckel

Erhöhung der Manageability durch SQL-Profile

Dokumentation für das Web-basierte Abkürzungsverzeichnis (Oracle mod_plsql / Apache)

Excel beschleunigen mit dem mit Windows HPC Server 2008 R2

Markus Feichtinger. Power Systems. Der Weg zu POWER! 2009 IBM Corporation

Oracle 12c. Database In-Memory in der Praxis einsetzen DOAG Webinar. Stuttgart,

Apache HBase. A BigTable Column Store on top of Hadoop

SODA. Die Datenbank als Document Store. Rainer Willems. Master Principal Sales Consultant Oracle Deutschland B.V. & Co. KG

Foglight Performance Analysis for Oracle

Transaktionsverwaltung

Unternehmen-IT sicher in der Public Cloud

SQL-Tuning auf RAC Piraten des Interconnects

SQL-Analyse und Tuning

IBM Netezza Data Warehouse Appliances - schnelle Analysen mit hohen Datenmengen

Computer-Architektur Ein Überblick

HERZLICH WILLKOMMEN SHAREPOINT DEEP DIVE FOR ADMINS IOZ AG 2

Oracle In-Memory & Data Warehouse: Die perfekte Kombination?

IT-Symposium /20/2004. Ralf Durben. Business Unit Datenbank. ORACLE Deutschland GmbH. 1

Intel Cluster Studio. Michael Burger FG Scientific Computing TU Darmstadt

Systemvoraussetzungen winvs office winvs advisor

Das perfekte Rechenzentrum mit PernixData Architect & FVP

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

Transkript:

Oracle Core für Einsteiger: InMemory Column Store Martin Klier Performing Databases GmbH Mitterteich @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 2/37

Referent Martin Klier Lösungsarchitekt und Datenbankspezialist Fachliche Schwerpunkte: Performanceoptimierung / Tuning hochverfügbare Systeme Architektur DBMS Linux seit 1997 Oracle Database seit 2003 @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 3/37

Referent Vorträge April 2014 Regionalgruppen Kontakt: martin.klier@performing-db.com Weblog: http://www.usn-it.de @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 4/37

Unternehmen Spezialisten für Datenbanktechnik Konzeptberatung und Vergabekompetenz Architektur- und Systemplanung Lizenzierung Realisierung und Troubleshooting Kontakt Performing Databases GmbH Wiesauer Straße 27 95666 Mitterteich Web: http://www.performing-databases.com Twitter: @PerformingDB @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 5/37

Ziele Wiederholung Basisarchitektur Row- und Column basierte Daten Systemarchitektur mit InMemory Column Store Funktionsweise Lesezugriffe Transaktionen und Konsistenz Einsatzszenarien und Optimierungen @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 6/37

Basics @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 7/37

Architekturschema (vereinfacht) SGA Listener :1521 Buffer Cache Shared Pool Server Server Server PGAs Log Buffer PMON CKPT LGWR TEMP SMON DBWn ARCn Online Tablespace Blöcke Undo Tbs. Redo Logs Archived Redo Logs @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 8/37

Rows & Columns @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 9/37

Row Data SELECT * WHERE ID IN (3,36). ID NAME1 NAME2 STREET ZIP CITY 2 John Doe 2 Wilbury Way 12345 Wesley 3 Alice Allison 108 Agora Alley 23456 Amberg 4 Sally Salinger 17 Samson St. 34567 Salisbury.................................... 36...................... 57 Bob Bobson 42 Century Ct. 56789 Taccanooga @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 10/37

Row Data ID NAME1 NAME2 STREET ZIP CITY 2 John Doe 2 Wilbury Way 12345 Wesley 3 Alice Allison 108 Agora Alley 23456 Amberg 4 Sally Salinger 17 Samson St. 34567 Salisbury 8 Bob Bobson 42 Century Ct. 56789 Taccanooga Block / Buffer Header / ITL Row Store @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 11/37

Lesevorgang Row Buffer SGA Listener :1521 Buffer Cache select... ; Shared Pool Server Sort, Hash, Merge PGAs TEMP Tablespace Blöcke @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 12/37

Lesevorgang Row SGA Listener :1521 Server Buffer Cache Maximum 1,000,000 rows per second by design. (Tirthankar Lahiri, Oracle VP) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 13/37

Buffer Cache Access Cache Buffer Chains: Is this block in the BC? Chains CBC 4F BH 1 BH 77 CBC 51 BH 99 BH 32 Latches Buffer Headers (references in Shared Pool) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 14/37

Buffer Cache Access Session 1 Locks the chain and looks for a buffer CBC 4F BH 1 BH 77 CBC 51 BH 99 BH 32 Spin Session 2 Same or diff. Buffer (Chain), same latch :( @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 15/37

Rows & Columns @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 16/37

Columnar Data SELECT ID. WHERE ZIP.; SELECT COUNT(*). WHERE ZIP.; ID NAME1 NAME2 STREET ZIP CITY 2 John Doe 2 Wilbury Way 12345 Wesley 3 Alice Allison 108 Agora Alley 23456 Amberg 4 Sally Salinger 17 Samson St. 34567 Salisbury.................................... 36...................... 57 Bob Bobson 42 Century Ct. 56789 Taccanooga @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 17/37

Columnar Data ID NAME1 NAME2 STREET ZIP CITY 2 John Doe 2 Wilbury Way 12345 Wesley 3 Alice Allison 108 Agora Alley 23456 Amberg 4 Sally Salinger 17 Samson St. 34567 Salisbury........................ ROWID ID ZIP City AABBCC 2 12345 Wesley IMCU BBCCDD DDEEFF 3 4 23456 34567 Amberg Salisbury................ Column Compression Units (CU) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 18/37

In-Memory Architecture @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 19/37

In-Memory Population SGA In-Memory Compression Unit (1MB) Buffer Cache IMCO W001 W002 Tablespace Blöcke In-Memory Area IMCU- or 1MB pool In-Memory Coordinator Process Order- Priority per table critical medium high low none (=on demand?) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 20/37

In-Memory Data Change SGA x Server Snapshot Metadata Unit (64k) Buffer Cache In-Memory Area SMU- or 64kB pool IMCU Tablespace Blöcke @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 21/37

Lesevorgang Columnar SGA x Server Buffer Cache Sort, Hash, Merge? SMU PGAs In-Memory Area IMCU Optimierungen! Tablespace Blöcke @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 22/37

In-Memory RePopulation SGA x Buffer Cache SMU In-Memory Area IMCO W001 W002 IMCU When? Tablespace Blöcke @MartinKlierDBA Threshold per IMCU Trickle (constant) Oracle Core für Einsteiger: InMemory Column Store 23/37

InMemory Area IMCU SMU IMCU- or 1MB pool SMU- or 64kB pool Geteilt in 1MB-Pool (IMCUs) 64k-Pool (SMUs) In-Memory Area KEIN Least-Recently-Used-Mechanismus (LRU) First come, first serve! => Denke: Tablespace nicht Cache @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 24/37

Using Column Store @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 25/37

With Or Without You @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 26/37

When and When Not @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 27/37

Operation Pushdown I @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 28/37

Operation Pushdown II @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 29/37

Optimierungen Vector Processing (Single Instruction Multiple Data SIMD) z.b. Intel AVX / 256bit Register Picture: Wikimedia >1,000,000,000 rows per second (Tirthankar Lahiri, Oracle VP) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 30/37

Optimierungen Operation Pushdown: InMemory Scan (*) (ähnlich Exadata Smart Scan) Prädikat-Prüfung im Column Store (*) Aggregation im Scan Bloom Filter im IMCU Scan (*) In-Memory Storage Index (Auslassen unnötiger IMCUs bei In-Memory Scan) Predicate Optimization (wird eine IMCUs ohnehin vollständig benötigt, erfolgt auf ihr keine Prüfung des Prädikats) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 31/37

Abschluß @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 32/37

Vorteile IM Column St. Schneller bei spaltenbasierten Auswertungen Optimizer nutzt Shortcuts der Architektur Voll transparent, ideal für Mischbetrieb auf selbem Datenbestand OLTP OLAP @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 33/37

Nachteile IM Column St. Ressourcenbedarf RAM CPU für Compression Inhalt muss gepflegt / verwaltet werden => Advisor! Eingeschränkt deterministisch: Nutzen stark abhängig von Workload Inhalt Zustand Know your needs! Skalierung im RAC ohne Ausfallsicherheit (Nur auf Engineered Systems) @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 34/37

InMemory ist cool. Cool reicht nicht. UseCase muß passen. #FiveWordTechHorrors InMemory solves all performance problems @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 35/37

Q & A Download Präsentation und Whitepaper http://www.performing-databases.com @MartinKlierDBA Oracle Core für Einsteiger: InMemory Column Store 36/37