# ジョブスクリプトでのSpark接続の定義

addParameters{}関数内のaddElementParameters{}関数を使用して、ジョブスクリプト内にSpark接続を定義します。

## addElementParameters {}プロパティ

使用するSparkクラスターの選択に関連するプロパティは、次のとおりです。

| 関数/パラメーター | 説明 | 必須 |
| --- | --- | --- |
| SPARK\_LOCAL\_MODE | Sparkジョブをローカルモードで実行するには、trueと入力します。デフォルトでは、この値はfalseになっています。すなわち、リモートクラスターを使用する設定です。<br><br>ローカルモードでは、ジョブを実行するためのSpark環境がTalend Studioによって即座に構築されます。計算の実行のために、ローカルマシンの各プロセッサーがSparkワーカーとして使用されます。<br><br>このモードでは、ローカルファイルシステムが使われます。したがって、リモートファイルシステムへの接続情報を提供するtS3ConfigurationやtHDFSConfigurationなどのコンポーネントがジョブ内に配置されている場合は、これらの設定コンポーネントを無効にします。<br><br>これ以上は何も設定せずにジョブを起動できます。 | はい |
| SPARK\_LOCAL\_VERSION | ローカルモードで使用するSparkのバージョンを入力します。このプロパティは、SPARK\_LOCAL\_MODEにtrueを入力した場合にのみ関連します。<br><br>Talend Studioでは、バージョンが2.0未満のSparkのローカルモードによる使用をサポートしていません。たとえば、"SPARK\_2\_1\_0"という値を入力します。 | Sparkのローカルモードが使用されている場合はYesになります。 |
| DISTRIBUTION | お使いのディストリビューションのプロバイダー名を入力してください。<br><br>ディストリビューションに応じて、次の値のいずれか1つを入力します。<br><br><ul> <li> <kbd>"CLOUDERA"</kbd> </li> <li> <kbd>"CLOUDERA_ALTUS"</kbd> </li> <li> <kbd>"GOOGLE_CLOUD_DATAPROC"</kbd> </li> <li> <kbd>"HORTONWORKS"</kbd> </li> <li> <kbd>"MAPR"</kbd> </li> <li> <kbd>"MICROSOFT_HD_INSIGHT"</kbd> </li> </ul> | SparkのローカルモードもAmazon EMRディストリビューションも使用していない場合は「はい」になります。 |
| SPARK\_VERSION | お使いのディストリビューションのバージョンを入力します。<br><br>次のリストには、利用可能な各ディストリビューションのフォーマット例がリスト表示されています。<br><br><ul> <li> <kbd>"Cloudera_CDH12_5"</kbd> </li> <li> <kbd>"Cloudera_Altus_CDH5_11"</kbd> </li> <li> <kbd>"DATAPROC_1_1"</kbd> </li> <li> <kbd>"HDP_2_6"</kbd> </li> <li> <kbd>"MAPR600"</kbd> </li> <li> <kbd>"MICROSOFT_HD_INSIGHT_3_6"</kbd> </li> <li> <kbd>"EMR_5_5_0"</kbd> </li> </ul><br><br>Talendでサポートされているディストリビューションバージョンの詳細は、[Talendジョブでサポートされているビッグデータプラットフォームディストリビューションのバージョン](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/supported-big-data-platform-distribution-versions-for-talend-jobs)をご覧ください。 | Sparkのローカルモードを使用していない場合は「はい」になります。 |
| SUPPORTED\_SPARK\_VERSION | ディストリビューションで使用しているSparkのバージョンを入力します。例: "SPARK\_2\_1\_0" | Sparkのローカルモードを使用していない場合は「はい」になります。 |
| SPARK\_API\_VERSION | "SPARK\_200"と入力します。これは、Talendで使用されているSpark APIのバージョンです。 | はい |
| SET\_HDP\_VERSION | trueを入力すると、Hortonworksクラスターがそのバージョンを格納するためにhdp.version変数を使用しています。それ以外の場合は、falseを入力します。この情報が不明な場合は、クラスターの管理者にお問い合わせください。 | Hortonworksを使用している場合は「はい」になります。 |
| HDP\_VERSION | 使用するHortonworkのバージョンを入力します。例: "\"2.6.0.3-8\"" この情報が不明な場合は、クラスターの管理者にお問い合わせください。<br><br>バージョン番号はクラスターのyarn-site.xmlファイルにも追加する必要があります。この例では、hdp.version=2.6.0.3-8を追加します。 | SET\_HDP\_VERSIONにtrueを入力した場合は「はい」になります。 |
| SPARK\_MODE | Sparkクラスターが実装されているモードを入力します。<br><br>状況に応じて、次の値のいずれか1つを入力します。<br><br><ul> <li> <kbd>"CLUSTER"</kbd>: Sparkのスタンドアロンモードで実行することを意味します。 </li> <li> <kbd>"YARN_CLIENT"</kbd> </li> </ul> | Sparkのローカルモードを使用していない場合は「はい」になります。 |

