Autonomous Databaseでのデータ・ウェアハウス・ワークロード
Autonomous Databaseは、ワークロードに基づいてデータベースを構成および最適化します。
データ・ウェアハウス・ワークロードがあるデータベースの特性:
-
データベースのデフォルトのデータおよび一時表領域が自動的に構成されます。表領域を追加、削除または変更することはできません。Autonomous Databaseは、ストレージ・サイズに応じて1つの表領域または複数の表領域を自動的に作成します。
-
データベース文字セットはUnicode
AL32UTF8
です。詳細については、Choose a Character Set for 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操作を無効にする場合は、次のコマンドを使用します:
ALTER SESSION DISABLE PARALLEL DML;
パラレルDML操作の詳細は、『VLDB and Partitioning Guide』を参照してください。
- データ・ウェアハウス・ワークロードの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
で圧縮を使用するように表のデフォルト属性を変更することはできません。 -
データを移動してデータを圧縮するパーティション・メンテナンス操作は実行できません。たとえば、圧縮を適用しようとする場合、
MOVE PARTITION
、MERGE PARTITIONS
、SPLIT PARTITION
またはSPLIT SUBPARTITION
付きのALTER TABLE
は許可されません。 -
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
を使用して表を変更した後、その表を削除すると、その表はリサイクル・ビンに配置されます。