Oracle NoSQL Database Analytics Integrator ausführen

Schritte zum Ausführen von Oracle NoSQL Database Analytics Integrator.

Konfigurationsdatei für den Integrator erstellen

Bevor Sie Oracle NoSQL Database Analytics Integrator ausführen können, müssen Sie zunächst eine Konfigurationsdatei erstellen. Diese Konfigurationsdatei wird beim Aufrufen des Utilitys verwendet. Die Konfigurationsdatei sollte die Einträge im JSON-Format enthalten, wie in den folgenden Beispielen gezeigt. Im Folgenden finden Sie nur zwei Beispielkonfigurationsdateien. Nicht alle unten verwendeten Parameter sind erforderlich. In der folgenden Tabelle werden alle im Beispiel verwendeten Parameter erläutert und hervorgehoben, ob sie optional oder erforderlich sind.

Beispiel 1: Sie führen das Utility über eine Oracle Cloud Compute-Instanz aus, und Sie möchten sich mit einem Instanz-Principal authentifizieren.

{
    "nosqlstore": {
        "type" : "nosqldb_cloud",
        "endpoint" : "us-ashburn-1",
        "useInstancePrincipal" : true,
        "compartment" : <ocid.of.compartment.containing.nosql.tables>,
        "table" : <tableName1,tableName2,tableName3>,
        "readUnitsPercent" : "90,90,90",
        "requestTimeoutMs" : "5000"
    },
    "objectstore" : {
        "type" : "object_storage_oci",
        "endpoint" : "us-ashburn-1",
        "useInstancePrincipal" : true,
        "compartment" : <ocid.of.compartment.containing.bucket>,
        "bucket" : <bucket-name-objectstorage>,
        "compression" : "snappy"
    },
    "database": {
        "type" : "database_cloud",
        "endpoint" : "us-ashburn-1",
        "credentials" : "/home/opc/.oci/config",
        "credentialsProfile" : <profile-for-adw-auth>,
        "databaseName" : <database-name>,
        "databaseUser" : "ADMIN",
        "databaseWallet"" : <path-where-wallet-unzipped>

    }
}

Beispiel 2: Sie möchten sich lieber mit Ihren eigenen Benutzerzugangsdaten authentifizieren, oder Sie werden von außerhalb der Oracle Cloud ausgeführt. Daher ist die Instanz-Principal-Authentifizierung nicht verfügbar.

{
    "nosqlstore": {
        "type" : "nosqldb_cloud",
        "endpoint" : "us-ashburn-1",
        "credentials" : "/home/opc/.oci/config",
        "credentialsProfile" : <nosqldb-user-credentials>,
        "table" : <tableName1,tableName2,tableName3>,
        "readUnitsPercent" : "90,90,90",
        "requestTimeoutMs" : "5000"
    },
    "objectstore" : {
        "type" : "object_storage_oci",
        "endpoint" : "us-ashburn-1",
        "credentials" : "/home/opc/.oci/config",
        "credentialsProfile" : <objectstorage-user-credentials>,
        "bucket" : <bucket-name-objectstorage>,
        "compression" : "snappy"
    },
    "database": {
        "type" : "database_cloud",
        "endpoint" : "us-ashburn-1",
        "credentials" : "/home/opc/.oci/config",
        "credentialsProfile" : <adw-user-credentials>,
        "databaseName" : <database-name>,
        "databaseUser" : "ADMIN",
        "databaseWallet" : <path-where-wallet-unzipped>
    }
   "abortOnError" : false
}

Die Konfiguration ist in drei Abschnitte unterteilt: nosqlstore, objectstore und database, deren Einträge zur Angabe der Interaktion des Utilitys mit den einzelnen Cloud-Services verwendet werden: NoSQL Cloud Service, Oracle Object Storage und Oracle Autonomous AI Lakehouse.

Es gibt einige Parameter, die in allen drei Abschnitten üblich sind.

Tabelle - Allgemeine Parameter für alle Abschnitte