Sparkへの接続設定に関連するプロパティは、次のとおりです。

| 関数/パラメーター | 説明 | 必須 |
| --- | --- | --- |
| RESOURCE\_MANAGER | 使用するHadoopクラスターのResourceManagerサービスのアドレスを入力します。 | Yarnクライアントモードを使用している場合は「はい」になります。 |
| SET\_SCHEDULER\_ADDRESS | クラスターにResourceManager スケジューラーがある場合はtrueと入力します。それ以外の場合はfalseと入力します。 | Yarnクライアントモードを使用している場合は「はい」になります。 |
| RESOURCEMANAGER\_SCHEDULER\_ADDRESS | スケジューラーのアドレスを入力します。 | SET\_SCHEDULER\_ADDRESSにtrueを入力した場合は「はい」になります。 |
| SET\_JOBHISTORY\_ADDRESS | クラスターにジョブヒストリーサービス がある場合はtrueと入力します。それ以外の場合はfalseと入力します。 | Yarnクライアントモードを使用している場合は「はい」になります。 |
| JOBHISTORY\_ADDRESS | 使用するHadoopクラスターのジョブヒストリーサーバーの場所を入力します。これにより、現在のジョブのメトリックス情報がそのJobHistoryサーバーに保存されます。 | SET\_JOBHISTORY\_ADDRESSにtrueを入力した場合は「はい」になります。 |
| SET\_STAGING\_DIRECTORY | 実行中のプログラムによって作成された一時ファイルを保存するステージングディレクトリーがクラスターにある場合はtrueと入力します。それ以外の場合はfalseと入力します。 | Yarnクライアントモードを使用している場合は「はい」になります。 |
| STAGING\_DIRECTORY | このディレクトリーに、たとえば"\"/user\""と入力します。一般的には、このディレクトリーはディストリビューションのyarn-site.xmlやmapred-site.xmlなどの設定ファイル内にあるyarn.app.mapreduce.am.staging-dirプロパティの下にあります。 | SET\_STAGING\_DIRECTORYにtrueを入力した場合は「はい」になります。 |
| HDINSIGHT\_ENDPOINT | HDInsightクラスターのエンドポイントを入力します。例: "\"https://mycluster.azurehdinsight.net\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| HDINSIGHT\_USERNAMEおよびHDINSIGHT\_PASSWORD | <ul> <li> <span><span>[Username] (ユーザー名)</span>は、クラスターの作成時に定義されたものです。これは、クラスターの<span>[SSH + Cluster] (SSH + クラスター)</span>ログインブレードで確認できます。</span> </li> <li><span>[Password] (パスワード)</span>は、このクラスターの認証でHDInsightクラスターを作成する時に定義します。</li> </ul><br><br>たとえば、ユーザー名に"\"talendstorage\""、パスワードに"my\_password"を使用します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| LIVY\_HOST | <ul> <li>Livyの<span>[Hostname] (ホスト名)</span>は、HDInsightクラスターのURLです。このURLは、クラスターの<span>[Overview] (概要)</span>ブレードにあります。https://部分なしでこのURLを入力します。</li> <li>デフォルトの<span>[Port] (ポート)</span>は443です。</li> <li> <span><span>[Username] (ユーザー名)</span>は、クラスターの作成時に定義されたものです。これは、クラスターの<span>[SSH + Cluster] (SSH + クラスター)</span>ログインブレードで確認できます。</span> </li> </ul><br><br><br>HD Insightによって使用されるLivyサービスの詳細は、[Submit Spark jobs using Livy](https://azure.microsoft.com/en-us/documentation/articles/hdinsight-apache-spark-livy-rest-interface/)をご覧ください。 | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| LIVY\_PORT | Livyサービスの ポート番号を入力します。デフォルトでは、ポート番号は"\"443\""です。 | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| LIVY\_USERNAME | HDinsightユーザー名を入力します。例: "\"my\_hdinsight\_account\"" | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| HDINSIGHT\_POLLING\_INTERVAL\_DURATION | Talend StudioがジョブのステータスをSparkに要求する時間間隔(ミリ秒)を引用符なしで入力します。デフォルトの間隔は30000、つまり30秒です。 | いいえ。このパラメーターを指定しない場合、デフォルト値は関連するディストリビューションであるHDInsightで使用されます。 |
| HDINSIGHT\_MAX\_MISSING\_STATUS | ステータスの応答がない場合にTalend Studioがステータス取得のために再試行する最大回数を入力します。デフォルトの再試行回数は10回です。 | いいえ。このパラメーターを指定しない場合、デフォルト値は関連するディストリビューションであるHDInsightで使用されます。 |
| WASB\_HOST | Windows Azure Storage Blobのアドレスを入力します。例: "\"https://my\_storage\_account\_name.Blob.core.windows.net\"" | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| WASB\_CONTAINER | 使用するコンテナーの名前を入力します。例: "\"talend\_container\"" | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| REMOTE\_FOLDER | このAzure Storageアカウントで現在のジョブとその依存ライブラリーを保存する場所を入力します(例: "\"/user/ychen/deployment\_Blob\"")。 | 関連するディストリビューションHDInsightを使用している場合は「はい」になります。 |
| SPARK\_HOST | 使用するHadoopクラスターのSparkマスターのURIを入力します。例: "\"spark://localhost:7077\"" | Sparkのスタンドアロンモードを使用している場合は「はい」になります。 |
| SPARK\_HOME | 使用するHadoopクラスターのSpark実行可能ファイルの保存場所を入力します。例: "\"/usr/lib/spark\"" | Sparkのスタンドアロンモードを使用している場合は「はい」になります。 |
| DEFINE\_HADOOP\_HOME\_DIR | Windowsから起動する必要がある場合は、使用する*winutils.exe*プログラムの保存場所を指定することを推奨します。<br><br>winutils.exeファイルのロケーションがわかっており、それを使用する場合は、trueと入力します。それ以外の場合はfalseと入力します。 | クラウド上で実行されていないディストリビューションを使用している場合は「はい」になります。 |
| HADOOP\_HOME\_DIR | winutils.exeが保存されているディレクトリーを入力します。例: "\"C:/Talend/winutils\"". | DEFINE\_HADOOP\_HOME\_DIRにtrueを入力した場合は「はい」になります。 |
| DEFINE\_SPARK\_DRIVER\_HOST | SparkのYarnクライアントモードで、ジョブが起動しているマシンをSparkクラスター自らが認識できない場合はtrueと入力します。それ以外の場合はfalseと入力します。 | クラウド上で実行されていないディストリビューションを使用しており、SparkモードがYarnクライアントの場合は「はい」になります。 |
| SPARK\_DRIVER\_HOST | このマシンのホスト名またはIPアドレスを入力します。例: "\"127.0.0.1\"" この設定により、Sparkマスターとそのワーカーはこのマシンを認識して、ジョブとそのドライバーを見つけることができます。<br><br>このような場合、このマシンの名前とIPアドレスもその*ホスト*ファイルに追加する必要があります。 | DEFINE\_SPARK\_DRIVER\_HOSTにtrueを入力した場合は「はい」になります。 |
| GOOGLE\_PROJECT\_ID | Google Cloud PlatformプロジェクトのIDを入力します。<br><br>例: "\"my-google-project\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| GOOGLE\_CLUSTER\_ID | 使用するDataprocクラスターのIDを入力します。<br><br>例: "\"my-cluster-id\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| GOOGLE\_REGION | コンピューティングリソースを使用し、データを保存、処理する地域を入力します。特定のリージョンを指定する必要がない場合は、"\"global\""と入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| GOOGLE\_JARS\_BUCKET | Talendジョブでは、依存jarファイルが実行されることを想定しているため、ジョブが実行時にこれらのjarファイルにアクセスできるよう、これらのファイルの転送先にするGoogle Storageディレクトリーを指定します。<br><br>入力するディレクトリーの末尾はスラッシュ(/)にする必要があります。ディレクトリーがない場合は即座に作成されますが、使用するバケットはあらかじめ作成しておく必要があります。<br><br>例: "\"gs://my-bucket/talend/jars/\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| DEFINE\_PATH\_TO\_GOOGLE\_CREDENTIALS | Google Cloud SDKがインストールされ、ユーザーアカウントの認証情報を使用してGoogle Cloud Platformにアクセスする権限があるマシンからジョブを起動する場合は、falseと入力します。この状況では多くの場合、このマシンはお使いのローカルマシンです。<br><br>ジョブをTalend JobServerなどのリモートマシンから起動する場合は、trueと入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| PATH\_TO\_GOOGLE\_CREDENTIALS | このJSONファイルが保存されているディレクトリーをリモートマシンに入力します。これは以上に多くの場合、ジョブサーバーです。<br><br>例: "\"/user/ychen/my\_credentials.json\"" | DEFINE\_PATH\_TO\_GOOGLE\_CREDENTIALSにtrueを入力した場合は「はい」になります。 |
| ALTUS\_SET\_CREDENTIALS | ジョブでAltusの認証情報を使用する場合は、trueと入力します。<br><br>たとえば、端末で altus configureコマンドを手動で入力して、Altusの認証情報を個別に提供する場合は、falseと入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_ACCESS\_KEYおよびALTUS\_SECRET\_KEY | Altusのアクセスキーと、Altusのシークレットキーファイルを参照するディレクトリーを入力します。<br><br>例: "\"my\_access\_key\""および"\"/user/ychen/my\_secret\_key\_file | ALTUS\_SET\_CREDENTIALSにtrueを入力した場合は「はい」になります。 |
| ALTUS\_CLI\_PATH | ジョブが実行されるマシンにインストールし、有効にしたCloudera Altusクライアントへのパスを入力します。本番環境の場合、このマシンは通常、Talend JobServerです。<br><br>例: "\"/opt/altuscli/altusclienv/bin/altus\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_REUSE\_CLUSTER | Cloudサービスに既に存在するCloudera Altusクラスターを使用する場合は、trueと入力します。それ以外の場合はfalseと入力して、ジョブでクラスターをオンザフライで作成できるようにします。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_CLUSTER\_NAME | 使用するクラスターの名前を入力します。<br><br>例: "\"talend-altus-cluster\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_ENVIRONMENT\_NAME | 特定のクラスターに割り当てたリソースの説明に使用する、Cloudera Altus環境の名前を入力します。<br><br>例: "\"talend-altus-cluster\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_CLOUD\_PROVIDER | Cloudera Altusクラスターを実行するCloudサービスを入力します。現時点では、AWSのみサポートされています。したがって、"\"AWS\""と入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_DELETE\_AFTER\_EXECUTION | ジョブの実行後に特定のクラスターを削除する場合は、trueと入力します。それ以外の場合はfalseと入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_S3\_ACCESS\_KEYおよびALTUS\_S3\_SECRET\_KEY | 使用するAmazon S3バケットへの接続に必要な認証情報を入力します。 | ALTUS\_CLOUD\_PROVIDERに"\"AWS\""を入力した場合は「はい」になります。 |
| ALTUS\_S3\_REGION | 使用するAWSリージョンを入力します。例: "\"us-east-1\"" | ALTUS\_CLOUD\_PROVIDERに"\"AWS\""を入力した場合は「はい」になります。 |
| ALTUS\_BUCKET\_NAME | ジョブの依存項目を保存するために使用するバケットの名前を入力します。既存のバケットを用意しておく必要があります。例: "\"my-bucket\"" | ALTUS\_CLOUD\_PROVIDERに"\"AWS\""を入力した場合は「はい」になります。 |
| ALTUS\_JARS\_BUCKET | この特定のバケット内のジョブの依存項目を保存するディレクトリーを入力します。例: "\"altus/jobjar\"" このディレクトリーは、実行時にまだなかった場合は作成されます。 | ALTUS\_CLOUD\_PROVIDERに"\"AWS\""を入力した場合は「はい」になります。 |
| ALTUS\_USE\_CUSTOM\_JSON | JSONコードを手動で編集してAltusクラスターを設定する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_CUSTOM\_JSON | カスタムjsonコードを入力します。例: "{my\_json\_code}" | ALTUS\_USE\_CUSTOM\_JSONにtrueを入力した場合は「はい」になります。 |
| ALTUS\_INSTANCE\_TYPE | クラスター内のインスタンスのタイプを入力します。このクラスターに展開されたすべてのノードで同じインスタンスタイプが使用されます。例: "\"c4.2xlarge\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_WORKER\_NODE | クラスター用に作成するワーカーノードの数を入力します。<br><br>例: "\"10\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| ALTUS\_CLOUDERA\_MANAGER\_USERNAME | Coudera Managerサービスの認証情報を入力します。<br><br>例: "\"altus\"" | 関連するディストリビューションを使用している場合は「はい」になります。 |
| SPARK\_SCRATCH\_DIR | 転送するジョブの依存項目などの一時ファイルをローカルシステムに保存するディレクトリーを入力します。例: "\"/tmp\"" | はい |
| STREAMING\_BATCH\_SIZE | ジョブがソースデータを検証して変更を特定し、新しいマイクロバッチを処理するまでの間隔(ミリ秒)を入力します。例: "1000" | Spark Streamingジョブを開発している場合は「はい」になります。 |
| DEFINE\_DURATION | ストリーミングのタイムアウト(ミリ秒)を定義する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Spark Streamingジョブを開発している場合は「はい」になります。 |
| STREAMING\_DURATION | ストリーミングジョブが自動的に実行を停止するまでの期間(ミリ秒)を入力します。例: "10000" | DEFINE\_DURATIONにtrueを入力した場合は「はい」になります。 |
| SPARK\_ADVANCED\_PROPERTIES | 他のHadoopまたはSparkに関連するプロパティを使用するためのコードを入力します。<br><br>たとえば、次のような場合があります:<br><br>```<br>{ PROPERTY : "\"spark.yarn.am.extraJavaOptions\"", VALUE : "\"-Dhdp.version=2.4.0.0-169\"",<br>BUILDIN : "TRUE" }<br><br>``` | 不可。 |

