Как прочитать все файлы свойств с заданным префиксом в приложении spark, spring?
Я занимаюсь разработкой приложений в spark и scala и использую Spring для чтения файлов конфигурации.
Файлы, специфичные для моей среды, доступны в этом каталоге, как это
SRC / Основные / ресурсы /DEV
mms_kafka.properties mms_app.properties pps_kafka.properties pps_app.properties
И общие файлы в src / main / resoruce как ниже
SRC / Основной / ресурс
mmsmappings.properties ppsmappings.properties
В настоящее время я делаю как ниже и работает нормально
@PropertySource(value = Array("classpath:${ENV}/mms_app.properties","classpath:${ENV}/mms_kafka.properties","classpath:$mmsmapping.properties"), ignoreResourceNotFound=false)
Spark submit command: spark2-submit --master yarn --deploy-mode client --class job.Driver --conf 'spark.driver.extraJavaOptions=-DENV=DEV' --driver-memory 4g --executor-memory 16g --num-executors 4 --executor-cores 4 temp-0.0.1-shaded.jar
Но я хочу прочитать все файлы для определенного префикса (ммс /pps), как показано ниже, я пробовал это, но это дает ENV и APP заполнитель не решен
@PropertySource(value = Array("classpath:${ENV}/${APP}_app.properties","classpath:${ENV}/${APP}_kafka.properties","classpath:${APP}mapping.properties"), ignoreResourceNotFound=false)
Spark submit command: spark2-submit --master yarn --deploy-mode client --class job.Driver --conf 'spark.driver.extraJavaOptions=-DENV=DEV' --conf 'spark.driver.extraJavaOptions=-DAPP=mms' --driver-memory 4g --executor-memory 16g --num-executors 4 --executor-cores 4 temp-0.0.1-shaded.jar
Как мне это исправить?
1 ответ
Решение
Я решил это, передав параметры в искровой работе, как показано ниже
spark2-submit --master yarn --deploy-mode client --class com.job.Driver --conf 'spark.driver.extraJavaOptions=-DENV=DEV -DAPP=mms' --driver-memory 4g --executor-memory 16g --num-executors 4 --executor-cores 4 test.jar