Только что вышло очередное обновление EAP 11 для плагина под названием Big Data Tools, доступного для установки в IntelliJ IDEA Ultimate, PyCharm, and DataGrip. Можно установить его через страницу плагина на сайте или внутри IDE.
Big Data Tools это плагин, позволяющий соединяться с кластерами Hadoop и Spark. Он предоставляет мониторинг узлов, приложений и отдельных задач. Кроме того, в IDEA и DataGrip можно создавать, запускать и редактировать ноутбуки Zeppelin. Можно не переключаться на веб-интерфейс Zeppelin и спокойно работать, не выходя из любимого IDE. Плагин позволяет удобно перемещаться по коду, делать умное автодополнение, рефакторинги и квик-фиксы прямо внутри ноутбука.
Новый тип конфигурации запуска для spark-submit
Одно из важнейших улучшений в этом релизе возможность запускать
Spark-приложения из IDE, без необходимости набирать команды в
консоли. Эта функциональность доступна для всех поддерживаемых IDE,
включая PyCharm. Напоминаю, скрипт spark-submit
лежит
в директории bin
дистрибутива Spark и используется для
запуска приложений на кластере. Он использует все поддерживаемые
типы кластеров через единый интерфейс: благодаря этому не нужно
несколько раз по-разному перенастраивать своё приложение.
Удобно.
Большая проблема пользователей spark-submit
в том,
что его использование сопряжено с рядом ритуальных рутинных
действий. Нужно вручную собрать все артефакты, скопировать их на
целевой сервер по SSH, запустить spark-submit
с кучей
параметров. Обычно всё это заканчивается написанием пачки
bash-скриптов на все случаи жизни, которые ты теперь обязан
поддерживать. В целом, эта рутина крадет время разработчиков,
которое можно было бы потратить на что-то более полезное.
С плагином Big Data Tools этот кошмар можно если не прекратить,
но значительно облегчить. Теперь вам достаточно создать новую run
configuration, вписать в неё параметры spark-submit
,
параметры SSH, прописать артефакты-зависимости и нажать кнопку
запуска. Дальше всё сработает автоматически.
Поддержка Apache Zeppelin в DataGrip
Теперь можно использовать интеграцию с Zeppelin внутри DataGrip. Для пользователей DataGrip это означает, что наконец-то можно нормально визуализировать данные. Кроме того, писать код на SQL куда легче с новым умным автодополнением прямо внутри интерактивного блокнота.
Надо понимать, что языковая поддержка сейчас ограничена только SQL. Например, Matplotlib или анализ кода на Scala в DataGrip у вас не заработают.
Изменения
В этом обновлении мы сконцентрировались на улучшении существующей функциональности. Полный список изменений можно прочитать по ссылке, а дальше будут перечислены только самые важные.
Новая функциональность
- Поддержка Spark-submit для IntelliJ IDEA, DataGrip и PyCharm (BDIDE-843).
- Поддержка Apache Zeppelin для DataGrip (BDIDE-1045).
- Редактируемые заголовки параграфов в Zeppelin (BDIDE-906).
- Расширенная фильтрация результатов поиска в Spark Monitoring (BDIDE-1159).
- Псевдографические таблицы в текстовом ответе Zeppelin отображаются как полноценные таблицы (BDIDE-1172).
Улучшения в интерфейсе
- Zeppelin: Функции экспорта теперь умеют запоминать путь, по которому в прошлый раз происходило сохранение (графики, таблицы и HTML в ответах Zeppelin) (BDIDE-1132).
Список исправленных багов
- Zeppelin: Исправлено IntelliJ IDEA 2020.1 могла падать при просмотре ответа Zeppelin, содержащего встроенные изображения (BDIDE-1184).
- Zeppelin: Исправлено Нельзя было подключиться к серверу, если эндпоинт /api/version требовал серверной аутентификации (BRIDE-1199).
- Zeppelin: Исправлено Попытка остановить выполняющийся параграф останавливала вообще все параграфы в ноутбуке (BDIDE-1171).
- Zeppelin: Исправлено Нумерация параграфов в окне Structure не совпадала с нумерацией внутри Zeppelin (BDIDE-1135).
- Zeppelin: Fixed IDEA пыталась загружать исходники заново, при каждом новом запуске (BDIDE-1208).
- Zeppelin: Исправлено Кнопка "Open in browser" для локальных ноутов была не нужна (BDIDE-1142).
- Zeppelin: Исправлено Результаты выполнения могли стираться при перезапуске интерпретатора (BDIDE-1129).
- Spark Monitoring: Исправлено Неправильный анализ JSON, в котором хранятся данные для списка Storages, приводил к очистке списка (BDIDE-1162).
- Remote FS: Исправлено Копирование директорий внутри инстанса Azure иногда приводило к созданию пустых директорий (BDIDE-1141).
- Remote FS: Исправлено Файлы с неизвестным содержимым стоит открывать как текстовые файлы (BDIDE-1192).
- Remote FS: Исправлено Исключение возникало при попытке открывать файлы без расширения (BDIDE-1202).
- General: Исправлено Проблемы при попытке копирования и вставки между различными проектами (BDIDE-1195).
- HTTP Proxy: Исправлено Ошибка при соединении со Spark или Hadoop через SOCKS proxy с авторизацией (BDIDE-1209).
- HTTP Proxy: Исправлено Проблема с параметрами авторизации для SCOKS proxy (BDIDE-1215).
- HTTP Proxy: Исправлено Частные настройки прокси не должны перекрывать общие настройки для нового соединения (BDIDE-1216).
Документация и социальные сети
Ну и наконец, если вам нужно разобраться функциональностью Big Data Tools, у нас есть подробная документация. Если хочется задать вопрос, можно сделать это прямо в комментариях на Хабре или перейти в наш Twitter.
Надеемся, что все эти улучшения окажутся полезными, позволят вам делать более интересыне вещи, и более приятным способом.
Команда Big Data Tools