DataWorks で MaxCompute タスクを開発および管理するには、目的の DataWorks ワークスペースに MaxCompute プロジェクトをデータソースとして追加する必要があります。これにより、DataWorks のさまざまなサービスで MaxCompute データソースを使用し、データ同期、データ開発、データ分析などの操作を MaxCompute データソースに基づいて実行できます。
前提条件
MaxCompute がアクティブ化されていること。詳細については、「MaxCompute のアクティブ化」をご参照ください。
説明MaxCompute データソースを追加するワークスペースと同じ [リージョン] に MaxCompute プロジェクトを作成することをお勧めします。リージョンが異なる場合、ワークスペースにリージョンを跨いだデータソースのみを追加できます。データソースは、データ開発または定期的なタスクスケジューリングのために DataStudio に関連付けることはできません。データソースは、データ同期にのみ使用できます。
必要なリソースグループが購入され、構成されていること。
MaxCompute データソースが追加されると、データ同期、コンピューティングタスクの開発とスケジューリング、DataService Studio API の生成などのシナリオでデータソースを使用できます。これらのシナリオでは、Data Integration のリソースグループ、スケジューリングのリソースグループ、および DataWorks の DataService Studio のリソースグループが個別に必要です。
MaxCompute データソースの使用シナリオに基づいて必要なリソースグループを購入および構成し、データソースとリソースグループ間のネットワーク接続を事前に確立する必要があります。DataWorks によって提供されるリソースグループとリソースグループの選択方法については、「概要」をご参照ください。
DataWorks ワークスペースが作成されているか、使用するアカウントが目的のワークスペースにメンバーとして追加されていること。
目的の MaxCompute プロジェクトをワークスペースにデータソースとして追加する必要があります。これにより、データソースを使用してワークスペースでデータ開発操作を実行できます。さらに、購入したリソースグループをワークスペースに関連付け、リソースグループとデータソース間のネットワーク接続を確立する必要があります。ワークスペースの作成と管理方法については、「ワークスペースの作成と管理」をご参照ください。
説明同じ MaxCompute プロジェクトを複数のワークスペースにデータソースとして追加できます。
制限事項
MaxCompute データソースは、MaxCompute データソースが次の条件を満たしている場合にのみ DataStudio に関連付けることができます。データソースの追加元となる MaxCompute プロジェクトは、ワークスペースと同じリージョンにあり、同じ Alibaba Cloud アカウントに属している必要があります。これにより、MaxCompute データソースをデータ開発と定期的なタスクスケジューリングに使用できます。
現在の Alibaba Cloud アカウントに属していない MaxCompute プロジェクトを、現在の Alibaba Cloud アカウント内のワークスペースにデータソースとして追加できます。データソースが追加された後、RAM ロールのみを使用して関連する MaxCompute プロジェクトにアクセスできます。アカウントを跨いで追加された MaxCompute データソースは、データ開発または定期的なタスクスケジューリングには使用できません。詳細については、「シナリオ: アカウントを跨いでのデータソースの追加」をご参照ください。
[デプロイ] ロールと [ワークスペース管理者] ロールのみを使用して、データソースを追加できます。メンバーへのロールの割り当て方法については、「ワークスペースに RAM ユーザーをメンバーとして追加し、メンバーにロールを割り当てる」をご参照ください。
説明上記のワークスペースレベルのロールの権限に加えて、MaxCompute データソースを追加する際には、MaxCompute 側で権限を管理する必要もあります。DataWorks コンソールに表示される手順に従って、権限を管理できます。詳細については、次のセクションを参照してください。
権限の説明
RAM ユーザーまたは RAM ロールを使用して MaxCompute データソースを追加します。MaxCompute データソースを追加 するために RAM ユーザーまたは RAM ロールを使用する場合、RAM ユーザーまたは RAM ロールに MaxCompute の odps:ListProjects 権限と MaxCompute プロジェクトの Super_Administrator ロールの権限が付与されていることを確認する必要があります。
本番環境で MaxCompute データソースのデフォルトアクセス ID として RAM ユーザーまたは RAM ロールを指定します。
本番環境で MaxCompute データソースのデフォルトアクセス ID を、現在のログオンアカウントではない ID (別の Alibaba Cloud アカウントや別のロールなど) に設定する場合、そのアカウントまたはロールに admin または Super_Administrator ロールの権限が付与されている必要があります。データソースが追加されると、アカウントまたはロールには、本番環境で関連する MaxCompute プロジェクトの Role_Project_Scheduler ロールの権限が付与されます。デフォルトアクセス ID の構成方法については、このトピックの「データソースの追加」セクションを参照してください。
本番環境のワークスペースに追加された MaxCompute データソースのデータは、本番環境でデータソースを追加するときに MaxCompute データソースに指定したデフォルトアクセス ID に属します。本番環境で別のアカウントを使用して MaxCompute データソースのテーブルにアクセスしたり、操作を実行したりする場合、[セキュリティセンター] で必要な権限をリクエストする必要があります。詳細については、「MaxCompute での権限の管理」および「概要」をご参照ください。
説明ベーシックモードのワークスペースでは、きめ細かい権限管理を実行できません。この例では、MaxCompute データソースは標準モードのワークスペースに追加されます。
データソースを追加するためのエントリポイント
DataWorks コンソール にログオンします。上部のナビゲーションバーで、目的のリージョンを選択します。左側のナビゲーションペインで、 を選択します。表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[管理センターに移動] をクリックします。
SettingCenter ページの左側のナビゲーションペインで、
を選択します。データソースページで、[データソースの追加] をクリックします。「データソースの追加」ダイアログボックスで、[maxcompute] をクリックします。「MaxCompute データソースの追加」ページで、パラメーターを構成して MaxCompute データソースを追加します。
Data Integration のデータソースページに移動して、MaxCompute データソースを追加することもできます。Data Integration のデータソースページでは、本番環境にのみデータソースを追加できます。データソースが追加された後、[settingcenter] の [データソース] ページでデータソースを管理する必要があります。Data Integration に移動して、このサービスで追加できるデータソースの種類を表示できます。
データソースページに移動します。
MaxCompute データソースの追加
MaxCompute プロジェクトがある場合は、MaxCompute プロジェクトに基づいて現在のワークスペースに MaxCompute データソースを追加できます。MaxCompute プロジェクトがない場合は、MaxCompute コンソールで MaxCompute プロジェクトを作成する必要があります。詳細については、「MaxCompute プロジェクトの作成」をご参照ください。
標準モードのワークスペースを使用する場合は、開発環境と本番環境で個別にデータソースを追加する必要があります。ワークスペースモードについては、「ベーシックモードのワークスペースと標準モードのワークスペースの違い」をご参照ください。
既存の MaxCompute プロジェクトに基づいて DataWorks に MaxCompute データソースを追加する場合、使用するアカウントに odps:ListProjects 権限が付与され、MaxCompute プロジェクトの Super_Administrator ロールが割り当てられていることを確認する必要があります。
この方法を使用して MaxCompute データソースを追加するには、次の手順を実行します。
「基本情報」セクションのパラメーターを構成します。
パラメーター
説明
データソース名
DataWorks でのデータソースの名前。名前は、現在のテナント内で一意である必要があります。
認証方法
新しいデータソースの場合、このパラメーターの値は Alibaba Cloud アカウントと Alibaba Cloud RAM ロールに固定されています。
説明AccessKey ペアを使用して追加された既存のデータソースの場合、このパラメーターの値をデータソースの Alibaba Cloud アカウントと Alibaba Cloud RAM ロールに変更することをお勧めします。
Alibaba Cloud アカウント
使用する MaxCompute プロジェクトが現在の Alibaba Cloud アカウントに属しているか、別の Alibaba Cloud アカウントに属しているかを指定します。有効な値:
[現在の Alibaba Cloud アカウント]: MaxCompute プロジェクトは現在の Alibaba Cloud アカウントに属しています。
[別の Alibaba Cloud アカウント]: MaxCompute プロジェクトは別の Alibaba Cloud アカウントに属しています。
構成する必要があるその他のパラメーターは、「Alibaba Cloud アカウント」パラメーターの値によって異なります。これらのパラメーターの構成方法の詳細については、以下のその他の項目の説明を参照してください。
リージョン
使用する MaxCompute プロジェクトが存在するリージョン。
説明選択したリージョンがワークスペースが存在するリージョンと異なる場合、MaxCompute プロジェクトをデータソースとして追加した後、ワークスペース内の DataStudio に MaxCompute データソースを関連付けることはできません。これは、データソースを DataStudio または Operation Center で使用できず、データ同期のために Data Integration でのみ使用できることを示しています。
その他の項目 (Alibaba Cloud アカウントパラメーターを現在の Alibaba Cloud アカウントに設定)
[alibaba Cloud アカウント] パラメーターを [現在の Alibaba Cloud アカウント] に設定した場合、次のパラメーターを構成する必要があります。
MaxCompute プロジェクト名: 選択したリージョンでデータソースとして追加する MaxCompute プロジェクトの名前。
説明目的の MaxCompute プロジェクトを選択できない場合は、プロジェクトの [super_administrator] ロールを現在のログオンアカウントに割り当てます。詳細については、このトピックの「権限の説明」セクションを参照してください。
デフォルトアクセス ID: 現在のワークスペースでデータソースにアクセスするために使用されるデフォルトアクセス ID。
開発環境: このパラメーターの値はExecutor に固定されています。
本番環境: このパラメーターの値は、Alibaba Cloud アカウント、Alibaba Cloud RAM ユーザー、または Alibaba Cloud RAM ロールのいずれかになります。
説明[administratoraccess] ポリシーがアタッチされている Alibaba Cloud アカウント、または RAM ユーザーまたは RAM ロールのみが、開発環境と本番環境で任意のアクセス ID を選択するために使用できます。
本番環境で MaxCompute データソースのデフォルトアクセス ID として RAM ユーザーまたは RAM ロールを指定します。
本番環境で MaxCompute データソースのデフォルトアクセス ID を、現在のログオンアカウントではない ID (別の Alibaba Cloud アカウントや別のロールなど) に設定する場合、そのアカウントまたはロールに admin または Super_Administrator ロールの権限が付与されている必要があります。データソースが追加されると、アカウントまたはロールには、本番環境で関連する MaxCompute プロジェクトの Role_Project_Scheduler ロールの権限が付与されます。
本番環境のワークスペースに追加された MaxCompute データソースのデータは、本番環境でデータソースを追加するときに MaxCompute データソースに指定したデフォルトアクセス ID に属します。本番環境で別のアカウントを使用して MaxCompute データソースのテーブルにアクセスしたり、操作を実行したりする場合、[セキュリティセンター] で必要な権限をリクエストする必要があります。詳細については、「MaxCompute での権限の管理」および「概要」をご参照ください。
その他の項目 (Alibaba Cloud アカウントパラメーターを別の Alibaba Cloud アカウントに設定)
[alibaba Cloud アカウント] パラメーターを [別の Alibaba Cloud アカウント] に設定した場合、次のパラメーターを構成する必要があります。
Alibaba Cloud アカウントの UID: データソースとして追加する MaxCompute プロジェクトが属する Alibaba Cloud アカウントの UID。
MaxCompute プロジェクト名: 現在のワークスペースにデータソースとして追加する MaxCompute プロジェクトの名前。
RAM ロール: MaxCompute プロジェクトにアクセスするために使用する RAM ロール。選択する RAM ロールは、次の条件を満たしている必要があります。
RAM ロールは、選択した Alibaba Cloud アカウント内で作成されます。
RAM ロールは、DataWorks が MaxCompute プロジェクトにアクセスできるように、現在のログオンアカウントに割り当てられます。
RAM ロールは、選択した MaxCompute プロジェクトに追加されます。
説明アカウントを跨いでの MaxCompute データソースの追加方法については、「シナリオ: アカウントを跨いでのデータソースの追加」をご参照ください。
選択した MaxCompute プロジェクトとワークスペースが異なる Alibaba Cloud アカウントに属している場合、MaxCompute プロジェクトをデータソースとして追加した後、ワークスペース内の DataStudio に MaxCompute データソースを関連付けることはできません。これは、データソースを DataStudio または Operation Center で使用できず、データ同期のために Data Integration でのみ使用できることを示しています。
エンドポイント
DataWorks が MaxCompute データソースとして追加する MaxCompute プロジェクトにアクセスするために使用するエンドポイントの構成方法。エンドポイントには、MaxCompute サービスのエンドポイントと、ローカルデータまたはクラウドデータソースのデータをアップロードおよびダウンロードするために使用できる Tunnel サービスのエンドポイントが含まれます。次の構成方法がサポートされています。
自動調整: DataWorks は、実際の状況に基づいてエンドポイントを自動的に一致させます。このオプションを選択することをお勧めします。
説明選択した MaxCompute プロジェクトとワークスペースが異なるリージョンにあり、「エンドポイント」パラメーターを「自動調整」に設定した場合、DataWorks はデフォルトで MaxCompute サービスのパブリックエンドポイント経由でデータを読み取り、ダウンロードします。
カスタム構成: このオプションを選択した場合は、MaxCompute サービスのエンドポイントと Tunnel サービスのエンドポイントを手動で構成する必要があります。エンドポイントは、選択したリージョンによって異なります。詳細については、「エンドポイント」をご参照ください。
データソースとリソースグループ間のネットワーク接続をテストします。
リソースグループは、使用シナリオに基づいて、Data Integration のリソースグループ、スケジューリングのリソースグループ、DataService Studio のリソースグループに分類されます。さまざまな種類のリソースグループの詳細については、「概要」をご参照ください。
[接続構成] セクションで使用したいリソースグループを見つけて、データソースとリソースグループ間のネットワーク接続をテストできます。ネットワーク接続テストが失敗した場合、データソースを使用するタスクを実行できません。
説明データソースが DataWorks に追加されると、DataWorks は、データソースの追加元となる MaxCompute プロジェクトに選択したデフォルトアクセス ID を追加し、MaxCompute プロジェクトの関連する権限を ID に付与します。承認が完了する前に、ネットワーク接続テスト中に権限がないというエラーが報告される場合があります。この場合、データソースを保存した後、しばらく待つ必要があります。
次のステップ
データ開発のスムーズな進行を確実にするために、関連する操作を実行する前に、「DataWorks での MaxCompute タスク開発の使用上の注意」を読んで、DataWorks での MaxCompute の使用方法、MaxCompute を使用したデータ開発の料金、環境の準備、権限管理などの情報を確認することをお勧めします。
データソースが追加された後、ビジネス要件に基づいて次の操作を実行できます。
DataWorks DataStudio と Operation Center は、MaxCompute タスクの開発とスケジューリングの機能を提供します。MaxCompute データソースに基づいて MaxCompute タスクを開発したり、MaxCompute タスクを定期的にスケジューリングしたりする場合は、DataWorks コンソールの DataStudio ページに移動し、MaxCompute データソースを DataStudio に関連付ける必要があります。
説明MaxCompute データソースは、データソースの追加元となる MaxCompute プロジェクトが、データソースが追加されるワークスペースと同じリージョンにあり、同じ Alibaba Cloud アカウントに属している場合にのみ DataStudio に関連付けることができます。
DataWorks Data Integration は、MaxCompute データソースからデータを読み取り、MaxCompute データソースにデータを書き込むための MaxCompute Reader と MaxCompute Writer を提供します。ビジネス要件に基づいて、DataStudio で MaxCompute データソースのバッチまたはリアルタイム同期タスクを構成するか、Data Integration で MaxCompute データソースの同期タスクを構成して、データ同期を実行できます。
データソースの管理: SettingCenter のデータソースページに移動して、データソースの管理操作を実行できます。たとえば、データソースを編集または削除できます。
FAQ
Q: 現在のワークスペースに MaxCompute データソースを追加すると、本番環境のデフォルトアクセス ID に [alibaba Cloud RAM ユーザー] が選択されます。RAM ユーザーの AccessKey ペアが無効な場合、タスクの実行時に「Invalid credentials - accessKeyId not found
」というエラーメッセージが表示されます。どうすればよいですか?
A: 現在のワークスペースで MaxCompute データソースにアクセスするために使用されるデフォルトアクセス ID を変更するには、次の手順を実行します。
Alibaba Cloud アカウントを使用して、RAM ユーザーの AccessKey ペアを再作成します。詳細については、「AccessKey の作成」をご参照ください。
MaxCompute コンソールで RAM ユーザーに権限を付与します。詳細については、「承認操作」をご参照ください。
MaxCompute データソースの追加 セクションの手順を参照して、現在のワークスペースで MaxCompute データソースにアクセスするために使用されるデフォルトアクセス ID を、AccessKey ペアが再作成された RAM ユーザーに変更します。