将 Java 17 与 Amazon EMR Serverless 结合使用 - Amazon EMR

将 Java 17 与 Amazon EMR Serverless 结合使用

在 Amazon EMR 6.11.0 及更高版本中,您可以将 EMR Serverless Spark 作业配置为使用 Java 虚拟机(JVM)的 Java 17 运行时。使用以下方法之一配置 Spark 与 Java 17。

JAVA_HOME

要覆盖 EMR Serverless 6.11.0 及更高版本的 JVM 设置,可以向其 spark.emr-serverless.driverEnvspark.executorEnv 环境分类提供 JAVA_HOME 设置。

x86_64

设置所需的属性以指定 Java 17 作为 Spark 驱动程序和执行程序的 JAVA_HOME 配置:

--conf spark.emr-serverless.driverEnv.JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto.x86_64/ --conf spark.executorEnv.JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto.x86_64/
arm_64

设置所需的属性以指定 Java 17 作为 Spark 驱动程序和执行程序的 JAVA_HOME 配置:

--conf spark.emr-serverless.driverEnv.JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto.aarch64/ --conf spark.executorEnv.JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto.aarch64/

spark-defaults

或者,您也可以在 spark-defaults 分类中指定 Java 17,以覆盖 EMR Serverless 6.11.0 及更高版本的 JVM 设置。

x86_64

spark-defaults 分类中指定 Java 17:

{ "applicationConfiguration": [ { "classification": "spark-defaults", "properties": { "spark.emr-serverless.driverEnv.JAVA_HOME" : "/usr/lib/jvm/java-17-amazon-corretto.x86_64/", "spark.executorEnv.JAVA_HOME": "/usr/lib/jvm/java-17-amazon-corretto.x86_64/" } } ] }
arm_64

spark-defaults 分类中指定 Java 17:

{ "applicationConfiguration": [ { "classification": "spark-defaults", "properties": { "spark.emr-serverless.driverEnv.JAVA_HOME" : "/usr/lib/jvm/java-17-amazon-corretto.aarch64/", "spark.executorEnv.JAVA_HOME": "/usr/lib/jvm/java-17-amazon-corretto.aarch64/" } } ] }