手順
-
最初のtJDBCSCDELTコンポーネントをダブルクリックして[Basic settings] (基本設定)ビューを開きます。
- [Use an existing connection] (既存の接続を使用)チェックボックスをオンにし、[Component List] (コンポーネントリスト)ドロップダウンリストが表示されたら、接続コンポーネントを選択し、それによって作成された接続を再利用します(この例ではtJDBCConnection_1)。
- [Source table] (ソーステーブル)フィールドに、データ変更がキャプチャーされるテーブルの名前(この例ではemployee)を入力します。
- [Table] (テーブル)フィールドに、現在と過去の両方の従業員データを保管するSCDディメンションテーブルの名前(この例ではemployee_scd)を入力します。
- [Action on table] (テーブルのアクション)ドロップダウンリストからDrop table if exists and createを選択し、SCDディメンションテーブルを作成します。
-
[Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックし、ポップアップダイアログボックスで、次の9つのカラムを追加してスキーマを定義します: プライマリキーとしての整数型のskとid、文字列型のnameとrole、倍数型のsalary、start_date、そして日付パターンyyyy-MM-ddを持つ日付型のend_date、整数型のactive_statusとversion。完了したら、[OK]をクリックして変更を保存し、ダイアログボックスを閉じます。
- [Surrogate key] (代理キー)ドロップダウンリストから、SCDディメンションテーブルのプライマリキーとして使われるカラムの名前(この例ではsk)を選択します。
- [Creation] (作成)ドロップダウンリストからDB sequenceを選択し、表示された[Sequence] (シーケンス)フィールドに、SCDタイプ2メソッドの代理キーの生成に使われるSnowflakeシーケンスの名前を入力します。
- [Source keys] (ソースキー)テーブルの下にある[+]ボタンをクリックして新しい行を追加し、[Name] (名前)セルをクリックして、ドロップダウンリストからソーステーブルのキーカラム(この例ではid)を選択します。
- [Use SCD type 1 fields] (SCDタイプ1フィールドを使う)チェックボックスをオンにして、[SCD type 1 fields] (SCDタイプ1フィールド)テーブルの下にある[+]ボタンを2回クリックして2行追加します。次に、各セルをクリックし、ドロップダウンリストから、SCDタイプ1メソッドが実行されるカラムを選択します。この例では、nameとroleです。
- [Use SCD type 2 fields] (SCDタイプ2フィールドを使う)チェックボックスをオンにして、[SCD type 2 fields] (SCDタイプ2フィールド)テーブルの下にある[+]ボタンをクリックして、1行を追加します。次に、セルをクリックし、SCDタイプ2メソッドが実行されるカラムを選択します。この例では、salaryです。
- [Start date] (開始日)ドロップダウンリストと[End date] (終了日)ドロップダウンリストから、SCDタイプ2メソッドの開始日と終了日の値をそれぞれ保持するために使うカラムを選択します。この例ではstart_dateとend_dateです。
- [Log active status] (アクティブステータスをログに記録する)チェックボックスをオンにし、表示された[Active field] (アクティブフィールド)ドロップダウンリストから、SCDタイプ2メソッドのアクティブステータス値を保持するために使われるカラム(この例ではactive_status)を選択します。これは、アクティブレコードの識別に役立ちます。
- [Log versions] (ログのバージョン)チェックボックスをオンにして、[Version field] (バージョンフィールド)ドロップダウンリストから、SCDタイプ2メソッドのレコードのバージョン番号を保持するために使うカラム(この例ではversion)を選択します。
- [Mapping] (マッピング)ドロップダウンリストから Mapping Snowflakeを選択して、Snowflakeメタデータマッピングファイルを使います。