Hochverfügbarkeit und Oracle-Umgebungen - Teil 3

05 Juni 2011

Im zweiten Teil unseres Dossiers Hochverfügbarkeit und Oracle-Umgebungen haben wir die Bedeutung der Verfügbarkeit und die Kosten von Produktionsausfällen untersucht. Dies ist der dritte Teil unseres Dossiers, in dem wir uns mit den Ursachen von Produktionsausfällen beschäftigen.

Geplante und ungeplante Stillstände

Eine der Herausforderungen bei der Konzeption einer Hochverfügbarkeitslösung besteht darin, alle möglichen Ursachen für Produktionsausfälle zu untersuchen und zu behandeln. Es ist wichtig, sowohl geplante als auch ungeplante Ausfallzeiten zu untersuchen. Geplante Produktionsausfälle können genauso störend sein wie ungeplante, insbesondere bei internationalen Unternehmen mit weltweit verteilten Nutzern.

Ursachen für ungeplante Aufenthalte

  1. Standortausfall: Er kann die gesamte Verarbeitung in einem Rechenzentrum oder eine Teilmenge der in diesem Rechenzentrum unterstützten Anwendungen beeinträchtigen...
    • Stromausfall am gesamten Standort.
    • Naturkatastrophe, die den Computerstandort außer Betrieb setzt.
    • Terroristischer oder böswilliger Angriff auf die Anwendungen oder den Standort
  2. Cluster-Ausfall: Die gesamten Cluster, der eine Oracle RAC-Datenbank beherbergt, ist nicht verfügbar oder ausgefallen.
    • Der letzte überlebende Knoten eines Oracle RAC-Clusters fährt herunter und es ist nicht möglich, ihn neu zu starten.
    • Beide redundanten INTERCONNECT-Verbindungen sind unbrauchbar oder die gesamten Cluster ist unbrauchbar.
    • Eine Datenbankkorruption ist so schwerwiegend, dass eine Fortführung auf dem aktuellen Oracle-Server nicht möglich ist.
    • Fehler beim Zugriff auf Festplatten
  3. Computerausfall:  Wenn das System, auf dem die Datenbank läuft, nicht mehr verfügbar ist, weil es ausgefallen oder nicht mehr erreichbar ist.
    • Hardware-Ausfall des Datenbankservers.
    • Ausfall des Betriebssystems
    • Ausfall der Oracle-Instanz
    • Ausfall der Netzwerkschnittstelle
  4. Ausfall des Datenspeichers:  Wenn auf die Speicherelemente der gesamten Datenbank oder eines Teils davon nicht mehr zugegriffen werden kann.
    • Ausfall eines Datenträgers
    • Ausfall des Festplatten-Controllers
    • Ausfall des SAN-Arrays
  5. Datenkorruption: Ein korrupter Block ist ein Block, der so verändert wurde, dass er sich von dem unterscheidet, was Oracle zu finden erwartet.
    Es gibt logische und physische Korruption. Man kann auch von blockinterner und blockübergreifender Korruption sprechen.
    Ein Ausfall aufgrund von Datenkorruption tritt auf, wenn Hardware, Software oder eine Netzwerkkomponente dazu führt, dass Daten beim Lesen oder Schreiben korrumpiert werden. Die Auswirkungen auf die Dienstgüte nach einer Datenkorruption können unterschiedlich sein, mit möglicherweise geringen Auswirkungen im Falle eines oder mehrerer korrupter Blöcke in der Datenbank oder einem Blockieren der Datenbank im Falle größerer Korruptionen.
    Hier sind einige Dinge, die zu einer Korruption führen können:
    • Fehler im Betriebssystem oder im Festplattentreiber.
    • Fehlerhafter Busadapter
    • Fehler in einem Festplattencontroller
    • Fehler im Disk Volume Manager, der einen Lese- oder Schreibfehler der Disk verursacht.
    • Software-Fehler
  6. Menschliches Versagen: Ein Benutzer hat unbeabsichtigt Daten in einer Datenbank verändert oder gelöscht oder jemand hat kriminell Änderungen vorgenommen; je nach Art des Fehlers sind die Folgen mehr oder weniger schwerwiegend.
    • Löschen von Datendateien, die zu einer Datenbank gehören
    • Löschen von Objekten in einer Datenbank (Tabellen usw.).
    • Unbeabsichtigtes Ändern von Daten
    • Betrügerische Änderung von Daten
  7. Fehlende Schriftzüge: Ein fehlender Schriftzug ist eine weitere Form der Datenkorruption, aber es ist viel schwieriger, ihn schnell zu entdecken und zu reparieren. Ein verlegter oder fehlender Datenblock tritt auf, wenn:
    • Im Falle eines fehlenden Schreibvorgangs (lost write) hat das I/O-Subsystem das Schreiben eines Blocks freigegeben, obwohl er nicht auf die Platte geschrieben wurde; daher wird beim nächsten Lesen dieses Blocks eine alte Version des Blocks zurückgegeben, was eine Kaskade von Fehlern in der Verarbeitung und in der Datenbank zur Folge hat.
    • Bei einem verirrten Schreibvorgang (stray write) wird zwar geschrieben, aber an einer falschen Stelle; daher wird beim nächsten Lesen dieses Blocks eine alte Version des Blocks zurückgegeben, was zu einer Fehlerkaskade in der Verarbeitung und in der Datenbank führt.
    • Im Fall einer Oracle-RAC-Datenbank gibt das Lesen eines Blocks auf einem Knoten veraltete Daten zurück, wenn ein anderer Knoten diesen Block gerade auf die Festplatte geschrieben hat (lost write). Dies kann passieren, wenn NFS ohne die Option „noac“ verwendet wird.

  8. Blockierung oder Verlangsamung: Eine Blockierung oder Verlangsamung tritt auf, wenn die Datenbank oder die Anwendung aufgrund eines Ressourcenkonflikts oder einer Sperre nicht in der Lage ist, Transaktionen zu verarbeiten. Die Wahrnehmung eines Blocks kann durch einen Mangel an Systemressourcen verursacht werden.
    • Deadlocks der Anwendung oder der Datenbank.
    • Prozesse, die „außer Kontrolle“ sind und Systemressourcen verbrauchen.
    • Massiver „Sturm“ von Systemverbindungen oder -fehlern.

    • Situation mit Spitzenbelastungen von Anwendungen mit fehlenden System- oder Datenbankressourcen.

    • Platzmangel am Zielort der ARCHIVE LOGS-Dateien oder am FRA-Speicherplatz (Flash Recovery Area)

