В моем проекте PySpark я использую пакет Python, который использует Dynaconf
, поэтому мне нужно установить следующую переменную среды — ENV_FOR_DYNACONF = platform
.
Проблема в том, что я не понимаю, как я могу передать эту переменную среды для выполнения задания EMR без сервера.
Я пробовал это -
os.environ['ENV_FOR_DYNACONF'] = platform
В начале кода, но это не сработало и в любом случае, я хочу понять, как правильно передавать переменные env в EMR.
Кто-нибудь может помочь?
Чтобы передать переменные среды в EMR Serverless, вы можете использовать следующие свойства искрового задания в sparkSubmitParameters
:
spark.executorEnv.[KEY]
для передачи переменных env исполнителям.spark.emr-serverless.driverEnv.[KEY]
для передачи переменных env драйверу.Пример :
"sparkSubmitParameters": "--conf spark.emr-serverless.driverEnv.ENV_FOR_DYNACONF=platform"
Для получения дополнительной информации см. https://docs.aws.amazon.com/emr/latest/EMR-Serverless-UserGuide/jobs-spark.html