ガバナンスコントロールがない場合、チームメンバーはデータウェアハウスのモデリング標準をバイパスして、DataStudio で直接 MaxCompute の物理テーブルを作成できてしまいます。DataWorks のデータモデリングにおけるシステム管理機能を使用すると、テーブル作成、DDL コード生成、モデル公開という 3 種類のガバナンスポリシーを定義・強制できます。これにより、システムは非準拠の操作を自動的にブロックし、コンピュートエンジンが生成する DDL 出力を標準化します。
適用範囲と制限事項
| ポリシー | 適用対象 | トリガー | 例外 |
|---|---|---|---|
| テーブル作成 | MaxCompute の物理テーブルのみ | DataStudio での送信または公開 | API 経由で作成されたテーブルはこのポリシーの対象外です |
| コード生成 | MaxCompute、Hive、MySQL、Hologres | — | — |
ワークスペースに対してテーブル作成ポリシーを有効にすると、そのポリシーは当該ワークスペースによって管理されるすべての開発スペースにも適用されます。
システム管理への移動
-
DataWorks コンソールにログインします。上部のナビゲーションバーで、リージョンを選択します。左側のナビゲーションウィンドウで、[データ開発と O&M] > [データモデリング] を選択します。ドロップダウンリストからワークスペースを選択し、[データモデリングへ移動] をクリックします。
-
[データモデリング] ページの上部のメニューバーで、[データウェアハウス計画] をクリックして [データレイヤー] ページを開きます。
-
左側のナビゲーションウィンドウで、[システム管理] をクリックします。
テーブル作成ポリシー管理
テーブル作成ポリシーの設定と有効化
[テーブル作成ポリシー管理] タブで、DataStudio からの送信または公開の前にデータモデリングのモデルを必要とする物理テーブル名を定義します。
| パラメーター | 説明 |
|---|---|
| ルール | DataStudio での物理テーブルの命名を制限します。テーブル名が特定のパターンで始まる必要があるかどうかを指定します。現在はテーブル名のプレフィックスにのみ適用されます。 |
| グループ | まとめて適用されるルールのコレクションです。異なる命名規則をカバーするために、複数のグループを追加できます。 |
| ルール間のロジック | 複数のルールをどのように組み合わせるかを定義します:Or (いずれか 1 つのルールに一致する必要がある) または And (すべてのルールに一致する必要がある)。 |
ポリシーを設定した後、手動で有効にすると、DataStudio で強制が有効になります。
例
以下のポリシーは、テーブル名が dim または dws で始まるテーブルの DataStudio での直接作成をブロックします。これらのプレフィックスを持つテーブルを作成するには、まず [データモデリング] > [ディメンショナルモデリング] でモデルを作成し、それを物理テーブルとして公開します。
ブロックされたテーブル作成の解決
DataStudio でポリシーに違反するテーブルを作成または変更すると、システムは送信および公開操作をブロックし、チェッカーアラートを表示します。
-
操作をブロックしたポリシーを表示します。 どちらかの方法を使用します:
方法 手順 方法 1 [不合格] にカーソルを合わせると理由が表示されます。その後、プロンプトに従って現在のワークスペースのテーブル作成ポリシーを表示します。 方法 2 [データモデリング] > [データウェアハウス計画] > [システム管理] に移動して、テーブル作成ポリシーを表示します。現在のワークスペースが別のモデリングスペースによって管理される開発スペースである場合は、そのモデリングスペースに移動します。 -
データモデリングでモデルを作成し、それを物理テーブルとして公開します。 データモデリングで同じ名前のモデルを作成し、物理テーブルとして公開します。
モデルの作成方法については、「ディメンショナルモデリング」をご参照ください。コンピュートエンジンに物理テーブルが既に存在し、その変更中にポリシーがトリガーされた場合は、リバースモデリング機能を使用して既存のテーブルからモデルを生成し、そのモデルを編集して再公開します。
コード生成ポリシー管理
コード生成ポリシーの設定
コード生成ポリシーは、DDL 文の COMMENT 句をビジュアルモデリング UI の表示フィールドにどのようにマッピングするかを定義します。
| DDL 要素 | マッピング先 |
|---|---|
COMMENT (テーブル) |
[表示名] または [説明] |
COMMENT (列) |
[フィールド表示名] または [説明] |
ポリシーを有効にすると、設定されたマッピングが以下の機能に適用されます:
-
スクリプトモードモデリング:サポートされているコンピュートエンジンの DDL 文からモデルを生成する際、
COMMENT句は定義されたマッピングを使用して解釈されます。 -
モデルのエクスポート:モデルを DDL 文にエクスポートする際、
COMMENT句は定義されたマッピングを使用して生成されます。 -
テーブル詳細:データマップの [詳細] タブで、テーブル用に生成された DDL 文は定義されたマッピングを反映します。
例
次の例では、[基本情報 - テーブル表示名] と [フィールド管理 - フィールド表示名] で設定されたポリシーを使用します。
スクリプトモード — COMMENT 句はテーブルとフィールドの表示名を反映します:
モデルのエクスポート — エクスポートされた DDL 文は同じマッピングを適用します:
公開ポリシー管理
公開ポリシーは、モデルを具現化する際に利用可能な公開モードを制御し、デフォルトの選択を設定します。
| パラメーター | 説明 |
|---|---|
| 有効な値 | モデルを公開する際に利用可能な公開モードです。1 つ以上のモードを設定します。 |
| デフォルト設定 | 公開時にデフォルトで選択されるモードです。[有効な値] にリストされているモードのいずれかである必要があります。 |
利用可能な公開モード:
| モード | 動作 |
|---|---|
| 増分公開 | モデルに加えられた変更のみを対応するコンピュートエンジンに公開します。 |
| 削除して再作成 | 以前に公開された物理テーブルをコンピュートエンジンから削除し、現在のモデルバージョンに基づいて再作成します。 |