Themen für Datenbankadministratoren und Entwickler

Der Skriptcontent auf dieser Seite ist ausschließlich für Navigationszwecke vorgesehen und bewirkt keinerlei Änderung des Contents.

In diesem Kapitel werden allgemeine Datenbankthemen zusammengefasst, die sowohl für Datenbankadministratoren als auch für Entwickler wichtig sind. Außerdem werden Verweise auf andere Handbücher und nicht auf einen umfassenden Überblick über Datenbankfunktionen bereitgestellt.

Datenbanksicherheit - Überblick

Im Allgemeinen umfasst die Datenbanksicherheit Benutzerauthentifizierung, Verschlüsselung, Zugriffskontrolle und Überwachung.

Der vorliegende Abschnitt umfasst die folgenden Themen:

Benutzeraccounts

Jede Oracle-Datenbank enthält eine Liste von gültigen Datenbankbenutzern.

Die Datenbank enthält mehrere Standardaccounts, einschließlich des Standardadministrationsaccounts SYSTEM. Sie können Benutzeraccounts nach Bedarf erstellen. Sie können auch Anwendungsbenutzer für den Zugriff auf Oracle-Datenbanken konfigurieren.

Um auf eine Datenbank zuzugreifen, muss ein Benutzer einen gültigen Benutzernamen und Authentifizierungszugangsdaten angeben. Die Zugangsdaten können ein Kennwort, ein Kerberos-Ticket oder ein Public Key Infrastructure-(PKI-)Zertifikat sein. Sie können die Datenbanksicherheit so konfigurieren, dass Accounts basierend auf nicht erfolgreichen Anmeldeversuchen gesperrt werden.

Im Allgemeinen umfasst die Datenbankzugriffskontrolle die Einschränkung des Datenzugriffs und der Datenbankaktivitäten. Beispiel: Sie können die Abfrage bestimmter Tabellen oder die Ausführung bestimmter Datenbankanweisungen durch Benutzer einschränken.

Siehe:

Berechtigungen

Eine Benutzerberechtigung ist das Recht, bestimmte SQL-Anweisungen auszuführen.

Berechtigungen fallen in die folgenden Kategorien:

Berechtigungen werden Benutzern nach Ermessen anderer Benutzer erteilt. Administratoren sollten Benutzern Berechtigungen erteilen, damit sie die für ihre Tätigkeiten erforderlichen Aufgaben ausführen können. Eine gute Sicherheitspraxis besteht darin, eine Berechtigung nur einem Benutzer zu erteilen, der diese Berechtigung zum Durchführen der erforderlichen Arbeit benötigt.

Siehe:

Rollen

Eine Rolle ist eine benannte Gruppe zugehöriger Berechtigungen, die ein Benutzer anderen Benutzern oder Rollen erteilen kann. Mit einer Rolle können Berechtigungen für eine Datenbankanwendung oder Benutzergruppe verwaltet werden. In Abbildung 20-1 wird eine allgemeine Verwendung für Rollen dargestellt. Die Rollen PAY_CLERK, MANAGER und REC_CLERK werden verschiedenen Benutzern zugewiesen. Die Anwendungsrolle ACCTS_PAY, die die Berechtigung zum Ausführen der Anwendung ACCTS_PAY enthält, wird Benutzern mit der Rolle PAY_CLERK und MANAGER zugewiesen. Die Anwendungsrolle ACCTS_REC, die die Berechtigung zum Ausführen der Anwendung ACCTS_REC enthält, wird Benutzern mit der Rolle REC_CLERK und MANAGER zugewiesen.

Abbildung 1: Allgemeine Verwendungen für Rollen

Beschreibung der Abbildung cncpt082.gif

Siehe:

Berechtigungsanalyse

Der Mechanismus der Berechtigungsanalyse erfasst die Berechtigungsverwendung für eine Datenbank gemäß einer bestimmten Bedingung.

Auf diese Weise können Sie die Berechtigungen erfassen, die zum Ausführen eines Application Modules oder zum Ausführen bestimmter SQL-Anweisungen erforderlich sind. Beispiel: Sie können die Privilegien ermitteln, die ein Benutzer während einer bestimmten Datenbank-Session ausgeübt hat.

In einer Produktionsdatenbank können die Beziehungen zwischen Berechtigungen und Rollen, Rollen und Rollen sowie Rollen und Benutzern komplex sein. Mit der Berechtigungsanalyse können Sie Berechtigungen identifizieren, die in einem komplexen System unnötig erteilt werden. Basierend auf der Analyse der erfassten Ergebnisse können Sie unnötige Berechtigungen entfernen oder Berechtigungsberechtigungen neu konfigurieren, um die Sicherheit der Datenbanken zu erhöhen.

Siehe auch: Oracle AI Database - Sicherheitshandbuch, um Informationen zur Berechtigungsanalyse zu erhalten.

Benutzerprofile

Im Kontext von Systemressourcen ist ein Benutzerprofil eine benannte Gruppe von Ressourcenlimits und Kennwortparametern, die Datenbanknutzung und Datenbankinstanzressourcen für einen Benutzer einschränken.

Profile können die Anzahl der gleichzeitigen Sessions für einen Benutzer, die für jede Session verfügbare CPU-Verarbeitungszeit und die Anzahl der verfügbaren logischen I/O-Vorgänge begrenzen. Beispiel: Das Profil clerk könnte einen Benutzer auf Systemressourcen beschränken, die für klerikale Aufgaben erforderlich sind. Hinweis: Sie sollten Database Resource Manager verwenden, um Ressourcen zu begrenzen und Profile zum Verwalten von Kennwörtern zu verwenden.

Profile bieten einen einzigen Referenzpunkt für Benutzer, die eine Gruppe von Attributen gemeinsam verwenden. Sie können ein Profil einer Gruppe von Benutzern und ein Standardprofil allen anderen Benutzern zuweisen. Jedem Benutzer kann jeweils maximal ein Profil zugewiesen werden.

Siehe:

Datenbankauthentifizierung

In Oracle AI Database ist die Datenbankauthentifizierung der Prozess, bei dem ein Benutzer Zugangsdaten für die Datenbank vorlegt. Damit werden die Zugangsdaten geprüft und der Zugriff auf die Datenbank ermöglicht.

Durch die Validierung der Identität wird eine Vertrauensbeziehung für weitere Interaktionen hergestellt. Die Authentifizierung ermöglicht auch die Verantwortlichkeit, indem der Zugriff und die Aktionen mit bestimmten Identitäten verknüpft werden können.

Oracle AI Database bietet verschiedene Authentifizierungsmethoden, darunter die folgenden:

Nicht-administrative Datenbankbenutzeraccounts dürfen keine Datenbankvorgänge wie das Herunterfahren oder Hochfahren der Datenbank ausführen. Für diese Vorgänge sind die Berechtigungen SYSDBA, SYSOPER, SYSBACKUP oder SYSDG erforderlich.

Siehe:

Verschlüsselung

Oracle AI Database Verschlüsselung ist der Prozess der Umwandlung von Daten in ein unlesbares Format mit einem Secret Key und einem Verschlüsselungsalgorithmus.

Verschlüsselung wird häufig verwendet, um gesetzliche Compliance-Anforderungen zu erfüllen, wie sie mit dem Payment Card Industry Data Security Standard (PCI-DSS) oder den Gesetzen zur Meldung von Verstößen verbunden sind. Beispiel: Kreditkartennummern, Sozialversicherungsnummern oder Patienteninformationen müssen immer verschlüsselt werden.

Netzwerkverschlüsselung

Die Verschlüsselung von Daten, während sie zwischen einem Client und einem Server über das Netzwerk übertragen werden, wird als Netzwerkverschlüsselung bezeichnet.

