Подключение Streamlit
В этой статье мы пройдём процесс создания информационной панели с использованием Streamlit. Чтобы сделать пример более наглядным, мы создадим панель, которая подключается к аналитической базе данных и отслеживает состояние транспортных средств в режиме реального времени.
Это руководство является частью IoT Query набора документации и специально охватывает подключение Power BI к вашему хранилищу данных. Если вы все еще решаете, какой инструмент BI использовать, обратитесь к Выбор инструментов BI обзору.
Функции панели
Отображение общего количества объектов
Визуализация статусов движения (в движении/остановлен/на парковке)
Визуализация статусов подключения (активен/в простое/офлайн)
Подробная таблица с текущим статусом всех транспортных средств
Фильтрация по типу транспортного средства, группе, статусу движения и статусу подключения
Автоматическое обновление данных каждые 5 минут
Переключение между светлой и тёмной темами
Технические требования
Python 3.8+
Доступ в Интернет для подключения к базе данных
Минимум 2 ГБ ОЗУ
Установка и настройка
1. Клонируйте репозиторий
2. Создайте виртуальное окружение
Убедитесь, что у вас установлен Python 3.8 или выше. Вы можете проверить версию командой python --version.
3. Установите зависимости
После активации виртуального окружения установите все необходимые библиотеки:
Подключение к базе данных
1. Создайте файл конфигурации
Создайте .env файл в корневой директории проекта:
Справочник параметров подключения
Хост
DB_HOST в .env файле
Адрес сервера базы данных, указанный в вашем приветственном письме
Порт
DB_PORT в .env файле
По умолчанию для PostgreSQL используется порт 5432
Имя базы данных
DB_NAME в .env файле
Назначенное вам имя базы данных
Имя пользователя
DB_USER в .env файле
Ваше имя пользователя базы данных
Пароль
DB_PASS в .env файле
Ваш защищённый пароль базы данных
Режим SSL
Строка подключения в Python-коде
Установите в require в строке подключения
Схема
DB_SCHEMA в .env файле
Укажите схему (raw_business_data или raw_telematics_data)
2. Получение учетных данных
Запросите учетные данные для подключения к демонстрационной базе данных, связавшись с администратором.
Схема .env файл не должен попадать в систему контроля версий (GitHub) для обеспечения безопасности учетных данных. .gitignore файл уже настроен на исключение этого файла.
Запуск панели
После настройки подключения к базе данных запустите панель командой:
После запуска вы увидите сообщение, похожее на следующее:
Откройте указанный URL в браузере. Панель будет доступна по адресу http://localhost:8501 (или по сетевому URL, если вы хотите открыть её с другого устройства в сети).
Разработка пользовательских компонентов
Если вы хотите изменить панель или создать новые компоненты:
1. Изменение существующей панели
Streamlit автоматически перезагружает приложение при изменении исходного кода. Просто отредактируйте файл moving_status_dashboard.py и сохраните изменения.
2. Добавление новых визуализаций
Чтобы добавить новые диаграммы и графики, используйте библиотеки:
Plotly:
import plotly.express as pxилиimport plotly.graph_objects as goВстроенные визуализации Streamlit:
st.bar_chart(),st.line_chart(), и т.д.
Пример добавления нового графика:
3. Отладка
Для отладки используйте
Устранение неполадок
Проблемы с подключением к базе данных
Ошибка подключения: Проверьте корректность учетных данных в
.envфайле и доступность базы данныхОшибка SSL: Убедитесь, что ваш IP добавлен в allowlist для доступа к базе данных
Ошибки таймаута: Проверьте стабильность интернет-соединения и настройки брандмауэра
Проблемы с зависимостями
Ошибка при установке psycopg2-binary:
Windows:
pip install pipwin && pipwin install psycopg2-binaryLinux:
sudo apt install python3-dev libpq-devmacOS:
brew install postgresql
Конфликты зависимостей:
Создайте новое виртуальное окружение
Устанавливайте зависимости по одной, начиная со streamlit
Другие проблемы
Вот несколько трюков, которые могут помочь исправить распространённые проблемы:
Обновление зависимостей:
pip install -r requirements.txt --upgradeПроверьте совместимость Python:
python --version(должен быть 3.8+)При изменении кода добавляйте сообщения для отладки:
Ошибки кеша Streamlit: остановите приложение и запустите с
--clear_cacheфлагом:
Дальнейшие шаги
После успешного подключения Power BI к вашей инстанции Private Telematics Lakehouse мы рекомендуем вам:
Изучите доступные схемы данных, просмотрев Обзор схемы чтобы лучше понять структуру данных и взаимосвязи.
Начните с простых запросов, ориентированных на конкретные бизнес‑сущности, прежде чем создавать сложные панели — ознакомьтесь с нашим примером запросов в качестве примера.
Поддержка
По техническим вопросам или запросам доступа к демонстрационной базе данных, пожалуйста, свяжитесь: [email protected]
Последнее обновление
Это было полезно?