Joule — это платформа Low Code для разработки вариантов использования. Платформа упрощает разработку вариантов использования, предоставляя выразительный язык для определения конвейеров обработки с использованием готовых и настраиваемых процессоров и соединителей данных.
Готовые решения Joule предоставляют стандартные реализации коннекторов данных и полезные процессоры, которые позволяют быстро приступить к созданию и запуску вариантов использования.
Этот ранний выпуск содержит ряд новых функций, исправлений ошибок, оптимизаций и общих улучшений удобства использования.
Ключевая особенность
Разработка функций
Joule предоставляет процессор разработки функций, который позволяет пользователям определять, как должны создаваться функции, готовые к использованию в сценариях прогнозной аналитики.
Процессор генерирует специальное значение для каждого объявленного функционального поля. Поддерживаются два метода; необработанные и вычисляемые значения с использованием пользовательских выражений и плагинов. По завершении генерируется карта функций со всеми необходимыми функциями и помещается в StreamEvent, готовая для следующего процессора в конвейере.
Для начала вам предоставляются плагины OOTB для следующих функциональных категорий:
- Сценарии
- Масштабирование
- Трансформировать
Пример
feature engineering: name: retailProfilingFeatures versioned: true features: as values: - location_code - store_id compute: spend_ratio: scripting: macro: expression: 1 - spend/avg_spend language: js variables: avg_spend: 133.78 age: function: age binning: source field: date_of_birth day: function: day-of-week transform: source field: date
Подробности смотрите в документации.
Машинное обучение и аудит
Joule предоставляет процессор прогнозирования PMML для выполнения потоковых прогнозов/оценки. Реализация использует библиотеку с открытым исходным кодом JPMML, разработанную Villu Ruusmann.
Пример
pmml predictor: name: irisScorer model filename: /hom/joule/models/pmml/iris_rf.pmml response field: flowerPrediction audit configuration: target schema: ml_audit queue capacity: 5000 flush frequency: 5
Аудит
Необязательная конфигурация обеспечивает возможность аудита прогнозов для повторного обучения модели, управления отклонением функций и прогнозов, наблюдаемости модели и любых требований к управлению локальным бизнесом.
Конфигурация динамически создаст таблицу базы данных в памяти, используя имя процесса в качестве целевой таблицы, и остальные конечные точки для обеспечения прямого доступа и функций экспорта.
Благодаря этим новым функциям Joule теперь может предоставлять расширенную аналитику на основе потоков с использованием моделей PMML в контейнерах Docker. Пример показан ниже.
Подробности смотрите в документации.
API-интерфейс SQL-запросов
Джоуль встраивает DuckDB, базу данных в памяти, в процесс выполнения. Решение идеально подходит для поддержки пользовательской логики процессора с использованием различных методов, таких как:
- Размещение и доступ к пользовательским эталонным данным
- Блокнот для обработки состояния
- Специальные настраиваемые сложные запросы
- Захват и экспорт потоковых событий
Подробности смотрите в документации.
Поддержка веб-сокетов
Joule теперь поддерживает публикацию событий в издателе Websocket. События сериализуются как Json.
websocketPublisher: pathOverride: /joule/websocket/stream
Подробности смотрите в документации.
Шаблоны проектов
Для начала индивидуальной разработки транспорта и процессора предоставляется шаблонный проект проекта. Проект можно найти по этой ссылке.
Документация
В рамках постоянных усилий по обеспечению качественной документации для платформы этот выпуск был реорганизован, добавлены новые разделы, дополнительные сведения и многое другое. Онлайн-документацию можно найти здесь.
Начиная
Чтобы приступить к работе, загрузите следующие ресурсы, чтобы подготовить свою среду и изучить предоставленную документацию. Не стесняйтесь обращаться с вопросами.
Мы здесь, чтобы помочь
Приветствуются отзывы, в том числе мысли о том, как улучшить и расширить Joule, а также идеи о интересных вариантах использования.
Вы участвуете в этом со всем сообществом FractalWorks, которое открыто делится идеями и передовым опытом и помогает друг другу на нашем Форуме сообщества. Не стесняйтесь присоединиться к нам там! И если у вас есть дополнительные вопросы о том, как стать партнером или клиентом FractalWorks, не стесняйтесь взаимодействовать с нами, мы будем рады поговорить о ваших потребностях.