Data Warehouse-Workload mit Autonomous Database

Autonomous Database konfiguriert und optimiert die Datenbank für Sie, basierend auf Ihrer Workload.

Merkmale einer Datenbank mit Data Warehouse-Workload:

  • Die Standarddaten und Temporary Tablespaces für die Datenbank werden automatisch konfiguriert. Das Hinzufügen, Entfernen oder Ändern von Tablespaces ist nicht zulässig. Autonomous Database erstellt je nach Speichergröße automatisch einen oder mehrere Tablespaces.

  • Der Datenbankzeichensatz ist Unicode AL32UTF8. Weitere Informationen finden Sie unter Zeichensatz für Autonomous Database auswählen.

  • Komprimierung ist standardmäßig aktiviert. Autonomous Database verwendet standardmäßig Hybrid Columnar Compression für alle Tabellen. Sie können verschiedene Komprimierungsmethoden für Ihre Tabellen mit der Komprimierungsklausel in den Befehlen CREATE TABLE oder ALTER TABLE angeben.

  • Oracle Database Result Cache ist standardmäßig für alle SQL-Anweisungen aktiviert.

Auf eine Datenbank zugreifen:

  • Sie haben keinen direkten Zugriff auf den Datenbankknoten. Sie können Verzeichnisse mit CREATE DIRECTORY und DROP DIRECTORY erstellen und löschen, wie unter Verzeichnisse in Autonomous Database erstellen und verwalten beschrieben.

    Sie können DBMS_CLOUD-Prozeduren wie DBMS_CLOUD.DELETE_FILE, DBMS_CLOUD.GET_OBJECT und DBMS_CLOUD.PUT_OBJECT mit Dateien und Objekten verwenden. Sie haben keinen direkten Zugriff auf das lokale Dateisystem.

Parallele Ausführung mit Data Warehouse Workload:

  • Die Parallelität wird vom Datenbankservice bestimmt. Weitere Informationen finden Sie unter Datenbankservicenamen für Autonomous Database. Weitere Informationen zur Unterstützung der Parallelität für jeden Datenbankservice.

  • Wenn Sie parallele DML-Vorgänge in der Session deaktivieren möchten, verwenden Sie den folgenden SQL-Befehl:

    ALTER SESSION DISABLE PARALLEL DML;

    Weitere Informationen über parallele DML-Vorgänge finden Sie im VLDB- und Partitionierungs-Handbuch.

DML-Performance und -Komprimierung für Data Warehouse-Workloads verwalten

Autonomous Database mit Data Warehouse-Workloads verwendet standardmäßig die Hybrid Columnar Compression für alle Tabellen. Dadurch erhalten Sie das beste Komprimierungsverhältnis und optimale Performance für Direct Path-Ladevorgänge wie die Ladevorgänge, die mit dem Package DBMS_CLOUD ausgeführt werden. Wenn Sie DML-Vorgänge wie UPDATE und MERGE in Ihren Tabellen ausführen, kann dies dazu führen, dass sich das Komprimierungsverhältnis für die betroffenen Zeilen verringert, was zu größeren Tabellengrößen führt. Diese Vorgänge können auch langsamer ausgeführt werden als dieselben Vorgänge in einer unkomprimierten Tabelle.

Für das beste Komprimierungsverhältnis und die optimale Performance empfiehlt Oracle Bulkvorgänge wie Direct-Path-Ladevorgänge und CREATE TABLE AS SELECT-Anweisungen. Wenn Ihre Workload jedoch häufige DML-Vorgänge wie UPDATE und MERGE für große Teile einer Tabelle erfordert, können Sie diese Tabellen als unkomprimierte Tabellen erstellen, um eine bessere DML-Performance zu erreichen. Beispiel: Mit der folgenden Anweisung wird die Tabelle SALES als nicht komprimierte Tabelle erstellt:

CREATE TABLE sales (
    prod_id             NUMBER          NOT NULL,
    cust_id             NUMBER          NOT NULL,
    time_id             DATE            NOT NULL,
    channel_id          NUMBER          NOT NULL,
    promo_id            NUMBER          NOT NULL,
    quantity_sold       NUMBER(10,2)    NOT NULL,
    amount_sold         NUMBER(10,2)    NOT NULL)
NOCOMPRESS;

Mit der ALTER TABLE MOVE-Anweisung können Sie diese Tabellen jederzeit komprimieren, ohne dass der Zugriff auf Abfragen beeinträchtigt wird. Beispiel: Die folgende Anweisung komprimiert die Tabelle SALES mit Hybrid Columnar Compression.

ALTER TABLE sales MOVE COLUMN STORE COMPRESS FOR QUERY HIGH;

