Spark プロパティを使用してカスタム設定を指定する
Amazon Athena for Apache Spark でセッションを作成または編集する場合、[Spark プロパティ].jar ファイル、パッケージ、またはその他のカスタム設定を指定できます。Spark のプロパティを指定するには、Athena コンソール、AWS CLI、または Athena API を使用できます。
Athena コンソールを使用して Spark プロパティを指定する
Athena コンソールでは、ノートブックの作成時や現在のセッションの編集時に Spark プロパティを指定できます。
[ノートブックの作成] または [セッションの詳細の編集] ダイアログボックスにプロパティを追加する方法
-
[Spark のプロパティ] を拡張します。
-
プロパティを追加するには、[テーブルで編集] または [JSON で編集] オプションを使用します。
-
[テーブルで編集] オプションを使用する場合は、[プロパティを追加] を選択してプロパティを追加するか、[削除] を選択してプロパティを削除します。[キー] ボックスと [値] ボックスを使用して、プロパティ名とその値を入力します。
-
カスタム
.jarファイルを追加するには、spark.jarsプロパティを使用します。 -
パッケージファイルを指定するには、
spark.jars.packagesプロパティを使用します。
-
-
設定を直接入力して編集するには、[JSON で編集] オプションを選択します。JSON テキストエディタでは、次のタスクを実行できます。
-
JSON テキストをクリップボードにコピーするには、[コピー] を選択します。
-
JSON エディタからすべてのテキストを削除するには、[クリア] を選択します。
-
設定 (歯車) アイコンを選択して行折り返しの動作を設定するか、JSON エディタのカラーテーマを選択します。
-
-
注意事項
-
Athena for Spark でプロパティを設定できます。これは [SparkConf]
オブジェクトで [Spark properties] を直接設定する場合と同じです。 -
spark.プレフィックスが付いたすべての Spark プロパティを開始します。他のプレフィックスが付いたプロパティは無視されます。 -
Athena のカスタム設定では、すべての Spark プロパティを利用できるわけではありません。設定が制限されている
StartSessionリクエストを送信すると、セッションは開始時に失敗します。-
spark.athena.プレフィックスは予約されているため使用できません。
-
AWS CLI または Athena API を使用してカスタム設定を指定する
AWS CLI または Athena API を使用してセッション設定を指定するには、StartSession API アクションまたは start-sessionStartSession リクエストでは、EngineConfiguration オブジェクトの SparkProperties フィールドを使用して設定情報を JSON 形式で渡します。これにより、指定した設定でセッションが開始されます。
AWS CLI からカスタム Spark プロパティを指定するには、インタラクティブセッションの開始時に engine-configuration 設定を使用します。
aws athena start-session \ --region "REGION" --work-group "WORKGROUP" \ --engine-configuration '{ "Classifications": [{ "Name": "spark-defaults", "Properties": { "spark.dynamicAllocation.minExecutors": "1", "spark.dynamicAllocation.initialExecutors": "2", "spark.dynamicAllocation.maxExecutors": "10", "spark.dynamicAllocation.executorIdleTimeout": "300" } }] }'
CreateWorkgroup API アクションまたは UpdateWorkgroup API アクションを使用して、ワークグループレベルでデフォルト設定を指定することもできます。ワークグループで定義したデフォルト設定は、そのワークグループで開始されたすべてのセッションに適用されます。
ワークグループの AWS CLI からデフォルトの Spark プロパティを指定するには、新しいワークグループの作成時に engine-configuration 設定を使用します。
aws athena create-work-group \ --region "REGION" \ --name "WORKGROUP_NAME" \ --configuration '{ "EngineVersion": { "SelectedEngineVersion": "Apache Spark version 3.5" }, "ExecutionRole": "EXECUTION_ROLE", "EngineConfiguration": { "Classifications": [ { "Name": "spark-defaults", "Properties": { "spark.dynamicAllocation.minExecutors": "1", "spark.dynamicAllocation.initialExecutors": "2", "spark.dynamicAllocation.maxExecutors": "10", "spark.dynamicAllocation.executorIdleTimeout": "300" } } ] } }'
ワークグループの AWS CLI からデフォルトの Spark プロパティに変更を加えるには、ワークグループの更新時に engine-configuration 設定を使用します。この変更は、その後の新しいインタラクティブセッションに適用されます。
aws athena update-work-group \ --region "REGION" \ --work-group "WORKGROUP_NAME" \ --configuration-updates '{ "EngineVersion": { "SelectedEngineVersion": "Apache Spark version 3.5" }, "ExecutionRole": "EXECUTION_ROLE", "EngineConfiguration": { "Classifications": [ { "Name": "spark-defaults", "Properties": { "spark.dynamicAllocation.minExecutors": "1", "spark.dynamicAllocation.initialExecutors": "2", "spark.dynamicAllocation.maxExecutors": "12", "spark.dynamicAllocation.executorIdleTimeout": "300" } } ] } }'