Как плавно развиваться между разработчиками и разработчиками с помощью Spark Structured Streaming? - PullRequest
0 голосов
/ 26 сентября 2018

В отличие от предварительных версий искры, таких как предыдущая потоковая передача искры, в потоковой структурированной искре требуется установить мастер зажигания при разработке в локальном режиме (например, в IntelliJ).

напр.

val spark = SparkSession.builder()
    .appName("SourceConvertor")
    .master("local[*]")
    .config("spark.executor.memory", "8G")
    .getOrCreate()

Без установки мастера зажигания я получаю:

org.apache.spark.SparkException: URL-адрес мастера должен быть установлен в вашей конфигурациив org.apache.spark.SparkContext. (SparkContext.scala: 367) в org.apache.spark.SparkContext $ .getOrCreate (SparkContext.scala: 2493)

В прошлом, если это не былоуказано, Local[*] предполагалось.Следовательно, переход от запуска с помощью сценария отправки или команды java (как в intelliJ) был беспроблемным.

Следовательно, учитывая это изменение, мне интересно, как быстро перемещаться между разработкой и представлением кластера без суеты?

Единственный способ, которым я вижу это возможным, - это комментировать заданную мастер-линию и любой другой конфиг, добавленный программно.

Проблема в том, что все, что мы можем передать в командной строке для spark, делается через spark-shell или скрипт submit.Локальный режим разработки, как в моем коде выше, не может ничего выбрать, так как в моем понимании он не установлен для него.

Кстати, мне любопытно, как сценарий отправки spark передает аргументы, которые он выбирает (либо в файле conf, либо в командной строке), в sparksession, который мы создаем в нашем коде.getOrCreate() имеет к этому какое-то отношение?

Если бы кто-то мог объяснить механику и как лучше всего перейти от dev к кластеру с помощью кода зажигания, не просто каждый раз комментируя какую-то строку, это было бы здорово.

Примечание:

Очевидно, что другой способ - это запустить искровой кластер на локальном компьютере и систематически отправлять его на тестирование.Но тогда работа в локальном режиме становится бесполезной.Кроме того, не обязательно устанавливать кластер на своем компьютере для разработчика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...