Подключение Apache Superset
В этой статье мы пройдем процесс подключения Apache Superset к аналитической базе данных. Чтобы сделать его более наглядным, мы также создадим дашборд, который подключается к аналитической базе данных и отслеживает состояние транспортных средств в реальном времени, всё с помощью Apache Superset.
Функции дашборда
Отображение общего количества объектов
Визуализация состояний движения транспортных средств (движется/остановлено/припарковано)
Визуализация статусов подключения (активно/ожидание/оффлайн)
Подробная таблица с текущим состоянием всех транспортных средств
Фильтрация по типу транспортного средства, группе, статусу движения и статусу подключения
Возможности экспорта данных и отчетов
Настраиваемые уведомления и оповещения
Технические требования
Docker и Docker Compose
Минимум 4 ГБ ОЗУ (рекомендуется 8 ГБ)
20 ГБ свободного дискового пространства
Linux/Windows с WSL2/macOS
Python 3.8+
Доступ в Интернет для подключения к базе данных
Установка и настройка
1. Установка с помощью Docker (рекомендуемый метод)
Установите Docker и Docker Compose, следуя официальной документации:
Скачайте официальный файл docker-compose:
curl -fL https://raw.githubusercontent.com/apache/superset/master/docker-compose-non-dev.yml -o docker-compose.ymlЗапустите Superset:
docker-compose up -dСоздайте администратора:
docker-compose exec superset superset fab create-admin \
--username admin \
--firstname Superset \
--lastname Admin \
--email [email protected] \
--password adminИнициализируйте базу данных:
docker-compose exec superset superset db upgradeЗагрузите примеры и инициализируйте роли:
docker-compose exec superset superset init2. Установка через pip (для разработки)
Создайте виртуальное окружение:
python -m venv venv
source venv/bin/activate # для Linux/macOS
# или
.\venv\Scripts\activate # для WindowsУстановите Superset:
pip install apache-supersetИнициализируйте базу данных:
superset db upgradeСоздайте администратора:
export FLASK_APP=superset
superset fab create-adminЗагрузите примеры и инициализируйте роли:
superset initЗапустите Superset:
superset run -p 8088 --with-threads --reload --debuggerПодключение к базе данных
Войдите в Superset (по умолчанию: http://localhost:8088)
Перейдите в Data → Databases
Нажмите "+" чтобы добавить новую базу данных
Заполните параметры соединения:
Database: PostgreSQL
SQLAlchemy URI:
postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}Display Name: Analytics Database
Extra:
{"engine_params": {"connect_args": {"sslmode": "require"}}}
Нажмите Test Connection чтобы проверить соединение
Сохраните настройки
Справочник параметров подключения
Хост
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) в каждом наборе данных
Импорт дашборда и графиков
Клонируйте bi-integratons репозиторий:
git clone https://github.com/SquareGPS/bi-intergrations.gitВ Superset перейдите в Settings → Import/Export
Импортируйте файлы в следующем порядке:
datasets.json- datasetscharts.json- chartsdashboards.json- dashboards
После импорта обновите подключения к базе данных в каждом наборе данных
Устранение неполадок
Проблемы с подключением к базе данных
Ошибка соединения: Проверьте правильность учетных данных и параметров подключения
Ошибка брандмауэра: Убедитесь, что ваш IP-адрес добавлен в белый список
Проблемы с SSL: Проверьте настройки SSL в параметрах подключения
Проблемы с производительностью
Медленная загрузка визуализаций:
Оптимизируйте SQL-запросы
Уменьшите количество одновременно отображаемых элементов
Используйте кэширование результатов
Высокое использование памяти:
Увеличьте ресурсы Docker-контейнера
Оптимизируйте запросы к базе данных
Другие проблемы
Вот несколько приемов, которые помогут вам устранить распространенные проблемы:
Проверьте логи Superset:
docker-compose logs supersetПерезапустите контейнеры:
docker-compose restartОчистите кэш браузера
Проверьте версию Superset и при необходимости обновите
Дальнейшие шаги
После успешного подключения Power BI к вашей инстанции DataHub мы рекомендуем вам:
Изучить доступные схемы данных, просмотрев Обзор схемы раздел, чтобы лучше понять структуру данных и их взаимосвязи.
Начните с простых запросов, ориентированных на конкретные бизнес‑сущности, прежде чем создавать сложные дашборды — ознакомьтесь с нашими примерными запросами для справки.
Поддержка
По техническим вопросам или запросам доступа к демонстрационной базе данных обращайтесь: [email protected]
Последнее обновление
Это было полезно?