クラウド データ ウェアハウスのデータセット アーキテクチャ
Qlik Talend Data Integration では、分析データ パイプラインを作成、管理、制御して、消費者にデータを届けることができます。Qlik Talend Data Integration を使用してクラウド データ ウェアハウスでデータセットを生成すると、ストレージ テーブル、変更テーブル、ビューが生成されます。
直感的でガイド付きのユーザー インターフェイスは、データ パイプラインの構築、モデル化、および実行に役立ちます。手動コーディングなしで、オペレーショナル データ ストア (ODS) と履歴データ ストア (HDS) のスキーマを自動的に生成します。
-
ランディング
Qlik Talend Data Integration のランディング タスクは、データ ソースからランディング ゾーンへのデータの継続的なランディングを制御します。図の例では、Qlik Data Gateway - データ移動 を使用して CDC を使用したデータ ソースにアクセスし、データを最新の状態に保つ方法を説明しています。Qlik Cloud ソース接続を使用して、定期的にリロードするようにスケジュールできるフル ロードを実行することもできます。
Data Movement gateway をいつ使用する必要があるかについては、「どのようなときに Data Movement gateway が必要ですか?」を参照してください
情報メモランディング ゾーンのテーブルは、Qlik Talend Data Integration ストレージ データ タスクによる内部使用のために生成されます。他のダウンストリーム プロセスではランディング テーブルを使用しないでください。 -
ストレージ
ストレージ タスクは、データがいつストレージ テーブルに適用されるかを制御し、テーブルと外部ビューを作成および管理します。
-
外部ビュー
データを消費する場合のベスト プラクティスは、ビューを使用することです。ビューにはデータの同時実行性の向上など、テーブルに比べていくつかの利点があります。
ライブ ビューの使用
ライブ ビューを使用して、現在のデータ (ODS) と履歴データ (HDS) の両方にアクセスできます。ライブ ビューには、まだ適用されていない変更テーブルのデータが含まれます。これにより、変更されたデータを頻繁に適用しなくても、待機時間の短いデータを表示できます。マージを遅らせる機能により、ターゲット プラットフォームでのコストと処理要件を削減できます。
ライブ ビューのもう 1 つの利点は、コンピューティング層を常に実行する必要がないことです。
-
ランディングは、高速実行による INSERT 操作を実行するだけであり、小規模で明示的なウェアハウスを指すことができます。
-
たとえば、1 日に 1 回実行されるストレージ プロセスは、処理のために大規模なコンピューティング レイヤーをウェイクアップできます。
-
1 日を通して変更を適用する必要がなくなるため、待機時間を改善できます。挿入された新しいレコードが変更テーブルで使用できるようになると、ライブ ビューですぐに使用できるようになります。
スキーマ
アーティファクトは、内部スキーマとデータ タスク スキーマで生成されます。
-
内部スキーマには、物理データ テーブルが含まれています。
-
データ タスク スキーマには、データを使用するために使用できるビューが含まれています。
スキーマが複数のデータ タスクに関連付けられている場合、各データ タスクはテーブルとビューに一意のプレフィックスを使用する必要があります。データタスク設定でプレフィックスを設定できます。
内部スキーマのみ、名前の競合がないかチェックされます。他のスキーマの場合は、テーブル名に名前の競合がないことを確認する必要があります。ベストプラクティスは、内部スキーマをデータ タスク スキーマと同じ名前にし、_internal を追加することです。こうすることで、すべてのスキーマとプレフィックスの組み合わせが効果的に一意になります。
テーブル
次のテーブルは内部スキーマで作成されます。
-
現在のテーブル (ODS)
このテーブルには、最新の適用間隔中の変更で更新されたデータ ソースのレプリカが含まれています。
-
先行テーブル (HDS)
このテーブルには、タイプ 2 の履歴データが含まれています。データ タスク設定で履歴が有効になっている場合にのみ生成されます。
ソース テーブル レコードが更新されると、そのたびに新しいレコードが前のテーブルに追加されます。履歴レコードは、以前の現在のレコードのコピーであり、更新された内容と有効な時期も含まれます。
履歴ビューまたは履歴ライブ ビューを使用して、履歴データを表示します。詳しくは「履歴ビュー」と「履歴ライブ ビュー」を参照してください。
-
テーブルを変更
このテーブルには、現在のテーブルにまだ適用されていないすべての変更が含まれています。これは、ランディング モードのフル ロードおよび CDC が使用されている場合にのみ生成されます。
ビュー
次のビューは、データ タスク ターゲット スキーマで作成されます。どのビューが作成されるかは、ライブ ビューと履歴を有効にしているかどうか、および変更処理を使用しているかどうかによって異なります。
-
現在の表示
-
ライブ ビュー
-
変更ビュー
-
履歴ビュー
-
履歴ライブ ビュー
現在の表示
名前付け: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_current
次のヘッダー列がテーブル構造に追加されます。
項目 | タイプ | 説明 |
---|---|---|
hdr__key_hash | varbinary(20) |
すべてのレコードのプライマリ キーのハッシュ。ハッシュ形式は SHA1 です。列はバックスペース文字で区切られます。 この列は、データ マート データ タスクでは生成されません。 |
hdr__key_id | int64 |
レコードごとに増加するシーケンス。 この列は、データ マート データ タスクでのみ生成されます。 |
hdr__from_timestamp | 日付と時刻 |
UTC のタイムスタンプ
|
hdr__operation | string(1) |
このレコードの最新の操作。
|
hdr__inserted_timestamp | 日付と時刻 | キーが初めて追加されたときの UTC 日付と時刻。フル ロード使用時は、フル ロードの開始時刻。 |
hdr__modified_timestamp | 日付と時刻 | 最後の更新が適用されたときの UTC 日付と時刻。 |
ライブ ビュー
ライブ ビューには、テーブルを変更テーブルからの変更とマージする選択した各ソース テーブルのビューが表示されます。これにより、次の適用サイクルを待たずに、クエリにデータのライブ ビューが提供されます。変更テーブル ビューからマージされた変更は、テーブル間でトランザクションの一貫性がありません。
ライブ ビューは、データ タスクの設定でライブ ビューを有効にした場合にのみ作成されます。
名前付け: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffix for live views>
項目 | タイプ | 説明 |
---|---|---|
hdr__key_hash | varbinary(20) |
すべてのレコードのプライマリ キーのハッシュ。ハッシュ形式は SHA1 です。列はバックスペース文字で区切られます。 この列は、データ マート データ タスクでは生成されません。 |
hdr__key_id | int64 |
レコードごとに増加するシーケンス。 この列は、データ マート データ タスクでのみ生成されます。 |
hdr__from_timestamp | 日付と時刻 |
UTC のタイムスタンプ
|
hdr__operation | string(1) |
このレコードの最新の操作。
|
hdr__inserted_timestamp | 日付と時刻 | キーが初めて追加されたときの UTC 日付と時刻。フル ロード使用時は、フル ロードの開始時刻。 |
hdr__modified_timestamp | 日付と時刻 | 最後の更新が適用されたときの UTC 日付と時刻。 |
hdr__store | varchar(10) |
これは、レコードが存在する場所を示します。
|
変更ビュー
これは、選択した各ソース テーブルのランディング スキーマの変更テーブルのビューです。
名前付け: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_changes
次のヘッダー項目がテーブル構造に追加されます。
項目 | タイプ | 説明 |
---|---|---|
hdr__change_identifier | string(50) |
変更識別子は、次の 2 つの部分からなる文字列です。
|
hdr__from_timestamp | 日付と時刻 |
UTC のタイムスタンプ
|
hdr__to_timestamp | 日付と時刻 |
UTC のタイムスタンプ
|
hdr__operation | string(1) |
このレコードの最新の操作。
|
hdr__timestamp | 日付と時刻 |
UTC のタイムスタンプ |
hdr__key_hash | バイナリ(20) |
すべてのレコードのプライマリ キーのハッシュ。 この列は、データ マート データ タスクでは生成されません。 |
hdr__key_id | int64 |
レコードごとに増加するシーケンス。 この列は、データ マート データ タスクでのみ生成されます。 |
履歴ビュー
データ タスク設定で履歴が有効になっている場合、選択した各ソース テーブルのデータ アセット スキーマに履歴ビューが生成されます。次のヘッダー項目が追加されます。
名前付け: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffix for history views>
項目 | タイプ | 説明 |
---|---|---|
hdr__key_hash | バイナリ(20) |
すべてのレコードのプライマリ キーのハッシュ。 この列は、データ マート データ タスクでは生成されません。 |
hdr__key_id | int64 |
レコードごとに増加するシーケンス。 この列は、データ マート データ タスクでのみ生成されます。 |
hdr__store | varchar(10) |
これは、レコードが存在する場所を示します。
|
hdr__operation | string(1) |
このレコードの最新の操作。
|
hdr__deleted | bit |
hdr__operation が D または d であるかどうかに基づいて、レコードが論理的に削除されているかどうかを示します。 |
hdr__was _current_from_timestamp | 日付と時刻 |
最初のレコードの UTC の日付と時刻が最新でした。 |
hdr__was _current_to_timestamp | 日付と時刻 |
最後のレコードの UTC の日付と時刻が最新でした。 |
履歴ライブ ビュー
履歴ライブ ビューは、変更テーブルからの変更とマージされた選択されたソース テーブルごとに、選択されたソース テーブルごとにデータ アセット スキーマで生成されます。次のヘッダー項目が追加されます。
名前付け: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffix for live history views>
項目 | タイプ | 説明 |
---|---|---|
hdr__key_hash | バイナリ(20) |
すべてのレコードのプライマリ キーのハッシュ。 この列は、データ マート データ タスクでは生成されません。 |
hdr__key_id | int64 |
レコードごとに増加するシーケンス。 この列は、データ マート データ タスクでのみ生成されます。 |
hdr__store | varchar(10) |
これは、レコードが存在する場所を示します。
|
hdr__operation | string(1) |
このレコードの最新の操作。
|
hdr__deleted | bit |
hdr__operation が D または d であるかどうかに基づいて、レコードが論理的に削除されているかどうかを示します。 |