Unified Query Offload mit Cloud-Links verwenden
Wenn Sie schwere Lese-Workloads mit Cloud-Links verwenden, können Sie einen Elastic Pool Leader oder Member als Cloud-Linkprovider konfigurieren, bei dem der Provider die Abfrageauslagerung ProxySQL ermöglicht, um Abfragen (Lesevorgänge) auf eine beliebige Anzahl aktualisierbarer Klone auszulagern.
Unified Query Offload mit Cloud-Links
Die einheitliche Abfrageauslagerung bietet Konfigurations- und Performancevorteile, da mindestens ein aktualisierbarer Klon Abfragen für einen Elastic Pool Leader oder ein Element verarbeiten kann, das die Abfrageauslagerung der Elastic Pool-Funktion mit der Auslagerung des Cloud Links-Ziels kombiniert.
Mit der einheitlichen Abfrageauslagerung können Sie aktualisierbare Klone hinzufügen, um den steigenden Abfrage- (Lese-)Bedarf aus der Verwendung von Cloud-Links auf Cloud-Link-Nutzern gerecht zu werden. Durch das Auslagern solcher Cloud-Links-Abfragen von einem einzigen Producer kann Ihre Anwendung horizontal skaliert werden. Dort können Sie aktualisierbare Klone hinzufügen, um die allgemeine Systemleistung aufrechtzuerhalten. Mit dieser Konfiguration können Sie Ressourcen nach Bedarf anpassen, um das Volumen Ihrer Abfrageanforderungen zu erfüllen.
Ein Vorteil der Verwendung einer einheitlichen Abfrageauslagerung besteht darin, dass Sie mit dieser Funktion das Ziel für die Auslagerung von Cloud-Links einmal einrichten und Abfragen automatisch ohne Konfigurationsänderungen an eine beliebige Anzahl aktualisierbarer Klone weiterleiten lassen können. Wenn Sie die Abfrageauslagerung von schreibgeschützten ProxySQL aktivieren und diese mit der Auslagerung von Cloud-Links-Zielen kombinieren, können Sie aktualisierbare Klone hinzufügen oder entfernen und die Liste der aktualisierbaren Klone, an die Abfragen gesendet werden sollen, wird automatisch aktualisiert, ohne dass eine manuelle Konfiguration erforderlich ist. Wenn mehr aktualisierbare Klone hinzugefügt werden, passt sich die Auslagerung einheitlicher Abfragen dynamisch an, um beim Hinzufügen neue Ressourcen zu verwenden. Wenn Sie Cloud-Links verwenden und Auslagerungsziele ohne einheitliche Abfrageauslagerung konfigurieren, müssen Sie die Liste der aktualisierbaren Klone manuell konfigurieren, an die Abfragen gesendet werden sollen, indem Sie Cloud-Links-Zielauslagerung allein verwenden. Die Auslagerung einheitlicher Abfragen gibt ein einzelnes Auslagerungsziel für Cloud-Links an, das ein elastischer Poolleiter oder -mitglied ist. Das Ziel verwendet ProxySQL, um Abfragen auf eine beliebige Anzahl aktualisierbarer Klone auszulagern.
Die folgende Abbildung zeigt eine einheitliche Abfrageauslagerung mit den folgenden Elementen:
-
Drei Cloud-Links-Consumer: Instanz 1, Instanz 2 und Instanz 3
-
Ein Cloud Links-Producer, der auch ein Elastic Pool Leader ist (diese Instanz kann auch ein Elastic Pool Member sein). Für diese Instanz ist die Abfrageauslagerung aktiviert.
-
Drei aktualisierbare Klone des elastischen Pools zur Abfrageauslagerung