Parametername Details des Parameters
type Derzeit kann dieser Parameter einen der drei Werte annehmen: nosqldb_cloud (für den nosqlstore-Abschnitt), object_storage_oci (für den Objectstore-Abschnitt) und database_cloud (für den Datenbankabschnitt).
endpoint Der Wert dieses Eintrags muss auf die Region gesetzt werden, in der sich die zugehörige Ressource befindet. Der für diesen Eintrag angegebene Wert kann entweder der API-Endpunkt der Region oder die Regions-ID für die Ressource sein. Beispiel: Wenn sich jede Ressource in der Region "US East (Ashburn)" befindet, kann der Endpunkteintrag in jedem Abschnitt entweder mit der Regions-ID ("us-ashburn-1") oder dem API-Endpunkt der Region für den gewünschten Service angegeben werden.

Tabelle - Parameter in der Konfigurationsdatei

Parametername Angegebener Abschnitt Details des Abschnitts
Instanz verwendenPrincipal

nosqlstore (optional)

Objektspeicher (optional)

Der Eintrag useInstancePrincipal kann als boolescher Wert "true" angegeben werden, wenn die folgenden Bedingungen erfüllt sind:

  • Das Utility wird von einer Oracle Cloud Compute-Instanz ausgeführt.
  • Der zu konfigurierende Abschnitt ist nicht der Datenbankabschnitt.
  • Die Compute-Instanz ist als Instanz-Principal autorisiert, Aktionen für die Ressource auszuführen, die im zu konfigurierenden Abschnitt referenziert wird
  • Der Zugangsdateneintrag wurde nicht angegeben

Wenn "true" für den useInstancePrincipal-Eintrag angegeben wird und der Zugangsdateneintrag ebenfalls angegeben wird, hat der Zugangsdateneintrag Vorrang, und die Benutzerzugangsdaten, die im Wert dieses Eintrags referenziert werden, werden für die Interaktion mit der zugehörigen Ressource verwendet.

Hinweis:

Benutzerzugangsdaten müssen im Datenbankabschnitt angegeben werden, weil die autonome KI-Datenbank, die in Oracle Autonomous AI Lakehouse gehostet wird, dies erfordert.

Compartment

nosqlstore (optional)

Objektspeicher (optional)

  • Wenn "true" für den Eintrag "useInstancePrincipal" angegeben ist, muss auch die OCID des Compartments angegeben werden, das diese Ressource enthält.
  • Wenn "false" für den Eintrag "useInstancePrincipal" angegeben ist oder der Eintrag für die Zugangsdaten angegeben ist, ist der Compartment-Eintrag optional. Er muss jedoch in der Datei angegeben werden, die vom Eintrag für die Zugangsdaten referenziert wird.
credentials

nosqlstore (optional)

Objektspeicher (optional)

Datenbank (erforderlich)

Der Eintrag der Zugangsdaten ist unter allen Umständen im Datenbankabschnitt erforderlich. Er ist in den Bereichen nosqlstore und objectstore in einem oder mehreren der folgenden Situationen erforderlich:

  • Entweder wird das Utility von außerhalb von Oracle Cloud ausgeführt, oder es wird von einer Oracle Cloud Compute-Instanz ausgeführt, die kein Instanz-Principal ist
  • Der Eintrag useInstancePrincipal ist nicht angegeben oder auf "false" gesetzt.

Der für diesen Eintrag angegebene Wert muss eine Datei im lokalen Dateisystem referenzieren, die Benutzerzugangsdaten angibt, mit denen Sie sicher mit der zugehörigen Ressource interagieren können.

Berechtigungsprofil

nosqlstore (optional)

Objektspeicher (optional)

Datenbank (optional)

