安定性と遅延に関する特定の要件を持つMaxComputeでの大規模なデータ伝送の場合、データ伝送サービスの排他的なリソースグループにより、速度とネットワーク条件が強化されます。 これは効率を改善し、送信時間を短縮する。 このトピックでは、これらの排他的リソースグループを購入および利用する方法について説明します。
背景情報
MaxComputeは、お客様が使用する各リージョンで無料のパブリックデータ送信サービスリソースグループを提供し、データ同期の安定性と同時実行性を強化するためのサブスクリプションベースの排他的データ送信サービスリソースグループを提供します。 次の表に、これら2つのリソースグループタイプの比較を示します。
リソースグループタイプ | 料金の説明 | サポートされるリージョン | 使用上の注意 |
パブリックデータ送信サービスリソースグループ | 無料 | すべてのMaxComputeリージョンで利用可能 |
|
専用データ送信サービスリソースグループ (サブスクリプション) | サブスクリプション。購入した同時実行スロットの数に基づいて課金されます。 詳細については、「排他的データ送信サービスリソースグループ料金」をご参照ください。 |
| 排他的データ送信サービスのリソースグループを購入した後、MaxComputeは、購入したリソースが使用のためだけに完全にロックされ、他のテナントがそれらを使用できないようにします。 これにより、データ転送リソースの排他性が保証され、データ転送の安定性も向上します。 |
ネットワークと地域の状態を確認する
データ伝送サービスの排他的リソースグループを購入する前に、ネットワークとリージョンの条件が互換性があることを確認する必要があります。
アクセスはVPCネットワークに制限され、パブリックネットワークアクセスはサポートされていません。
データ送信は、同じリージョン内のサービスに制限されます。 現時点では、クロスリージョンサービスはサポートされていません。 データ送信タスクのリージョンに基づいてリソースグループを購入します。
データ伝送サービスのその他の制限については、「データ伝送サービスの制限」をご参照ください。
データ伝送サービス専用のリソースグループを購入する
MaxComputeコンソールにログインします。 左上隅でリージョンを選択し、左側のナビゲーションウィンドウから [ワークエリア] > [クォータ管理] を選択します。
クォータ管理ページで、[新しいクォータ] をクリックして、リソース購入ページに移動します。 プロンプトに従って、購入パラメータを設定します。 主なパラメータは次のとおりです。
パラメーター名
説明
仕様タイプ
[トンネル] を選択します。
トンネルの同時実行
購入する同時実行数を選択します。
説明最小購入は50同時実行で、1の倍数で増分します。
[今すぐ購入] をクリックします。 サービス条件に同意し、購入を確定するためのプロンプトに従って支払いプロセスを完了します。
購入が完了したら、コンソールに戻ります。 [データ送信サービス] の [クォータタイプ] を持つ新しいクォータグループが [クォータ] ページに表示されます。 このクォータグループは、[アップグレード] 、[ダウングレード] 、または [更新] のオプションで管理できます。 アップグレードとダウングレードに関するポリシーについては、「アップグレードとダウングレード」をご参照ください。
データ伝送サービスに排他的リソースグループを使用する
データ送信または統合タスクでは、データ送信サービスの排他的リソースグループを指定して、ビジネスニーズに基づいてデータ処理効率を高めることができます。
MaxCompute クライアント (odpscmd) またはその他のツールを使用してMaxComputeプロジェクトにアクセスし、データ送信サービスの排他的リソースグループを有効にします。
setproject odps.tunnel.enable.quota.route.v2=true;
説明MaxCompute SDKがバージョン0.45以降に更新されていることを確認します。
必要な権限を付与します。
デフォルトでは、すべてのAlibaba Cloudアカウント、RAMユーザー、およびロールには、ジョブのクォータグループを指定する権限がありません。 アカウントを使用して、ジョブのクォータグループを指定できるのは、アカウントに必要な権限が付与された場合のみです。
ロールを作成します。
最初に MaxComputeコンソールにログインします。
上部のナビゲーションバーで、リージョンを選択します。
左側のナビゲーションウィンドウで、[テナント] > [ロール] を選択します。
[ロール] ページで、[ロールの追加] をクリックします。
[ロールの追加] ダイアログボックスで、ロール名パラメーターを設定し、次のポリシードキュメントを入力します。
{ "Statement": [{ "Action": [ "odps:List", "odps:Usage"], "Effect": "Allow", "Resource": ["acs:odps:*:regions/*/quotas/*"]}], "Version": "1" }
サンプルコードのパラメーターを次の表に示します。
パラメーター
説明
Action
許可または拒否されるアクション。 ビジネス要件に基づいて、1つの権限付与操作に対して複数のアクションを指定できます。 複数のアクションを指定する場合は、コンマ (,) で区切ります。 サポートされているアクションの詳細については、「MaxCompute の権限」をご参照ください。
説明ポリシーパラメーターの詳細については、「ポリシー要素」をご参照ください。
Resource
承認されたリソース範囲。 このパラメーターは、
["acs:odps:Tenant/${tenant_id}:regions/${region_id}/quotas/${quota_name}"]
形式で設定します。["acs:odps:*:regions/*/quotas/*"]
現在のテナントのすべてのリージョンのすべてのクォータグループを指定します。 ビジネス要件に基づいて、特定のリージョンと特定のクォータグループを指定できます。[OK] をクリックします。
作成したロールを、ジョブレベルでクォータグループを指定するために使用するアカウントに割り当てます。
説明デフォルトでは、テナントレベルのSuper_Administratorロールが割り当てられているAlibaba CloudアカウントまたはRAMユーザーが権限付与操作を実行できます。
権限付与操作は、権限が付与されるオブジェクトのタイプによって異なります。
Alibaba Cloud アカウント
Alibaba Cloudアカウントに権限を付与するには、次のコマンドを実行します。
-- Add the Alibaba Cloud account to the current tenant and assign the specified role to the Alibaba Cloud account. Add tenant user <Aliyun$xxxx>; Grant tenant role <role_name> to user <Aliyun$xxxx>; -- View the permissions of the tenant-level role or user. Show grants for tenant role <role_name>; Show grants for tenant user <user_name>; Show principals for tenant [role] <role_name>;
RAM ユーザー
MaxComputeコンソールの左側のナビゲーションウィンドウで、[テナント] > [ユーザー] を選択します。
[ユーザー] ページで、必要なRAMユーザーを見つけ、[操作] 列の [ロールの変更] をクリックします。
[ロールの編集] ダイアログボックスで、[使用可能なロール] セクションで必要なロールを選択し、[追加ロール] セクションにロールを追加します。
[OK] をクリックします。
データ送信サービスタスクのSDKでクォータグループを手動で指定します。
--Use the resource group with the quota name XXX for data transmission service. final TableTunnel tunnel = new TableTunnel(odps); tunnel.getConfig().setQuotaName("xxx"); TableTunnel.UploadSession up = tunnel.createUploadSession(projectName, tableName); --You can get the resource group actually used by the session up.getQuotaName();
最初に MaxComputeコンソール
で、[ワークスペース] > [クォータ] を選択し、[クォータ] ページから対応する
クォータ名
を表示してコピーします。 たとえば、ot_42854300324 ****_169821756 ****_p#ot_42854300324 ****_169821756 ****
です。
リソースグループ指標の表示
データ送信サービス (サブスクリプション) の排他的リソースグループの使用状況を表示できます。 クォータページで、特定のグループの [操作] 列の [リソースの設定] をクリックして、メトリクスページにアクセスします。
メトリック名 | 説明 |
リクエストParallelism | アップロード要求の並列処理、ダウンロード要求の並列処理、およびすべての要求の並列処理を含む、リソースグループの要求並列処理。 メトリックデータは折れ線グラフで表示されます。 |
スループット (B/s) | アップロードのスループットとダウンロードのスループットを含む、リソースグループのスループット。 メトリックデータは折れ線グラフで表示されます。 |
上位Nアクセステーブル (同時実行) | [使用モード] ドロップダウンリストからTunnel Batch Uploadを選択し、[テーブル名] ドロップダウンリストからtesttableを選択した場合、現在のリソースグループでTunnel Batchを使用してアップロードされたtesttableテーブルの並列処理が取得されます。 メトリックデータは折れ線グラフで表示されます。 |
送信元IPアドレス (B/s) | [使用モード] ドロップダウンリストから [トンネルバッチのアップロード] を選択し、[テーブル名] ドロップダウンリストから [テストテーブル] を選択した場合、現在のリソースグループでトンネルバッチを使用してアップロードされたテストテーブルの各ソースIPアドレスから1秒あたりに送信されるデータ量が取得されます。 メトリックデータは折れ線グラフで表示されます。 |
エラーコードの数 | リソースグループのステータスコード500および429の通知回数。 |
その他の操作
次の手順に従って、MaxComputeコンソールからリソースグループを設定できます。
MaxComputeコンソールを使用したリソースグループの設定機能は、9月30日 (2024) に廃止されました (UTC + 8) 。 この日以降に設定の問題を防ぐために、デフォルト設定に戻す (データ送信サービスのリソースグループをデフォルトに設定する) ことを推奨します。詳細については、「データ送信サービスに排他的リソースグループを使用する」をご参照ください。
最初に MaxComputeコンソール
左上隅で、リージョンを選択します。 左側のナビゲーションウィンドウで、
を選択します。[プロジェクト] ページで、目的のプロジェクトを選択します。 [操作] 列の [管理] をクリックし、[基本プロパティ] セクションの [編集] をクリックします。
[Data Transmission Service] ドロップダウンから、アタッチするリソースグループを選択します。
デフォルトのパブリックリソースグループまたは購入した排他的リソースグループを選択できます。
Data Transmission Serviceリソースグループ
デフォルトとしてのデータ送信サービスの有効化
説明
default
-
パブリックデータ送信サービスのリソースグループをデフォルトとして設定します。 このプロジェクト内のすべてのデータ送信タスクはパブリックリソースグループを使用し、排他的リソースグループにアクセスすることはできません。
排他的リソースグループ
必須
データ送信専用サービスリソースグループをデフォルトとして設定します。
個々のタスクについては、SDKまたはデータ統合を介してタスクを送信するときに、排他的リソースグループをターゲットにするQuotaNameを手動で指定します。
選択可能
パブリックデータ送信サービスのリソースグループをデフォルトとして設定します。
個々のタスクについては、SDKまたはデータ統合を介してタスクを送信するときに、排他的リソースグループのQuotaNameを手動で指定します。