Staging-Tabellen für Data Warehouse-Workloads erstellen

Autonomous Database unterstützt Staging-Tabellen, die für das Laden von Daten in ein Data Warehouse optimiert sind.

Eine Staging-Tabelle ist eine Tabelle, in der die Eigenschaft STAGING festgelegt ist. Dabei werden die folgenden Eigenschaften angewendet:

  • Jede Form der Komprimierung wird explizit deaktiviert und in einer Staging-Tabelle für Dataloads nicht zulässig. Der Befehl ALTER TABLE COMPRESS ist nicht zulässig.

  • Das Festlegen der Eigenschaft STAGING für eine vorhandene Tabelle wirkt sich nicht auf die Speicherung vorhandener Daten aus, wirkt sich jedoch auf zukünftige Dataloads aus.

  • Autonomous Database verwendet dynamisches Sampling für Statistiken für Tabellen mit der festgelegten Staging-Eigenschaft und sammelt keine Statistiken für Staging-Tabellen.

  • Wenn Staging-Tabellen gelöscht werden, wird die Tabelle sofort entfernt, und der Papierkorb wird umgangen. Wenn Sie den Initialisierungsparameter recyclebin auf den Wert ON setzen, wird der Papierkorb nicht aktiviert.

Die Merkmale der partitionierten Staging-Tabellen von Autonomous Database umfassen die oben genannten und die folgenden Elemente:

  • Jede Form der Komprimierung ist explizit deaktiviert und für alle Partitionen und Unterpartitionen der Tabelle nicht zulässig.

  • Sie können die Standardattribute der Tabelle nicht ändern, um sie mit ALTER TABLE MODIFY DEFAULT ATTRIBUTES zu komprimieren.

  • Sie können keine Partitionsverwaltungsvorgänge ausführen, bei denen Daten verschoben und komprimiert werden. Beispiel: Beim Versuch, die Komprimierung anzuwenden, sind folgende Elemente nicht zulässig: ALTER TABLE mit MOVE PARTITION, MERGE PARTITIONS, SPLIT PARTITION oder SPLIT SUBPARTITION.

  • Sie können eine Tabelle mit ALTER TABLE MODIFY PARTITION nicht neu partitionieren und keine resultierende Partition angeben, die komprimiert werden soll.

Definieren Sie Staging-Tabellen, wenn Sie eine Tabelle erstellen oder eine vorhandene Tabelle wie folgt ändern:

  1. Tabelle mit der Eigenschaft STAGING erstellen.

    Beispiel:

    CREATE TABLE staging_table (col1 number, col2 varchar2(100)) FOR STAGING;
    
    CREATE TABLE part_staging_table (col1 number, col2 varchar2(100))
        PARTITION BYRANGE (col1)
              (PARTITION p1 VALUESLESS THAN (100), 
               PARTITION pmax VALUESLESS THAN (MAXVALUE)) FOR STAGING;
  2. Ändern Sie eine vorhandene Tabelle, um die Eigenschaft STAGING festzulegen.

    Beispiel:

    ALTER TABLE staging_table FOR STAGING;
  3. Sie können die Eigenschaft STAGING für eine Tabelle mit einer der folgenden Views prüfen: USER_TABLES, ALL_TABLES oder DBA_TABLES.

    In diesen Views gibt die Spalte STAGING die Staging-Tabelleneigenschaft an. Der Wert YES gibt eine STAGING-Tabelle an. Der Wert NO wird für alle anderen Tabellen angezeigt.

Sie können eine Tabelle ändern, um die Eigenschaft STAGING zu entfernen. Beispiel:

ALTER TABLE staging_table NOT FOR STAGING;

Beachten Sie Folgendes, um eine Tabelle mit NOT FOR STAGING zu ändern:

  • Nachdem Sie eine Tabelle mit NOT FOR STAGING geändert haben, sind das Komprimierungsattribut und die vorhandenen Daten nicht betroffen. Sie werden so lange unkomprimiert, bis Sie die Tabelle explizit ändern und Komprimierung angeben. Sie können die Tabellenkomprimierung ändern, und ALTER TABLE COMPRESS ist zulässig.

  • Das Ändern einer Tabelle mit NOT FOR STAGING löst keine Erfassung von Statistiken aus. Nachdem Sie die Tabelleneigenschaft mit NOT FOR STAGING geändert haben, können Sie Statistiken entweder manuell oder automatisch erfassen.

  • Nachdem Sie eine Tabelle mit NOT FOR STAGING geändert haben, wird die Tabelle im Papierkorb gespeichert, wenn das Löschen des Papierkorbs aktiviert ist.