Der credentialProfile-Eintrag ist in jedem Abschnitt optional. Selbst wenn er angegeben wird, gilt er nur, wenn auch ein entsprechender Zugangsdateneintrag angegeben wird.
Tabelle nosqlstore(Erforderlich) Der Tabelleneintrag ist erforderlich und muss im nosqlstore-Abschnitt angegeben werden. Der Wert dieses Eintrags ist eine Zeichenfolge, die aus einer durch Komma getrennten Liste von Namen besteht. Dabei referenziert jeder Name den Namen einer Tabelle im NoSQL Database Cloud-Service, deren Inhalt abgerufen und in Oracle Autonomous AI Lakehouse kopiert werden soll.
readUnitsProzent nosqlstore (optional)

Der Eintrag readUnitsPercent ist optional und gilt nur im nosqlstore-Abschnitt. Der Wert dieses Eintrags ist eine Zeichenfolge, die aus einer durch Komma getrennten Liste von Ganzzahlen besteht; zwischen 1 und 100, was den Prozentsatz der Leseeinheiten darstellt, die beim Abrufen von Daten aus der entsprechenden Tabelle verbraucht werden können.

Mit diesem Eintrag können Sie verschiedene Prozentsätze für Leseeinheiten für jede der Tabellen angeben, die im Tabelleneintrag referenziert werden. Dabei entspricht der erste Prozentsatz in der Liste der ersten Tabelle in der Liste der Tabellen, der zweite Prozentsatz der zweiten Tabelle usw. Die Anzahl der Prozentsätze in dieser Liste muss nicht mit der Anzahl der Tabellen in der Tabellenliste übereinstimmen. Ein Standardwert von 90 Prozent wird jeder Tabelle in der Liste der Tabellen zugewiesen, die keinen entsprechenden Prozentsatz in dieser Liste aufweist.

Beispiel: Im Tabelleneintrag werden vier Tabellennamen angegeben, der Eintrag readUnitsPercent wird jedoch auf den Wert "50,80" gesetzt. In diesem Fall werden Daten aus der ersten Tabelle mit 50 Prozent der verfügbaren Leseeinheiten abgerufen, während 80 Prozent der Leseeinheiten beim Abrufen von Daten aus der zweiten Tabelle verwendet werden. Und schließlich werden für die restlichen beiden Tabellen 90 Prozent der Leseeinheiten (Standard) verwendet, wenn die Daten aus jeder dieser Tabellen abgerufen werden.

Anforderungszeitüberschreitungen nosqlstore (optional)

Der requestTimeoutMs-Eintrag ist optional und gilt nur im nosqlstore-Abschnitt. Der Wert dieses Eintrags ist eine Zeichenfolge, die aus einer durch Komma getrennten Liste von positiven Ganzzahlen besteht. Dabei steht jede Ganzzahl für die Anzahl der Millisekunden, die für jede Datenabrufanforderung für die entsprechende Tabelle zulässig sind.

Mit diesem Eintrag können Sie verschiedene Timeoutwerte für jede der Tabellen angeben, die im Tabelleneintrag referenziert werden. Wenn dieser Eintrag nicht angegeben ist oder wenn dieser Eintrag einen Timeout nur für eine Teilmenge der Tabellen angibt, wird den verbleibenden Tabellen der Standardwert 5000 zugewiesen.

bucket Objektspeicher (erforderlich) Der Bucket-Eintrag ist erforderlich und muss im Objektspeicherabschnitt angegeben werden. Der Wert dieses Eintrags ist eine Zeichenfolge, die den Namen des OCI Object Storage-Buckets darstellt, in den das Utility die aus den NoSQL-Tabellen abgerufenen Daten kopiert.
Komprimierung Objektspeicher (optional)

Der Komprimierungseintrag ist optional und gilt nur im Objektspeicherabschnitt. Der für diesen Eintrag angegebene Wert ist eine Zeichenfolge, die angibt, wie die Daten aus den im nosqlstore angegebenen Tabellen abgerufen werden. Wenn dies festgelegt ist, werden die Tabellendaten komprimiert, wenn sie in den Objektspeicher kopiert werden. Der für diesen Eintrag angegebene Wert muss einer der folgenden sein:

  • snappy- für snappy-Komprimierung
  • gzip – für GZIP-Komprimierung
  • none - Komprimieren Sie die in ObjectStorage kopierten Tabellendaten nicht