Ein Eindringling kann mit einem Netzwerk-Paketsniffer Informationen erfassen, während er im Netzwerk übertragen wird, und diese dann für bösartige Zwecke in eine Datei puffern. Durch Verschlüsseln der über das Netzwerk übertragenen Daten werden Aktivitäten dieser Art verhindert.

Transparente Datenverschlüsselung

Mit der transparenten Datenverschlüsselung von Oracle Advanced Security können Sie einzelne Tabellenspalten oder einen Tablespace verschlüsseln.

Wenn ein Benutzer Daten in eine verschlüsselte Spalte einfügt, verschlüsselt die Datenbank die Daten automatisch. Wenn Benutzer die Spalte wählen, werden die Daten entschlüsselt. Diese Form der Verschlüsselung ist transparent, bietet eine hohe Leistung und ist einfach zu implementieren.

Transparent Data Encryption umfasst branchenübliche Verschlüsselungsalgorithmen wie den Advanced Encryption Standard (AES) und die integrierte Schlüsselverwaltung.

Siehe auch: Oracle AI Database Transparent Data Encryption Guide

Oracle-Datenverdeckung

Mit Oracle Data Redaction, einem Teil von Oracle Advanced Security, können Sie Daten maskieren (redaktieren), die von Benutzern mit geringem Privileg oder Anwendungen abgefragt werden. Die Verdeckung erfolgt in Echtzeit, wenn Benutzer die Daten abfragen.

Die Datenverdeckung unterstützt die folgenden Verdeckungsfunktionstypen:

Data Redaction ist keine umfassende Sicherheitslösung. Sie verhindert beispielsweise nicht, dass direkt verbundene, privilegierte Benutzer Inferenzangriffe auf verdeckte Daten ausführen. Solche Angriffe identifizieren verdeckte Spalten und versuchen durch Eliminierungsprozess, in tatsächliche Daten zurückzukehren, indem SQL-Abfragen wiederholt werden, die gespeicherte Werte erraten. Um Inferenz- und andere Angriffe privilegierter Benutzer zu erkennen und zu verhindern, empfiehlt Oracle, Oracle Data Redaction mit verwandten Datenbanksicherheitsprodukten wie Oracle Audit Vault and Database Firewall und Oracle Database Vault zu koppeln.

Die Datenverdeckung funktioniert wie folgt:

Im folgenden Beispiel wird eine vollständige Datenverdeckungs-Policy hinzugefügt, um die Spalte "Mitarbeiter-ID" (employee_id) der Tabelle hr.employees zu verdecken:

BEGIN
 DBMS_REDACT.ADD_POLICY(
   object_schema    => 'hr'
,  object_name      => 'employees'
,  column_name      => 'employee_id'
,  policy_name      => 'mask_emp_ids'
,  function_type    => DBMS_REDACT.FULL
,  expression       => '1=1'
);
END;
/

Im vorherigen Beispiel wendet die Ausdruckseinstellung, die als true ausgewertet wird, die Verdeckung auf Benutzer an, denen die Berechtigung EXEMPT REDACTION POLICY nicht erteilt wurde.

Siehe:

Zugriffskontrolle

Oracle AI Database bietet viele Techniken, um den Zugriff auf Daten zu kontrollieren. In diesem Abschnitt werden einige dieser Techniken zusammengefasst.

Oracle Database Vault

Oracle Database Vault schränkt den privilegierten Benutzerzugriff auf Anwendungsdaten ein.

Ab Oracle Database 12c erweitert Oracle Database Vault die standardmäßige Datenbankauditdatenstruktur. Wenn Sie außerdem zu Unified Auditing migrieren, schreibt die Datenbank Auditdatensätze in den einheitlichen Audittrail in Oracle Secure Files, der Auditdatensätze für Oracle AI Database zentralisiert.

Mit Oracle Database Vault können Sie steuern, wann, wo und wie auf die Datenbanken, Daten und Anwendungen zugegriffen wird. So können Sie gängige Sicherheitsprobleme wie den Schutz vor Insider-Bedrohungen, die Einhaltung gesetzlicher Anforderungen und die Durchsetzung einer Aufgabentrennung beheben.

Damit der Oracle Database Vault-Administrator zur Verantwortung gezogen werden kann, prüft die Datenbank Konfigurationsänderungen, die an den Oracle Database Vault-Metadaten vorgenommen wurden. Diese Änderungen umfassen das Erstellen, Ändern und Löschen von Oracle Database Vault-bezogenen Durchsetzungen, Berechtigungen und den Widerruf geschützter Rollen sowie Autorisierungen für Komponenten wie Oracle Data Pump und den Job Scheduler.

Siehe:

Virtual Private Database (VPD)

Mit Oracle Virtual Private Database (VPD) können Sie die Sicherheit auf Zeilen- und Spaltenebene durchsetzen.

Eine Sicherheitsrichtlinie legt Methoden fest, mit denen eine Datenbank vor versehentlicher oder böswilliger Zerstörung von Daten oder vor Beschädigung der Datenbankinfrastruktur geschützt wird.

VPD ist nützlich, wenn Sicherheitsschutzfunktionen wie Berechtigungen und Rollen nicht ausreichend feingranuliert sind. Beispiel: Sie können allen Benutzern den Zugriff auf die Tabelle employees erlauben, jedoch Sicherheits-Policys erstellen, um den Zugriff auf Mitarbeiter in derselben Abteilung wie der Benutzer einzuschränken.

Im Wesentlichen fügt die Datenbank einer SQL-Anweisung, die für die Tabelle, die Ansicht oder das Synonym abgesetzt wurde, eine dynamische WHERE-Klausel hinzu, auf die eine Oracle VPD-Sicherheits-Policy angewendet wurde. Mit der WHERE-Klausel können nur Benutzer, deren Zugangsdaten die Sicherheits-Policy übergeben, auf die geschützten Daten zugreifen.

Siehe auch: Oracle AI Database - Sicherheitshandbuch

Oracle Label Security (OLS)

Mit Oracle Label Security (OLS) können Sie Datenklassifizierung und Zugriffskontrolle mit Sicherheitslabels zuweisen. Sie können Daten oder Benutzern ein Label zuweisen.

Wenn das Label Daten zugewiesen wird, kann es als ausgeblendete Spalte an Tabellen angehängt werden, um SQL transparent zu machen. Beispiel: Sie können Zeilen, die hochsensible Daten enthalten, als HIGHLY SENSITIVE und weniger sensible Labelzeilen als SENSITIVE labeln. Wenn ein Benutzer versucht, auf Daten zuzugreifen, vergleicht OLS das Benutzerlabel mit dem Datenlabel und legt fest, ob Zugriff gewährt werden soll. Im Gegensatz zu VPD bietet OLS eine Out-of-the-box-Sicherheits-Policy und ein Metadaten-Repository zum Definieren und Speichern von Labels.

Wenn Unified Auditing aktiviert ist, stellt die Datenbank ein Policy-basiertes Framework zur Konfiguration und Verwaltung von Auditoptionen bereit. Sie können Auditoptionen für verschiedene Typen von Vorgängen, einschließlich OLS-Vorgängen, gruppieren und als Audit-Policy speichern. Anschließend können Sie die Policy aktivieren oder deaktivieren, um die zugrunde liegenden Auditingoptionen durchzusetzen.

Wenn eine OLS-Policy erstellt wird, fügt die Datenbank der Datenbank-Audittrailtabelle eine Labelspalte für die Policy hinzu. Beim OLS-Auditing können Auditdatensätze, einschließlich Datensätze für OLS-Administratorvorgänge, in den einheitlichen Audittrail geschrieben werden.

Siehe:

Datenzugriffsüberwachung

Oracle AI Database bietet mehrere Tools und Techniken zur Überwachung der Benutzeraktivität. Auditing ist der primäre Mechanismus zur Überwachung des Datenzugriffs.

Datenbankauditing

Das Datenbank-Auditing umfasst das Monitoring und die Aufzeichnung ausgewählter Benutzerdatenbankaktionen.

