Я разрабатываю приложение, в котором несколько пользователей используют один и тот же SparkContext для запуска своих запросов к Spark Cluster.
Как указано в документации Spark (https://spark.apache.org/docs/2.2.0/job-scheduling.html#fair-scheduler-pools), с помощью планировщика Fair, вы можете назначить разные пулы для каждого пользователя, и они получат справедливую долю ресурсов кластера, но каждый пул будет настроен с помощью конфигурация пула по умолчанию (режим планирования FIFO, вес 1 и minShare 0).
Учитывая, что мы заранее не знаем, какие пользователи могут подключаться к приложению, мы не можем настроить файл конфигурации для справедливых пулов планировщика для всех пользователей.
Итак, чтобы динамически распределять пулы для каждого пользователя и настраивать каждый пул в режиме планирования FAIR, я думаю, что может быть 2 варианта:
- Измените поведение пула по умолчанию, чтобы изменить режим планирования на FAIR. Является ли это возможным? Как?
- Создание пула планировщика динамически и программно для добавления пула планировщика, когда пользователь подключается к приложению в первый раз, и этот пул должен быть создан в режиме планирования FAIR. Является ли это возможным? Как?
Заранее спасибо