セキュリティ設定の定義に関連するプロパティは、次のとおりです。

| 関数/パラメーター | 説明 | 必須? |
| --- | --- | --- |
| USE\_KRB | 使用するクラスターをKerberosで保護する場合は、trueと入力します。それ以外の場合はfalseと入力します。 | はい |
| RESOURCEMANAGER\_PRINCIPAL | ResourceManagerサービスのKerberosプリンシパル名を入力します。例: "\"yarn/\_HOST@EXAMPLE.COM\"" | KerberosおよびYarnクライアントモードを使用している場合は「はい」になります。 |
| JOBHISTORY\_PRINCIPAL | ジョブヒストリーサービスのKerberosプリンシパル名を入力します。例: "\"mapred/\_HOST@EXAMPLE.COM\"" | KerberosおよびYarnクライアントモードを使用している場合は「はい」になります。 |
| USE\_KEYTAB | ログインにKerberos keytabファイルを使用する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Kerberosを使用している場合は「はい」になります。 |
| PRINCIPAL | 使用するプリンシパルを入力します。例: "\"hdfs\"" | Kerberos keytabファイルを使用している場合は「はい」になります。 |
| KEYTAB\_PATH | keytabファイル自体へのアクセスパスを入力します。このキータブファイルは、ジョブが実際に実行されているマシン(Talend JobServerなど)に保存する必要があります。<br><br>例: "\"/tmp/hdfs.headless.keytab\"" | Kerberos keytabファイルを使用している場合は「はい」になります。 |
| USERNAME | ディストリビューションのログインユーザー名を入力します。空のまま("\"\"")にしておくと、ジョブを実際に実行するマシンのユーザー名が使用されます。 | Kerberosを使用していない場合は「はい」になります。 |
| USE\_MAPRTICKET | 使用するMapRクラスターをMapRチケット認証メカニズムで保護する場合は、trueを入力します。それ以外の場合はfalseと入力します。 | MapRクラスターを使用している場合は「はい」になります。 |
| MAPRTICKET\_PASSWORD | MapRへのログインに使用するパスワードを入力します。例: "my\_password" | Kerberosを使用せず、MapRチケット認証メカニズムを使用している場合は「はい」になります。 |
| MAPRTICKET\_CLUSTER | 接続先とするMapRクラスターの名前を入力します。例: "\"demo.mapr.com\"" | MapRチケット認証メカニズムを使用している場合は「はい」になります。 |
| MAPRTICKET\_DURATION | チケットを有効とする期間(秒)を入力します。例: "86400L" | MapRチケット認証メカニズムを使用している場合は「はい」になります。 |
| SET\_MAPR\_HOME\_DIR | MapR設定ファイルのロケーションがクラスター内のどこかに変更されている場合、つまり、MapRホームディレクトリーが変更されている場合は、trueと入力します。それ以外の場合はfalseと入力します。 | MapRチケット認証メカニズムを使用している場合は「はい」になります。 |
| MAPR\_HOME\_DIR | 新しいホームディレクトリーを入力します。例: "\"/opt/mapr/custom/\"" | SET\_MAPR\_HOME\_DIRにtrueを入力した場合は「はい」になります。 |
| SET\_HADOOP\_LOGIN | 使用するログインモジュールがMapRセキュリティ設定ファイルmapr.login.conf内で変更されている場合は、trueと入力します。それ以外の場合はfalseと入力します。 | MapRチケット認証メカニズムを使用している場合は「はい」になります。 |
| HADOOP\_LOGIN | mapr.login.confファイルから呼び出すモジュールを入力します。たとえば、"\"kerberos\""はhadoop\_kerberosモジュールを呼び出すことを意味します。 | SET\_HADOOP\_LOGINにtrueを入力した場合は「はい」になります。 |

