S3固有のプロパティをAWS上のDatabricksクラスターのSpark設定に追加します。
始める前に
- DatabricksのSparkクラスターが正しく作成され、実行されていることと、バージョンが3.5 LTSであることを確認します。詳細は、DatabricksドキュメンテーションでCreate Databricks workspaceをご覧ください。
- AWSアカウントを持っていること。
- 使用するS3バケットが適切に作成されており、それにアクセスするための適切な権限があること。
手順
-
Databricksクラスター ページの[Configuration] (設定)タブで、ページ下部の[Spark] (スパーク) タブまでスクロールします。
例
-
[Edit] (編集)をクリックして、このページのフィールドを編集可能にします。
-
[Spark] (スパーク)タブで、S3システムへのアクセスに使う認証情報に関するSparkプロパティを入力します。
- S3N
spark.hadoop.fs.s3n.awsAccessKeyId <your_access_key>
spark.hadoop.fs.s3n.access.key <your_access_key>
spark.hadoop.fs.s3n.awsSecretAccessKey <your_secret_key>
- S3A
spark.hadoop.fs.s3a.awsAccessKeyId <your_access_key>
spark.hadoop.fs.s3a.access.key <your_access_key>
spark.hadoop.fs.s3a.awsSecretAccessKey <your_secret_key>
-
DatabricksでSpark Streaming Jobsを実行する必要がある場合は、同じ[Spark] (スパーク)タブで、次のプロパティを追加してデフォルトのSparkシリアライザーを定義します。Spark Streamingジョブを実行する予定がない場合は、この手順を無視できます。
spark.serializer org.apache.spark.serializer.KryoSerializer
-
Sparkクラスターを再起動します。
-
Databricksクラスターページの[Spark UI]タブで、[Environment] (環境)をクリックしてプロパティのリストを表示し、前の手順で追加した各プロパティがそのリストに存在することを確認します。