2. Oracle Features und Architektur 2 Oracle Features und Architektur Einführung in die Eigenschaften und die Funktionsweise von Oracle. 2.1 Übersicht Themen des Kapitels - Oracle Features und Architektur Themen des Kapitels Oracle Produkte Neue Features von Oracle 12c Aufbau eines Database Management Systems (DBMS) Oracle Architektur Informationsquellen Im Kapitel Oracle Features und Architektur sollen die Eigenschaften und die Funktionsweise von Oracle dargestellt und bestimmte Begriffe der Oracle Datenbank und ihrer Komponenten erläutert werden. NetQuest GmbH Seite 2-1 2. Oracle Features und Architektur 2.2 Oracle Produkte Liste der Produkte von Oracle. Liste der Oracle Produkte Oracle Database Oracle Enterprise Management Oracle Middleware Oracle Applications Server und Storage Systeme Engineered Systems Oracle Cloud Das bekannteste Produkt von Oracle ist der Datenbankserver, der durch eine Vielzahl von Optionen in den Bereichen Sicherheit, Performance und Verfügbarkeit angepasst werden kann und für eine Reihe von Betriebssystemen zur Verfügung steht. In diesen Bereich gehört auch das Real Application Cluster und die TimesTen In-Memory Database . Der Enterprise Manager ist die allgemeine Administrationsoberfläche für Standalone Server genauso, wie für das Cloud Computing. Ab Version 12c steht der Enterprise Manager Database Control nicht mehr zur Verfügung. Er wird durch den Enterprise Manager Database Express abgelöst. Zusätzlich gibt es den Enterprise Manager Cloud Control . Zu Oracle Middleware gehören Produkte, die es ermöglichen eine ApplikationsInfrastruktur aufzubauen, wie z.B. Business Intelligence, Collaboration-Produkte, Java, Entwickler-Tools, SOA. NetQuest GmbH Seite 2-2 2. Oracle Features und Architektur Oracle Applications beinhaltet eine Vielzahl von Business- und Industrie-Applikationen, sowie Integrations-Lösungen. Desweiteren stellt Oracle mittlerweile eine ganze Reihe von Server-, Storage-, Netzwerkund Betriebssystem Produkten vor allem im Bereich Sun und Linux zur Verfügung. Auch im Virtualisierungbereich bietet Oracle eine Reihe von eigenen Produkten an. Engineered Systems sind pre-integrierte Systeme wie z.B. die Exadata Datenbank Maschine und die Exalogic Elastic Cloud für Java Applikationen. Unter Oracle Cloud fallen die gesamten Cloud Services von Oracle. Durch die breite Produktpalette ist es möglich komplette Systeme alleine mit Oracle Produkten aufzubauen. Mit der Oracle Database Appliance kann z.B. ein komplett vorkonfiguriertes Gesamtsystem erworben werden. NetQuest GmbH Seite 2-3 2. Oracle Features und Architektur 2.3 Neue Features von Oracle 12c Neuerungen in der Verwaltung der Oracle Version 12c. Neue Features von Oracle 12c Cloud Database Mehrmandanten (Multitenant)-Container Datenbank (CDB) EM-Manager (Database Express und Cloud Control) Automatische Daten Optimierung (ADO) IN-Database Archivierung Oracle Data Redaction Oracle 12c ist die erste Datenbank, die für die Cloud entwickelt wurde. Dies gilt sowohl für private als auch public Cloud Lösungen. Insofern bietet. Oracle auch eine breite Produktpalette an Soft- und Hardwareprodukten, sowie Services für Cloud-Lösungen auf Unternehmensebene an (Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS) Oracle VM). Auf dem Wege zum Cloud Computing steht auch die herausragendste Neuerung in Oracle Database 12c: Die Mehrmandanten (Multitenant) Architektur. Sie ermöglicht das Konsolidieren von Datenbanken durch Einhängen von Pluggable Datenbanken (PDBs) in eine Containerdatenbank (CDD). Dadurch wird es möglich mehrere Datenbanken wie eine Datenbank zu behandeln, was ein effizientes Upgraden, Patchen und administrieren ermöglicht (eine SGA!!). NetQuest GmbH Seite 2-4 2. Oracle Features und Architektur Der neue Enterprise Manager Database Express löst den Enterprise Manager Database Control ab und schafft eine einfache Lösung für grundlegende administrative Aufgaben. Die konsequente Weiterentwicklung des Enterprise Manager Grid Control ist der Enterprise Manager Cloud Control, der neben der bisherigen Datenbankadministration auch Oberflächen für das Cloud Computing bereithält. Oracle hat für seine neue Version eine Reihe von zusätzlichen Möglichkeiten geschaffen um spezielle Anforderungen an Performance Hochverfügbarkeit und Sicherheit zu ermöglichen: Bei der automatischen Daten Optimierung (ADO) lassen sich Lese-Schreib-Aktivitäten über eine Heat Map überwachen und somit Nutzungsprofile bilden. Auf dieser Basis können dann Regeln festgelegt werden, um Daten je nach Aktivität und Alter automatisch zu komprimieren und/oder auf andere Speichermedien zu verlagern. Über die In Database Archivierung können Datensätze als aktiv oder archiviert markiert werden. Als zweites Highlight in diesem Bereich kann das Oracle Data Redaction gelten, dass es ermöglicht sensitive Daten nicht vollständig an Benutzer auszugebnen, sondern den größten Teil zu maskieren z.B. bei Kreditkartennummern. Die Festlegung der gewünschten Ausgabe erfolgt über die Erstellung von Policies. Dieses Tool kann außer für Oracle 12c neuerdings auch für Oracle 11gR2 erworben werden. Hierzu gehören auch Verbesserungen im Real Application Cluster und das Bereitstellen spezieller Datenbanken, wie z.B die TimesTen In-Memory Database. Insgesamt hat Oracle über 500 neue Features in Oracle 12c implementiert. Welche Neuerungen für jede einzelne Firma die entscheidende Bedeutung haben, hängt sehr vom Blickwinkel und Einsatzgebiet der Datenbank ab. NetQuest GmbH Seite 2-5 2. Oracle Features und Architektur 2.4 Oracle Architektur Funktion der Komponenten des Oracle Systems. 2.4.1 Aufbau eines DBMS Database Management Systems (DBMS) User Database Management System - DBMS ORACLE_SID (Umgebungsvariable) Client Instanz Database File(s) DB_NAME (Parameterdatei) Die Oracle SID ist eine eindeutige Bezeichnung der Instanz (meistens 8 Zeichen Länge, abhängig vom Betriebssystem). Standardmäßig verwaltet eine Instanz genau eine Datenbank, außer es wird der Real Application Cluster (RAC) verwendet, bei dem mehrere Instanzen auf die gleichen Datenbankdateien zugreifen oder es wird die neue Mehrmandanten (Multitenant) Architektur verwendet, bei der mehrere Datenbanken konsolidiert werden NetQuest GmbH Seite 2-6 2. Oracle Features und Architektur Relationale Datenbank wird im Wesentlichen in zwei möglichen Systemtypen eingesetzt: 1. OLTP (Online Transactional Processing)-System Hierbei handelt es sich um Produktiv-Datenbanken zur Massendatenverarbeitung, in denen Daten gespeichert und verändert werden, wie z.B. ERP-Systeme. 2. OLAP (Online Analytical Processing)-System In einem OLAP-System werden Daten (häufig aus einem Data Warehouse, aber auch aus operativen Systemen), oft in einer denormalisierten Form bzw. in verschiedenen aggregierten Varianten, gespeichert. Diese Systeme dienen meistens zu Auswertungszwecken oder um eine mehrdimensionale Sicht auf die Daten zu erhalten, ohne das Produktivsystem zu belasten. Mittels der OLAP-Werkzeuge wird die Präsentation der Datenbank auf Bildschirm, Grafik Papier etc. vorbereitet und unterstützt. NetQuest GmbH Seite 2-7 2. Oracle Features und Architektur 2.4.2 Oracle Komponenten Oracle Komponenten Parameterdatei SGA (System Global Area) Shared Pool Database Buffer Cache Redo Log Buffer SMON Library Cache PGA Server Process PMON Data Dictionary Cache DBWR LGWR CHKP ARCH User Controlfile Database File Offline Online Redo Logs Die Oracle Architektur setzt sich aus einer Reihe von Komponenten zusammen. Die Hauptkomponente des Speichers wird System Global Area (SGA) genannt und existiert einmal pro Instanz. Der Session-spezifische Teil des Speichers wird Program Global Area (PGA) genannt. Seit Oracle 9i kann die SGA dynamisch verwaltet werden, d.h. die Größe der Speicherpools können geändert werden, ohne die Instanz neu zu starten. Seit Oracle 11g kann auch der Anteil von SGA zu PGA dynamisch verwaltet werden. Zusätzlich existieren noch eine Reihe von Prozessen (bei UNIX/LINUX) bzw. Threads (bei Windows), die den Zugriff auf die Datenbankdateien steuern und die Kommunikation zum Clientprozess kontrollieren. NetQuest GmbH Seite 2-8 2. Oracle Features und Architektur System Global Area (SGA) Die System Global Area (SGA) ist eine gemeinsam von allen Benutzern genutzte Speicherstruktur die Metadaten bzw. Daten der Datenbank enthält. Über diesen Cache werden zu häufige Zugriffe auf die Plattensubsystem beim Lesen und Schreiben von Daten vermieden. Speicherbereich Beschreibung Buffer Cache Der Buffer Cache enthält Kopien der Datenblöcke der Tablespaces. Redo Log Buffer Der Redo Log Buffer enthält Protokolle (Transaktionsprotokolle) zu Änderungen an Daten, die in der Datenbank durchgeführt wurden. Shared Pool DerShared Pool besteht aus zwei Pools: Library Cache Enthält SQL Statements samt ihren Ausführungsplänen V$SQLAREA (SQL_TEXT, EXECUTIONS) Wird optimiert z.B. bei einem INSERT werden Variablen statt Werte verwenden Stringcompare (Vergleich) zum Auffinden gleicher SQL-Anweisungen Leeren -> ALTER SYSTEM FLUSH SHARED_POOL Data Dictionary Cache Enthält Metadaten z.B. über Benutzer Java Pool Der Java Pool dient als Speicherbereich für Java Objekte. Large Pool Der Large Pool ist ein optionaler Speicherbereich für folgende Objekte: Streams Pool NetQuest GmbH Speicher für Sitzungen beim Shared Server I/O Server-Prozess Backup- und Restore-Operationen Message Buffer für parallele Abfragen Wird von Oracle Streams verwendet (z.B. Advanced Replication, Notification Service, usw.) Seite 2-9 2. Oracle Features und Architektur Program Global Area (PGA) Die Program Global Area (PGA) ist eine Speicherbereich der für jeden Server Prozess existiert. In der PGA werden Logon und sonstige Session Information gespeichert. Prozesse (oder Threads abhängig vom Betriebssystem) Prozess Beschreibung DBWn Der Database Writer (DBWn) Prozess schreibt geänderte Oracle Blöcke (Dirty Blocks) vom Cache in die Datenbankdateien. Dies erfolgt unabhängig vom commit, z.B. wenn ein Checkpoint erfolgt oder zu wenig freie Speicher im Buffer Cache vorhanden sind. LGWR Der Log Writer (LGWR) Prozess schreibt den Inhalt des Redo Log Buffers in die Online Red Log Dateien. CHKP Der Checkpoint (CHKP) Prozess signalisiert dem Database Writer Prozess(en), dass jetzt geänderte Oracle Blöcke in die Datenbankdateien geschrieben werden. SMON Der System Monitor (SMON) überwacht das System und führt z.B. ein Instanz Recovery (Crash Recovery) durch. PMON Der Process Monitor (PMON) ist für das Prozess Recovery zuständig wenn ein Benutzerprozess abgebrochen wurde. ARCn Der Archiver ist ein optionaler Prozess der für die Archivierung der Online Redo Logs als Offline Redo Logs zuständig ist. RECO Der Recoverer Process (RECO) ist für die Durchsetzung von verteilten Transaktionen zuständig. MMON Der Automatic Database Diagnostic Monitor (MMON) ist für das automatische Tuningsystem der Oracle Datenbank zuständig. NetQuest GmbH Seite 2-10 2. Oracle Features und Architektur LMS Der Global Cache Service ist beim Real Application Server (RAC) für die Verwaltung der Resourcen im Cluster zuständig. Dnnn Die Dispatcher sind optionale Prozesse, die für die Shared Server Konfiguration benötigt werden. Server Process Die Server Prozesse sind für die Verarbeitung der Daten vom Client zuständig. Datenbank- und Log-Dateien Prozess Beschreibung Redo Log Die Online- bzw. Offline-Redo Logs enthalten Änderungen die an den Daten durchgeführt wurden. Database File Die Datenbankdatei enthält alle Daten der Tabellen und Indizes. Control File Die Steuerdateien (Control File) enthalten verschiedene Statusinformationen der Datenbank. Zusätzliche Begriffe Begriff Beschreibung CHK (Checkpoint Number) – Anzahl der Checkpoints, die seit dem Anlegen der Datenbank durchgeführt worden sind. SCN (System Change Number) – Anzahl der Änderungen, die seit dem Anlegen der Datenbak durchgeführt worden sind. LSN (Log Sequence Number) – Anzahl der Redo Log Switches, die seit dem Anlegen der Datenbank durchgeführt worden sind. NetQuest GmbH Seite 2-11 2. Oracle Features und Architektur 2.5 Informationsquellen Informationen zur Installation und Verwaltung einer Oracle Datenbank. Informationsquellen Aktuelle JAVA SDK und JRE http://www.sun.com Allgemein Informationen zu Oracle - Oracle Technology Network (mit Anmeldung) http://otn.oracle.com My Oracle Support (Oracle Metalink, nur mit Support) http://www.oracle.com Tipps und Skripten für Oracle http://www.idevelopment.info Aktuelle JAVA SDK und JRE http://www.sun.com Allgemein Informationen zu Oracle - Oracle Technology Network (mit Anmeldung) http://otn.oracle.com My Oracle Support Community (MOSC, Früher Metalink) für Treiber, Patches und eine Knowledgebase http://www.oracle.com Tipps und Skripte für Oracle http://www.idevelopment.info NetQuest GmbH Seite 2-12