Sparkのチューニングに関連するプロパティは、次のとおりです。

| 関数/パラメーター | 説明 | 必須? |
| --- | --- | --- |
| ADVANCED\_SETTINGS\_CHECK | ジョブの実行に使用するリソースの割り当てを最適化する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | はい |
| SPARK\_DRIVER\_MEMおよびSPARK\_DRIVER\_CORES | 現在のジョブのドライバーが使用するメモリの割り当てサイズとコアの数を入力します。たとえば、メモリは"\"512m\""、コアの数は"\"1\""と入力します。 | スタンドアロンモードでSparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_YARN\_AM\_SETTINGS\_CHECK | YarnクラスターのApplicationMasterチューニングプロパティを定義するには、trueと入力します。それ以外の場合はfalseと入力します。 | YarnクライアントモードでSparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_YARN\_AM\_MEMおよびSPARK\_YARN\_AM\_CORES | ApplicationMasterが使用するメモリの割り当てサイズを入力します。たとえば、メモリは"\"512m\""、コアの数は"\"1\""と入力します。 | SPARK\_YARN\_AM\_SETTINGS\_CHECKにtrueを入力した場合は「はい」になります。 |
| SPARK\_EXECUTOR\_MEM | 各Sparkエグゼキューターが使用するメモリの割り当てサイズを入力します。例: "\"512m\"" | Sparkのチューニングを行っている場合は「はい」になります。 |
| SET\_SPARK\_EXECUTOR\_MEM\_OVERHEAD | エグゼキューターごとにオフヒープメモリ(MB単位)の容量を割り当てる必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | YarnクライアントモードでSparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_EXECUTOR\_MEM\_OVERHEAD | エグゼキューターごとに割り当てるオフヒープメモリ(MB単位)の容量を入力します。 | SET\_SPARK\_EXECUTOR\_MEM\_OVERHEADにtrueを入力した場合は「はい」になります。 |
| SPARK\_EXECUTOR\_CORES\_CHECK | 各エグゼキューターが使用するコアの数を定義する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Sparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_EXECUTOR\_CORES | 各エグゼキューターが使用するコアの数を入力します。例: "\"1\"" | SPARK\_EXECUTOR\_CORES\_CHECKにtrueを入力した場合は「はい」になります。 |
| SPARK\_YARN\_ALLOC\_TYPE | Yarnによるエグゼキューターへのリソースの割り当て方法を選択します。<br><br>次の値のいずれか1つを入力します。<br><br><ul> <li> <kbd>["AUTO"] ("自動")</kbd>: エグゼキューターのデフォルトの数をYarnで使用することを意味します。デフォルト値は2です。 </li> <li> <kbd>FIXED</kbd>: <span>SPARK_EXECUTOR_INSTANCES</span>で使用するエグゼキューターの数を定義することを意味します。 </li> <li> <kbd>["DYNAMIC"] ("ダイナミック")</kbd>: Yarnに負荷に合わせてエグゼキューターの数を調整させることを意味します。次に<span>SPARK_YARN_DYN_INIT</span>、<span>SPARK_YARN_DYN_MIN</span>および<span>SPARK_YARN_DYN_MAX</span>を定義する必要があります。 </li> </ul> | YarnクライアントモードでSparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_EXECUTOR\_INSTANCES | Yarnが使用するエグゼキューターの数を入力します。例: "\"2\"" | SPARK\_YARN\_ALLOC\_TYPEにFIXEDを入力した場合は「はい」になります。 |
| SPARK\_YARN\_DYN\_INIT、SPARK\_YARN\_DYN\_MINおよびSPARK\_YARN\_DYN\_MAX | これら3つのプロパティを定義することで、動的な割り当てのスケールを定義します。たとえば、最初のエグゼキューターの番号を"\"1\""、最小数を"\"0\""、最大数を"\"MAX\""とします。 | SPARK\_YARN\_ALLOC\_TYPEにDYNAMICを入力した場合は「はい」になります。 |
| WEB\_UI\_PORT\_CHECK | Spark Web UIのデフォルトポートを変更する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Sparkのチューニングを行っている場合は「はい」になります。 |
| WEB\_UI\_PORT | Spark Web UIに使用するポート番号を入力します。例: "\"4040\"" | WEB\_UI\_PORT\_CHECKにtrueを入力した場合は「はい」になります。 |
| SPARK\_BROADCAST\_FACTORY | 各ワーカーマシンで変数をキャッシュするために使用するブロードキャスト実装を入力します。<br><br>次の値のいずれか1つを入力します。<br><br><ul> <li> <kbd>"AUTO"</kbd> </li> <li> <kbd>"TORRENT"</kbd> </li> <li> <kbd>"HTTP"</kbd> </li> </ul> | Sparkのチューニングを行っている場合は「はい」になります。 |
| CUSTOMIZE\_SPARK\_SERIALIZER | 外部Sparkシリアライザーをインポートする必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Sparkのチューニングを行っている場合は「はい」になります。 |
| SPARK\_SERIALIZER | 使用するシリアライザーの完全修飾クラス名を入力します。例: "\"org.apache.spark.serializer.KryoSerializer\"" | CUSTOMIZE\_SPARK\_SERIALIZERにtrueを入力した場合は「はい」になります。 |
| ENABLE\_BACKPRESSURE | Sparkのバックプレッシャ機能を有効にする必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。<br><br>バックプレッシャー機能はSparkバージョン1.5以上で利用できます。バックプレッシャーを有効にすると、Sparkによって最適な受信速度が自動的に検出され、あくまでも処理可能な速度に合わせてデータを受信できるように、現在のバッチスケジューリングの待機時間と処理時間を基に速度が動的に変更されます。 | Spark Streamingジョブ用にSparkのチューニングを行っている場合は「はい」になります。 |

