# Spark UniversalでSynapse接続パラメーターを定義

Sparkプールlは、Talend StudioのSparkジョブでサポートされているAzure Synapse Analyticsの唯一のサービスです。

## 始める前に

SynapseワークスペースとApache Sparkプールが設定済みであること。詳細は、Microsoftの公式ドキュメンテーションで[Creating a Synapse workspace](https://docs.microsoft.com/en-US/azure/synapse-analytics/get-started-create-workspace) (英語のみ)と[Create a new serverless Apache Spark pool using the Azure portal](https://docs.microsoft.com/en-US/azure/synapse-analytics/quickstart-create-apache-spark-pool-portal) (英語のみ)をご覧ください。

## 手順

1. デザインワークスペースの下にある[Run] (実行)ビューをクリックした後に、[Spark configuration] (Spark設定)ビューをクリックします。
2. [Property type] (プロパティタイプ)ドロップダウンリストから[Built-in] (組み込み)を選択します。

   [Hadoop接続を一元管理](https://help.qlik.com/talend/ja-JP/studio-user-guide/8.0-R2026-04/Hadoop接続を一元管理/talend/ja-JP/studio-user-guide/8.0/centralizing-hadoop-connection)で説明されているとおり、既に[Repository] (リポジトリー)で接続パラメーターが設定されている場合は簡単に再利用できます。再利用するためには、[Property type] (プロパティタイプ)ドロップダウンリストから[Repository] (リポジトリー)を選択し、[...]ボタンをクリックし、[Repository Content] (リポジトリーコンテンツ)ダイアログボックスを開いて、使用するHadoop接続を選択します。

   情報メモヒント: [Repository] (リポジトリー)で接続を設定すると、ジョブの[Spark configuration] (Spark設定)ビューで必要になるたびにその接続を設定しなくても済みます。フィールドが自動的に入力されます。
3. [Distribution] (ディストリビューション)ドロップダウンリストからUniversalを、[Version] (バージョン)ドロップダウンリストからSparkバージョンを、[Runtime mode/environment] (ランタイムモード/環境)ドロップダウンリストからSynapseをそれぞれ選択します。
4. Azure Synapseへの接続に使う基本的な設定情報を入力します。
   | パラメーター | 使用方法 |
   | --- | --- |
   | [Endpoint] (エンドポイント) | お使いのAzure SynapseのアカウントからDevelopment endpointを入力します。これはAzure SynapseワークスペースのOverviewセクションにあります。 |
   | [Authorization token] (認証トークン) | Azure Synapseアカウント用に生成されたトークンを入力します。<br><br>情報メモ注: トークンを生成する場合は次のコマンドを入力する必要があります: curl -X post -H "Content-Type: application/x-www-form-urlencoded" -d 'client\_id=&lt;YourClientID&gt;&scope=https://dev.azuresynapse.net/.default&client\_secret=&lt;YourClientSecret&gt;&grant\_type=client\_credentials' 'https://login.microsoftonline.com/&lt;YourTenantID&gt;/oauth2/v2.0/token'<br><br>クライアントID、クライアントシークレット、テナントIDはAzureポータルから取得できます。<br><br>Azure Synapseへの認証はAzure Active Directoryアプリケーションを使って行われます。Azure Active Directoryへの登録方法に関する詳細は、Microsoftの公式ドキュメンテーションで[Use the portal to create an Azure AD application and service principal that can access resources](https://docs.microsoft.com/en-US/azure/active-directory/develop/howto-create-service-principal-portal) (英語のみ)をご覧ください。<br><br>情報メモ重要: このトークンの有効期間は1時間です。それ以降は、401 Not Authorized エラーを回避できるよう、そのトークンを再生成してください。 |
   | [Apache Spark pools] (Apache Sparkプール) | 使用するApache Sparkプールの名前を二重引用符で囲んで入力します。<br><br>情報メモ注: Azure Synapseワークスペースで次の点を確認します:<br><br><ul> <li>Apache Sparkプールの作成時に、[Basic settings] (基本設定)の<span>[Autoscale] (自動スケーリング)</span>オプションと[Additional settings] (追加設定)の[<span>Automatic pausing] (自動一時停止)</span>オプションが有効になっていること。</li> <li>選択されたApache Sparkバージョンが<span>3.0 (preview)</span>に設定されていること。                                     </li> </ul> |
   | [Poll interval when retrieving Job status (in ms)] (ジョブステータスを取得する時のポーリング間隔(ミリ秒)) | Talend StudioがジョブのステータスをSparkに要求する時間間隔(ミリ秒)を引用符なしで入力します。<br><br>デフォルト値は、30秒に相当する3000です。 |
   | [Maximum number of consecutive statuses missing] (見つからないステータスの最大連続回数) | ステータスの応答がない場合にTalend Studioがステータス取得のために再試行する最大回数を入力します。<br><br>デフォルト値は10です。 |
5. Azure Synapseの基本的なストレージ情報を入力します。
   | パラメーター | 使用方法 |
   | --- | --- |
   | [Authentication method] (認証方式) | 使用する認証モードをドロップダウンリストから選択します。<br><br><ul> <li> <span>[Secret Key] (シークレットキー)</span> </li> <li> <span>Azure Active Directory</span> </li> </ul> |
   | [Storage] (ストレージ) | ドロップダウンリストで使用するストレージを選択します。<br><br>ADLS Gen2は、Azure Synapse Analyticsワークスペースのデフォルトストレージです。Azure Active Directory認証を使用する際に、アプリケーションにStorage Blob Data Contributionというロールが付与され、ADLS Gen2にリンクされていることを確認します。 |
   | [Hostname] (ホスト名) | Azure Synapseアカウントから[Primary ADLS Gen2 account] (Primary ADLS Gen2アカウント)を入力します。これはAzure SynapseワークスペースのOverviewセクションにあります。 |
   | [Container] (コンテナー) | Azure Synapseアカウントから[Primary ADLS Gen2 file storage] (Primary ADLS Gen2ファイルストレージ)を入力します。これはAzure SynapseワークスペースのOverviewセクションにあります。 |
   | [Username] (ユーザー名) | Azure Synapseワークスペースにリンクしているストレージアカウント名を入力します。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストから[Secret Key] (シークレットキー)を選択した場合のみ利用できます。 |
   | [Password] (パスワード) | Azure Synapseワークスペースにリンクしているアクセスキーを入力します。<br><br>アクセスキーの取得方法に関する詳細は、Microsoftの公式ドキュメンテーションで[View account access keys](https://docs.microsoft.com/en-US/azure/storage/common/storage-account-keys-manage?tabs=azure-portal#view-account-access-keys) (英語のみ)をご覧ください。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストから[Secret Key] (シークレットキー)を選択した場合のみ利用できます。 |
   | [Directory ID] (ディレクトリーID) | Azure Active DirectoryアプリケーションにリンクされているディレクトリーIDを入力します。IDは、お使いのAzureポータルのAzure Active Directory &gt; [Overview] (概要)タブから取得できます。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。 |
   | [Application ID] (アプリケーションID) | Azure Active DirectoryアプリケーションにリンクされているアプリケーションIDを入力します。IDは、お使いのAzureポータルのAzure Active Directory &gt; [Overview] (概要)タブから取得できます。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。 |
   | [Use certificate to authenticate] (認証に証明書を使用) | 証明書を使い、Azure Active Directoryアプリケーションに対して認証を行う場合は、このチェック ボックスをオンにし、証明書が保存されている場所を[Path to certificate] ([証明書へのパス)フィールドに入力します。<br><br>Make sure you upload the certificate in the Certificates & secrets &gt; Certificates section of your Azure Active Directory application. 証明書の詳細は、 [Microsoftの公式ドキュメンテーション](https://docs.microsoft.com/en-US/cli/azure/ad/sp?view=azure-cli-latest) (英語のみ)をご覧ください。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。 |
   | [Client key] (クライアントキー) | Azure Active Directoryアプリケーションにリンクされているクライアントキーを入力します。クライアントキーは、お使いのAzureポータルの[Certificates & secrets] (証明書とシークレット)タブから生成できます。<br><br>これらのプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択し、[Use certificate to authenticate] (認証に証明書を使用)チェック ボックスをオフにした場合のみ利用できます。 |
   | [Deployment Blob] (デプロイメントBlob) | お使いのストレージで、現在のジョブとその依存ライブラリーを保存する場所を入力します。 |
6. 設定の基本情報を入力します:
7. [Apache Spark Batchジョブ用にSparkを調整](https://help.qlik.com/talend/ja-JP/components/8.0/spark-batch/tuning-spark-for-apache-spark-batch-jobs-spark-batch-component)の説明に従って、Synapseのチューニングパラメーターを入力します。

   情報メモ重要: 400 Bad Requestエラーを回避できるよう、必ずチューニングパラメーターを定義してください。

## タスクの結果

ジョブの実行時に生成されたLivy IDを使って、Azure Synapseワークスペースでジョブの結果を取得できます。