True Cache

Oracle True Cache ist ein konsistenter und automatisch verwalteter In-Memory-SQL-Cache für Oracle Database. True Cache verbessert die Antwortzeit der Anwendung und reduziert gleichzeitig die Belastung der Datenbank. Automatische Cache-Verwaltung und Konsistenz vereinfachen die Anwendungsentwicklung und reduzieren den Entwicklungsaufwand sowie auch die Kosten.

Gründe für Oracle True Cache

Konsistente Daten in Echtzeit

Oracle True Cache speichert automatisch die Daten im Cache, auf die am häufigsten zugegriffen wird, sodass der Cache mit der Datenbank konsistent bleibt.

Einfachere Cache-Verwaltung

Der Cache-Inhalt wird beim Zugriff automatisch geladen und aktualisiert, wenn sich die Daten ändern. Oracle True Cache unterstützt alle Oracle Database APIs und Datentypen, einschließlich relationaler, JSON-, Text-, Raum-, Graph- und Vektordatentypen. Auf die Daten im True Cache kann in einem Zeilen- oder Spaltenformat unter Verwendung der gleichen Oracle Database-APIs zugegriffen werden.

Bessere Skalierbarkeit

Oracle True Cache verbessert die Skalierbarkeit und die Antwortzeit der Anwendung, indem es Abfragen auslagert und die Anzahl der Anfragen an die Datenbank reduziert.

Kostengünstige generative KI

Retrieval Augmented Generation (RAG) beinhaltet in der Regel Backend-Aufrufe zu großen Sprachmodellen (LLMs). Die Zwischenspeicherung dieser Ergebnisse senkt die mit der LLM-Nutzung verbundenen Kosten.

Verwendung von High-Performance-Flash für erweiterten Cache

Mit True Cache können Daten auf dem Laufwerk gespeichert werden, wenn sie nicht in den Speicher der True Cache Compute-Instanz passen. Dadurch kann der Cache mehr Daten aufnehmen, als in den Speicher der Compute-Instanz passen, wodurch sich die Gesamtgröße des Cache erhöht.

High Availability und Multithreading

True Cache definiert die Cache-Verwaltung mit extremer Performance neu, indem es Multithreading und die Nutzung aller Kerne/vCPUs auf einem Host nutzt. Es sorgt für eine native High Availability, die die Resilienz der Daten und die kontinuierliche Verfügbarkeit bei Knotenausfällen bzw. Netzwerkunterbrechungen garantiert.

Funktionsweise von True Cache

True Cache ist ein voll funktionsfähiges, schreibgeschütztes Replikat der primären Datenbank, das größtenteils ohne Datenträger auskommt.

Moderne Anwendungen erfordern oft eine hohe Anzahl von Verbindungen und einen schnellen Zugriff auf die Daten mit geringer Latenzzeit. Ein beliebter Ansatz besteht darin, Caches vor der Datenbank zu platzieren, da Anwendungen in der Regel viel mehr Lesevorgänge als Aktualisierungen durchführen und aus dem Cache lesen können, ohne die Datenbankleistung zu beeinträchtigen. Ein Reservierungssystem einer Fluggesellschaft liest beispielsweise häufig Daten aus, wenn die Kunden sich für einen Flug entscheiden. Es ist in Ordnung, wenn die Daten im Vergleich zu denen in der Datenbank nicht die aktuellsten sind, da die Anwendung nur auf die aktuellsten Daten zugreifen muss, wenn jemand einen Flug reserviert.

Im Gegensatz zu herkömmlichen Caches behält True Cache automatisch die Daten im Cache, auf die am häufigsten zugegriffen wird, und hält den Cache konsistent mit der primären Datenbank, anderen Objekten im selben Cache und anderen Caches. Es speichert alle Oracle Database-Objekte und -Datentypen, einschließlich JSON.

Da True Cache die Sicherheitsrichtlinien von Oracle Database implementiert, können Sie den Zugriff auf den Cache kontrollieren. Auf diese Weise können Sie sensible Daten, wie z. B. private persönliche Informationen, zwischenspeichern, die Sie normalerweise nicht zwischenspeichern würden.

Eine Anwendung entscheidet, ob sie Daten aus dem True Cache oder der primären Datenbank abfragt. So kann die Anwendung beispielsweise zwei Verbindungen aufrechterhalten: eine schreibgeschützte Verbindung zu True Cache und eine Lese-/Schreibverbindung zur Datenbank. Alternativ kann eine Java-Anwendung eine Verbindung verwenden und dynamisch zwischen True Cache und der Datenbank wechseln, indem das schreibgeschützte Attribut festgelegt wird.