Sie können eine Einheitsaudit-Policy so konfigurieren, dass Folgendes auditiert wird:

Der einheitliche Audittrail kann Recovery Manager-Ereignisse erfassen, die Sie in der Data Dictionary View UNIFIED_AUDIT_TRAIL abfragen können. Sie erstellen keine einheitlichen Audit-Policys für Recovery Manager-Ereignisse.

Sie können auch fine-grained audititing verwenden, um bestimmte Tabellenspalten zu auditieren und Event Handler während der Policy-Erstellung zu verknüpfen. Für ein einheitliches und feingranuliertes Auditing können Sie Policys erstellen, die auf Bedingungen testen, die bestimmte Datenbankaktionen in einer Tabelle oder Zeiten erfassen, in denen Aktivitäten stattfinden. Beispiel: Sie können eine Tabelle prüfen, auf die nach 9:00 Uhr zugegriffen wird.

Gründe für die Prüfung:

Ab Oracle Database 12c ist das Datenbank-Auditing standardmäßig aktiviert, wenn Sie Unified Auditing verwenden. Sie steuern das Datenbankauditing, indem Sie Audit-Policys aktivieren. Bevor Sie jedoch einheitliches Auditing verwenden können, müssen Sie Ihre Datenbanken dorthin migrieren.

Siehe:

Audit-Policys

Sie können eine einzelne SQL-Anweisung verwenden, um eine benannte einheitliche Audit-Policy zu erstellen, die eine Gruppe von Auditoptionen angibt. Diese Optionen können Systemberechtigungen, Aktionen oder Rollen angeben, die in der Datenbank auditiert werden sollen.

In einer Audit-Policy können Sie optional eine Bedingung festlegen, die für jede Anweisung, einmal für eine Session oder einmal für die Datenbankinstanz ausgewertet werden kann. Die Prüfung eines Ereignisses unterliegt dem Ergebnis der Bewertung einer Bedingung für die geltenden Auditrichtlinien. Wenn die Bedingung als true ausgewertet wird, generiert die Datenbank den Auditdatensatz.

Im folgenden Beispiel wird eine Policy erstellt, die Aktivitäten in der Tabelle hr.employees auditiert, es sei denn, ein Benutzer meldet sich von den vertrauenswürdigen Terminals term1 und term2 an:

CREATE AUDIT POLICY EmployeesTableAudit
  ACTIONS update ON hr.employees, delete ON hr.employees
  WHEN SYS_CONTEXT ("userenv", "hostname") NOT IN
                   ("term1","term2") EVALUATE PER SESSION;

Die folgende Anweisung aktiviert die Policy für die Benutzer hr und hrvp:

AUDIT POLICY EmployeesTableAudit BY hr, hrvp;

Sie können einheitliche Audit-Policys auf jeden Datenbankbenutzer anwenden, einschließlich administrativer Benutzer wie SYSDBA, SYSOPER usw. Die Audit-Policys können jedoch nur gelesen werden, nachdem die Datenbank mit der Anweisung ALTER DATABASE OPEN geöffnet wurde. Daher werden die Aktionen der obersten Ebene von Benutzern mit Administratorrechten immer geprüft, bis die Datenbank geöffnet wird. Nachdem die Datenbank geöffnet wurde, ist die Audit-Policy-Konfiguration wirksam.

Wenn das einheitliche Auditing aktiviert ist, prüft die Datenbank automatisch Änderungen an den Auditeinstellungen. Die Datenbank prüft auch das Hoch- und Herunterfahren der Datenbankinstanz.

Siehe auch: Oracle AI Database - Sicherheitshandbuch zum Verwalten von Audit-Policys

Auditadministratorrollen

Zur Ausführung des Auditings benötigen Sie Systemberechtigungen.

Oracle AI Database stellt die folgenden vom System bereitgestellten Auditadministratorrollen bereit:

Siehe auch: Oracle AI Database - Sicherheitshandbuch, um mehr über das Auditing zu erfahren

Einheitlicher Audittrail

Auditdatensätze sind für die Erkennung und Identifizierung nicht autorisierter Datenzugriffe unerlässlich.

Oracle AI Database kann das Auditing für angegebene Ereignisse konfigurieren. Wenn das Ereignis während einer Benutzersession auftritt, generiert die Datenbank einen Auditdatensatz.

Ein Audittrail ist ein Speicherort, in dem Auditdatensätze gespeichert werden. Der einheitliche Audittrail, der neu in Oracle Database 12c ist, bietet einheitlichen Speicher für Auditdatensätze aller Audittypen. Sie müssen manuell von den herkömmlichen Audittrails früherer Releases zu einem einheitlichen Auditing migrieren.

Das Auditing umfasst das standardmäßige und feingranulierte Auditing sowie das Auditing der folgenden Ereignisse, einschließlich der Ausführung dieser Ereignisse durch administrative Benutzer:

Der einheitliche Audittrail ist schreibgeschützt und wird im Schema AUDSYS gespeichert. Standardmäßig speichert der Tablespace SYSAUX Auditdatensätze aus allen Quellen. Sie können einen neuen Tablespace mit dem Package DBMS_AUDIT_MGMT bereitstellen.

Die Ansicht UNIFIED_AUDIT_TRAIL ruft die Auditdatensätze aus dem Audittrail ab und zeigt sie in tabellarischer Form an. In der Spalte APPLICATION_CONTEXTS werden die Werte der konfigurierten Anwendungskontextattribute gespeichert. Mit der Anweisung AUDIT können Sie die Werte von Kontextattributen in Auditdatensätze aufnehmen. Beispiel: Die folgende Anweisung erfasst die Attribute MODULE und CLIENT_INFO aus dem Namespace userenv:

AUDIT CONTEXT NAMESPACE userenv ATTRIBUTES MODULE, CLIENT_INFO BY hr;

Abhängig von der auditierten Komponente (wie Oracle Database Vault) sind zusätzliche vereinheitlichte Audittrail-bezogene Views verfügbar.

Siehe:

Auditingunterstützung für Enterprise Manager

Mit Oracle Enterprise Manager (Enterprise Manager) können Sie die meisten auditierungsbezogenen Aufgaben ausführen.

Die Aufgaben umfassen:

Siehe auch: Onlinehilfe zu Enterprise Manager

Oracle Audit Vault and Database Firewall

Oracle Audit Vault and Database Firewall (Oracle AVDF) bietet eine erste Verteidigungslinie für Datenbanken und konsolidiert Auditdaten aus Datenbanken, Betriebssystemen und Verzeichnissen.

Eine SQL-Grammatik-basierte Engine überwacht und blockiert nicht autorisierten SQL-Datenverkehr, bevor sie die Datenbank erreicht. Für Complianceberichte und -alerts kombiniert Oracle AVDF Datenbankaktivitätsdaten aus dem Netzwerk mit detaillierten Auditdaten. Sie können Auditing- und Überwachungskontrollen an die Sicherheitsanforderungen des Unternehmens anpassen.

Siehe auch: Oracle AI Database - Sicherheitshandbuch enthält Informationen zu zusätzlichen Sicherheitsressourcen wie Oracle Audit Vault and Database Firewall

Überblick über High Availability

Verfügbarkeit ist der Grad, bis zu dem eine Anwendung, ein Service oder eine Funktionalität auf Anforderung verfügbar ist.

Beispiel: Eine OLTP-Datenbank, die von einem Online-Buchhändler verwendet wird, ist so weit verfügbar, wie Kunden, die Einkäufe tätigen, darauf zugreifen können. Zuverlässigkeit, Wiederherstellbarkeit, zeitnahe Fehlererkennung und kontinuierlicher Betrieb sind die Hauptmerkmale von High Availability.