Ursachen für geplante Stillstände

  1. Aktualisierung der Systemsoftware oder Datenbank: Eine geplante Abschaltung erfolgt entweder regelmäßig (für Wartungsaufgaben) oder gelegentlich (für Aufgaben zur Weiterentwicklung der Systemsoftware oder Datenbanken oder der Infrastruktur). Die Dauer der Abschaltung hängt von vielen Faktoren ab. Hier einige Beispiele:
    • Hinzufügen oder Entfernen eines Prozessors auf einem SMP-Server.
    • Hinzufügen oder Entfernen von Knoten zu einem Cluster.
    • Hinzufügen oder Entfernen von Festplatten oder SAN-Arrays.
    • Konfigurationseinstellungen ändern
    • Den Server oder das Betriebssystem aktualisieren oder patchen.
    • Aktualisieren oder Patchen der Oracle-Software.
    • Aktualisieren oder patchen Sie die Anwendungssoftware.
    • Migrieren der verwendeten Hardwareplattform
    • Verschieben der Datenbank
    • Von 32 auf 64 Bit wechseln.
    • Auf eine Cluster-Architektur umsteigen.
    • Auf einen neuen Speicher migrieren

  2. Änderung an den Daten: Dies ist der Fall, wenn die logische Struktur oder die physische Organisation von Oracle-Datenbankobjekten geändert wird. Diese Änderungen haben oft das Ziel, die Leistung oder die Handhabbarkeit zu verbessern. Hier einige Beispiele:
    • Änderung an der Tabellendefinition
    • Implementierung der Partitionierung von Tabellen
    • Erstellung oder Rekonstruktion von Indizes
  3. Änderungen an den Anwendungen: Diese Änderungen an den Anwendungen können einerseits Änderungen an den Daten und dem Datenbankschema und andererseits Änderungen an den Programmen umfassen.

Oracle bietet verschiedene Lösungen an, um sowohl geplante als auch ungeplante Stillstände zu vermeiden und um mit den verschiedenen möglichen Ausfällen umgehen zu können. Auf diese Lösungen wird in zukünftigen Artikeln näher eingegangen.

Unsere Experten beantworten Ihre Fragen

Sie haben Fragen zu einem der Artikel? Sie brauchen Beratung, um die richtige Lösung für Ihre ICT-Probleme zu finden?

Weitere Artikel aus der Kategorie Data & AI

Föderierte Governance: Eine zentrale Säule für den Erfolg von Data Mesh

Erfahren Sie, warum föderierte Governance eine entscheidende organisatorische Säule in einer Data-Mesh-Architektur ist. Ein strategisches Thema für datengetriebene Unternehmen.

Artikel lesen

Veröffentlicht am

12 Dezember 2023

Top 10 Datenbanken 2020: Beliebtheitsranking

Erkunden Sie das Ranking der 10 beliebtesten Datenbanken im Jahr 2020 laut DB-Engines, einschließlich Oracle, MySQL und Microsoft SQL Server.

Artikel lesen

Veröffentlicht am

14 November 2023

Haben Sie weitere Fragen?

Kontaktieren Sie uns kostenlos unter 8002 4000 oder +352 2424 8004 von Montag bis Freitag von 8:00 bis 18:00 Uhr.

Was spricht für DEEP?

Entdecken Sie DEEP, Ihren einzigartigen Partner für Ihre digitale Transformation.