Netflix представила новую интерактивную среду вычислений с открытым исходным кодом Polynote, предназначенную для сопровождения процесса научных исследований, обработки и визуализации данных, сообщает OpenNet.
Документы в Polynote представляют собой упорядоченный набор ячеек, которые могут содержать код или текст. Каждая ячейка редактируется и исполняется по отдельности; их можно добавлять, удалять и перегруппировывать, но при этом состояние данных для каждой ячейки зависит от вычислений в прошлых ячейках (выполнение сверху-вниз). Информация о зависимостях и конфигурация сохраняются непосредственно в документе, а не в отдельных файлах.
В отличие от Jupyter и Zeppelin, новая среда позволяет смешивать в одном документе код на нескольких языках программирования. Сейчас Polynote поддерживает Scala, Python, SQL и Vega.
Polynote предоставляет расширенные средства для редактирования кода и текста, близкие к возможностям интегрированных сред разработки и текстовых процессоров: есть автодополнение, подсветка ошибок, вывод подсказок для параметров функций и методов. В планах — возможность перехода на определения переменных/функций из мест их вызова.
Что касается подготовки документации и отчётов, редактирование теста происходит в режиме WYSIWYG, позволяющем сразу наблюдать конечный результат. Для определения формул предусмотрена возможность вставки выражений в формате LaTeX.
Среда позволяет полностью контролировать процесс выполнения: в области задач показывается, какой код сейчас выполняется и на какой стадии находятся вычисления. Через таблицу символов можно просмотреть все определённые функции и переменные, проинспектировать их значение или визуализировать изменения. Все сбои при выполнении и исключительные ситуации сразу подсвечиваются в редакторе кода. В редакторе в режиме реального времени выделяется выполняемая строка кода.
Обрабатываемые данные отображаются в наглядном виде с разбивкой по типам или в табличном представлении. Поддерживается интеграция с Apache Spark для просмотра, анализа и визуализации больших объёмов данных. Для упрощения визуализации предлагается встроенный редактор графиков и диаграмм, в качестве опции предусмотрена возможность применения для визуализации Vega и Matplotlib.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.