Die Bedeutung von High Availability in einer Datenbankumgebung hängt von den Kosten für Ausfallzeiten ab, d.h. der Zeit, zu der eine Ressource nicht verfügbar ist. Ausfallzeiten können entweder als geplant oder ungeplant kategorisiert werden. Die größte Herausforderung bei der Gestaltung einer hochverfügbaren Umgebung besteht darin, alle möglichen Ursachen von Ausfallzeiten zu untersuchen und einen Plan zu entwickeln, um mit ihnen umzugehen.

Hohe Verfügbarkeit und ungeplante Ausfallzeiten

Oracle AI Database bietet Hochverfügbarkeitslösungen, um Ausfallzeiten für alle Arten von ungeplanten Fehlern zu verhindern, zu tolerieren und zu reduzieren.

Ungeplante Ausfallzeiten können nach ihren Ursachen kategorisiert werden.

Sitefehler

Ein Sitefehler tritt auf, wenn ein Ereignis dazu führt, dass die Verarbeitung einer Anwendung vollständig oder teilweise gestoppt oder auf einen nicht verwendbaren Servicegrad verlangsamt wird.

Ein Standortausfall kann sich auf die gesamte Verarbeitung in einem Data Center oder auf eine Teilmenge von Anwendungen auswirken, die von einem Data Center unterstützt werden. Beispiele hierfür sind ein erweiterter standortweiter Strom- oder Netzwerkausfall, eine Naturkatastrophe, die ein Rechenzentrum funktionsunfähig macht, oder ein böswilliger Angriff auf den Betrieb oder die Website.

Die einfachste Art des Schutzes vor Siteausfällen besteht darin, Datenbankbackups mit RMAN zu erstellen und extern zu speichern. Sie können die Datenbank auf einem anderen Host wiederherstellen. Diese Technik kann jedoch zeitaufwändig sein, und das Backup ist möglicherweise nicht aktuell. Wenn Sie eine oder mehrere Standbydatenbanken in einer Data Guard-Umgebung verwalten, können Sie einen kontinuierlichen Datenbankservice bereitstellen, wenn die Produktions-Site ausfällt.

Siehe:

Computerfehler

Ein Computerausfall tritt auf, wenn das System, auf dem die Datenbank ausgeführt wird, nicht mehr verfügbar ist, weil es heruntergefahren wurde oder nicht mehr zugänglich ist.

Beispiele für Computerfehler sind Hardware- und Betriebssystemfehler. Die Oracle-Funktionen in der folgenden Tabelle schützen vor Computerfehlern oder helfen bei der Reaktion darauf.

Tabelle 1: Schutz vor Computerfehlern

Feature Beschreibung Weitere Infos
Unternehmensraster In einer Oracle Real Applications Cluster-(Oracle RAC-)Umgebung wird Oracle AI Database auf zwei oder mehr Systemen in einem Cluster ausgeführt, während gleichzeitig auf eine einzelne gemeinsame Datenbank zugegriffen wird. Ein einzelnes Datenbanksystem umfasst mehrere Hardwaresysteme, die der Anwendung jedoch als einzelne Datenbank angezeigt werden. "Überblick über Grid Computing"
Oracle Data Guard Mit Data Guard können Sie eine oder mehrere Kopien einer Produktionsdatenbank verwalten, die als Standbydatenbank bezeichnet wird und sich auf verschiedenen Kontinenten oder im selben Data Center befinden kann. Wenn die Primärdatenbank aufgrund eines Ausfalls nicht verfügbar ist, kann Data Guard jede Standbydatenbank auf die Primärrolle umstellen und so Ausfallzeiten minimieren. Oracle Data Guard - Konzepte und Administration
Global Data Services Das Global Data Services-Framework automatisiert und zentralisiert Konfiguration, Wartung und Überwachung einer Datenbank-Cloud. Global Data Services ermöglicht Load Balancing und Failover für von der Cloud bereitgestellte Services. Im Wesentlichen bietet Global Data Services eine Reihe von Datenbanken die gleichen Vorteile wie Oracle Real Application Clusters (Oracle RAC) eine einzelne Datenbank. Oracle AI Database Global Data Services – Leitfaden zu Konzepten und Administration
Fast Start Fault Recovery Eine häufige Ursache für ungeplante Ausfallzeiten ist ein Systemfehler oder -ausfall. Die Fast-Start-Fault-Recovery-Technologie in Oracle AI Database begrenzt automatisch die Instanzwiederherstellungszeit der Datenbank. Oracle AI Database – Leitfaden zur Optimierung der Datenbankperformance

Speicherfehler

Ein Speicherausfall tritt auf, wenn der Speicher, der einen oder alle Datenbankinhalte enthält, nicht mehr verfügbar ist, weil er heruntergefahren wurde oder nicht mehr zugänglich ist. Beispiele für Speicherfehler sind der Ausfall eines Festplattenlaufwerks oder Speicherarrays.

In der folgenden Tabelle werden Speicherfehler zusätzlich zu Oracle Data Guard aufgeführt.

Tabelle 2: Lösungen für Speicherfehler

Lösung Beschreibung Weitere Infos
Oracle Automatic Storage Management (Oracle ASM) Oracle ASM ist ein Volume Manager und ein Dateisystem für Oracle-Datenbankdateien, das Oracle AI Database- und Oracle RAC-Einzelinstanzkonfigurationen unterstützt. Oracle ASM ist eine von Oracle empfohlene Speicherverwaltungslösung, die eine Alternative zu herkömmlichen Volume Managern und Dateisystemen bietet. "Oracle Automatic Storage Management (Oracle ASM)"
Backup und Wiederherstellung Das Recovery Manager-(RMAN-)Utility kann Daten sichern, Daten aus einem vorherigen Backup wiederherstellen und Änderungen an diesen Daten bis zu dem Zeitpunkt wiederherstellen, zu dem der Fehler aufgetreten ist. "Backup und Recovery"

Siehe auch: Oracle Automatic Storage Management Administrator's Guide, um mehr über Oracle ASM zu erfahren

Datenbeschädigung

Eine Datenbeschädigung tritt auf, wenn eine Hardware-, Software- oder Netzwerkkomponente das Lesen oder Beschreiben fehlerhafter Daten verursacht.

Ein Beispiel für eine Datenbeschädigung ist ein Volume Manager-Fehler, der fehlerhafte Datenträgerlese- oder -schreibvorgänge verursacht. Datenbeschädigungen sind selten, können jedoch katastrophale Auswirkungen auf eine Datenbank und damit auf ein Unternehmen haben.

Zusätzlich zu Data Guard und Recovery Manager unterstützt Oracle AI Database die folgenden Formen des Schutzes vor Datenbeschädigung:

Siehe:

Menschliche Fehler

Ein Ausfall menschlicher Fehler tritt auf, wenn unbeabsichtigte oder böswillige Aktionen festgeschrieben werden, die dazu führen, dass Daten in der Datenbank logisch beschädigt oder unbrauchbar werden. Die Auswirkungen eines menschlichen Fehlerausfalls auf den Servicegrad können je nach Menge und kritischem Charakter der betroffenen Daten erheblich variieren.

Viele Studien zitieren menschliche Fehler als die größte Ursache für Ausfallzeiten. Oracle AI Database bietet leistungsstarke Tools, mit denen Administratoren diese Fehler schnell diagnostizieren und beheben können. Es enthält auch Funktionen, mit denen Endbenutzer Probleme ohne Administratorbeteiligung beheben können.

Oracle AI Database empfiehlt die folgenden Formen des Schutzes vor menschlichen Fehlern:

Siehe:

Hohe Verfügbarkeit und geplante Ausfallzeiten

Geplante Ausfallzeiten können den Betrieb ebenso stören, insbesondere in globalen Unternehmen, die Benutzer in mehreren Zeitzonen unterstützen. In diesem Fall ist es wichtig, ein System zu entwerfen, um geplante Unterbrechungen wie Routinevorgänge, regelmäßige Wartung und neue Bereitstellungen zu minimieren.

