MaxCompute Studio を使用してデータ開発を行うには、まず MaxCompute プロジェクトに接続する必要があります。この接続により、MaxCompute のデータとリソースを表示および管理できます。このトピックでは、MaxCompute プロジェクト接続を作成および変更する方法について説明します。
前提条件
MaxCompute Studio のインストールが正常に完了している必要があります。
MaxCompute Studio の設定方法の詳細については、「MaxCompute Studio の設定」をご参照ください。
ステップ1:MaxCompute Studio プロジェクトの作成
IntelliJ IDEA を起動します。メインメニューから、 の順に選択します。
[New Project] ダイアログボックスの左側メニューで、[MaxCompute Studio] を選択し、[Next] をクリックします。
[Project name] を入力し、[Finish] をクリックしてプロジェクトを作成します。
説明プロジェクトがすでに開いている場合、現在のウィンドウで新しいプロジェクトを開くかどうかを確認するプロンプトが表示されます。[This Window] をクリックすると、既存のプロジェクトが閉じられ、新しいプロジェクトが開きます。
ステップ2:MaxCompute プロジェクト接続の作成
メインメニューから、 の順に選択します。
左上隅にある [+] をクリックし、[Add project from accessId/Key] を選択します。
[Add MaxCompute project] ダイアログボックスで、[Connection] タブのパラメーターを設定します。
設定するパラメーターは、[Properties File]、[AK Account]、[AccessKey ID] (必須)、[AccessKey Secret] (必須)、[Project Name] (必須)、[Endpoint] (必須) です。
説明ダイアログボックスの左下隅にある
アイコンをクリックすると、オンラインドキュメントが表示されます。タイムアウトエラーが発生した場合は、[Setting] タブをクリックし、データ同期パラメーターを変更します:
[sync one table timeout(s)]:テーブル同期のタイムアウトです。デフォルトは 5 s です。
[sync one function timeout(s)]:ユーザー定義関数 (UDF) 同期のタイムアウトです。デフォルトは 30 s です。
設定ファイルからパラメーターを自動入力します。
パラメーター
説明
[Properties File]
MaxCompute クライアント (odpscmd) の設定ファイル odps_config.ini をアップロードします。詳細については、「MaxCompute クライアントのインストールと設定」をご参照ください。このファイルは、[AccessKey ID]、[AccessKey Secret]、[Project Name]、[Endpoint] パラメーターを初期化します。
[AK Account]
MaxCompute プロジェクトへの接続に使用する Alibaba Cloud アカウントです。右側の [+] をクリックし、[Accounts] ページで既存のアカウントを選択します。
説明アカウントがリストにない場合は、[Accounts] ページで、 をクリックして、設定ファイルから自動で、または手動でアカウントを追加します。アカウントの設定方法の詳細については、「アカウント設定オプション」をご参照ください。
パラメーターを手動で設定します。
パラメーター
説明
[AccessKey ID]
MaxCompute プロジェクトへの接続に使用する AccessKey ID です。
[AccessKey Secret]
MaxCompute プロジェクトへの接続に使用する AccessKey Secret です。
[Project Name]
ターゲットの MaxCompute プロジェクトの名前です。
説明このパラメーターは、DataWorks ワークスペースではなく、既存の MaxCompute プロジェクトの名前を指定します。MaxCompute コンソールにログインし、ワークスペース > プロジェクト管理 ページに移動して、MaxCompute プロジェクトの名前を表示するか、新しいプロジェクトを作成できます。
[Endpoint]
MaxCompute プロジェクトが所在するリージョンの エンドポイント です。Alibaba Cloud の内部ネットワークの外部 (ローカルコンピューターなど) から接続する場合は、パブリックエンドポイントを使用する必要があることにご注意ください。
設定が完了したら、[OK] をクリックします。左側の [Project Explorer] パネルに、テーブル、ビュー、ユーザー定義関数 (UDF)、リソースなど、MaxCompute プロジェクトの情報が表示されます。
ステップ3:MaxCompute プロジェクト接続の変更
[Project Explorer] パネルで、変更する MaxCompute プロジェクトを右クリックし、[Modify project properties] を選択します。
[Modify MaxCompute project] ダイアログボックスで、プロジェクトの設定を変更します。
次のステップ
MaxCompute プロジェクトに接続した後、次の操作を実行できます:
プロジェクト内のデータとリソースを管理および表示します。詳細については、「データとリソースの管理」をご参照ください。
MaxCompute Studio で SQL プログラムを開発します。詳細については、「SQL プログラムの開発」をご参照ください。
MaxCompute Studio で Java プログラムを開発します。詳細については、「Java プログラムの開発」をご参照ください。
MaxCompute Studio で Python プログラムを開発します。詳細については、「Python プログラムの開発」をご参照ください。
トラブルシューティング
[Connection] タブでパラメーターを設定し、[OK] をクリックすると、次の一般的なエラーが発生することがあります:
エラー:
Test connection fail: ODPS-0420111: Project not found - '<project_name>'.またはTest connection fail:ODPS-0130013:Authorization exception - Authorization Failed [4002], You don't exist in project <project_name>. Context ID:<context ID>. --->Tips: Principal:ALIYUN$<account_name> | RAM$[<account_name>:]<RAM_user_name>;。考えられる原因:
ターゲットプロジェクトが存在しないか、プロジェクト名が正しくありません。
AccessKey ID に関連付けられている Alibaba Cloud アカウントまたは RAM ユーザーがターゲットプロジェクトに追加されていません。
解決策:
MaxCompute コンソールにログインします。ワークスペース > プロジェクト管理 ページで、MaxCompute プロジェクトの正しい名前を取得し、[Project Name] パラメーターを変更します。
他のユーザーがプロジェクトに接続する必要がある場合は、プロジェクト所有者がそれらのユーザーを追加する必要があります。詳細については、「Alibaba Cloud アカウントの追加 (プロジェクトレベル)」または「RAM ユーザーの追加 (プロジェクトレベル)」をご参照ください。
エラー:
Test connection fail: connect timed out, the possible reason is that the endpoint '<endpoint>' is wrong, please check your endpoint。考えられる原因: [Endpoint] パラメーターに誤った値を入力しました。たとえば、パブリックインターネット経由でローカルコンピューターから接続しているにもかかわらず、内部ネットワークのエンドポイントを指定した場合などです。
解決策: 「エンドポイント」のドキュメントを参照し、プロジェクトの リージョンと ネットワーク環境に一致する エンドポイントを選択します。
エラー:
Test connection fail: The specified project or table name is not valid or missing.。考えられる原因:エンドポイントは MaxCompute サービスに使用され、トンネルエンドポイントは MaxCompute Tunnel サービスに使用されます。おそらく、[Endpoint] パラメーターにトンネルエンドポイントを指定したと考えられます。
解決策: 「エンドポイント」のドキュメントを参照し、プロジェクトの リージョンと ネットワーク環境に一致する エンドポイントを選択します。トンネルエンドポイントは使用しないでください。