2016-12-02 9 views
3

Использование %dep для добавления банок в Zeppelin устарело. Нам было рекомендовано использовать кнопки щелчка: http://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/dependencymanagement.htmlПрограммно добавить jar в zeppelin spark interpreter через API

Этот метод раздражает, потому что я не могу найти способ его автоматизировать. Самое приятное в использовании %dep было то, что вы могли бы использовать API-интерфейс ноутбука для загрузки фляги. Это было здорово, потому что мы запускали некоторые тесты E2E с помощью ноутбуков и, следовательно, требовали возможности автоматической загрузки банок.

Кто-нибудь вычислил программный способ загрузки банок без использования %dep?

ответ

1

%dep был устаревшим, но было много пользователей, просящих его сохранить. Так что %dep устаревание недавно удалено в главной ветке, и оно больше не будет отображаться из версии 0.7.0.

Другой способ сделать это - использовать rest api. Это работает в той же логике, что и управление зависимостями графического интерфейса.

curl -w "%{http_code}" -H 'Content-Type:application/json' \ 
    -XPUT http://192.168.99.100:8080/api/interpreter/setting/{interpreterId} \ 
    -d '{"dependencies":[ 
    { 
     "groupArtifactVersion":"/usr/zeppelin/ml-view-assembly.jar", 
     "exclusions":[] 
    } 
]}' 

Будьте уверены, чтобы получить ваш interpreterId используя /api/interpreter/setting НЕ /api/interpreter как последний довольно смутно дает некоторый случайный бесполезный ID.

+0

Выражает благодарность. Хотя, когда я это делаю, он, похоже, уничтожает другие настройки, которые имеет интерпретатор Spark. Когда я пытаюсь использовать ячейку '% spark' в записной книжке, я получаю' java.lang.ClassNotFoundException: org.apache.zeppelin.spark.SparkInterpreter' – samthebest