Geplante Ausfallzeiten können nach ihren Ursachen kategorisiert werden.

System- und Datenbankänderungen

Geplante Systemänderungen treten auf, wenn Sie routinemäßige und regelmäßige Wartungsvorgänge und neue Deployments ausführen, einschließlich geplanter Änderungen an der Betriebsumgebung, die außerhalb der Organisationsdatenstruktur in der Datenbank auftreten.

Beispiele hierfür sind das Hinzufügen oder Entfernen von CPUs und Clusterknoten (ein Knoten ist ein Computer, auf dem sich eine Datenbankinstanz befindet), das Upgraden von Systemhardware oder -software und das Migrieren der Systemplattform.

Oracle AI Database bietet dynamisches Ressourcen-Provisioning als Lösung für geplante System- und Datenbankänderungen:

Siehe:

Datenänderungen

Geplante Datenänderungen treten auf, wenn Änderungen an der logischen Struktur oder der physischen Organisation von Oracle AI Database-Objekten auftreten. Das Hauptziel dieser Änderungen ist die Verbesserung der Leistung oder Verwaltbarkeit. Beispiele sind die Neudefinition von Tabellen, das Hinzufügen von Tabellenpartitionen und das Erstellen oder Neuerstellen von Indizes.

Oracle AI Database minimiert Ausfallzeiten für Datenänderungen durch Online-Reorganisation und Neudefinition. Mit dieser Architektur können Sie die folgenden Aufgaben ausführen, wenn die Datenbank geöffnet ist:

Siehe:

Anwendungsänderungen

Geplante Anwendungsänderungen können Änderungen an Daten, Schemas und Programmen umfassen. Das Hauptziel dieser Änderungen besteht darin, die Leistung, Verwaltbarkeit und Funktionalität zu verbessern. Ein Beispiel ist ein Anwendungsupgrade.

Oracle AI Database unterstützt die folgenden Lösungen zur Minimierung von Anwendungsausfallzeiten, die erforderlich sind, um Änderungen an den Datenbankobjekten einer Anwendung vorzunehmen.

Tabelle 3: Lösungen zur Minimierung von Ausfallzeiten

Lösung Beschreibung Weitere Infos
Rolling-Updates für Datenbankpatches Oracle AI Database unterstützt die Anwendung von Patches auf den Knoten eines Oracle RAC-Systems im Rolling-Modus.  
Rolling-Upgrades von Datenbankreleases Oracle AI Database unterstützt die Installation von Datenbanksoftwareupgrades und die Anwendung von Patchsets im Rolling-Modus mit nahezu keiner Datenbankausfallzeit, indem Data Guard SQL Apply und logische Standbydatenbanken verwendet werden. Oracle AI Database-Upgradeanleitung
Editionsbasierte Neudefinition Mit der Editions-basierten Neudefinition können Sie die Datenbankobjekte einer Anwendung aktualisieren, während die Anwendung verwendet wird. Dadurch werden Ausfallzeiten minimiert oder eliminiert. Oracle AI Database erfüllt diese Aufgabe, indem Datenbankobjekte in einer privaten Umgebung, die als Edition bezeichnet wird, geändert (neu definiert) werden. Oracle AI Database-Entwicklungshandbuch
DDL mit der Standardoption WAIT DDL-Anweisungen erfordern exklusive Sperren für interne Strukturen (siehe "DDL-Sperren"). In früheren Releases waren DDL-Anweisungen nicht erfolgreich, wenn sie die Sperren nicht abrufen konnten. Mit der Option WAIT angegebene DDL löst dieses Problem.  
Erstellung von Triggern mit deaktiviertem Status Sie können einen Trigger im Status "Deaktiviert" erstellen, damit Sie sicherstellen können, dass der Code erfolgreich kompiliert wird, bevor Sie den Trigger aktivieren. Oracle AI Database PL/SQL-Sprachreferenz

Überblick über Grid Computing

Die Computing-Architektur, die als Grid Computing bekannt ist, bündelt eine große Anzahl von Servern und Speicher in einer flexiblen On-Demand-Ressource für alle Unternehmens-Computing-Anforderungen.

Ein Datenbankserverraster ist eine Sammlung von Commodity-Servern, die miteinander verbunden sind, um in einer oder mehreren Datenbanken ausgeführt zu werden. Ein Database Storage Grid ist eine Sammlung kostengünstiger modularer Speicherarrays, die von den Computern im Database Server Grid kombiniert und aufgerufen werden.

Mit Database Server und Storage Grid können Sie einen Pool von Systemressourcen erstellen. Sie können diese Ressourcen basierend auf den Geschäftsprioritäten dynamisch zuweisen und die Zuweisung aufheben. In Abbildung 20-2 wird das Database Server Grid und das Database Storage Grid in einer Grid Enterprise Computing-Umgebung dargestellt.

Abbildung 2: Grid Computing-Umgebung

Beschreibung der Abbildung haovw004.gif

Datenbankserverraster

Mit Oracle Real Application Clusters (Oracle RAC) können mehrere Instanzen den Zugriff auf eine Oracle-Datenbank freigeben. Die Instanzen werden über ein Interconnect verknüpft.

In einer Oracle RAC-Umgebung wird Oracle AI Database auf zwei oder mehr Systemen in einem Cluster ausgeführt, während gleichzeitig auf eine einzelne gemeinsame Datenbank zugegriffen wird. Oracle RAC ermöglicht ein Database Server Grid, indem eine einzelne Datenbank bereitgestellt wird, die mehrere kostengünstige Server umfasst, die der Anwendung jedoch als einzelnes, einheitliches Datenbanksystem angezeigt werden. Oracle Clusterware ist eine Software, mit der Server wie ein Server zusammenarbeiten können. Jeder Server sieht aus wie ein Standalone-Server. Jeder Server verfügt jedoch über zusätzliche Prozesse, die miteinander kommunizieren, sodass separate Server wie ein Server zusammenarbeiten. Oracle Clusterware bietet alle Features, die zur Ausführung des Clusters erforderlich sind, einschließlich Knotenmitgliedschaft und Messaging Services.

Siehe:

Skalierbarkeit

In einem Database Server Grid können Sie mit Oracle RAC Knoten zum Cluster hinzufügen, wenn der Kapazitätsbedarf steigt.

Mit der in Oracle RAC implementierten Cache Fusion-Technologie können Sie die Kapazität skalieren, ohne Ihre Anwendungen zu ändern. So können Sie das System inkrementell skalieren, um Kosten zu sparen und kleinere Ein-Knoten-Systeme durch größere Systeme zu ersetzen.

Sie können einem Cluster inkrementell Knoten hinzufügen, anstatt vorhandene Systeme durch größere Knoten zu ersetzen. Grid Plug and Play vereinfacht das Hinzufügen und Entfernen von Knoten aus einem Cluster und erleichtert das Deployment von Clustern in einer dynamisch bereitgestellten Umgebung. Mit Grid Plug and Play können Datenbanken und Services auch standortunabhängig verwaltet werden. Mit SCAN können Clients eine Verbindung zum Datenbankservice herstellen, ohne den Speicherort im Grid zu berücksichtigen.

Siehe:

Fehlertoleranz

In einer High-Availability-Architektur ist die Faulttoleranz der Schutz, der vor dem Ausfall einer Komponente in der Architektur bereitgestellt wird.

Ein wesentlicher Vorteil der Oracle RAC-Architektur ist die inhärente Fehlertoleranz, die von mehreren Knoten bereitgestellt wird. Da die physischen Knoten unabhängig voneinander ausgeführt werden, wirkt sich der Ausfall eines oder mehrerer Knoten nicht auf andere Knoten im Cluster aus.

