Суперсет ТА релиз 6.3.0

На основе Apache Superset 6.1

MCP-сервер для ИИ в Суперсет ТА

В Суперсет ТА появилась поддержка MCP-сервера (Model Context Protocol), который позволяет подключать к платформе внешние ИИ-клиенты (ChatGPT, Claude и др.) для поиска доступных пользователю датасетов, графиков и дашбордов, изучения их структуры и метаданных, получения данных графиков и создания новых графиков, формирования SQL-запросов. 

ИИ позволяет сократить количество ручных операций и снижает порог входа для пользователей, не владеющих SQL или не знакомых со всеми возможностями платформы. 

Пользователь взаимодействует с подключённым MCP-совместимым ИИ-клиентом , а Суперсет ТА предоставляет ему инструменты для работы со внутренними BI-данными. Доступы ИИ-агента при этом контролируются существующей системой пользовательских прав. Запрос к ИИ_2 Запрос к ИИ_4

Поддержка расширений

Сообщество Apache Superset реализовало Extensions Framework –  механизм расширения функциональности платформы без внесения изменений в его исходный код. Для разработчиков и администраторов это означает снижение стоимости разработки и сопровождения расширений, в то время как конечному пользователю теперь не придётся предпринимать дополнительные действия по активации этих расширений.

Подключаемые расширения способны добавлять в Суперсет ТА новые элементы интерфейса, панели, команды, пункты меню, backend API и другую специализированную функциональность. Например, в SQL Лабораторию можно добавить новый редактор кода, инструменты форматирования или проверки SQL-кода, панель анализа запросов, справочник корпоративных метрик и многое другое.  Расширение SQL-Lab Каждое расширение создаётся разработчиками отдельно от Суперсет ТА, благодаря чему их можно версионировать и обновлять отдельно от платформы. Это существенно упрощает последующие обновления Суперсет ТА, т.к. теперь вместо поддержки изменённой версии исходного кода можно использовать стандартную версию платформы вкупе с набором отдельных расширений.

Global Task Framework (GTF)

Создана новая единая инфраструктура управления фоновыми и продолжительными процессами. Она стандартизирует запуск и отслеживание задач, позволяет отображать их прогресс и состояние, отменять выполнение и предотвращать дублирующиеся запуски. 

Для пользователей предусмотрен общий интерфейс просмотра задач, а для разработчиков — единый API создания и управления ими. 
Global Task Framework
В настоящий момент фоновые задачи выполняет Celery, который в будущем постепенно будет заменён GTF. Механизм GTF опционален и для его использования требуется активировать флаг GLOBAL_TASK_FRAMEWORK.

Матричное представление для всех визуализаций

Для всех визуализаций доступен функционал матриц, который позволяет настроить вывод одних и тех же показателей для различных разрезов в виде матрицы однотипных графиков. 
Матрица
Соответствующие опции находятся во вкладке «Преобразовать в матрицу», а сам функционал доступен по флагу функций MATRIXIFY.

Интерактивные папки для датасетов

Теперь при редактировании любого датасета вы можете создавать папки для объединения его столбцов в логические группы для упрощения ориентирования в них. Папки поддерживают несколько уровней вложенности, их возможно сворачивать/разворачивать.  Папки датасета Папки датасетов доступны по флагу функций DATASET_FOLDERS.

Пользовательские настройки в графиках ECharts

В редакторе визуализаций, основанных на библиотеке ECharts, появился JavaScript-редактор, который позволяет пользователям применять к графикам параметры, поддерживаемые библиотекой, но не вынесенные в опции панели «Кастомизация».  При помощи нового функционала возможно кастомизировать сетку, оси, легенду и т.д. на графиках следующих визуализаций:
  • Диаграмма с областями;
  • Столбчатая диаграмма;
  • Линейный график;
  • Гладкая линия;
  • Смешанный график.
Дополнительные функции ECharts Парсер защищён от произвольного JS-кода – в редактор можно передать только объект ECharts.

Переработанная SQL Лаборатория

SQL Лаборатория претерпела ряд преобразований, нацеленных на повышение удобства работы с ней. В их числе:
  • Вывод перечня всех схем и таблиц в левой панели;
  • Минимализация и уплотнение служебных кнопок;
  • Отображение процесса обработки запроса к базе данных;
  • Переработка визуального стиля.
Новая SQL-Lab

Улучшенная выгрузка в CSV

Процесс выгрузки данных в CSV был ускорен и оптимизирован: теперь ошибка нехватки памяти практически исключена даже при выгрузке сотен тысяч строк.

