Autonomous Databaseを使用したデータ・ウェアハウス・ワークロード
Autonomous Databaseは、ワークロードに基づいてデータベースを構成および最適化します。
データ・ウェアハウス・ワークロードを使用する「データベース」の特性:
-
データベースのデフォルトのデータおよび一時表領域は自動的に構成されます。 表領域の追加、削除、または変更は許可されていません。 Autonomous Databaseでは、ストレージ・サイズに応じて1つの表領域または複数の表領域が自動的に作成されます。
-
データベース文字セットはUnicode
AL32UTF8
です。 詳細については、「Autonomous Databaseの文字セットの選択」を参照してください。 -
圧縮はデフォルトで有効です。 Autonomous Databaseでは、デフォルトですべての表にハイブリッド列圧縮が使用されます。
CREATE TABLE
またはALTER TABLE
コマンドで圧縮句を使用すると、表に異なる圧縮メソッドを指定できます。 -
Oracle Database結果キャッシュは、すべてのSQL文に対してデフォルトで有効です。
データベースへのアクセス:
-
データベース・ノードへの直接アクセスがありません。 「Autonomous Databaseでのディレクトリの作成および管理」の説明に従って、
CREATE DIRECTORY
とDROP DIRECTORY
を使用してディレクトリを作成およびドロップできます。ファイルおよびオブジェクトとともに、
DBMS_CLOUD.DELETE_FILE
、DBMS_CLOUD.GET_OBJECT
、DBMS_CLOUD.PUT_OBJECT
などのDBMS_CLOUD
プロシージャを使用できます。 ローカル・ファイル・システムへの直接アクセスがありません。
データ・ウェアハウス・ワークロードでのパラレル実行:
-
パラレル化は、データベース・サービスによって決定されます。 各データベース・サービスのパラレル化サポートの詳細は、「Autonomous Databaseのデータベース・サービス名」を参照してください。
-
セッションでパラレルDML操作を無効にする場合は、次のSQLコマンドを使用します:
ALTER SESSION DISABLE PARALLEL DML;
パラレルDML操作の詳細は、『VLDBおよびパーティショニング・ガイド』を参照してください。
- データ・ウェアハウス・ワークロードのDMLパフォーマンスおよび圧縮の管理
- データ・ウェアハウス・ワークロードのステージング表の作成
Autonomous Databaseは、データ・ウェアハウスへのデータのロード用に最適化されたステージング表をサポートします。
データ・ウェアハウス・ワークロードのDMLパフォーマンスおよび圧縮の管理
データ・ウェアハウス・ワークロードを使用するAutonomous Databaseでは、デフォルトですべての表にハイブリッド列圧縮が使用されます。 これにより、DBMS_CLOUD
パッケージを使用したロードのようなダイレクト・パス・ロード操作では、圧縮率と最適なパフォーマンスが得られます。 表に対してUPDATE
やMERGE
などのDML操作を実行すると、影響を受ける行の圧縮率が低下し、表のサイズが大きくなります。 これらの操作は、圧縮されていない表での同じ操作に比べて速度が低下する場合もあります。
最適な圧縮率と最適なパフォーマンスを得るために、Oracleでは「ダイレクト・パス・ロード」文やCREATE TABLE AS SELECT
文などの一括操作を使用することをお薦めします。 ただし、このワークロードが表の大部分であるUPDATE
やMERGE
などのDML操作を頻繁に行う必要がある場合は、表の大部分を圧縮して、DMLパフォーマンスを向上させるために、それらの表を非圧縮表として作成できます。 たとえば、次の文は、非圧縮表として表SALES
を作成します。
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;
これらの表にアクセスする問合せに影響を与えることなく、ALTER TABLE MOVE
文を使用してそれらの表を圧縮することができます。 たとえば、次の文は、ハイブリッド列圧縮を使用して表SALES
を圧縮します。
ALTER TABLE sales MOVE COLUMN STORE COMPRESS FOR QUERY HIGH;
データ・ウェアハウス・ワークロードのステージング表の作成
Autonomous Databaseは、データ・ウェアハウスへのデータのロード用に最適化されたステージング表をサポートしています。
ステージング表は、STAGING
プロパティが設定されている表です。 これにより、次の特性が適用されます:
-
あらゆる圧縮形式は、データ・ロードのステージング表で明示的にオフになり、禁止されます。 コマンド
ALTER TABLE COMPRESS
は使用できません。 -
既存の表に
STAGING
プロパティを設定しても、既存のデータのストレージには影響しませんが、将来のデータ・ロードに影響します。 -
Autonomous Databaseは、ステージング・プロパティが設定されている表の統計に動的統計を使用し、ステージング表の統計を収集しません。
-
ステージング表を削除すると、その表はごみ箱をバイパスしてただちに削除されます。
recyclebin
初期化パラメータを値ON
に設定しても、ごみ箱は有効になりません。
Autonomous Databaseパーティション・ステージング表の特性には、前述の内容に加えて次のものが含まれます:
-
すべての圧縮形式は明示的にオフになり、すべての表パーティションおよびサブパーティションでは禁止されます。
-
ALTER TABLE MODIFY DEFAULT ATTRIBUTES
でcompressを使用するように表のデフォルト属性を変更することはできません。 -
データを移動し、データを圧縮するパーティション・メンテナンス操作は実行できません。 たとえば、圧縮を適用しようとすると、次は許可されません:
ALTER TABLE
、MOVE PARTITION
,MERGE PARTITIONS
,SPLIT PARTITION
、またはSPLIT SUBPARTITION
。 -
ALTER TABLE MODIFY PARTITION
を使用して表を再パーティション化し、圧縮する結果パーティションを指定することはできません。
ステージング表は、表の作成時または既存の表の変更時に次のように定義します:
表を変更して、STAGING
プロパティを削除できます。 たとえば:
ALTER TABLE staging_table NOT FOR STAGING;
NOT FOR STAGING
を使用して表を変更するには、次の点に注意してください:
-
NOT FOR STAGING
を使用して表を変更した後、圧縮属性および既存のデータは影響を受けず、表を明示的に変更して圧縮を指定するまで解凍されます。 表圧縮を変更でき、ALTER TABLE COMPRESS
が許可されます。 -
NOT FOR STAGING
を使用して表を変更しても、統計収集はトリガーされません。NOT FOR STAGING
を使用して表のプロパティを変更した後、手動または自動で統計を収集できます。 -
NOT FOR STAGING
を使用して表を変更した後、ごみ箱を有効にした場合、その表はごみ箱に配置されます。