Ein Failover kann für jeden Knoten im Grid erfolgen. Im Extremfall bietet ein Oracle RAC-System Datenbankzugriff, selbst wenn nur ein Knoten heruntergefahren ist. Diese Architektur ermöglicht es, eine Gruppe von Knoten transparent online zu setzen oder offline zu setzen, um sie zu warten, während der Rest des Clusters weiterhin Datenbankzugriff bietet.

Oracle RAC bietet eine integrierte Integration mit Oracle-Clients und Verbindungspools. Mit dieser Funktion wird eine Anwendung sofort über den Pool benachrichtigt, der die Verbindung beendet. Die Anwendung vermeidet das Warten auf einen TCP-Timeout und kann sofort die entsprechende Wiederherstellungsaktion ausführen. Oracle RAC integriert den Listener mit Oracle-Clients und den Verbindungspools, um einen optimalen Anwendungsdurchsatz zu erstellen. Oracle RAC kann die Cluster-Workload basierend auf der Last zum Zeitpunkt der Transaktion ausgleichen.

Siehe:

Dienstleistungen

Oracle RAC unterstützt Services, die Datenbank-Workloads gruppieren und Arbeit an die optimalen Instanzen weiterleiten können, die den Services zugewiesen sind.

Ein Service steht für die Workload von Anwendungen mit allgemeinen Attributen, Performanceschwellenwerten und Prioritäten. Sie definieren und wenden Geschäfts-Policys auf diese Services an, um Aufgaben auszuführen, wie die Zuweisung von Knoten für Zeiten der Spitzenverarbeitung oder die automatische Verarbeitung von Serverfehlern. Durch den Einsatz von Services wird die Anwendung von Systemressourcen sichergestellt, wo und wann sie zum Erreichen von Geschäftszielen benötigt werden.

Services werden in Database Resource Manager integriert, sodass Sie die Ressourcen einschränken können, die ein Service in einer Instanz verwenden kann. Zudem können Oracle Scheduler-Aufträge nicht nur über eine spezielle Instanz sondern über einen Service ausgeführt werden.

Siehe:

Oracle Flex-Cluster

Ab Oracle Database 12c können Sie Oracle Clusterware und Oracle Real Application Clusters in großen Clustern konfigurieren.

Diese großen Cluster, die als Oracle Flex-Cluster bezeichnet werden, enthalten zwei Knotentypen, die in einer Hub-and-Spoke-Architektur angeordnet sind: Hubknoten und Blattknoten. Hubknoten sind eng miteinander verbunden, haben direkten Zugriff auf Shared Storage und dienen als Anker für einen oder mehrere Blattknoten. Blattknoten sind lose mit Hubknoten verbunden und haben möglicherweise keinen direkten Zugriff auf Shared Storage.

Siehe:

Datenbankspeicher-Grid

Ein DBA oder Speicheradministrator kann die Oracle ASM-Schnittstelle verwenden, um die Datenträger in Database Storage Grid anzugeben, die Oracle ASM auf allen Server- und Speicherplattformen verwalten soll. Oracle ASM partitioniert den Festplattenspeicher und verteilt die Daten gleichmäßig auf die Datenträger, die Oracle ASM bereitgestellt werden. Darüber hinaus verteilt Oracle ASM Daten automatisch neu, wenn Datenträger aus Speicherarrays zum Database Storage Grid hinzugefügt oder daraus entfernt werden.

Siehe:

Überblick über Data Warehousing und Business Intelligence

Ein Data Warehouse ist eine relationale Datenbank, das eher zur Abfrage und Analyse als zur Transaktionsverarbeitung verwendet wird.

Beispiel: Ein Data Warehouse kann historische Aktienkurse oder Einkommensteuerdatensätze verfolgen. Ein Warehouse enthält in der Regel Daten, die aus historischen Transaktionsdaten abgeleitet werden, kann jedoch Daten aus anderen Quellen enthalten.

Eine Data Warehouse-Umgebung umfasst neben einer relationalen Datenbank mehrere Tools. Eine typische Umgebung umfasst eine ETL-Lösung, eine OLAP-Engine, Clientanalysetools und andere Anwendungen, die Daten erfassen und an Benutzer übermitteln.

Data Warehousing und OLTP

Eine gängige Methode zur Einführung von Data Warehousing besteht darin, sich auf die Eigenschaften eines Data Warehouse zu beziehen, wie sie von William Inmon dargelegt wurden.

Die Eigenschaften sind wie folgt: Fuß 1

Data Warehouses und OLTP-Datenbanken haben unterschiedliche Anforderungen. Um beispielsweise Trends im Geschäft zu erkennen, müssen Data Warehouses große Datenmengen verwalten. Im Gegensatz dazu erfordert eine gute Performance, dass historische Daten regelmäßig von OLTP-Systemen in ein Archiv verschoben werden. In Tabelle 20-4 werden die Unterschiede zwischen Data Warehouses und OLTP aufgeführt.

Tabelle 4: Data Warehouses und OLTP-Systeme

Eigenschaften Data Warehouse OLTP
Arbeitsauslastung Konzipiert für Ad-hoc-Abfragen. Möglicherweise kennen Sie die Workload Ihres Data Warehouse nicht im Voraus. Daher sollte es für eine Vielzahl möglicher Abfragen optimiert werden. Unterstützt nur vordefinierte Vorgänge. Ihre Anwendungen werden möglicherweise speziell optimiert oder so konzipiert, dass sie nur diese Vorgänge unterstützen.
Datenänderungen Regelmäßige Aktualisierung durch den ETL-Prozess mithilfe von Massendatenmodifikationstechniken. Endbenutzer eines Data Warehouse aktualisieren die Datenbank nicht direkt. Vorbehaltlich einzelner DML-Anweisungen, die routinemäßig von Endbenutzern abgesetzt werden. Die OLTP-Datenbank ist immer auf dem neuesten Stand und spiegelt den aktuellen Status jeder Geschäftstransaktion wider.
Schemadesign Verwendet denormalisierte oder teilweise denormalisierte Schemas (wie ein Star-Schema), um die Abfrageperformance zu optimieren. Verwendet vollständig normalisierte Schemas zur Optimierung der DML-Performance und zur Gewährleistung der Datenkonsistenz.
Typische Vorgänge Eine typische Abfrage scannt Tausende oder Millionen von Zeilen. Beispiel: Ein Benutzer kann den Gesamtumsatz für alle Kunden im letzten Monat anfordern. Ein typischer Vorgang greift nur auf eine Handvoll Datensätze zu. Beispiel: Ein Benutzer kann die aktuelle Bestellung für einen einzelnen Kunden abrufen.
Historische Daten Speichert Daten über mehrere Monate oder Jahre, um historische Analysen durchzuführen. Speichert Daten aus nur wenigen Wochen oder Monaten. Historische Daten, die nach Bedarf gespeichert werden, um die Anforderungen der aktuellen Transaktion zu erfüllen.

Siehe:

Data Warehouse-Architektur

Data Warehouses und ihre Architekturen variieren je nach Geschäftsanforderungen.

Data Warehouse-Architektur (Grundlagen)

In einer einfachen Data Warehouse-Architektur greifen Endbenutzer direkt auf Daten zu, die von mehreren Quellsystemen in das Data Warehouse transportiert wurden.

Die folgende Abbildung zeigt eine Beispielarchitektur.

Abbildung 3: Architektur eines Data Warehouse

Beschreibung der Abbildung cncpt170.gif

Die obige Abbildung zeigt sowohl die Metadaten als auch die Rohdaten eines herkömmlichen OLTP-Systems und Übersichtsdaten. Eine Zusammenfassung ist eine Aggregatansicht, die die Abfrageperformance verbessert, indem aufwändige Joins und Aggregationsvorgänge vorab berechnet und die Ergebnisse in einer Tabelle gespeichert werden. Beispiel: Eine Übersichtstabelle kann die Umsatzsummen nach Region und Produkt enthalten. Zusammenfassungen werden auch als Materialized Views bezeichnet.