Bei True Cache sind die Daten innerhalb einer einzelnen Abfrage immer konsistent. Und das Ganze ist noch wichtiger, wenn Joins über mehrere Zeilen hinweg vorhanden sind, da dies auf Anwendungsebene zu falschen Ergebnissen führen kann.

Diagramm zu True Cache

Funktionsweise von True Cache – Diagrammbeschreibung

  1. 1. Eine Anwendung leitet Abfragen an True Cache entweder manuell oder halbautomatisch über den Oracle JDBC-Treiber.
  2. 2. Eine True Cache-Instanz erfüllt Abfragen, indem sie Daten verwendet, die sie für die von ihr verwalteten Datenbankanwendungsservices zwischenspeichert.
  3. 3. Wenn ein Cache-Fehler auftritt, holt eine True Cache-Instanz Blöcke von der primären Datenbankinstanz.
  4. 4. Bei der Erstinitialisierung einer True Cache-Instanz werden SQL-Abfragen zum Aufwärmen des Cache durchgeführt, was dazu führt, dass die umliegenden Blöcke in großen Stücken abgerufen werden.
  5. Nachdem ein Block zwischengespeichert wurde, wird er automatisch durch Redo Apply aus einer primären Datenbank aktualisiert, normalerweise mit einer Verzögerung von weniger als einer Sekunde. Dies ähnelt dem Vorgang bei einem Redo Apply in Echtzeit in einer Oracle Data Guard-Konfiguration. Die Redo-Blöcke der primären Datenbank werden vom Log Writer-(LGWR-)Prozess auf der primären Datenbankinstanz im ASYNC-Modus kontinuierlich an die True Cache-Standby-Redo-Log-Dateien gesendet.
  6. 5. Eine Abfrage an den True Cache gibt nur Daten zurück, die so aktuell sind wie die Verzögerung bei der Redo-Anwendung.
  7. 6. Jede Abfrage an eine True Cache-Instanz liefert stets konsistente Daten.
  8. 7. True Cache verbessert die Skalierbarkeit durch Auslagerung von Abfragen und reduziert die Anzahl der Anfragen an die primäre Datenbank.

Anwendungsfälle für True Cache

  • Generative KI

    Optimieren Sie den KI-Entwicklungsprozess durch Retrieval Augmented Generation (RAG) und LLM-Caching.

  • E-Commerce-Anwendung

    Kunden rufen Daten für Online-Produktkataloge ab, indem sie auf Oracle True Cache anstatt auf die Backend-Datenbank zugreifen. Dieser Prozess verbessert die Antwortzeiten und sorgt für eine bessere Customer Experience in Spitzenzeiten wie Black Friday, Cyber Monday und Prime-Time-Fernsehveranstaltungen.

  • Datensouveränität

    Oracle True Cache verlagert Lesevorgänge auf Instanzen, die näher am Endbenutzer oder an souveränen Regionen bereitgestellt werden, was die Antwortzeiten von Analysen beschleunigt und die Datensouveränität aufrechterhält.

  • Online-Spiele

    Oracle True Cache reduziert die Latenz und verbessert das immersive Spielerlebnis, indem Echtzeit-Spielerdaten gespeichert und Features wie Leaderboards und Benutzerrankings unterstützt werden.

  • Benutzerauthentifizierung

    Oracle True Cache verarbeitet täglich Millionen von Aktualisierungen von Benutzerprofilen und validiert den Anwendungsbenutzer in Echtzeit. Außerdem unterstützt es mehrere Datenmodelle, um verschiedene Arten von Elementen nativ zu speichern und Komplexität sowie auch Kosten zu reduzieren.

  • Echtzeitanalysen

    Oracle True Cache kann zum Zwischenspeichern von Daten und zum Auslagern von Datenbank-I/O verwendet werden, um den Betriebsaufwand zu reduzieren, die Kosten zu senken und die Performance sowohl der Datenbank als auch der Anwendung zu verbessern.

  • Edge-Computing

    Oracle True Cache kann in Regionen bereitgestellt werden, die näher bei Benutzern oder Geräten liegen. Dadurch wird der Zeitaufwand für das Erfassen, Speichern und Abrufen von Daten aus Datenbanken reduziert.

19. September 2023

Performance steigern: Oracle True Cache für globale Verfügbarkeit

Pankaj Chandiramani, Sr Director of Product Management

Einführung von Oracle True Cache: In-Memory-, konsistenter und automatisch verwalteter SQL- und Schlüsselwert-(Objekt-)Cache.

Ausgewählte Datenbank-Blogs

Alle anzeigen

Erste Schritte mit Oracle True Cache


Oracle Cloud Free Tier testen

Erstellen, Testen und Bereitstellen von Anwendungen auf der Oracle Cloud Infrastructure-Plattform.


Kontakt

Möchten Sie mehr erfahren? Kontaktieren Sie einen unserer branchenführenden Experten.