Beschreibung der Abbildung adb_cloud_links_proxy_sql.png
Wie bei der Abfrageauslagerung sind die Daten auf den aktualisierbaren Klonen mit einer einheitlichen Abfrage auf dem neuesten Stand, basierend auf der letzten Aktualisierungszeit für jeden aktualisierbaren Klon. Wenn Sie also eine einheitliche Abfrageauslagerung verwenden, müssen Sie alle Vorgänge für Daten ausführen, die DDL, DML oder PL/SQL in den Elastic Pool Leader oder Member des Cloud Links-Providers einbeziehen. Nachdem ein aktualisierbarer Klon aktualisiert wurde, werden die Änderungen der Instanz, für die schreibgeschützte Auslagerung aktiviert ist, auf dem aktualisierbaren Klon wiedergegeben.
Weitere Informationen finden Sie unter Aktualisierbare Klone mit einer autonomen KI-Datenbank verwenden.
Features für Unified Query Offload
Die einheitliche Abfrageauslagerung bietet alle Funktionen der Abfrageauslagerung ProxySQL, einschließlich:
-
Dynamische Hinzufügung: Aktualisierbare Klone können jederzeit als Mitglieder des elastischen Pools hinzugefügt werden. Die Abfrageauslagerung wird dynamisch angepasst, um neue Elemente zu verwenden.
-
Dynamische Entfernung: Aktualisierbare Klone können jederzeit als Mitglieder des elastischen Pools entfernt werden. Die Abfrageauslagerung wird dynamisch angepasst, sodass keine Abfragen mehr an einen aktualisierbaren Klon ausgelagert werden, der aus dem Elastic Pool entfernt wurde.
-
Alle anderen ProxySQL-Features. Weitere Informationen finden Sie unter Info zum Ausladen von Abfragen.
Unified Query Offload mit Cloud-Links aktivieren
Beschreibt, wie Sie eine einheitliche Abfrageauslagerung mit Cloud-Links für einen Elastic Pool Leader oder für ein Elastic Pool Member aktivieren.
Die folgenden Anforderungen gelten für die Aktivierung einer einheitlichen Abfrageauslagerung und entsprechen denen für die Aktivierung der Proxy SQL-Abfrageauslagerung:
-
Sie können eine einheitliche Abfrageauslagerung für einen Elastic Pool Leader oder für ein Elastic Pool Member ohne aktualisierbare Klone aktivieren. Nachdem Sie die Auslagerung einheitlicher Abfragen aktiviert haben, können Sie aktualisierbare Klone hinzufügen, und die Auslagerung einheitlicher Abfragen wird dynamisch angepasst, um die aktualisierbaren Klone zu verwenden.
-
Ein aktualisierbarer Klon, der zur Verwendung mit der Auslagerung einheitlicher Abfragen geeignet ist, muss:
-
Verwenden Sie den Elastic Pool Leader als Quelldatenbank und befinden Sie sich in derselben Region wie der Elastic Pool Leader.
oder
Verwenden Sie ein Elastic Pool Member als Quelldatenbank, und befinden Sie sich in derselben Region wie das Elastic Pool Member.
-
Seien Sie ein elastisches Poolmitglied.
-
Führen Sie die folgenden Schritte aus, um die Auslagerung einer einheitlichen Abfrage zu aktivieren:
-
Bestimmen Sie den Producer von Cloudlinks, und aktivieren Sie auf dieser Instanz der autonomen KI-Datenbank die Abfrageauslagerung ProxySQL.
Der Produzent von Cloud-Links muss entweder ein elastisches Poolmitglied oder ein Leiter eines elastischen Pools sein.
Ausführliche Schritte zum Aktivieren der ProxySQL-Abfrageauslagerung finden Sie unter Abfrageauslagerung aktivieren.
-
Auf den Cloud-Links registrieren Producer einen oder mehrere Datensätze oder aktualisieren die Registrierung für einen oder mehrere Datensätze.
Der Produzent von Cloud-Links muss entweder ein elastisches Poolmitglied oder ein Leiter eines elastischen Pools sein.
-
Datensätze registrieren
Ausführliche Schritte zum Registrieren eines Datasets finden Sie unter Dataset registrieren oder Registrierung aufheben.
-
Aktualisieren Sie die Registrierung für ein Dataset.
Ausführliche Schritte zum Aktualisieren der Registrierung für ein Dataset finden Sie unter Dataset-Registrierungsattribute aktualisieren.
Wenn Sie ein Dataset registrieren oder aktualisieren, muss der Wert des Parameters
offload_targetseiner der folgenden Werte sein, um eine einheitliche Abfrageauslagerung zu aktivieren:-
NULL: Wenn Sie ein Dataset registrieren oder ein Dataset aktualisieren und den Parameteroffload_targetsalsNULLangeben, wird dadurch eine einheitliche Abfrageauslagerung aktiviert. -
Kein Wert: Wenn Sie ein Dataset registrieren oder ein Dataset aktualisieren und den Parameter
offload_targetsnicht einschließen, entspricht dies der Einstellung des Wertes aufNULLund aktiviert eine einheitliche Abfrageauslagerung (der Standardwert füroffload_targetsistNULL). -
Sie geben Werte mit
offload_targetsan. Es wurde jedoch keine Instanz-OCID der autonomen KI-Datenbank des Verbrauchers angegeben, die mit einer eingehenden Anforderung übereinstimmt (und das SchlüsselwortANYist nicht angegeben). In diesem Fall leitet das System die Abfrage an einen der aktualisierbaren Klone des Producers weiter (Unified Query Offload ist aktiviert).
Es gibt zwei Fälle, in denen keine einheitliche Abfrageauslagerung verwendet wird und die Auslagerung des Cloud-Links-Ziels gilt:
-
Wenn Sie ein Dataset registrieren oder aktualisieren und den Parameter
offload_targetseinschließen und eine angegebene Instanz-OCID für einen Consumer vorhanden ist, die mit einer eingehenden Anforderung übereinstimmt, wird die Ziel-Offload von Cloud-Links verwendet. In diesem Fall verwendet das System den aktualisierbaren Klon, der mit der übereinstimmenden Zuordnung angegeben wurde (dieses Verhalten ist dasselbe wie für Auslagerungsziele mit Cloud-Links beschrieben). -
Wenn der vorherige Fall zutrifft oder Sie ein Dataset registrieren oder aktualisieren und den Parameter
offload_targetseinschließen und Sie das SchlüsselwortANYangeben, wird keine einheitliche Abfrageauslagerung verwendet. In diesem Fall verwendet das System den aktualisierbaren Klon, der mit demANY-Mapping angegeben wurde (dieses Verhalten ist dasselbe wie für Auslagerungsziele mit Cloud-Links beschrieben).
Weitere Informationen finden Sie unter Dataset mit Offload-Zielen für Dataset-Zugriff registrieren und Prozedur REGISTER.
-
Nachdem Sie diese Schritte ausgeführt und ein Dataset beim Producer registriert haben und ProxySQL aktiviert ist, ist jeder aktualisierbare Klon der autonomen KI-Datenbankinstanz des Producers für die Zielauslagerung berechtigt.
Sie können den Status von Cloud-Links überwachen, um zu prüfen, ob ein Dataset ProxySQL mit den Cloud-Links-Ansichten aktiviert ist. Weitere Informationen finden Sie unter Informationen zu Cloud-Links überwachen und anzeigen.
Unified Query Offload deaktivieren
Beschreibt, wie Sie die Auslagerung einheitlicher Abfragen deaktivieren.
Es gibt verschiedene Möglichkeiten, die Auslagerung einheitlicher Abfragen zu deaktivieren:
-
Deaktivieren Sie auf der Producer-Instanz die Abfrageauslagerung mit Schreibschutz.
Beispiel:
EXEC DBMS_PROXY_SQL.DISABLE_READ_ONLY_OFFLOAD;Weitere Informationen finden Sie unter Abfrageauslagerung deaktivieren und DISABLE_READ_ONLY_OFFLOAD-Prozedur.
-
Heben Sie in der Producer-Instanz die Registrierung der Cloud-Links auf.
Weitere Informationen finden Sie unter Dataset registrieren oder Registrierung aufheben und Prozedur UNREGISTER.
-
Aktualisieren Sie in der Producer-Instanz die Registrierung der Cloud-Links, und setzen Sie den Parameterwert
offload_targetsauf einen Wert, der nichtNULList. Wenn Sie das Dataset registrieren oder aktualisieren und den Parameteroffload_targetsmit einem anderen Wert alsNULLangeben, wird dadurch die Auslagerung einer einheitlichen Abfrage deaktiviert.Weitere Informationen finden Sie unter Attribute für Dataset-Registrierung aktualisieren und Prozedur UPDATE_REGISTRATION.