Spark UniversalでAzure Synapse Analytics接続パラメーターを定義 - Cloud - 8.0

Talend Studioユーザーガイド

Version
Cloud
8.0
Language
日本語
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発
Last publication date
2023-10-02

Spark Batchジョブの[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、Spark Universalを使ってAzure Synapse Analytics接続設定を完成させます。この設定はジョブごとに有効です。

このセクションの情報は、Talend Data Fabric またはビッグデータ対応のTalend製品のいずれかにサブスクライブしているユーザーだけを対象とします。また、Talend Open Studio for Big Dataユーザーは対象外です。

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

始める前に

SynapseワークスペースとApache Sparkプールが設定済みであること。詳細は、Microsoftの公式ドキュメンテーションでCreating a Synapse workspaceCreate a new serverless Apache Spark pool using the Azure portalをご覧ください。

このタスクについて

手順

  1. Azure Synapseへの接続に使う基本的な設定情報を入力します。
    [Endpoint] (エンドポイント) Azure SynapseのアカウントからDevelopment endpointを入力します。これはAzure SynapseワークスペースのOverviewセクションにあります。
    [Authorization token] (認証トークン) Azure Synapseアカウント用に生成されたトークンを入力します。
    注: トークンを生成する場合は次のコマンドを入力する必要があります:curl -X post -H "Content-Type: application/x-www-form-urlencoded" -d 'client_id=<YourClientID>&scope=https://dev.azuresynapse.net/.default&client_secret=<YourClientSecret>&grant_type=client_credentials' 'https://login.microsoftonline.com/<YourTenantID>/oauth2/v2.0/token'

    クライアントID、クライアントシークレット、テナントIDはAzureポータルから取得できます。

    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をご覧ください。

    重要: このトークンの有効期間は1時間のみです。1時間が経過しても新しいトークンがを再生成されない場合、エラー(401 - Not authorized)が発生する可能性があります。
    [Apache Spark pools] (Apache Sparkプール) 使用するApache Sparkプールの名前を二重引用符で囲んで入力します。
    注: Azure Synapseワークスペースで次の点を確認します:
    • Apache Sparkプールの作成時に、[Basic settings] (基本設定)の[Autoscale] (自動スケーリング)オプションと[Additional settings] (追加設定)の[Automatic pausing] (自動一時停止)オプションが有効になっていること。
    • 選択されたApache Sparkバージョンが3.0 (preview)に設定されていること。
    [Poll interval when retrieving Job status (in ms)] (ジョブステータスを取得する時のポーリング間隔(ミリ秒)) StudioがジョブのステータスをSparkに要求する間隔(ミリ秒)を引用符なしで入力します。

    デフォルト値は、30秒に相当する3000です。

    [Maximum number of consecutive statuses missing] (見つからないステータスの最大連続回数) ステータスの応答がない場合にStudioがステータス取得のために再試行する最大回数を入力します。

    デフォルト値は10です。

  2. Azure Synapseの基本的なストレージ情報を入力します。
    [Authentication method] (認証方式) 使用する認証モードをドロップダウンリストから選択します。
    • [Secret Key] (シークレットキー)
    • Azure Active Directory
    [Storage] (ストレージ) ドロップダウンリストで使用するストレージを選択します。

    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ワークスペースにリンクしているストレージアカウント名を入力します。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストから[Secret Key] (シークレットキー)を選択した場合のみ利用できます。

    [Password] (パスワード) Azure Synapseワークスペースにリンクしているアクセスキーを入力します。

    アクセスキーの取得方法に関する詳細は、Microsoftの公式ドキュメンテーションでView account access keysをご覧ください。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストから[Secret Key] (シークレットキー)を選択した場合のみ利用できます。

    [Directory ID] (ディレクトリーID) Azure Active DirectoryアプリケーションにリンクされているディレクトリーIDを入力します。IDは、お使いのAzureポータルのAzure Active Directory > [Overview] (概要)タブから取得できます。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。

    [Application ID] (アプリケーションID) Azure Active DirectoryアプリケーションにリンクされているアプリケーションIDを入力します。IDは、お使いのAzureポータルのAzure Active Directory > [Overview] (概要)タブから取得できます。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。

    [Use certificate to authenticate] (認証に証明書を使用) 証明書を使い、Azure Active Directoryアプリケーションに対して認証を行う場合は、このチェック ボックスをオンにし、証明書が保存されている場所を[Path to certificate] ([証明書へのパス)フィールドに入力します。

    Make sure you upload the certificate in the Certificates & secrets > Certificates section of your Azure Active Directory application. 証明書の詳細は、 Microsoftの公式ドキュメンテーションをご覧ください。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択した場合のみ利用できます。

    [Client key] (クライアントキー) Azure Active Directoryアプリケーションにリンクされているクライアントキーを入力します。クライアントキーは、お使いのAzureポータルの[Certificates & secrets] (証明書とシークレット)タブから生成できます。

    このプロパティは、[Authentication method] (認証方法)ドロップダウンリストからAzure Active Directoryを選択し、[Use certificate to authenticate] (認証に証明書を使用)チェック ボックスをオフにした場合のみ利用できます。

    [Deployment Blob] (デプロイメントBlob) お使いのストレージで、現在のジョブとその依存ライブラリーを保存する場所を入力します。
  3. 基本的な設定情報を入力します:
    [Use local timezone] (ローカルタイムゾーンを使用) このチェックボックスをオンにすると、Sparkはシステムで指定されているローカルタイムゾーンを使用します。
    注:
    • このチェックボックスをオフにすると、SparkはUTCタイムゾーンを使用します。
    • コンポーネントによっては[Use local timezone for date] (日付にローカルタイムゾーンを使用)チェックボックスもあります。コンポーネントのチェックボックスをオフにすると、Spark設定からのタイムゾーンが継承されます。
    [Use dataset API in migrated components] (移行したコンポーネントでデータセットAPIを使用) このチェックボックスを選択し、コンポーネントにResilient Distribued Dataset (RDD) APIの代わりにDataset (DS) APIを使用させます:
    • チェックボックスをオンにした場合、Spark Batchジョブ内のコンポーネントはDSで実行され、パフォーマンスが改善されます。
    • チェックボックスをオフにした場合、Spark Batchジョブ内のコンポーネントはRDDで実行され、変更されません。これにより、下位互換性が保証されます。

    このチェックボックスはデフォルトで選択されていますが、7.3以降のジョブをインポートした場合、これらのジョブはRDDで実行されるため、チェックボックスはクリアされます。

    重要: Spark BatchジョブがtDeltaLakeInputコンポーネントおよびtDeltaLakeOutputコンポーネントを含んでいる場合、このチェックボックスをオンにする必要があります。
    [Use timestamp for dataset components] (データセットコンポーネントにタイムスタンプを使用) このチェックボックスをオンにすると、日付でjava.sql.Timestamp使われます。
    注: このチェックボックスをオフのままにしておくと、パターンに応じてjava.sql.Timestampjava.sql.Dateが使われます。
    [Batch size (ms)] (バッチサイズ(ミリ秒)) Spark Streamingジョブがソースデータをレビューして変更を特定し、新しいマイクロバッチを処理するまでの時間間隔を入力します。
    [Define a streaming timeout (ms)] (ストリーミングタイムアウトを設定(ミリ秒)) このチェックボックスをオンにし、表示されたフィールドにSpark Streamingジョブが自動的に実行を停止するまでの期間を入力します。
    注: Windows 10をお使いの場合は、Javaアプリケーションから終了シグナルを送信する際にWindows Service Wrapperに問題が発生しないよう、合理的なタイムアウトを設定することをお勧めします。このような問題が発生した場合、Azure Synapseワークスペースからジョブを手動でもキャンセルできます。
  4. [Set tuning properties] (チューニングプロパティを設定)チェックボックスを選択し、Apache Spark Batchジョブ用にSparkを調整の説明に従ってチューニングパラメーターを定義します。
    重要: チューニングパラメーターを設定しない場合、エラー(400 - Bad request)が発生する可能性があります。
  5. [Spark "scratch" directory] (Spark "scratch"ディレクトリー)フィールドに、Studioが一時ファイル(転送するjarファイルなど)をローカルシステムに保存するディレクトリーを入力します。Windowsでジョブを起動する場合、デフォルトのディスクはC:です。このフィールドを/tmpのままにすると、このディレクトリーはC:/tmpになります。
  6. [Wait for the Job to complete] (ジョブの終了を待機)チェックボックスをオンにしてStudio、またはTalendJobServerを使用している場合はジョブJVMで、ジョブの実行完了までジョブの監視を続けます。このチェックボックスをオンにすると、spark.yarn.submit.waitAppCompletionプロパティをtrueに設定したことになります。通常はSpark Batchジョブの実行時にこのチェックボックスをオンにすると便利ですが、Spark Streamingジョブを実行する場合はチェックボックスをオフにしたほうが賢明です。

タスクの結果

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