お使いのコンピュートエンジンから多数の物理テーブルを一元管理する必要がある場合は、リバースモデリングを使用できます。この機能は、既存の物理テーブルから DataWorks のディメンショナルモデリングへ直接モデルを作成することで、冗長な作業をなくし、時間を大幅に節約します。本トピックでは、リバースモデリングの使用方法について説明します。
DataWorks のデータモデリング機能は、Kimball のディメンショナルモデリング方法論に従います。ディメンションテーブル、ファクトテーブル、集計テーブル、アプリケーションテーブルを設計・作成し、開発エンジンにモデルを公開し、既存の物理テーブルを論理モデルにリバースモデリングします。
モデリングの視点
ディメンショナルモデリングでは、モデルテーブルを共通レイヤー、アプリケーションレイヤー、未分類の 3 つのレベルに整理します。共通レイヤーは、再利用可能な統一メトリクス、ディメンション、詳細なファクトデータを構築するために使用し、データドメインまたは業務カテゴリの視点での管理をサポートします。アプリケーションレイヤーは、ビジネス固有の統計ニーズに対応し、業務カテゴリの視点のみをサポートします。レベルを選択した後、対応するディレクトリツリーでモデルテーブルを作成および管理できます。
前提条件
-
コンピュートエンジンに多数の物理テーブルがすでに存在し、ターゲットの DataWorks ワークスペースにデータソースが作成済みであること。データソースの作成に関する詳細については、「データソース管理」をご参照ください。
-
モデルが属するレイヤーを決定するために、データウェアハウス階層が作成済みであること。詳細については、「データウェアハウス階層の定義」をご参照ください。
-
共通レイヤーは、データインポートレイヤーからのパブリックデータを処理・統合して、統一されたディメンションとメトリクスを確立し、分析と統計のための再利用可能なファクトデータと集計データを構築します。アプリケーションレイヤーは、共通レイヤーによって処理・統合されたデータを使用して、実際の要件に基づいて特定のアプリケーションまたは製品のカスタマイズされた統計を生成します。
モデルは [Common Layer] または [Application Layer] に属することができます。各レイヤーで、対応する準備を完了しておく必要があります:
-
[Common Layer]:
-
[Application Layer]:
-
制限事項
リバースモデリングは、MaxCompute および E-MapReduce (EMR) Hive の本番環境にあるテーブルでのみサポートされています。
モデリングプロセス
リバースモデリングは、ビッグデータコンピュートエンジンから既存の物理テーブルをインポートし、DataWorks のディメンショナルモデリングのモデルに変換します。
-
リバースモデリングポリシーを設定します。
-
モデリング範囲の定義:モデルを作成する前に、ビジネス要件に基づいてリバースモデリングするテーブルを決定します。
ワークスペースとコンピュートエンジンインスタンスを指定し、テーブル名の一致方法として完全一致またはあいまい一致を選択します。一致したテーブルはモデルに変換されます。
-
モデリングルールの定義:生成されるモデルのデータウェアハウス階層と命名規則を指定します。
チェッカーまたはカスタムメソッドを使用して、モデル名を標準化できます。一貫した命名規則は、モデルのビジネスタイプとデータ粒度を明確にするのに役立ちます。チェッカーの詳細については、「データウェアハウス階層チェッカーの設定」および「チェッカーの使用」をご参照ください。
-
実行方法の選択:すべてのターゲットモデルを作成する全量更新を実行するか、ディメンショナルモデリングにまだ存在しないモデルのみを作成する増分更新を実行するかを決定します。
説明リバースモデリングは元に戻せません。モデルの生成に使用されたポリシーは変更できません。ビジネス要件に基づいて慎重にポリシーを計画してください。
詳細については、「リバースモデリングポリシーの設定」をご参照ください。
-
-
モデルの解析と照合
DataWorks はテーブルを解析し、ポリシーに基づいて作成するモデルを識別します。
-
モデル情報の確認
DataWorks によって生成された初期モデルには、調整が必要な場合があります。ビジネス要件に合わせて、[Data Domain] や [Business Process] などの基本的なモデル情報を確認し、変更する必要があります。詳細については、「モデル情報の確認」をご参照ください。
-
最終モデルの生成
モデルが生成された後、そのステータスと詳細を表示できます。モデルの生成に失敗した場合は、エラー情報を確認して問題を迅速に特定し、解決できます。
説明-
正常に生成されたモデルは、対応するコンピュートエンジンに自動的に実体化されます。それらを公開する必要はありません。
-
正常に生成されたモデルはディメンショナルモデリングに保存されます。ディメンショナルモデリングページに移動して、それらを表示および管理できます。詳細については、「モデル管理」をご参照ください。
-
操作手順
-
Reverse Modeling ページに移動します。
-
DataWorks コンソールにログインします。 左側のナビゲーションウィンドウで、 を選択します。 表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[データモデリングに移動] をクリックします。
-
Data Modeling ページの上部のナビゲーションバーで Dimensional Modeling をクリックすると、Dimensional Modeling ページに移動します。
-
Dimensional Modeling ページの左側のナビゲーションペインで、Reverse Modeling をクリックしてReverse Modeling ページに移動します。
-
-
モデリングを開始します。
-
リバースモデリングを初めてお使いの場合は、Reverse Modeling ページの中央にあるStart Nowをクリックします。
-
以前にリバースモデリングを使用したことがある場合は、Modeling Tasks ページの右上隅にある Start Reverse Modeling をクリックします。
-
-
リバースモデリングポリシーを設定します。
説明リバースモデリングは元に戻せません。モデルの生成に使用されたポリシーは変更できません。ビジネス要件に基づいて慎重にポリシーを計画してください。
-
ポリシー設定を構成します。
パラメーター
説明
[Workspace]
リバースモデリング対象のテーブルが含まれる DataWorks ワークスペースを選択します。
説明現在のユーザーがメンバーである DataWorks ワークスペースのみ選択できます。別のワークスペースを選択するには、そのワークスペースにユーザーをメンバーとして追加します。詳細については、「ワークスペースレベルのサービスの権限管理」をご参照ください。
[Compute Engine Type]
リバースモデリングは、MaxCompute および E-MapReduce (EMR) Hive の本番環境にある物理テーブルでのみサポートされています。
[Compute Engine Instance]
リバースモデリング対象のテーブルが含まれるコンピュートエンジンインスタンスを選択します。
[Table Name Matching Rule]
ターゲットのコンピュートエンジンにあるテーブルを照合する方法を選択します。一致したテーブルはリバースモデリングされます。利用可能な方法は次のとおりです:
-
[Fuzzy Match]:キーワードを入力して、そのキーワードを名前に含むすべてのテーブルを照合します。
-
[Exact Match]:1 つ以上のテーブルの完全な名前を入力します。
説明-
複数のテーブル名を指定するには、セミコロン (;) を使用してスペースを入れずに区切ります。
-
一致するテーブルがない場合、タスクは失敗し、モデルは生成されません。
[Data Layer of Model After Reverse Modeling]
-
[Common Layer]:このレイヤーを選択して、ファクトテーブル、ディメンションテーブル、または集計テーブルを作成します。
-
[Application Layer]:このレイヤーを選択して、アプリケーションテーブルまたはディメンションテーブルを作成します。
[Table Naming Rule]
この機能は、Table Name Matching Rule に一致するテーブル名を解析するために使用されます。このプロセスにより、リバースモデリング後のモデル名が標準化され、対応するデータウェアハウスレイヤーにマウントされます。詳細は次のとおりです。
-
解析ルール
-
システムは、一致したテーブルの名前とその中のアンダースコア (_) を解析します。
テーブル名には、最大 9 個のアンダースコアを含めることができます。アンダースコア間のセグメントは、Business Process、Data Domain、または Custom コンテンツなどの情報を表すように設定できます。
-
テーブル名にデータウェアハウス階層の識別子が含まれている場合、生成されたモデルはそのレイヤーに自動的に割り当てられます。
説明テーブル名に、Data Domain や Business Process などの必要なレイヤー識別子が含まれていない場合、モデルのレイヤー割り当ては空になります。後で Confirm Model Information ステップでレイヤーを割り当てることができます。
-
-
解析方法
-
[Table Name Checker]:事前に設定されたチェッカーを選択してテーブル名を解析します。チェッカーの作成方法については、「データウェアハウス階層チェッカーの設定」と「チェッカーの使用」をご参照ください。
-
[Custom Rule]: Business Process、Data Domain、Business Category、Custom コンテンツなどの要素を組み合わせてカスタム命名規則を作成し、テーブル名を解析します。
-
[Execution Method]
モデルを作成する方法を選択します:
-
[Full Update]:DataWorks は、ディメンショナルモデリング内の一致したすべてのテーブルに対してモデルを作成します。
このメソッドを選択すると、一致したすべてのテーブルが新しいモデルとして再生成されます。
説明Dimensional Modeling に一致したテーブルのモデルがすでに存在する場合、Full Update を選択すると、既存のモデルは削除され、新しいモデルが作成されます。
-
[Incremental Update]:DataWorks は、一致したテーブルに対して次のアクションを実行します:
-
ディメンショナルモデリングに既に対応するモデルがあるテーブルを識別し、除外します。
-
ディメンショナルモデリングにまだモデルがない、一致したテーブルに対してのみ新しいモデルを作成します。
このメソッドを選択すると、既存の変更されていないモデルの再作成を回避できます。
-
-
-
Create Model をクリックして、ポリシーに基づいてテーブルを解析します。
-
-
モデル情報の確認
-
モデル情報の確認
DataWorks は、ポリシーに基づいて初期モデルを生成します。 Table Type、およびそれに関連付けられた Data Layer と Data Domain などの情報を調整したり、モデル化しないテーブルを削除したりすることができます。
-
Generate Model をクリックしてモデルを作成します。
-
-
結果の表示
モデルが生成された後、正常に作成された各タイプのモデルの数と、失敗したモデルの詳細を表示できます。Error Logs をクリックすると、問題を迅速に特定してトラブルシューティングできます。
説明-
正常に生成されたモデルは、対応するコンピュートエンジンに自動的に実体化されます。それらを公開する必要はありません。
-
正常に生成されたモデルはディメンショナルモデリングに保存されます。ディメンショナルモデリングページに移動して、それらを表示および管理できます。詳細については、「モデル管理」をご参照ください。
-
モデリングタスクの表示
ページで、作成したタスクの詳細と操作ログを表示できます。
|
エリア |
説明 |
|
フィルターエリア |
タスクを Task ID、Operated By、または Operation Date で絞り込みます。 |
|
タスクリストエリア |
このエリアには、各タスクのルールや結果などの詳細が表示されます。
|
次のステップ
リバースモデリングが完了したら、次の操作を実行できます:
-
ディメンショナルモデリングページのモデルディレクトリで作成されたモデルを表示および管理します。詳細については、「モデル管理」をご参照ください。
-
DataStudio を使用して、関連するデータ開発タスクを実行します。DataStudio の機能の概要については、「DataStudio 機能ガイド」をご参照ください。