機械翻訳について

スキーマ作成の構成要素

データ・スクリプト・プログラムの基盤は、モジュール内のソース表またはデータ・ウェアハウス表のいずれかから始まります。

  • ソース: 事前定義済スキーマを含む既存のデータ構造。
  • モジュール: 1つ以上の関連ビジネス・プロセスの分析を支援するウェアハウス表の編成されたグループ。

ソース表または倉庫表のインポート

これらのコマンドを実行して、ソース表およびモジュールをインポートします。

IMPORT SOURCE SALES   // Import a source table
IMPORT MODULE [FA_GL, FA_AP]                      // Import a single or list of modules

ソース表は、データ変換の基本構成要素として機能する読取り専用定義です。 モジュールをインポートでき、その基礎となる表をコードで直接使用できます。

データセット定義

データセットは、データ拡張スクリプトの主要な構成要素です。 データ・セットを定義するには、2つの方法があります。データ・セットは、ソース表または導出表からスキーマを直接継承できます。

IMPORT SOURCE CUSTOMERS
DEFINE DATASET CUSTOMERS_D             
    ROWSOURCE CUSTOMERS;
    THIS = CUSTOMERS[CUST_ID];
    THIS = CUSTOMERS[CUST_NAME];
    THIS = CUSTOMERS[EMAIL];
    THIS = CUSTOMERS[AGE];
    PRIMARYKEY[CUST_ID];
 END
 DEFINE DATASET GAMING_CUSTOMER_D             
    ROWSOURCE CUSTOMERS_D WHERE CUSTOMERS_D.AGE BETWEEN 13 AND 35;
    THIS = CUSTOMERS_D[CUST_ID];
    THIS = CUSTOMERS_D[CUST_NAME];
    THIS = CUSTOMERS_D[EMAIL];
    THIS = CUSTOMERS_D[AGE];
    PRIMARYKEY[CUST_ID];
 END

スキーマを直接継承するデータセットの主な特性は次のとおりです。

  • ソース表のスキーマを自動的に継承および保持します。
  • 明示的な列定義が不要になります。

次のようにコードを書き換えることもできます。

IMPORT SOURCE CUSTOMERS
DEFINE DATASET CUSTOMERS_D FROM CUSTOMERS[CUST_ID,CUST_NAME,EMAIL,AGE] END
DEFINE DATASET GAMING_CUSTOMER_D             
    ROWSOURCE CUSTOMERS_D WHERE CUSTOMERS_D.AGE BETWEEN 13 AND 35;
    THIS = CUSTOMERS_D[CUST_ID,CUST_NAME,EMAIL,AGE];
    PRIMARYKEY[CUST_ID];
END

対応する表に存在しない列が参照されている場合は、エラーが表示されます。

例: 次のコードは、CUSTOMERS表にない列GENDERを参照します。
THIS = CUSTOMERS_D[CUST_ID,CUST_NAME,EMAIL,GENDER];

CUSTOMERSGENDERが存在しないというエラーが表示されます。

カスタム・スキーマ定義機能を使用して、データセット・スキーマを定義することもできます。

DEFINE SCHEMA DW_PROJECT_D_SCHEMA
[ 
     PROJECT_ID          NUMBER(38,0) PRIMARYKEY, 
     PROJECT_NUMBER      VARCHAR2(32), 
     START_DATE          DATE       NOT NULL, 
     COMPLETION_DATE     DATE 
]
END 
DEFINE DATASET DW_PROJECT_D 
      SCHEMA DW_PROJECT_D_SCHEMA;
      ROWSOURCE PROJECTS;
      THIS[PROJECT_ID]  = PROJECTS[PROJECT_ID, PROJECT_NUMBER];          
END

データ拡張スクリプトでサポートされるデータ型の詳細は、データ型を参照してください。