Кроме того, добавлена полоса прогресса, отображающая ход текущей выгрузки. Экспорт CSV

Сжатие выгружаемых PDF-файлов

В конфигурации появилась переменная PDF_COMPRESSION_LEVEL, позволяющая регулировать размер выгружаемых PDF-файлов и, соответственно, скорости их выгрузки. 

Переменная поддерживает 4 значения:
  • NONE – сжатие отключено, наиболее быстрая выгрузка;
  • FAST – слабое сжатие, сравнительно быстрая выгрузка;
  • MEDIUM – умеренное сжатие, средняя скорость выгрузки (установлено по умолчанию);
  • SLOW – максимальное сжатие, долгая выгрузка.

Пересчёт итогов в «Таблице» при действующем поиске

Графики визуализации «Таблица» теперь способны моментально пересчитывать итоги столбцов в ситуациях, когда вы фильтруете значения в них через строку поиска. Подсчёт итогов в таблице

Кастомизируемые подсказки для карт

Все картографические визуализации, созданные на основе DECK.GL, получили поддержку кастомизации всплывающих подсказок посредством HTML. Кастомизация всплывашек на картах

Сортировка легенды в круговой диаграмме

В конструкторе визуализации появилась новая опция, позволяющая отсортировать метки в легенде по алфавиту. Сортировка легенды круговой

Предупреждение о подозрительных URL в рассылках

Если описание оповещения или рассылки содержит ссылку на внешний источник, – т.е. не ведущую в Суперсет, – то при попытке пользователя перейти по ней он получит соответствующее предупреждение. Предупреждение о внешней ссылке  

Сортировка по столбцам в «Сводной таблице»

Теперь графики «Сводной таблицы» могут быть отсортированы по столбцам. Сортировка происходит как между строками, так и между подстроками в каждой строке. Сортировка сводной таблицы Единовременно возможно сортировать только по 1 произвольному столбцу.

Зум для «Коробчатой диаграммы»

В конструкторе «Коробчатой диаграммы» появилась опция «Зум», позволяющая подробно изучить отдельную область графика. Управление зумом осуществляется через 2 служебные кнопки в верхнем правом углу графика, а сама область зума устанавливается через растягивание прямоугольной области через зажатую левую кнопку мыши. Зум в коробчатой диаграмме

Поддержка MongoDB

Суперсет получил поддержку системы управления базами данных MongoDB. Запросы к базам данных MongoDB осуществляются через SQL-запросы диалекта PyMongoSQL.

Индикатор актуальности данных на дашборде

Если на дашборде установлен период автообновления, то правее его названия будет отображаться новый элемент управления, который состоит из цветового индикатора статуса автообновления и кнопки, позволяющей поставить автообновление на паузу. Индикатор обновления дашборда Всего цветов индикатора 5:
🟢  – Данные обновлены успешно по расписанию;
🔵 – Данные обновляются или ожидают 1-го обновления;
🟡 – Задержка обновления или 1 ошибка;
🔴 – 2 или более ошибок обновления;
⚪ – Автообновление поставлено на паузу.

Другие улучшения

Всего в новую версию Суперсет вошли свыше 200 доработок, реализованных сообществом Apache Суперсет. 

С полным списком нововведений вы можете ознакомиться здесь.

Исправления

Сообщество Apache Superset суммарно реализовало около 1200 исправлений, обновлений компонентов и прочих улучшений. С их полным списком вы можете ознакомиться здесь.

Команда Суперсет ТА, в свою очередь, осуществила следующие исправления:
  1. Исправлена неработоспособность параметра label_colors свойств дашборда при отсутствии окраса для показателей;

  2. Исправлена несортируемость столбцов в «Смешанном графике» в ситуациях, когда оба накладываемых графика относятся к столбчатому типу;

  3. Исправлена ошибка, возникавшая при временной фильтрации графиков, SQL-запросы которых содержат шаблоны Jinja и направляются к базе данных ClickHouse;

  4. Исправлена неработоспособность выгрузки в XLSX графиков, в показателях которых задействованы текстовые столбцы; 

  5. Исправлена ошибка импорта дашбордов из Суперсет версий 5.Х.Х в версии 6.Х.Х;

  6. Исправлена ошибка временного фильтра, при которой включение конечной даты во временной промежуток не отображалось в SQL-запросе;

  7. Исправлена некорректная работа списка ролей, заключавшаяся в нефильтруемости и невозможности его прокручивания после ввода искомой роли;

  8. Исправлено отображение чисел в перечне прав при редактировании списка ролей;

  9. Исправлена ошибка «Сводной таблицы», заключавшаяся в невозможности менять ширину столбца при объединении показателей;

  10. Исправлен ряд некорректных переводов, визуальных стилей, ошибок вёрстки.