Hinweis:

Wenn der Komprimierungseintrag nicht angegeben ist, wird die snappy-Komprimierung ausgeführt.

databaseName Datenbank (erforderlich) Der Eintrag dabaseName ist erforderlich und muss im Datenbankabschnitt angegeben werden. Dieser Eintrag ist eine Zeichenfolge, deren Wert der Name der Datenbank ist, die in Oracle Autonomous AI Lakehouse Cloud Service erstellt wurde.
Datenbankbenutzer Datenbank (optional) Der Eintrag databaseUser ist optional und sollte im Abschnitt database angegeben werden. Dieser Eintrag ist eine Zeichenfolge, deren Wert der Name des Benutzeraccounts in der autonomen KI-Datenbank ist, die im Eintrag dabaseName angegeben ist. Wenn dieser Eintrag nicht angegeben ist, werden Sie in der Befehlszeile aufgefordert, den Wert anzugeben.
DatenbankWallet Datenbank (erforderlich) Der Eintrag databaseWallet ist erforderlich und muss im Datenbankabschnitt angegeben werden. Dieser Eintrag ist eine Zeichenfolge, deren Wert der Dateisystempfad zu dem Verzeichnis ist, das den Inhalt des Oracle Wallet enthält, das aus dem Benutzeraccount der autonomen KI-Datenbank heruntergeladen wurde, der im Eintrag databaseUser in der Konfigurationsdatei angegeben ist.
abortOnError Optional Gibt die Aktion an, die bei einem Fehler ausgeführt werden soll. Der Standardwert ist True.

Hinweis: Jeder Eintrag in der Konfigurationsdatei kann in der Befehlszeile überschrieben werden, indem eine Systemeigenschaft mit dem Namen des Formulars, section.entry, festgelegt wird. Beispiel: -Dnosqlstore.table=tableName1,tableName3. Wenn sich ein Eintrag nicht in einem Abschnitt befindet, ist der Name, der für eine solche Eigenschaft verwendet werden soll, einfach der Name des Eintrags selbst. Beispiel: -DabortOnError=false. Diese Funktion kann nützlich sein, wenn Skripte getestet oder geschrieben werden, die das Utility in regelmäßigen Abständen ausführen.

Konfigurationsinformationen werden in der Zugangsdatendatei angegeben:

Oracle Cloud Infrastructure erfordert grundlegende Konfigurationsinformationen, wie Benutzerzugangsdaten, Mandanten-OCID usw., die in der Konfigurationsdatei angegeben werden können. Der Standardspeicherort für diese Konfigurationsdatei ist ~/.oci. In dieser Konfigurationsdatei können Sie mehrere Gruppen von Benutzerzugangsdaten angeben.

Eine Beispieldatei für die Zugangsdaten wird unten angezeigt.

[DEFAULT]
user=<ocid.of.default.user>
fingerprint=<fingerprint.of.default.user>
key_file=<path.to.default.user.oci.api.private.key.file.pem>
tenancy=<ocid.of.default.user.tenancy>
region=us-ashburn-1
compartment=<ocid.of.default.compartment>

[nosqldb-user-credentials]
user=<ocid.of.nosqldb.user>
fingerprint=<fingerprint.of.nosqldb.user>
key_file=<path.to.nosqldb.user.oci.api.private.key.file.pem>
tenancy=<ocid.of.nosqldb.user.tenancy>
region=us-ashburn-1
compartment=<ocid.of.nosqldb.compartment>

[objectstorage-user-credentials]
user=<ocid.of.objectstorage.user>
fingerprint=<fingerprint.of.objectstorage.user>
key_file=<path.to.objectstorage.user.oci.api.private.key.file.pem>
tenancy=<ocid.of.objectstorage.user.tenancy>
region=us-ashburn-1
compartment=<ocid.of.objectstorage.compartment>