Siehe auch: Oracle AI Database Data Warehousing Guide mit Informationen zu grundlegenden Materialized Views

Data Warehouse-Architektur (mit einer Staging Area)

Einige Data Warehouses verwenden eine Staging Area, eine Stelle, an der Daten vor dem Eintritt in das Warehouse verarbeitet werden. Eine Staging Area vereinfacht die Erstellung von Summen und die Verwaltung des Warehouse.

Die folgende Grafik zeigt eine Staging Area.

Abbildung 4: Architektur eines Data Warehouse mit einer Staging Area

Beschreibung der Abbildung cncpt171.gif

Siehe auch: Oracle AI Database Data Warehousing Guide, um mehr über verschiedene Transportmechanismen zu erfahren

Data Warehouse-Architektur (mit Staging Area und Data Marts)

Sie können Ihre Warehouse-Architektur für verschiedene Gruppen in Ihrer Organisation anpassen. Sie können dieses Ziel erreichen, indem Sie Daten im Warehouse zu Data Marts transportieren, bei denen es sich um unabhängige Datenbanken handelt, die für ein bestimmtes Unternehmen oder Projekt entwickelt wurden. In der Regel enthalten Data Marts viele Summentabellen. In Abbildung 20-5 werden Einkaufs-, Vertriebs- und Bestandsinformationen in unabhängige Data Marts unterteilt. Ein Finanzanalyst kann die Data Marts nach historischen Informationen über Käufe und Verkäufe abfragen.

Abbildung 5: Architektur eines Data Warehouse mit Staging Area und Data Marts

Beschreibung der Abbildung cncpt172.gif

Siehe auch: Oracle AI Database Data Warehousing Guide mit Informationen zu Transformationsmechanismen

Übersicht über Extraktion, Transformation und Laden (ETL)

Der Prozess des Extrahierens von Daten aus Quellsystemen und des Einbringens in das Warehouse wird üblicherweise als ETL bezeichnet: Extrahieren, Transformieren und Laden. ETL bezieht sich auf einen breiten Prozess und nicht auf drei klar definierte Schritte.

In einem typischen Szenario werden Daten aus einem oder mehreren Betriebssystemen extrahiert und dann physisch zum Zielsystem oder einem Zwischensystem zur Verarbeitung transportiert. Abhängig von der Transportmethode können während dieses Prozesses einige Transformationen auftreten. Beispiel: Eine SQL-Anweisung, die direkt über ein Gateway auf ein Remoteziel zugreift, kann zwei Spalten als Teil der SELECT-Anweisung verketten.

Oracle AI Database ist selbst kein ETL-Tool. Oracle AI Database bietet jedoch zahlreiche Funktionen, die von ETL-Tools und benutzerdefinierten ETL-Lösungen verwendet werden können. Zu den von Oracle AI Database bereitgestellten ETL-Funktionen gehören:

Siehe:

Business Intelligence

Business Intelligence ist die Analyse der Informationen einer Organisation, um Geschäftsentscheidungen zu treffen.

Analytische Anwendungen und Business Intelligence werden durch Drilldowns von Hierarchien und Vergleich von Aggregatwerten dominiert. Oracle AI Database bietet verschiedene Technologien zur Unterstützung solcher Vorgänge.

Analytisches SQL

Oracle AI Database hat viele SQL-Vorgänge zur Ausführung von Analysevorgängen eingeführt. Diese Operationen umfassen Ranking, gleitende Durchschnitte, kumulative Summen, Verhältnis-zu-Berichte und Periodenvergleiche.

Beispiel: Oracle AI Database unterstützt die folgenden Formen von analytischem SQL.

Tabelle 5: Analytisches SQL

Typ des analytischen SQL Beschreibung Weitere Infos
SQL für Aggregation Eine Aggregatfunktion, wie COUNT, gibt eine einzelne Ergebniszeile zurück, die auf einer Gruppe von Zeilen basiert. Aggregation ist für Data Warehousing von grundlegender Bedeutung. Um die Aggregationsleistung in einem Warehouse zu verbessern, bietet die Datenbank Erweiterungen für die GROUP BY-Klausel, um Abfragen und Reporting einfacher und schneller zu gestalten. Oracle AI Database Data Warehousing Guide für Informationen zur Aggregation
SQL für die Analyse Eine analytische Funktion wie MAX aggregiert eine Gruppe von Zeilen (als Fenster bezeichnet), um mehrere Zeilen als Ergebnismenge zurückzugeben. Oracle verfügt über erweiterte SQL-Analyseverarbeitungsfunktionen mit einer Reihe von analytischen SQL-Funktionen. Mit diesen analytischen Funktionen können Sie beispielsweise Rankings und Perzentile berechnen und Fenster verschieben. Oracle AI Database Data Warehousing Guide für Informationen zu SQL für Analysen und Berichte
SQL für die Modellierung Mit der Klausel MODEL können Sie ein mehrdimensionales Array aus Abfrageergebnissen erstellen und Regeln auf dieses Array anwenden, um neue Werte zu berechnen. Beispiel: Sie können Daten in einer Vertriebsansicht nach Land partitionieren und für jedes Land eine Modellberechnung durchführen, die durch mehrere Regeln definiert ist. Eine Regel könnte die Verkäufe eines Produkts im Jahr 2008 als Summe der Verkäufe in den Jahren 2006 und 2007 berechnen. Oracle AI Database Data Warehousing Guide für Informationen zur SQL-Modellierung

Siehe auch: Oracle AI Database SQL Language Reference, um mehr über SQL-Funktionen zu erfahren

Analyse-Views

Analyse-Views erweitern den Inhalt von Datasets und vereinfachen die Entwicklung von Business-Intelligence-Anwendungen.

Analytische Views weisen die folgenden Eigenschaften auf:

Siehe auch: Oracle AI Database Data Warehousing Guide für einen Überblick über Analyseansichten

Oracle Advanced Analytics

Die Oracle Advanced Analytics-Option erweitert Oracle AI Database in eine umfassende erweiterte Analyseplattform für Big-Data-Analysen.

Oracle Advanced Analytics bietet prädiktive Analysen, Data Mining, Text-Mining, statistische Analysen, erweiterte numerische Berechnungen und interaktive Grafiken in der Datenbank. Oracle Advanced Analytics umfasst die folgenden Komponenten:

Oracle Data Mining

In Business Intelligence ist Data Mining die Verwendung ausgefeilter mathematischer Algorithmen, um Daten zu segmentieren und die Wahrscheinlichkeit zukünftiger Ereignisse zu bewerten.

Typische Anwendungen des Data Mining sind Call Center, Geldautomaten, E-Business relational Management (ERM) und Geschäftsplanung. Mit Oracle Data Miner können Datenanalysten schnell Daten analysieren, die besten Kunden ansprechen, Betrug bekämpfen und wichtige Korrelationen und Muster finden, die ihren Unternehmen helfen können, besser im Wettbewerb zu bestehen.

Oracle Data Mining bietet Data-Mining-Algorithmen, die als native SQL-Funktionen ausgeführt werden, um datenbankinterne Modellerstellung und Modellbereitstellung mit hoher Performance zu ermöglichen. Oracle Data Mining kann Tabellen, Ansichten, Star-Schemas, Transaktionsdaten und unstrukturierte Daten abbauen.

Oracle Data Mining unterstützt eine PL/SQL-API und SQL-Funktionen für die Modellbewertung. Daher bietet Oracle AI Database eine Infrastruktur für Anwendungsentwickler, mit der Data Mining nahtlos in Datenbankanwendungen integriert werden kann.

Oracle Data Miner, eine SQL Developer-Erweiterung, bietet eine GUI für Oracle Data Mining.

Siehe auch: Oracle Machine Learning for SQL - Konzepte

Oracle Machine Learning for R

R ist eine Open-Source-Sprache und -Umgebung für statistische Berechnungen und Grafiken. Oracle Machine Learning for R macht R bereit für Unternehmen und Big-Data.