Изменения в параметрах конфигурации

Добавлены переменные:
Переменная Значение по умолчанию Назначение
PDF_COMPRESSION_LEVEL "MEDIUM" Уровень сжатия экспортируемых PDF. Допустимы NONE, FAST, MEDIUM, SLOW
HASH_ALGORITHM "sha256" Выбирает алгоритм хеширования для служебных хешей Суперсет — кэш-ключей, thumbnails, digest и т. п.
HASH_ALGORITHM_FALLBACKS ["md5"] Задаёт резервные алгоритмы при поиске объектов по старым UUID/хешам
THEME_FONTS_MAX_URLS 15 Максимальное количество внешних URL шрифтов, разрешённых в одной теме
THEME_FONT_URL_ALLOWED_DOMAINS Google Fonts, Adobe Fonts Белый список доменов, с которых тема Суперсет может загружать внешние шрифты
EXTENSION_STARTUP_LOCK_TIMEOUT 30 Таймаут блокировки при обновлении/инициализации расширений во время запуска Суперсет
LOCAL_EXTENSIONS [] Список локальных расширений Суперсет
EXTENSIONS_PATH None Путь к установленным/собранным расширениям Суперсет
DASHBOARD_LIST_CUSTOM_TAGS_ONLY FALSE Позволяет API списка дашбордов возвращать только пользовательские теги, исключая неявные (owner, type, favorited_by)
ALERT_REPORTS_ENABLE_LINK_REDIRECT TRUE Переписывает внешние ссылки в письмах оповещений и рассылок так, чтобы они проходили через предупреждающую страницу Суперсет
ALERT_REPORTS_WEBHOOK_HTTPS_ONLY TRUE Разрешает для webhook-уведомлений оповещений и рассылок только HTTPS
JWT_VERIFY_SUB FALSE Управляет проверкой типа JWT claim sub; добавлен как workaround совместимости с PyJWT/FAB
CUSTOM_DATABASE_ERRORS {} Позволяет задавать собственные преобразования ошибок СУБД в понятные пользователю сообщения, в том числе со ссылкой на документацию.
TASK_ABORT_POLLING_DEFAULT_INTERVAL 10 Интервал опроса состояния отмены задач Global Task Framework в секундах.
TASK_PROGRESS_UPDATE_THROTTLE_INTERVAL 2 Минимальный интервал между записями прогресса фоновой задачи в БД; уменьшает количество UPDATE при частом обновлении прогресса
DISTRIBUTED_COORDINATION_CONFIG None Настройка Redis/Valkey для распределённой координации между worker'ами: locks, Pub/Sub и т. п.
DISTRIBUTED_LOCK_DEFAULT_TTL 30 TTL распределённой блокировки по умолчанию
TASKS_ABORT_CHANNEL_PREFIX "gtf:abort:" Префикс Redis Pub/Sub-каналов, через которые передаются сигналы отмены задач GTF


Добавлены флаги функций:
Флаг Назначение
ENABLE_EXTENSIONS Включает новую систему расширений Superset
CSV_UPLOAD_PYARROW_ENGINE Активирует импорт CSV через PyArrow
MATRIXIFY Включает функциональность Matrixify для матричных представлений графиков
ALERT_REPORTS_FILTER Активирует поддержку фильтров в оповещениях и рассылках
ALERT_REPORT_WEBHOOK Включает отправку оповещений и рассылок через webhook
AWS_DATABASE_IAM_AUTH Включает AWS IAM-аутентификацию соединений с БД, включая cross-account AssumeRole
GLOBAL_TASK_FRAMEWORK Включает новую общую инфраструктуру фоновых задач: прогресс, отмена, дедупликация и т. д.
DASHBOARD_VIRTUALIZATION_DEFER_DATA Дополнительный режим виртуализации дашборда с отложенной загрузкой данных
DISABLE_EMBEDDED_SUPERSET_LOGOUT Скрывает Logout в embedded Superset, например при SSO внутри iframe.
FORCE_GARBAGE_COLLECTION_AFTER_EVERY_REQUEST Принудительно запускает Python garbage collection после каждого HTTP-запроса


Переменные удалены:
CUSTOM_FONT_URLS – теперь URL задаются через fontUrls внутри темы, а ограничения управляются новыми THEME_FONTS_MAX_URLS и THEME_FONT_URL_ALLOWED_DOMAINS .