¶1.1 Вид деятельности, для автоматизации которой предназначен RT.DataVision
RT.DataVision представляет собой современное корпоративное веб-приложение для бизнес-аналитики. Это быстрая, лёгкая, интуитивно понятная платформа, позволяющая пользователям с любым набором навыков легко исследовать и визуализировать свои данные, от простых круговых графиков до высокодетализированных геопространственных диаграмм deck.gl.
RT.DataVision предназначен для автоматизации следующих задач:
подключение к различным типам баз данных, используемым для получения и дальнейшей визуализации данных;
создание на основе полученных данных и трансформация физических и виртуальных датасетов;
построение отдельных графиков с использованием данных, сформированных в датасеты;
формирование дашбордов путём размещения уже готовых графиков на единой области.
¶1.2 Перечень объектов автоматизации, на которых используется RT.DataVision
Объектами автоматизации являются бизнес-процессы компании в части управления отчётностью.
Автоматизации подлежат функции в рамках бизнес-процессов, исполняемых структурными подразделениями компании.
Предоставление интуитивно понятного интерфейса для визуализации датасетов и создания интерактивных дашбордов.
Предоставление широкого спектра красивых визуализаций для демонстрации данных.
Построение визуализаций и извлечения данных из источников без использования кода.
Предоставление SQL IDE мирового класса для подготовки данных к визуализации, включая богатый браузер метаданных.
Наличие лёгкого семантического слоя, который позволяет аналитикам данных быстро определять настраиваемые параметры и показатели.
Встроенная поддержка большинства баз данных, поддерживающих SQL.
Бесшовное асинхронное кэширование и запросы в памяти.
Расширяемая модель безопасности, которая позволяет настраивать сложные правила, определяющие, кто может получить доступ к тем или иным функциям системы и датасетам.
Интеграция с основными механизмами аутентификации (база данных, OpenID, LDAP, OAuth, REMOTE_USER и т.д.).
Возможность добавления пользовательских плагинов визуализации.
Наличие API для программной настройки.
Облачная архитектура, специально разработанная для масштабирования.
¶3.1 Структура RT.DataVision и назначение его частей
Компоненты RT.DataVision и их взаимосвязи представлены на схеме ниже.
В состав RT.DataVision включены следующие компоненты:
Компонент подключения к БД источников — предназначен для интеграции с базой данных источника для извлечения данных для последующего формирования датасета;
Компонент формирования физических датасетов — предназначен для создания физических датасетов из данных подключённой БД;
Компонент формирования виртуальных датасетов — предназначен для формирования виртуальных датасетов на основе данных из подключённой БД;
Компонент построения графиков — предназначен для построения графиков как на данных физических и виртуальных датасетов;
Компонент создания дашбордов — предназначен для построения дашбордов на основе имеющихся графиков для обеспечения потребностей бизнес-пользователей;
Компонент администрирования — предназначен для управления безопасностью системы, её ролевой моделью доступа, обеспечения кэширования, логирования, асинхронных запросов, а также управления рассылками и оповещениями.
Компонент метаданных — предназначен для хранения метаданных системы (подключений, графиков, дашбордов и прочего).
¶3.2 Описание функционирования RT.DataVision и его частей
Функции Компонента подключения к БД выполняет веб-сервер, программная библиотека SQLAlchemy и драйверы движков подключаемых БД.
Функции Компонента формирования физических компонентов выполняет веб-сервер и программная библиотека SQLAlchemy.
Функции Компонента формирования виртуальных компонентов выполняет веб-сервер, программная библиотека SQLAlchemy и инструмент SQL Lab.
Функции Компонента построения графиков выполняет веб-сервер и инструмент Explore.
Функции Компонента создания дашбордов выполняет веб-сервер, инструмент по построению дашбордов и Live CSS Editor.
Функции Компонента администрирования выполняет веб-сервер, сервисы очереди сообщений, логирования и кэширования, инструмент Flask AppBuilder.
Функции Компонента метаданных выполняет БД метаданных системы.
¶4. Описание взаимосвязей RT.DataVision с другими системами
¶4.1 Перечень систем, с которыми связан RT.DataVision
Смежными системами для RT.DataVision являются:
БД источника — БД, к которой осуществлено подключение системы в целях извлечения данных для дальнейшего построения визуализаций;
Механизм аутентификации — источник учётных записей, для авторизации пользователей в системе.
Регламент загрузки данных (без сохранения) из смежных информационных систем в основном режиме функционирования приведён ниже в таблице.
Таблица 3 — Регламент взаимодействия RT.DataVision со смежными системами
Смежная система
Регламент взаимодействия
БД источника
В режиме реального времени
Механизм аутентификации
В режиме реального времени
¶4.4 Описание взаимосвязей RT.DataVision с подразделениями объекта автоматизации
В качестве пользователей или предметных экспертов могут выступать сотрудники компании, предварительно заведённые в используемом механизме аутентификации.
Данные пользователи взаимодействуют с RT.DataVision для загрузки данных (без сохранения), построения на их основе отчётности и администрирования системы.
Компонент подключения к БД источников представляет собой совокупность коннекторов к различным типам БД (устанавливаются отдельно), программной библиотеки SQLAlchemy, позволяющей описать структуру подключаемой БД и взаимодействовать с ней на Python, и интерфейса, который позволяет управлять процессом подключения и его настройками.
Перечень БД, к которым возможно осуществить подключение, располагается в разделе Поддерживаемые базы данных и зависимости в Руководстве администратора.
Полный процесс подключения новой БД содержит следующие этапы:
Установка драйвера базы данных Python DB-API.
Подключение базы данных через интерфейс:
Выбор типа подключаемой БД;
Определение основных настроек, в т.ч. способа подключения к БД;
Определение расширенных настроек (опционально, если того не требует сама БД);
Проверка подключения и, в случае корректности настройки, успешное подключение БД.
После подключения с использованием библиотеки SQLAlchemy RT.DataVision сможет взаимодействовать с БД и далее соответственно формировать датасеты на основе данных, содержащихся в БД.
Описание подключения к БД через интерфейс и его настройки представлены в разделах Использование интерфейса для подключения к базе данных и Расширенные настройки подключения в Руководстве администратора.
Компонент подключения к БД источников связан со следующими компонентами RT.DataVision:
Компонент администрирования — данный компонент позволяет настроить пользователям доступ к функциям Компонента подключения к БД источников, его интерфейсу, а также логирует действия пользователей, выполненные в Компоненте подключения к БД источников;
Компонент формирования физических датасетов — данный компонент позволяет формировать и трансформировать физические датасеты из данных, полученных в ходе подключения к БД с помощью Компонента подключения к БД источников;
Компонент формирования виртуальных датасетов — данный компонент позволяет формировать виртуальные датасеты с помощью отправки SQL-запроса к БД, подключенной с помощью Компонента подключения к БД источников;
Компонент метаданных — данный компонент сохраняет данные о подключённой БД.
Компонент формирования физических датасетов предназначен для управления физическими датасетами, созданными на основе данных, содержащихся в БД источника, т.е.: создание датасетов, редактирование, удаление, настройка семантического слоя датасета.
Компонент формирования физических датасетов обеспечивает следующие возможности:
Формирование физических датасетов;
Настройка семантического слоя датасета;
Управление физическими датасетами (удаление, редактирование).
Компонент формирования физических датасетов представляет собой совокупность программной библиотеки SQLAlchemy, которая позволяет осуществлять маппинг таблиц подключённой БД и объектов Python для формирования физических датасетов, и интерфейса, позволяющего производить пользователю данные действия в соответствии с его задачами.
Процесс формирования физических датасетов содержит следующие этапы:
Создание физического датасета, т.е. выбор подключённой БД, схемы в ней и таблицы.
Настройка семантического слоя, в т.ч. настройка столбцов таблицы, виртуальных метрик и расчётных столбцов.
Сохранение датасета и его настроек.
После создания и настройки физического датасета с использованием библиотеки SQLAlchemy RT.DataVision сможет в дальнейшем строить графики на основе данных из созданного датасета.
Описание создания физического датасета представлено в разделе Физические датасеты в Руководстве пользователя, а настройки датасета в разделе Настройка семантического слоя в Руководстве пользователя.
Компонент формирования физических датасетов связан со следующими компонентами RT.DataVision:
Компонент администрирования — данный компонент позволяет настроить пользователям доступ к функциям Компонента формирования физических датасетов, его интерфейсу, а также логирует действия пользователей, выполненные в Компоненте формирования физических датасетов;
Компонент подключения к БД источников — данный компонент обеспечивает подключения к базам данных, на основе данных которых Компонент формирования физических датасетов позволяет формировать физические датасеты;
Компонент построения графиков — данный компонент использует результат Компонента формирования физических датасетов для построения графиков на основе сформированных физических датасетов;
Компонент метаданных — данный компонент сохраняет данные о сформированных физических датасетах.
Компонент формирования виртуальных датасетов предназначен для управления виртуальными датасетами, т.е. датасетами, сформированными с помощью SQL-запроса к подключённой БД, т.е.: создание виртуальных датасетов, редактирование, удаление, настройка семантического слоя датасета.
Компонент формирования виртуальных датасетов обеспечивает следующие возможности:
Компонент формирования виртуальных датасетов представляет собой совокупность программной библиотеки SQLAlchemy, позволяющей взаимодействовать с подключённой БД, инструмента SQL Lab, который обеспечивает возможность формирования SQL-запроса, и интерфейса, позволяющего пользователю произвести действия по созданию виртуального датасета.
Процесс формирования виртуальных датасетов содержит следующие этапы:
Формирование SQL-запроса в SQL Lab.
Проверка сформированного запроса на корректность.
Сохранение SQL-запроса в качестве виртуального датасета.
После создания и сохранения виртуального датасета в SQL Lab RT.DataVision позволит построить на нём различные графики.
Описание создания виртуального датасета содержится в разделе Виртуальные датасеты в Руководстве пользователя, а его настройка описана в разделе Настройка семантического слоя в Руководстве пользователя.
Компонент формирования виртуальных датасетов связан со следующими компонентами RT.DataVision:
Компонент администрирования — данный компонент позволяет настроить пользователям доступ к функциям Компонента формирования виртуальных датасетов, его интерфейсу, а также логирует действия пользователей, выполненные в Компоненте формирования виртуальных датасетов;
Компонент подключения к БД источников — данный компонент обеспечивает подключения к базам данных, на основе данных которых Компонент формирования виртуальных датасетов позволяет формировать виртуальные датасеты;
Компонент построения графиков — данный компонент использует результат Компонента формирования виртуальных датасетов для построения графиков на основе сформированных виртуальных датасетов;
Компонент метаданных — данный компонент сохраняет данные о сформированных виртуальных датасетах.
Компонент построения графиков предназначен для управления графиками, в т.ч. создание, редактирование, удаление, настройка графиков и их кастомизация.
Компонент построения графиков обеспечивает следующие возможности:
Создание графика из виртуального или физического датасета;
Выбор типа графика из широкого спектра от простых круговых графиков до высокодетализированных геопространственных графиков deck.gl;
Настройка графика, в т.ч. определение параметров времени, метрик, измерений, фильтров, сортировки, лимита записей, установка кросс-фильтрации и других параметров, специфичных для различных топов визуализации;
Кастомизация графиков: определение цветовой схемы, параметров легенды, настройка отображения меток и других детализированных параметров кастомизации, специфичных для разных топов графиков;
Настройка свойств графиков (наименование, описание, таймаут кэширования для выбранного графика, параметры сертификации графика, доступ пользователей к графику);
Просмотр изначальных данных датасета, на котором построен график;
Просмотр данных, которые выводятся на график после его настройки;
Экспорт результирующих данных в форматах csv и json;
Экспорт изображения графика в формате jpeg;
Просмотр SQL-запроса, который был сформирован в ходе построения графика.
Компонент построения графиков представляет собой совокупность инструмента Explore, обеспечивающий построение и настройку графика, и интерфейса, предназначенного для пользователей, осуществляющих данные действия с графиками.
Процесс построения и настройки графика состоит из следующих этапов:
Выбор датасета, на данных которого строится график.
Выбор типа визуализации из перечня.
Настройка параметров времени (временный ряд, диапазон и гранулярность времени).
Кастомизация графика (цветовая схема, легенда, метки и широкий спектр настроек для каждого типа визуализации).
Настройка уникальных свойств графика (наименование и описание графика, параметры таймаута, доступа и сертификации).
Сохранение графика, в т.ч. на новый или существующий дашборд.
После сохранения графика в Explore он будет доступен для размещения на дашбордах.
Процесс формирования графиков описан в разделе Создание графиков в Руководстве пользователя, а перечень возможных типов графиков представлен в разделе Типы визуализации графиков в Руководстве пользователя.
Компонент построения графиков связан со следующими компонентами RT.DataVision:
Компонент администрирования — данный компонент позволяет настроить пользователям доступ к функциям Компонента построения графиков, его интерфейсу, а также логирует действия пользователей, выполненные в Компоненте построения графиков;
Компонентформирования физических датасетов — результат работы данного компонента, т.е. созданный физический датасет, является основой для построения графика Компонентом построения графиков;
Компонентформирования виртуальных датасетов — результат работы данного компонента, т.е. созданный виртуальный датасет, является основой для построения графика Компонентом построения графиков;
Компонент метаданных — данный компонент сохраняет данные о построенных графиках.
Компонент создания дашбордов предназначен для управления дашбордами, в т.ч. создание, редактирование, удаление дашбордов, добавление, настройка и удаление графиков на дашборд, настройка фильтрации дашборда, настройка макета дашборда, настройка CSS дашборда, настройка свойств дашборда и предоставление доступа к нему.
Компонент создания дашбордов обеспечивает следующие возможности:
Создание дашборда, его редактирование и удаление;
Размещение на дашборде графиков, а также их удаление;
Настройка размещённого на дашборде графика: обновление данных, изменение графика в Explore, просмотр SQL-запроса данных графика, отправка ссылки на график через e-mail, экспорт графика в форматах jpeg и csv;
Настройка свойств дашборда, в т.ч. наименование дашборда, окончание его url, владельцы дашборда, используемая цветовая схема, изменение параметров дашборда через метаданные json);
Настройка параметров дашборда через CSS;
Настройка макета дашборда (заголовок, вкладки, изображения и html-контент, разделители, строки и столбцы);
Настройка фильтрации дашборда, в т.ч. различных параметров настройки: «родитель-потомок», предварительная фильтрация, сортировка значений фильтра, диапазон единственного значения, значение по умолчанию фильтра, требуемое значение, выбор первого значения по умолчанию, выбор нескольких значений фильтра, динамический поиск и обратный выбор);
Удобный режим просмотра дашборда, в т.ч. принудительное обновление данных, полноэкранный режим просмотра, экспорт в формате jpeg, предоставление общего доступа к дашборду и другие настройки).
Компонент создания дашбордов представляет собой совокупность инструмента по построению дашбордов, обеспечивающего создание дашборда, инструмента Live CSS Editor, обеспечивающего настройку параметров дашборда через CSS, и интерфейса, предназначенного для пользователей, осуществляющих данные действия с дашбордами.
Процесс создания и настройки дашборда состоит из следующих этапов:
Создание дашборда.
Размещение на дашборде графиков и их настройка.
Настройка свойств дашборда.
Настройка параметров и свойств дашборда.
Предоставление доступа пользователям к дашборду и опциональное оповещение их по e-mail.
Сохранение дашборда.
После сохранения дашборда он будет доступен для просмотра бизнес-пользователями. Создание дашбордов является конечным предназначением RT.DataVision для бизнес-пользователей.
Процесс формирования дашбордов описан в разделе Создание дашборда в Руководстве пользователя, а возможности фильтрации описаны в разделе Фильтрация дашбордов в Руководстве пользователя.
Компонент создания дашбордов связан со следующими компонентами RT.DataVision:
Компонент администрирования — данный компонент позволяет настроить пользователям доступ к функциям Компонента создания дашбордов, его интерфейсу, а также логирует действия пользователей, выполненные в Компоненте создания дашбордов;
Компонентпостроения графиков — результат работы данного компонента, т.е. созданные графики, является основой для создания дашборда Компонентом создания дашбордов;
Компонент метаданных — данный компонент сохраняет данные о построенных дашбордах.
Компонент администрирования предназначен для управления пользователями, ролями и перечнем разрешений, безопасностью на уровне строк, логированием действий пользователей над объектами системы, шаблонами CSS, оповещениями и рассылками и прочими функциями администратора системы.
Компонент администрирования обеспечивает следующие возможности:
Создание, просмотр, удаление и редактирование записей о пользователях, в т.ч. управление их логическим удалением и назначением им ролей;
Создание новых ролей, просмотр, удаление и изменение существующих ролей, в т.ч. назначение роли набора разрешений, которые формируются динамически для каждого объекта системы;
Управление безопасностью на уровне строк, т.е. создание фильтров и применение их для определённых ролей для более детального разграничения доступа к данным, отображаемых в системе;
Просмотр логов, содержащих информацию о пользователе, совершённом им действии и отметки времени;
Управление CSS-шаблонами, которые могут использоваться пользователями для дашбордов;
Управление оповещениями и рассылками, в т.ч. их расписанием, способом уведомления, признаком активности, а также просмотром лога их выполнения;
Компонент администрирования представляет собой совокупность инструмента Flask AppBuilder, позволяющего управлять пользователями, ролями и разрешениями, интерфейса командной строки CLI, которая позволяет выполнять широкий спектр функций администратора, файлов конфигурации config.py и superset_config.py, содержащих параметры системы, инструмента Flask-Caching, осуществляющего кэширование системы, инструмента DBEventLogger, реализующего функцию логирования, и интерфейса, позволяющего выполнять часть необходимых функций через интерфейс.
Описание выполнения функций администратора содержится в разделах Руководства администратора.
Компонент администрирования связан со следующими компонентами RT.DataVision:
Компонент метаданных — данный компонент сохраняет данные о ролевой модели системы, логи и прочие данные, возникающие в ходе администрирования системы;
Все другие компоненты — доступ ко всем иным компонентам управляется Компонентом администрирования, а также логируется им.
Компонент метаданных предназначен для хранения результатов выполнения задач пользователей, т.е. данных о подключении к БД источников, сформированные датасеты, построенные графики и дашборды и прочее.
Компонент метаданных обеспечивает следующие возможности:
Компонент администрирования представляет собой БД, выбранную в качестве хранилище метаданных системы.
Компонент администрирования связан со всеми иными компонентами RT.DataVision: он обеспечивает хранение результатов выполнения задач, которые выполняют пользователи в других компонентах системы.