Oracle Machine Learning for R wurde für Probleme mit großen Datenmengen entwickelt und integriert R in die Oracle AI Database. Sie können R-Befehle und -Skripte für statistische und grafische Analysen zu Daten ausführen, die in der Oracle AI Database gespeichert sind. Außerdem können Sie R-Skripte entwickeln, verfeinern und bereitstellen, die zur Automatisierung der Datenanalyse die Parallelität und Skalierbarkeit der Datenbank nutzen. Datenanalysten können R-Packages ausführen und R-Skripte für analytische Anwendungen in einem Schritt entwickeln, ohne SQL erlernen zu müssen.

Siehe auch: Oracle Machine Learning for R - Benutzerdokumentation

Überblick über Oracle Information Integration

Wenn sich ein Unternehmen weiterentwickelt, wird es immer wichtiger, Informationen zwischen mehreren Datenbanken und Anwendungen teilen zu können.

Die grundlegenden Ansätze für den Informationsaustausch sind:

Dieser Abschnitt konzentriert sich auf Oracle-Lösungen zum Föderieren und Teilen von Informationen.

Föderierter Zugriff

Die Grundlage des föderierten Zugriffs ist eine verteilte Umgebung, bei der es sich um ein Netzwerk unterschiedlicher Systeme handelt, die nahtlos miteinander kommunizieren.

Jedes System in der Umgebung wird als Knoten bezeichnet. Das System, mit dem ein Benutzer direkt verbunden ist, wird als lokales System bezeichnet. Weitere Systeme, auf die dieser Benutzer zugreift, sind Remote-Systeme.

Eine verteilte Umgebung ermöglicht Anwendungen den Zugriff auf und den Austausch von Daten aus lokalen und Remote-Systemen. Alle Daten können gleichzeitig abgerufen und geändert werden.

Verteiltes SQL

Distributed SQL greift synchron auf Daten zu, die auf mehrere Datenbanken verteilt sind, und aktualisiert sie. Ein verteiltes Datenbanksystem von Oracle kann für Benutzer transparent sein, sodass es als eine einzelne Oracle-Datenbank angezeigt wird.

Verteiltes SQL umfasst verteilte Abfragen und verteilte Transaktionen. Die verteilte Datenbankarchitektur von Oracle bietet Abfrage- und Transaktionstransparenz. Beispiel: Standard-DML-Anweisungen funktionieren genauso wie in einer nicht verteilten Datenbankumgebung. Darüber hinaus steuern Anwendungen Transaktionen mit den SQL-Standardanweisungen COMMIT, SAVEPOINT und ROLLBACK.

Siehe:

Datenbanklinks

Ein Datenbanklink ist eine Verbindung zwischen zwei physischen Datenbanken, über die ein Client als eine logische Datenbank auf sie zugreifen kann.

Oracle AI Database verwendet Datenbanklinks, um Benutzern aus einer Datenbank den Zugriff auf Objekte in einer Remotedatenbank zu ermöglichen. Ein lokaler Benutzer kann auf einen Link zu einer Remotedatenbank zugreifen, ohne ein Benutzer in der Remotedatenbank zu sein. Abbildung 20-6 zeigt ein Beispiel für den Benutzer hr, der auf die Tabelle employees in der Remotedatenbank mit dem globalen Namen hq.example.com zugreift. Das Synonym employees blendet die Identität und den Speicherort des Remote-Schemaobjekts aus.

Abbildung 6: Datenbanklink

Beschreibung der Abbildung cncpt243.gif

Siehe auch: Oracle AI Database Administrator's Guide, um mehr über Datenbanklinks zu erfahren

Informationen freigeben

Das Herzstück jeder Integration ist die gemeinsame Nutzung von Daten zwischen Anwendungen im Unternehmen.

Oracle GoldenGate

Oracle GoldenGate ist ein asynchrones, logbasiertes Echtzeit-Datenreplikationsprodukt.

Oracle GoldenGate verschiebt große Mengen an Transaktionsdaten in Echtzeit in heterogene Datenbank-, Hardware- und Betriebssystemumgebungen mit minimalen Auswirkungen. Es optimiert den Informationszugriff und die Verfügbarkeit in Echtzeit, da es:

Eine typische Umgebung umfasst einen Erfassungs-, Pumpen- und Lieferprozess. Jeder Prozess kann auf den meisten gängigen Betriebssystemen und Datenbanken ausgeführt werden, einschließlich Oracle-Datenbanken und Nicht-Oracle-Datenbanken. Einige oder alle Daten können repliziert werden. Die Daten in einem dieser Prozesse können sowohl für heterogene Umgebungen als auch für verschiedene Datenbankschemas bearbeitet werden.

Oracle GoldenGate unterstützt Multimaster-Replikation, Hub-and-Spoke-Deployment, Datenkonsolidierung und Datentransformation. So können Sie mit Oracle GoldenGate sicherstellen, dass Ihre kritischen Systeme 24/7 betriebsbereit sind und die zugehörigen Daten im gesamten Unternehmen verteilt werden, um die Entscheidungsfindung zu optimieren.

Siehe:

Oracle AI Database Transactional Event Queues und Advanced Queuing (AQ)

Oracle AI Database Transactional Event Queues and Advanced Queuing (AQ) ist ein robustes und funktionsreiches Message Queuing-System, das in Oracle AI Database integriert ist.

Wenn eine Organisation über unterschiedliche Systeme verfügt, die miteinander kommunizieren müssen, kann eine Messaging-Umgebung eine standardmäßige, zuverlässige Möglichkeit bieten, kritische Informationen zwischen diesen Systemen zu übertragen.

Ein Beispielanwendungsfall ist ein Unternehmen, das Aufträge in einer Oracle-Datenbank am Hauptsitz eingibt. Bei der Eingabe eines Auftrags werden die Auftrags-ID und das Auftragsdatum über AQ an eine Datenbank in einem Lager gesendet. Anhand dieser Nachrichten sollen die Lagermitarbeiter über die Aufträge informiert werden, damit sie die Aufträge bearbeiten und versenden können.

Nachrichtenwarteschlange und -dequeuing

Oracle AI Database Transactional Event Queues und Advanced Queuing speichern Benutzernachrichten in abstrakten Speichereinheiten, die als Queues bezeichnet werden.

Enqueuing ist der Prozess, bei dem Producer Nachrichten in Queues platzieren. Dequeuing ist der Prozess, bei dem Consumer Nachrichten aus Queues abrufen.

Durch die Unterstützung von expliziter Dequeue können Entwickler XStream und Oracle GoldenGate verwenden, um Nachrichten zuverlässig auszutauschen. Sie können Anwendungen auch über Änderungen benachrichtigen, indem sie die Change Capture- und Propagierungsfeatures von Oracle GoldenGate nutzen. Abbildung 20-7 zeigt eine Beispielanwendung, die Nachrichten explizit über Advanced Queuing in die Queue stellt und aus der Queue entfernt, sodass sie Informationen mit Partnern teilen können, die verschiedene Messaging-Systeme verwenden. Nachdem Nachrichten in die Queue gestellt wurden, können sie transformiert und propagiert werden, bevor sie in die Partneranwendung aus der Queue entfernt werden.

Abbildung 7: Oracle Message Queuing

Beschreibung der Abbildung cncpt310.gif

Oracle AI Database Transactional Event Queues und Advanced Queuing - Erweiterte Features

Oracle AI Database Transactional Event Queues und Advanced Queuing (AQ) unterstützen alle Standardfeatures von Message Queuing-Systemen.

Zu den Features gehören:

Siehe auch: Oracle AI Database Transactional Event Queues and Advanced Queuing - Benutzerdokumentation


Fußnotenlegende

Fußnote 1:

Building the Data Warehouse, John Wiley and Sons, 1996.