Привет, Коллеги! Вопрос к практикующим.
Есть спарк с хадупом, стандартный дистрибутив HDP.
Есть некая задача агрегации данных, которую надо запускать как батч или стрим, и она читает из кафки и пишет в кафку. Топиков много, задач надо много запускать, но код одинаковый. *Вопрос: Как вы параметризуете задачи?*. Т.е. чтоб передавать, например, топики как параметры?
Я такое пытался делать:
в программу передается название приложения, по нему читается из конфига параметры:
appName = sys.argv[1]
spark = SparkSession.builder.appName(appName).getOrCreate()
topic_in = spark.conf.get("spark."+appName+".topic_in")
такой конфиг можно, например, хранить в zookeeper.
Меня интересует, есть ли какой-то более правильный и удобный способ?
Вопрос, повторяю, на стандартном кластере, а не в облаке, не для кубернетеса и проч. Спасибо заранее!