DataWorks は、データ本番におけるさまざまなセキュリティ制御要件を満たすために、基本モードと標準モードのワークスペースを提供しています。このトピックでは、物理アーキテクチャの違いやノード開発への影響など、さまざまな側面から基本モードのワークスペースと標準モードのワークスペースの違いについて説明します。
背景情報
このトピックは、次の表に示すセクションで構成されています。
セクション | 説明 |
基本モードと標準モードのワークスペースの物理アーキテクチャについて説明します。 | |
ノードが属するワークスペースの物理属性に基づいた、ノードの開発と運用保守のメカニズムについて説明します。 | |
さまざまなワークスペースモードのメリットとデメリットについて説明します。 | |
標準モードのワークスペースで異なるロールが割り当てられたユーザー間のコラボレーションに基づいて実装されるプロセス制御について説明します。 | |
基本モードと標準モードのワークスペースでさまざまな DataWorks サービスを操作するときに使用されるデータソースについて説明します。基本モードのワークスペースは本番環境のみを提供します。標準モードのワークスペースは、開発環境と本番環境の両方を提供します。 | |
基本モードのワークスペースを使用していて、開発環境と本番環境の間でデータを分離したい場合は、このセクションを参照してください。 |
注意事項
ワークスペースのモードによって、データソースを追加するための要件が異なります。たとえば、標準モードのワークスペースの場合、開発環境のワークスペースと本番環境の同じワークスペースに別々にデータソースを追加する必要があります。こうすることで、環境間でデータを物理的に分離できます。DataWorks ワークスペースにデータソースを追加する方法については、「データソースを追加および管理する」をご参照ください。
DataWorks ワークスペースに追加するデータソースの特性によって、プロジェクトまたはデータベースを跨いでリソースにアクセスできるかどうかが決まります。開発環境と本番環境のワークスペースに異なるデータソースを追加する場合、データソースの特性によって、開発環境から本番環境のテーブル、リソース、関数などのオブジェクトにアクセスできるかどうかが決まります。
デフォルトでは、標準モードのワークスペースの場合、開発環境のノードは定期的にスケジュールされず、ノードは本番環境にデプロイされた後にのみ定期的にスケジュールされます。
基本モードと標準モードのワークスペース
次の表は、さまざまな側面から基本モードと標準モードのワークスペースの物理アーキテクチャを比較したものです。
ビジネス要件に基づいて、基本モードまたは標準モードのワークスペースを作成できます。さまざまな要件を満たすことができるため、標準モードのワークスペースを作成してデータを開発することをお勧めします。たとえば、標準モードのワークスペースを使用する場合、コード、計算リソース、権限管理、ノードデプロイプロセス制御は、開発環境と本番環境の間で分離されます。
基本モードのワークスペースを使用していて、現在のワークスペースのコードを保持したい場合は、ワークスペースのモードをアップグレードできます。詳細については、「シナリオ:ワークスペースを基本モードから標準モードにアップグレードする」をご参照ください。
次の表では、さまざまな側面から基本モードと標準モードのワークスペースの物理アーキテクチャの違いについて説明します。
側面 | 基本モード | 標準モード(推奨) |
追加されたデータソースの数 | 1 つの DataWorks ワークスペースが 1 つのデータソースに対応します。 | 1 つの DataWorks ワークスペースが 2 つのデータソースに対応します。こうすることで、データソースは開発環境と本番環境の間で分離されます。 説明 環境間でデータを物理的に分離するには、開発環境のワークスペースと本番環境の同じワークスペースに別々にデータソースを追加する必要があります。 |
DataWorks 環境 | 1 つのデータソースが DataWorks 本番環境として機能します。 | データソースの 1 つが DataWorks 開発環境として機能し、もう 1 つのデータソースが DataWorks 本番環境として機能します。 説明 開発環境と本番環境のワークスペースに異なるデータソースを追加できます。例:
|
本番環境におけるノードの開発と運用保守に対するさまざまなワークスペースモードの影響
項目 | 基本モード | 標準モード(推奨) |
本番環境におけるノードの開発プロセス制御の違い | ノードをコミットすると、ノードはスケジューリングシステムに入ります。その後、ノードは定期的にスケジュールされてデータが生成されます。 (本番環境にコミット) | 最初にノードを開発環境にコミットし、次に自動スケジューリングのために本番環境にノードをデプロイする必要があります。 (開発環境にコミットし、本番環境にデプロイ) 説明 標準モードのワークスペースの場合、本番環境のノードのみを自動的にスケジュールできます。 |
本番環境におけるノードの運用保守権限管理の違い | 開発者は本番環境のノードのコードを直接変更できます。 | 開発者は [DataStudio] ページでのみノードコードを変更およびコミットできますが、ノードコードを本番環境に直接デプロイすることはできません。「ワークスペースオーナー」、「ワークスペース管理者」、または「運用保守」ロールが割り当てられた後にのみ、ノードコードをデプロイできます。
|
本番環境におけるデータの権限管理の違い | 開発者は本番データを使用して直接テストを実行できます。これは、本番データのセキュリティを保証するものではありません。 | 開発者は、開発環境のテストデータを使用してテストを実行できます。また、必要な権限を取得した後、または [セキュリティセンター] で操作を実行するためのリクエストが承認された後、開発環境の本番テーブルデータを使用して機能を検証することもできます。 説明
|
データアクセス ID の違い | 統合 ID を使用して、本番環境で直接操作を実行します。 MaxCompute、Hologres、E-MapReduce(EMR)、Cloudera's Distribution including Apache Hadoop(CDH)などのデータソースのアクセス ID:Alibaba Cloud アカウント、RAM ユーザー、RAM ロール(MaxCompute でのみサポート)、およびノードオーナー。 説明 前述のタイプのデータソース以外(AnalyticDB for MySQL データソースや AnalyticDB for PostgreSQL データソースなど)をこのモードのワークスペースに追加する場合、データソースの構成時に指定したデータベースアカウントのみが特定の環境で操作を実行できます。このアカウントの DataWorks ワークスペースでの権限は、AnalyticDB for MySQL データベースまたは AnalyticDB for PostgreSQL データベースでの権限と同じです。 |
説明 MaxCompute、Hologres、EMR、CDH
前述のタイプのデータソース以外(AnalyticDB for MySQL データソースや AnalyticDB for PostgreSQL データソースなど)をこのモードのワークスペースに追加する場合、データソースの構成時に指定したデータベースアカウントのみが特定の環境で操作を実行できます。このアカウントの DataWorks ワークスペースでの権限は、AnalyticDB for MySQL データベースまたは AnalyticDB for PostgreSQL データベースでの権限と同じです。 |
さまざまなワークスペースモードのメリットとデメリット
項目 | 基本モード | 標準モード |
メリット | このモードのワークスペースはシンプルで使いやすくなっています。 開発エンジニアに「開発」ロールを割り当てるだけで、すべてのデータウェアハウス開発操作を完了できます。 | このモードのワークスペースは安全で標準化されています。
|
デメリット | 本番環境では、不安定性とデータセキュリティの低下のリスクが発生する可能性があります。
| データの開発と本番プロセスはより複雑です。ほとんどの場合、プロセスには複数の開発者が関与します。 |
サンプルシナリオ:標準モードのワークスペースが使用プロセスに与える影響
標準モードのワークスペースの開発と本番の分離機能は、データモデリング設計、データ処理、コードデプロイなどのプロセスに影響を与えます。
付録:基本モードと標準モードのワークスペースでさまざまな DataWorks サービスを操作するときに使用されるデータソース
[DataStudio] の [計算リソース] ページで、ワークスペースの DataStudio サービスに関連付けられているデータソースに関する情報を表示できます。次の表では、基本モードと標準モードのワークスペースでさまざまな DataWorks サービスを操作するときに使用されるデータソースについて説明します。
サービス | 標準モード | 基本モード |
DataStudio | 開発環境のインスタンス、プロジェクト、データベースなどのデータソースが使用されます。 | 本番環境のインスタンス、プロジェクト、データベースなどのデータソースが使用されます。 |
オペレーションセンター |
|
付録:基本モードのワークスペースの開発環境と本番環境の間でデータを分離する方法
要件:基本モードのワークスペースを使用していて、開発環境と本番環境の間でデータを分離したい。
解決策:基本モードのワークスペースを 2 つ用意します。ワークスペース 1 は開発環境として、ワークスペース 2 は本番環境として機能します。ワークスペース間のデプロイ方法を使用して、ワークスペース 1 のノードをワークスペース 2 にデプロイします。こうすることで、環境間でデータを分離できます。
デメリット:本番環境として機能するワークスペースの [DataStudio] で本番コードを直接変更できます。これにより、本番環境のコード更新エントリに不整合が生じ、開発プロセス全体に影響を与えます。
提案:開発プロセスをより適切に制御するために、ワークスペースを基本モードから標準モードにアップグレードすることをお勧めします。詳細については、「シナリオ:ワークスペースを基本モードから標準モードにアップグレードする」をご参照ください。