ジョブ実行のロギングに関連するプロパティは、次のとおりです。

| 関数/パラメーター | 説明 | 必須? |
| --- | --- | --- |
| ENABLE\_SPARK\_EVENT\_LOGGING | Yarnクラスターのファイルシステム内での持続性を保つために、このジョブのSparkアプリケーションログを有効にする必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | YarnクライアントモードでSparkを使用している場合は「はい」になります。 |
| COMPRESS\_SPARK\_EVENT\_LOGS | ログを圧縮する必要がある場合は、trueと入力します。それ以外の場合はfalseと入力します。 | ENABLE\_SPARK\_EVENT\_LOGGINGにtrueを入力した場合は「はい」になります。 |
| SPARK\_EVENT\_LOG\_DIR | Sparkイベントがログされているディレクトリーを入力します。例: "\"hdfs://namenode:8020/user/spark/applicationHistory\"" | ENABLE\_SPARK\_EVENT\_LOGGINGにtrueを入力した場合は「はい」になります。 |
| SPARKHISTORY\_ADDRESS | ヒストリーサーバーのロケーションを入力します。例: "\"sparkHistoryServer: 18080\"" | ENABLE\_SPARK\_EVENT\_LOGGINGにtrueを入力した場合は「はい」になります。 |
| USE\_CHECKPOINT | ジョブにエラーリカバリー力が必要な場合は、trueと入力してSparkチェックポイント操作を有効にします。それ以外の場合はfalseと入力します。 | はい |
| CHECKPOINT\_DIR | メタデータなどの計算のコンテキストデータ、この計算から生成されたRDDをSparkが保存する、クラスターのファイルシステム内のディレクトリーを入力します。例: "\"file:///tmp/mycheckpoint\"" | SET\_SPARK\_EXECUTOR\_MEM\_OVERHEADにtrueを入力した場合は「はい」になります。 |

