Перейти к содержимому
Последнее обновление

Superset

Apache Superset — платформа с открытым исходным кодом для исследования данных, которая поддерживает подключение к широкому спектру источников данных, различные виды визуализации и детальное управление правами пользователей. Основные возможности включают самостоятельный анализ данных, создание собственных дашбордов, экспорт результатов анализа в виде визуализаций, управление правами пользователей и ролей, а также встроенный редактор SQL.

Цель статьи: настроить источник данных Apache Doris в Apache Superset 3.1 для выполнения запросов и визуализации данных.

КомпонентРекомендуемая версияПримечания
Apache Superset3.1 или новееОфициально поддерживает подключения к Apache Doris
Apache Doris2.0.4 или новееРекомендуется
Python3.9 / 3.10 / 3.11Используйте стабильную версию
pydoris1.1.0Клиент Doris для Python

Предварительные требования​

Перед началом настройки выполните следующие действия:

  1. Установите Apache Superset 3.1 или новее.

    См. официальное руководство по установке Superset.

  2. Установите клиент Apache Doris для Python:

    pip install pydoris
  3. Проверьте установку:

    pip list | grep pydoris
    # Expected output:
    # pydoris 1.1.0

Шаг 1: Настройка источника данных Doris​

После подготовки среды выполните следующие действия, чтобы добавить источник данных Doris в Superset.

1. Получите строку подключения SQLAlchemy​

Doris использует следующий формат URI SQLAlchemy:

doris://<username>:<password>@<host>:<port>/<Catalog>.<database>

Описание параметров:

ПараметрЗначениеПример
usernameИмя пользователя для подключения к Doristestuser
passwordПароль пользователяxxxxxx
hostХост базы данных127.0.1.28
portПорт для запросов9030
CatalogCatalog в Doris. Для внутренних таблиц используйте internal, а при выполнении запросов к озеру данных через внешние таблицы укажите соответствующий Catalog.internal
databaseИмя базы данныхtpch

2. Добавьте источник данных в Superset​

  1. Откройте веб-интерфейс Superset, нажмите Настройки в правом верхнем углу, затем Коннекторы баз данных.

    Откройте коннекторы баз данных

  2. Нажмите + Добавить базу данных и в диалоговом окне Подключение базы данных выберите Apache Doris.

    Выберите Apache Doris

  3. Введите URI SQLAlchemy в параметрах подключения. После успешной проверки подключения нажмите Подключить.

    Заполните параметры подключения

  4. После успешного добавления источник данных появится в интерфейсе.

    Источник данных успешно добавлен


Шаг 2: Создание графика​

После настройки источника данных можно приступать к созданию визуализаций.

В этой статье на примере набора данных TPC-H показано, как анализировать изменение сумм заказов с течением времени для разных способов доставки.

Предварительное требование: набор данных TPC-H должен быть загружен в Apache Doris. См. руководство по подготовке данных TPC-H.

1. Создайте набор данных​

  1. На левой панели навигации нажмите Наборы данных, затем + Добавить набор данных.

    Добавьте набор данных

  2. Задайте следующие параметры, затем нажмите Создать набор данных и график в правом нижнем углу:

    • База данных: Doris
    • Схема: tpch
    • Таблица: lineitem

    Выберите таблицу данных

2. Добавьте пользовательскую метрику​

  1. На странице редактирования набора данных нажмите Метрики, затем Добавить элемент и добавьте вычисляемую метрику:

    • Ключ метрики: Revenue
    • Выражение SQL: SUM(l_extendedprice * (1 - l_discount))

    Добавьте метрику

3. Создайте график​

  1. Перейдите на страницу График, нажмите + Добавить график, выберите lineitem в качестве набора данных и Линейный график в качестве типа графика.

    Выберите тип графика

  2. Настройте параметры графика:

    • Перетащите l_shipdate на ось X и задайте временную детализацию.
    • Перетащите метрику Revenue в область Метрики.
    • Перетащите столбец l_shipmode в область Измерения.

    Настройте график

  3. Нажмите Обновить график для предварительного просмотра. После проверки нажмите Сохранить, чтобы сохранить дашборд.

    Сохраните дашборд


Частые вопросы и рекомендации​

Предварительные требования​

  • Пакет pydoris необходимо заранее установить в среде Superset. Иначе при создании базы данных вариант Apache Doris будет недоступен.

Настройка производительности​

ОптимизацияОписание
Проектирование схемы таблицПроектируйте базы данных и таблицы Doris с учётом реальных требований, используйте партиционирование и бакетирование по времени.
Проталкивание предикатовЭффективно сокращает затраты на фильтрацию по предикатам и объём передаваемых данных.
Сетевая безопасностьИспользуйте частные подключения VPC, чтобы избежать рисков безопасности, связанных с доступом через общедоступную сеть.
Управление правами доступаДетально настраивайте роли и права доступа учётных записей Doris, избегайте предоставления избыточных привилегий.

Устранение неполадок​

Вопрос: Apache Doris не отображается среди вариантов при добавлении базы данных.

Ответ: проверьте, установлен ли pydoris в новой среде. Superset отображает этот вариант, только если обнаруживает драйвер Doris во время работы. После установки может потребоваться перезапустить службу Superset.

Вопрос: Проверка подключения завершается ошибкой.

Ответ: проверьте правильность формата URI SQLAlchemy, доступность хоста и порта, а также корректность имени пользователя и пароля. Для предварительной проверки подключения можно использовать Doris BE или MySQL Client.