開発環境と本番環境を隔離するために、ワークスペースを基本モードから標準モードにスペックアップできます。
事前準備
作業を開始する前に、以下の点をご確認ください。
-
基本モードと標準モードのワークスペースにおける物理アーキテクチャやデータ開発ワークフローなどの違いを理解してください。詳細については、「ワークスペースモードの違い」をご参照ください。
-
データソースの作成方法および Data Development へのアタッチ方法を把握してください。詳細については、「データソース管理」および「データ開発の準備:コンピュートリソースまたはクラスターのアタッチ」をご参照ください。
制限事項
-
ワークスペースモードのスペックアップには Alibaba Cloud アカウントのみを使用できます。
-
ワークスペースで Data Development の新バージョンが有効になっている場合、基本モードから標準モードへのスペックアップはできません。
スペックアップの仕組み
スペックアップ後、プラットフォームは元の基本モードワークスペースの本番データソースから開発データソースを作成し、開発環境と本番環境を隔離します。
-
MaxCompute データソース:スペックアップ戦略は、Data Development (DataStudio) にコンピュートリソースがアタッチされているかどうかにより異なります。
-
Data Development にコンピュートリソースがアタッチされていない場合
-
プラットフォームは本番データソースをコピーして開発データソースを作成し、新しいデータソースの デフォルトアクセス主体 を Executor に設定します。
-
基本モードのワークスペース(本番データソース)内のデータソースの デフォルトアクセス主体 が タスクの所有者 の場合、スペックアップ後にその デフォルトアクセス主体 は Alibaba Cloud アカウント に更新されます。
-
-
Data Development にコンピュートリソースがアタッチされている場合
プラットフォームは本番データソースをコピーして開発環境に配置し、開発データソースの MaxCompute プロジェクト名に自動的に
_devサフィックスを追加します。本番プロジェクト名にすでに_devが含まれている場合は、さらに別の_devサフィックスが追加されます。たとえば、本番 MaxCompute プロジェクト名が
test_devの場合、スペックアップ後の対応する開発プロジェクト名はtest_dev_devになります。
-
-
MaxCompute 以外のデータソース:プラットフォームは本番データソースをコピーして開発データソースを作成します。両環境は同じ基盤となるデータベースを共有します。
以下の例は、MaxCompute ワークスペースを基本モードから標準モードにスペックアップすることに焦点を当てています。

|
カテゴリ |
スペックアップ前 |
スペックアップ後 |
|
データソース |
1 つ |
開発データソースが追加され、開発環境と本番環境でそれぞれ別のデータソースを使用できるようになります。 説明
|
操作手順
ワークスペースを基本モードから標準モードにスペックアップするには、Alibaba Cloud アカウントを使用して以下の手順を実行します。
この操作は取り消せません。慎重に実行してください。
DataWorks コンソール にログインします。目的のリージョンで、左側のナビゲーションウィンドウにある をクリックします。ドロップダウンリストからワークスペースを選択し、移動 管理センター をクリックします。
-
タブで、標準モードへのアップグレード の横にある モード をクリックします。
説明ワークスペースで Data Development の新バージョンが有効になっている場合、基本モードから標準モードへのスペックアップはできません。
-
標準モードへのアップグレード ダイアログボックスで、このスペックアップは取り消せません。このワークスペースをスペックアップしてもよろしいですか。 を選択し、スペックアップの開始 をクリックします。
MaxCompute への影響
以下のセクションでは、スペックアップが MaxCompute に与える影響(スペックアッププロセスおよび具体例を含む)について説明します。詳細については、「異なるモードのワークスペースにおける MaxCompute のデータアクセスと権限」をご参照ください。
スペックアッププロセス
スペックアップ後、DataWorks は元のワークスペースのメンバーを元のロールで新しい MaxCompute 開発プロジェクトに追加します。ただし、本番プロジェクトに対する権限は取り消されます。プロジェクトオーナーのみが本番プロジェクトの権限を保持します。
-
MaxCompute 開発プロジェクト(プロジェクト名形式:
projectname_dev)および開発データソースを作成します。 -
MaxCompute 開発プロジェクトにメンバーを追加します:DataWorks は
add userコマンドを使用して、ワークスペースメンバーをコンピュートエンジンレイヤーのプロジェクトに追加します。
-
元のメンバーの本番プロジェクト権限を取り消します:基本モードでは RAM ユーザーが本番環境に対して広範な権限を持ちますが、スペックアップ後はこれらの権限が取り消され、RAM ユーザーは
_devプロジェクトでのみ操作可能になります。
具体例
たとえば、ある企業が DataWorks に A という名前のワークスペースを持っています。管理者が 標準モードへのアップグレード をクリックすると、A_dev という名前の開発プロジェクトが作成されます。
-
ワークスペース A のメンバー、ロール、リソースがプロジェクト A_dev に複製されます。
-
元のワークスペース A のメンバー A1(開発者ロール)および B1(運用担当ロール)もプロジェクト A_dev に追加され、ロールは維持されます。
-
プロジェクト A は本番プロジェクトとなります。ユーザー A1 および B1 のプロジェクト A に対するデータ権限は取り消されます。デフォルトでは、テーブルに対する
SELECT権限やDROP権限がなくなり、本番データが保護されます。 -
DataStudio (Data Development) のデフォルト MaxCompute プロジェクトは A_dev になります。DataStudio で本番データをクエリするには、ProjectName.TableName 形式を使用します。Data Development では A_dev 環境のコードのみ編集可能です。プロジェクト A のコードを更新するには、A_dev からタスクをスケジューリングシステムに送信し、本番環境に公開する必要があります。公開およびレビューのプロセスにより、本番環境のコードの正確性が保証されます。
スペックアップ後は、元のワークスペースのデータに直接アクセスできなくなります。ロールベースの権限を申請する必要があります。デフォルトでは、DataStudio でクエリされるテーブルは開発環境のものです。本番テーブルにアクセスするには、必要な権限を申請し、ProjectName.TableName 形式を使用してください。
ワークスペースが標準モードにスペックアップされた後、RAM ユーザーに以前付与されていた本番プロジェクトの権限は取り消されます。コード内にアカウントの AccessKey が含まれている場合、権限関連のエラーが発生する可能性があります。
動作の変化
以下の表は、MaxCompute コンピュートリソースがアタッチされており、Alibaba Cloud アカウントによってワークスペースが運用されているという前提で、基本モードから標準モードへのスペックアップ後に RAM ユーザーの動作がどのように変化するかを示しています。
|
シナリオ |
基本モードワークスペース |
標準モードワークスペース |
|
リソース(テーブル/リソース/関数)の操作 |
直接操作が成功します。 説明
基本モードでは、タスクの実行に Alibaba Cloud アカウントの権限が使用されます。RAM ユーザーが操作を実行する場合でも、RAM ユーザーは Alibaba Cloud アカウントと同等の権限を実質的に持ちます。これらの権限は制限されないため、RAM ユーザーは本番データを直接操作でき、アクセスの制御が不可能になります。 |
|
|
環境およびアカウントへのアクセス |
基本モードには本番環境しか存在しません。すべてのコマンドは本番データに対して直接実行されます。
|
|
|
対応する環境のリソースへのアクセス |
projectname.tablename/resource/function |
|