Cloudera Navigatorの設定に関連するプロパティは、次のとおりです。

Apache Spark Batchジョブの実行にCloudera V5.5+を使用している場合は、Cloudera Navigatorを使って特定のデータフローの来歴を追跡し、ジョブによりこのデータフローがどのように生成されたかを調べることができます。

| 関数/パラメーター | 説明 | 必須? |
| --- | --- | --- |
| USE\_CLOUDERA\_NAVIGATOR | Cloudera Navigatorを使用する場合は、trueと入力します。それ以外の場合はfalseと入力します。 | Cloudera上でSparkを使用している場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_USERNAMEおよびCLOUDERA\_NAVIGATOR\_PASSWORD | Cloudera Navigatorへの接続に使用する認証情報を入力します。たとえば、ユーザー名に"\"username\""、パスワードに"password"を使用します。 | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_URL | Cloudera Navigatorの接続先となるロケーションを入力します。例: "\"http://localhost:7187/api/v8/\"" | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_METADATA\_URL | Navigator Metadataのロケーションを入力します。例: "\"http://localhost:7187/api/v8/metadata/plugin\"" | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_CLIENT\_URL | Navigatorクライアントのロケーションを入力します。例: "\"http://localhost\"" | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_AUTOCOMMIT | ジョブ実行の最後にCloudera Navigatorが現在のジョブの来歴を生成するように設定するには、trueと入力します。それ以外の場合はfalseと入力します。 | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_DISABLE\_SSL\_VALIDATION | ジョブがCloudera Navigatorに接続した時にSSL検証プロセスを使用しないように設定するには、trueと入力します。それ以外の場合はfalseと入力します。 | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |
| CLOUDERA\_NAVIGATOR\_DIE\_ON\_ERROR | Cloudera Navigatorへの接続が失敗した時にジョブの実行が停止するように設定するには、trueと入力します。それ以外の場合はfalseと入力します。 | USE\_CLOUDERA\_NAVIGATORにtrueを入力した場合は「はい」になります。 |

