Я пытаюсь следовать этой документации:
https://github.com/spark-jobserver/spark-jobserver#dependency-jars
Вариант 2, указанный в документации, гласит:
Зависимый-jar-uris также может использоваться в параметре конфигурации задания при отправке задания. В специальном контексте это имеет тот же эффект, что и параметр конфигурации контекста depend-jar-uris. В постоянном контексте банки будут загружаться для текущего задания, а затем для каждого задания, которое будет выполняться в постоянном контексте. curl -d "" 'localhost:8090/contexts/test-context?num-cpu-cores=4&memory-per-node=512m' OK⏎ curl 'localhost:8090/jobs?appName=test&classPath=spark.jobserver.WordCountExample&context= test-context&sync=true' -d '{ depend-jar-uris = ["file:///myjars/deps01.jar", "file:///myjars/deps02.jar"], input.string = "a b c a b см. "}' Файлы jar /myjars/deps01.jar и /myjars/deps02.jar (присутствующие только на узле SJS) будут загружены и доступны для драйвера и исполнителей Spark.
Является ли каталог "file:///myjars/" каталогом JAR узла SJS или каким-либо пользовательским каталогом?
У меня есть клиент в Windows и Spark JobServer в Linux. Затем я загружаю JAR на узел SJS. Узел SJS помещает этот Jar куда-нибудь. Затем, когда я звоню, чтобы запустить задание и установить «зависимый-jar-uris», узел SJS найдет мой ранее загруженный JAR и запустит задание:
"dependent-jar-uris" имеет значение "file:///tmp/spark-jobserver/filedao/data/simpleJobxxxxxx.jar"
Это работает нормально, но мне пришлось вручную искать узел SJS, чтобы найти это местоположение (например, file:///tmp/spark-jobserver/filedao/data/simpleJobxxxxxx.jar), а затем добавить его в мои будущие запросы для запуска. работа.
Вместо этого, как мне сделать REST-вызов от клиента, чтобы просто получить путь, по которому Spark JobServer помещает мои jar-файлы, когда я их загружаю, чтобы я мог правильно установить путь file:/// в моем «зависимом-jar». -uris динамически?