[adw-user-credentials]
user=<ocid.of.adw.user>
fingerprint=<fingerprint.of.adw.user>
key_file=<path.to.adw.user.oci.api.private.key.file.pem>
tenancy=<ocid.of.adw.user.tenancy>
region=us-ashburn-1
compartment=<ocid.of.adw.compartment>
dbmsOcid=<ocid.of.autonomous.database.in.adw>
dbmsCredentialName=<OCI$RESOURCE_PRINCIPAL or NOSQLADWDB_OBJ_STORE_CREDENTIAL>

Hinweis: In der obigen Konfigurationsdatei gibt es drei separate Einträge für nosql-db-user, objectstorage-user und adw-user. Dies ist nicht erforderlich, und eine Konfigurationsdatei kann nur mit einem DEFAULT-Profil vorhanden sein. Es empfiehlt sich jedoch, separate Profile zu haben, anstatt alle Parameter im DEFAULT-Profil zu kombinieren.

Parametername Details des Parameters
user Die OCID des Benutzers
Fingerprint Eine kurze Bytefolge, mit der ein längerer Public Key für den Standardbenutzer identifiziert wird
Schlüsseldatei Pfad/Dateiname der Datei, die den Private Key für den Standardbenutzer enthält
Mandant Die OCID des Mandanten
Regionen Der Endpunkt der Region
Compartment Compartment-Name oder OCID des Compartments des Standardbenutzers
dbmsOcid OCID der autonomen KI-Datenbank
dbmsCredentialName Dies ist der Name der Zugangsdaten, mit denen sich die Oracle Autonomous AI Lakehouse-Datenbank bei Object Storage authentifiziert. Dies ist entweder der Name OCI$RESOURCE_PRINCIPAL (wenn Sie die Resource Principal-Authentifizierung verwenden) oder der Name der AUTH_TOKEN-Zugangsdaten, die erstellt werden, wenn die Prozedur DBMS_CLOUD.CREATE_CREDENTIAL entweder vom Benutzer oder vom Systemadministrator ausgeführt wird (z.B. NOSQLADWDB_OBJ_STORE_CREDENTIAL ).

Tool ausführen

Nachdem alle Anforderungen für die Verwendung der erforderlichen Oracle Cloud-Services (NoSQL Database, Object Storage und Oracle Autonomous AI Lakehouse) erfüllt und eine gültige Konfigurationsdatei erstellt wurde, kann der Oracle NoSQL Database Analytics Integrator ausgeführt werden, indem Sie einfach einen Befehl in die Befehlszeile eingeben.

Hinweis: Die Systemeigenschaften, mit denen die bei der Ausführung verwendeten Logger konfiguriert werden, sind optional. Wenn diese Systemeigenschaften nicht angegeben sind, erzeugt das Dienstprogramm keine Protokollausgabe.

Logging

Oracle NoSQL Database Analytics Integrator führt Software aus mehreren Librarys von Drittanbietern aus, in denen jede Library eine eigene Gruppe von Loggern mit verschiedenen Namespaces definiert. Der Einfachheit halber stellt Oracle NoSQL Database Analytics Integrator zwei Loggingkonfigurationsdateien als Teil des Release bereit. Eines zum Konfigurieren von Loggingmechanismen basierend auf java.util.logging und eines für Logger basierend auf Log4j2.

Hinweis: Die Logger-Konfigurationsdateien, die mit dem Utility bereitgestellt werden, sind standardmäßig so konzipiert, dass sie bei der Ausführung des Utilitys eine minimale Ausgabe erzeugen. Wenn Sie jedoch die ausführliche Ausgabe der verschiedenen Komponenten anzeigen möchten, die vom Utility verwendet werden, sollten Sie die Logging-Ebenen der spezifischen Logger erhöhen, deren Verhalten Sie analysieren möchten.

Verwandte Themen