SODA-Collection-Daten mit Oracle Data Pump Version 19.6 oder höher importieren
Zeigt die Schritte zum Importieren von SODA-Collections in eine autonome KI-Datenbank mit Oracle Data Pump an.
Sie können SODA-Collections mit Oracle Data Pump-Utilitys ab Version 19.6 exportieren und importieren. Oracle empfiehlt, die neueste Oracle Data Pump-Version für das Importieren von Daten aus Data Pump-Dateien in die Datenbank zu verwenden.
Laden Sie die neueste Version von Oracle Instant Client, die Oracle Data Pump enthält, für Ihre Plattform von Oracle Instant Client-Downloads herunter. Die Installationsschritte, die nach dem Herunterladen von Oracle Instant Client erforderlich sind, finden Sie in den Installationsanweisungen auf der Downloadseite für die Plattforminstallation.
Wenn sich die Quelldateien in der Oracle Cloud Infrastructure Object Storage befinden, können Sie native URIs, Swift-URIs oder vorab authentifizierte URIs von Oracle Cloud Infrastructure in Oracle Data Pump verwenden. Weitere Informationen zu diesen Datei-URI-Formaten finden Sie unter DBMS_CLOUD Package File URI Formats.
Wenn Sie eine im Voraus authentifizierte Oracle Cloud Infrastructure-URI verwenden, müssen Sie weiterhin einen Parameter credential angeben. Zugangsdaten für eine vorab authentifizierte URL werden jedoch ignoriert (und die angegebenen Zugangsdaten müssen nicht gültig sein). Informationen zu vorab authentifizierten Oracle Cloud Infrastructure-URIs finden Sie unter URI-Formate für DBMS_CLOUD-Packagedateien.
In diesem Beispiel wird gezeigt, wie Sie die SODA-Collection-Metadaten erstellen und eine SODA-Collection mit Data Pump importieren.
-
Exportieren Sie in der Quelldatenbank die SODA-Collection mit dem Oracle Data Pump-Befehl
expdp.Weitere Informationen finden Sie unter Vorhandene Oracle AI Database für den Import in eine autonome KI-Datenbank exportieren.
-
Laden Sie das Dumpdateiset aus Schritt 1 in Cloud Object Storage hoch.
-
Erstellen Sie eine SODA-Collection mit den erforderlichen SODA-Collection-Metadaten in Ihrer autonomen KI-Datenbank.
Beispiel: Wenn Sie eine Collection mit dem Namen MyCollectionName aus der Quelldatenbank mit den folgenden Metadaten exportieren:
-
Die Inhaltsspalte ist ein
BLOB-Typ. -
Die Versionsspalte verwendet die Methode
SHA256.
Erstellen Sie dann in der autonomen KI-Datenbank, in die Sie die Sammlung importieren, eine neue Sammlung:
-
Standardmäßig ist in der autonomen KI-Datenbank für eine neue Collection die Inhaltsspalte auf
BLOBgesetzt, wobeijsonFormatalsOSONangegeben ist. -
Standardmäßig ist in der autonomen KI-Datenbank für eine neue Collection
versionColumn.methodaufUUIDgesetzt.
Weitere Informationen finden Sie unter SODA-Standardsammlungsmetadaten in autonomer KI-Datenbank.
Beispiel:
DECLARE collection_create SODA_COLLECTION_T; BEGIN collection_create := DBMS_SODA.CREATE_COLLECTION('MyCollectionName'); END; / COMMIT;Mit der PL/SQL-Funktion
DBMS_SODA.LIST_COLLECTION_NAMESkönnen Sie vorhandene Collections ermitteln. Weitere Informationen finden Sie unter Funktion LIST_COLLECTION_NAMES.Sie können die Metadaten für die SODA-Collections anzeigen, indem Sie die View
USER_SODA_COLLECTIONSabfragen. Weitere Informationen finden Sie unter USER_SODA_COLLECTIONS. -
-
Speichern Sie Ihre Zugangsdaten für Cloud-Objektspeicher mit
DBMS_CLOUD.CREATE_CREDENTIAL.Beispiel: So erstellen Sie Zugangsdaten für das Oracle Cloud Infrastructure-Authentifizierungstoken:
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'DEF_CRED_NAME', username => 'adb_user@example.com', password => 'password' ); END; /Weitere Informationen zur Authentifizierung von Oracle Cloud Infrastructure-Authentifizierungstoken finden Sie unter Prozedur CREATE_CREDENTIAL.
Beispiel: So erstellen Sie Oracle Cloud Infrastructure-Signaturschlüssel-basierte Zugangsdaten:
BEGIN DBMS_CLOUD.CREATE_CREDENTIAL ( credential_name => 'DEF_CRED_NAME', user_ocid => 'ocid1.user.oc1..aaaaaaaauq54mi7zdyfhw33ozkwuontjceel7fok5nq3bf2vwetkpqsoa', tenancy_ocid => 'ocid1.tenancy.oc1..aabbbbbbaafcue47pqmrf4vigneebgbcmmoy5r7xvoypicjqqge32ewnrcyx2a', private_key => 'MIIEogIBAAKCAQEAtUnxbmrekwgVac6FdWeRzoXvIpA9+0r1.....wtnNpESQQQ0QLGPD8NM//JEBg=', fingerprint => 'f2:db:f9:18:a4:aa:fc:94:f4:f6:6c:39:96:16:aa:27'); END; /Weitere Informationen zu auf dem Oracle Cloud Infrastructure-Signaturschlüssel basierenden Zugangsdaten finden Sie unter Prozedur CREDENTIAL (CREATE_CREDENTIAL).
Unterstützte Zugangsdatentypen:
-
Data Pump Import unterstützt auf Oracle Cloud Infrastructure-Authentifizierungstoken basierende Zugangsdaten und auf Oracle Cloud Infrastructure-Signaturschlüsseln basierende Zugangsdaten.
Weitere Informationen zu auf dem Oracle Cloud Infrastructure-Signaturschlüssel basierenden Zugangsdaten finden Sie unter Prozedur CREDENTIAL (CREATE_CREDENTIAL).
-
Data Pump unterstützt die Verwendung einer vorab authentifizierten Oracle Cloud Infrastructure Object Storage-URL für den Parameter
dumpfile. Wenn Sie eine vorab authentifizierte URL verwenden, ist die Angabe des Parameterscredentialerforderlich, und der Wert fürcredentialkannNULLlauten. Weitere Informationen finden Sie unter Vorab authentifizierte Anforderungen verwenden.
-
-
Führen Sie Data Pump Import aus, wobei der Parameter dumpfile auf die Liste der Datei-URLs in Ihrem Cloud-Objektspeicher gesetzt ist und der Parameter credential auf den Namen der Zugangsdaten gesetzt ist, die Sie im vorherigen Schritt erstellt haben.
Hinweis
Hinweis: Importieren Sie die Sammlungsdaten mit der OptionCONTENT=DATA_ONLY.Geben Sie die Collection an, die Sie mit dem Parameter
INCLUDEimportieren möchten. Dies ist nützlich, wenn ein Datendateiset das gesamte Schema enthält und die SODA-Collection, die Sie importieren müssen, als Teil des Dumpdateisets enthalten ist.Verwenden Sie
REMAP_DATA, um eine der Spalten während des Imports zu ändern. Dieses Beispiel zeigt, wie Sie die Versionsspaltenmethode mitREMAP_DATAvonSHA256inUUIDändern.impdp admin/password@db2022adb_high \ directory=data_pump_dir \ credential=def_cred_name \ dumpfile= https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/export%l.dmp \ encryption_pwd_prompt=yes \ SCHEMA=my_schema \ INCLUDE=TABLE:"= \'MyCollectionName\'" \ CONTENT=DATA_ONLY \ REMAP_DATA=my_schema.'"MyCollectionName"'.VERSION:SYS.DBMS_SODA.TO_UUIDHinweise zu Data Pump-Parametern:
-
Wenn Sie während des Exports mit
expdpden Parameterencryption_pwd_prompt=yesverwenden, verwenden Sieencryption_pwd_prompt=yesmit dem Import und dasselbe Kennwort beimimpdp-Prompt, das Sie beim Export angegeben haben. -
Der Parameter
dumpfileunterstützt zusätzlich zu den Legacy-Platzhaltern%Uund%udie Platzhalter%Lund%l. Beispiel:dumpfile=export%L.dmp. Verwenden Sie den Platzhalter%Loder%lfür Exporte aus Oracle AI Database Release 12.2 und höher. Dieser Platzhalter erweitert den Namen der Dumpdatei in eine 3-stellige Ganzzahl mit variabler Breite, die bei 100 beginnt und bei 2147483646 endet.Verwenden Sie den Legacy-Platzhalter
%Uoder%ufür Exporte aus Oracle Database vor Release 12.2. Wenn Sie diese Option verwenden und mehr als 99 Dumpdateien benötigt werden, müssen Sie mehrere Dumpdateinamen angeben, die jeweils den Parameter%Uoder%uenthalten.
In diesem Beispiel wird für
dumpfiledas empfohlene URI-Format mit OCI Dedicated Endpoints for Commercial Realm (OC1) verwendet.namespace-stringist der Oracle Cloud Infrastructure-Objektspeicher-Namespace, undbucketnameist der Bucket-Name. Weitere Informationen finden Sie unter Dedizierte Object Storage-Endpunkte, Regionen und Availability-Domains und Object Storage-Namespaces.In Oracle Data Pump Version 19.6 und höher authentifiziert das Argument credential Oracle Data Pump beim Cloud Object Storage-Service, den Sie für Ihre Quelldateien verwenden. Der Parameter
credentialkann kein Azure-Service-Principal, Amazon Resource Name (ARN) oder Google-Serviceaccount sein. Weitere Informationen zur Authentifizierung auf Basis von Resource Principals finden Sie unter Zugriff auf Cloud-Ressourcen durch Konfigurieren von Policys und Rollen.Das Argument dumpfile ist eine kommagetrennte Liste von URLs für Ihre Data Pump-Dateien.
Um die beste Importperformance zu erreichen, verwenden Sie den Datenbankservice
HIGHfür die Importverbindung und setzen den Parameterparallelauf ein Viertel der Anzahl der ECPUs (.25 x ECPU-Anzahl). Wenn Sie ein OCPU-Compute-Modell verwenden, legen Sie den parallelen Parameter auf die Anzahl der OCPUs fest (1 x OCPU-Anzahl).Informationen dazu, welcher Datenbankservicename für die Ausführung von Data Pump Import verwendet werden soll, finden Sie unter Nebenläufigkeit und Prioritäten in einer autonomen KI-Datenbank verwalten.
Informationen zum URL-Format der Dumpdatei für verschiedene Cloud Object Storage-Services finden Sie unter URI-Formate für DBMS_CLOUD-Packagedatei.
Hinweis
Hinweis: Um einen vollständigen Import durchzuführen oder Objekte zu importieren, deren Eigentümer andere Benutzer sind, benötigen Sie die RolleDATAPUMP_CLOUD_IMP.Informationen zu nicht zulässigen Objekten in einer autonomen KI-Datenbank finden Sie unter SQL-Befehle.
In diesem Importbeispiel verwendet die Spezifikation für den Parameter
REMAP_DATAdie FunktionDBMS_SODA.TO_UUID, um UUID-Werte zu generieren. Standardmäßig wird für On-Premise-Datenbanken die Versionsspalte einer SODA-Collection mit SHA-256-Hash des Dokumentinhalts berechnet. In der Versionsspalte der autonomen KI-Datenbank werden UUID-generierte Werte verwendet, die vom Inhalt des Dokuments unabhängig sind.In diesem Beispiel verwendet der Parameter
REMAP_DATAdie FunktionDBMS_SODA.TO_UUID, um den Versionstyp der Quell-Collection durch die UUID-Versionierung zu ersetzen. Wenn in dem Exportdumpdateiset, das Sie importieren,versionColumn.methodbereits auf UUID gesetzt ist, istREMAP_DATAfür dieses Feld nicht erforderlich.Ausführliche Informationen zu Oracle Data Pump-Importparametern finden Sie unter Oracle AI Database-Utilitys.
-
Die Logdateien für Data Pump-Importvorgänge werden in dem Verzeichnis gespeichert, das Sie mit dem Data Pump-Importparameter DIRECTORY angeben. Weitere Informationen finden Sie unter Auf die Logdatei für Data Pump-Import zugreifen.