Подключение Apache Superset

В этой статье мы пройдем процесс подключения Apache Superset к аналитической базе данных. Чтобы сделать его более наглядным, мы также создадим дашборд, который подключается к аналитической базе данных и отслеживает состояние транспортных средств в реальном времени, всё с помощью Apache Superset.

Это руководство является частью набора документации DataHub и специально охватывает подключение Power BI к вашему хранилищу данных. Если вы всё ещё выбираете инструмент BI, обратитесь к Выбор инструментов BI обзору.

Функции дашборда

  • Отображение общего количества объектов

  • Визуализация состояний движения транспортных средств (движется/остановлено/припарковано)

  • Визуализация статусов подключения (активно/ожидание/оффлайн)

  • Подробная таблица с текущим состоянием всех транспортных средств

  • Фильтрация по типу транспортного средства, группе, статусу движения и статусу подключения

  • Возможности экспорта данных и отчетов

  • Настраиваемые уведомления и оповещения

Технические требования

  • Docker и Docker Compose

  • Минимум 4 ГБ ОЗУ (рекомендуется 8 ГБ)

  • 20 ГБ свободного дискового пространства

  • Linux/Windows с WSL2/macOS

  • Python 3.8+

  • Доступ в Интернет для подключения к базе данных

Установка и настройка

1. Установка с помощью Docker (рекомендуемый метод)

  1. Установите Docker и Docker Compose, следуя официальной документации:

  1. Скачайте официальный файл docker-compose:

curl -fL https://raw.githubusercontent.com/apache/superset/master/docker-compose-non-dev.yml -o docker-compose.yml
  1. Запустите Superset:

docker-compose up -d
  1. Создайте администратора:

docker-compose exec superset superset fab create-admin \
  --username admin \
  --firstname Superset \
  --lastname Admin \
  --email [email protected] \
  --password admin
  1. Инициализируйте базу данных:

docker-compose exec superset superset db upgrade
  1. Загрузите примеры и инициализируйте роли:

docker-compose exec superset superset init

2. Установка через pip (для разработки)

  1. Создайте виртуальное окружение:

python -m venv venv
source venv/bin/activate  # для Linux/macOS
# или
.\venv\Scripts\activate  # для Windows
  1. Установите Superset:

pip install apache-superset
  1. Инициализируйте базу данных:

superset db upgrade
  1. Создайте администратора:

export FLASK_APP=superset
superset fab create-admin
  1. Загрузите примеры и инициализируйте роли:

superset init
  1. Запустите Superset:

superset run -p 8088 --with-threads --reload --debugger

Подключение к базе данных

  1. Войдите в Superset (по умолчанию: http://localhost:8088)

  2. Перейдите в Data → Databases

  3. Нажмите "+" чтобы добавить новую базу данных

  4. Заполните параметры соединения:

    1. Database: PostgreSQL

    2. SQLAlchemy URI: postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}

    3. Display Name: Analytics Database

    4. Extra: {"engine_params": {"connect_args": {"sslmode": "require"}}}

  5. Нажмите Test Connection чтобы проверить соединение

  6. Сохраните настройки

Справочник параметров подключения

Параметр Lakehouse
Местоположение настройки в Apache Superset
Примечания

Хост

DB_HOST в SQLAlchemy URI

Адрес сервера базы данных, указанный в вашем приветственном письме

Порт

DB_PORT в SQLAlchemy URI

По умолчанию 5432 для PostgreSQL

Имя базы данных

DB_NAME в SQLAlchemy URI

Назначенное вам имя базы данных

Имя пользователя

DB_USER в SQLAlchemy URI

Ваше имя пользователя базы данных

Пароль

DB_PASS в SQLAlchemy URI

Ваш безопасный пароль для базы данных

Режим SSL

connect_args в параметрах Extra

Установите значение require в JSON-конфигурации Extra

Схема

Конфигурация набора данных

Укажите схему (raw_business_data или raw_telematics_data) в каждом наборе данных

Импорт дашборда и графиков

  1. Клонируйте bi-integratons репозиторий:

git clone https://github.com/SquareGPS/bi-intergrations.git
  1. В Superset перейдите в Settings → Import/Export

  2. Импортируйте файлы в следующем порядке:

    1. datasets.json - datasets

    2. charts.json - charts

    3. dashboards.json - dashboards

  3. После импорта обновите подключения к базе данных в каждом наборе данных

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

Проблемы с подключением к базе данных

  • Ошибка соединения: Проверьте правильность учетных данных и параметров подключения

  • Ошибка брандмауэра: Убедитесь, что ваш IP-адрес добавлен в белый список

  • Проблемы с SSL: Проверьте настройки SSL в параметрах подключения

Проблемы с производительностью

  • Медленная загрузка визуализаций:

    • Оптимизируйте SQL-запросы

    • Уменьшите количество одновременно отображаемых элементов

    • Используйте кэширование результатов

  • Высокое использование памяти:

    • Увеличьте ресурсы Docker-контейнера

    • Оптимизируйте запросы к базе данных

Другие проблемы

Вот несколько приемов, которые помогут вам устранить распространенные проблемы:

  1. Проверьте логи Superset:

docker-compose logs superset
  1. Перезапустите контейнеры:

docker-compose restart
  1. Очистите кэш браузера

  2. Проверьте версию Superset и при необходимости обновите

Дальнейшие шаги

После успешного подключения Power BI к вашей инстанции DataHub мы рекомендуем вам:

  • Изучить доступные схемы данных, просмотрев Обзор схемы раздел, чтобы лучше понять структуру данных и их взаимосвязи.

  • Начните с простых запросов, ориентированных на конкретные бизнес‑сущности, прежде чем создавать сложные дашборды — ознакомьтесь с нашими примерными запросами для справки.

Поддержка

По техническим вопросам или запросам доступа к демонстрационной базе данных обращайтесь: [email protected]

Последнее обновление

Это было полезно?