Hortonworks Atlasの設定に関連するプロパティは、次のとおりです。

Sparkのバッチジョブの実行にHortonworksデータプラットフォームV2.4以上を使用しており、HortonworksクラスターにApache Atlasがインストールされている場合は、Atlasを活用して特定のデータフローの来歴を追跡し、ジョブによりこのデータフローがどのように生成されたかを調べることができます。

| 関数/パラメーター | 説明 | 必須? |
| --- | --- | --- |
| USE\_ATLAS | Atlasを使用する場合はtrueと入力します。それ以外の場合はfalseと入力します。 | Hortonworks上でSparkを使用している場合は「はい」になります。 |
| ATLAS\_USERNAMEおよびATLAS\_PASSWORD | Atlasへの接続に使用する認証情報を入力します。たとえば、ユーザー名に"\"username\""、パスワードに"password"を使用します。 | USE\_ATLASにtrueを入力した場合は「はい」になります。 |
| ATLAS\_URL | Atlasの接続先となるロケーションを入力します。例: "\"http://localhost:21000\"" | USE\_ATLASにtrueを入力した場合は「はい」になります。 |
| SET\_ATLAS\_APPLICATION\_PROPERTIES | AtlasクラスターにSSLや読み取りタイムアウトなどのカスタムプロパティが含まれている場合は、trueと入力します。それ以外の場合はfalseと入力します。 | USE\_ATLASにtrueを入力した場合は「はい」になります。 |
| ATLAS\_APPLICATION\_PROPERTIES | ローカルマシンにディレクトリーを入力し、そのディレクトリーにAtlasのatlas-application.propertiesファイルを保存します。例: "\"/user/atlas/atlas-application.properties\""<br><br>こうすることでジョブが有効になり、これらのカスタムプロパティを使用できるようになります。 | SET\_ATLAS\_APPLICATION\_PROPERTIESにtrueを入力した場合は「はい」になります。 |
| ATLAS\_DIE\_ON\_ERROR | Atlasに関連する問題が発生した時にジョブの実行が停止するように設定するには、trueと入力します。それ以外の場合はfalseと入力します。 | USE\_ATLASにtrueを入力した場合は「はい」になります。 |