Apache Superset
Apache Superset — это современная платформа для анализа и визуализации данных.
Режим совместимости с PostgreSQL в YDB позволяет использовать Apache Superset для выполнения запросов и визуализации данных из YDB. В этом случае Apache Superset работает с YDB как с PostgreSQL.
Важно
Поддержка синтаксиса PostgreSQL в YDB находится в разработке. Использовать её в production окружениях не рекомендуется. Запросы в PostgreSQL могут исполняться до нескольких раз медленнее по сравнению с аналогичными запросами на YQL.
Основной сценарий, который можно тестировать — выполнение аналитических запросов к хранимым в YDB данным.
Создание подключения к YDB
Чтобы создать подключение к YDB из Apache Superset с использованием сетевого протокола PostgreSQL, выполните следующие шаги:
-
В верхнем меню Apache Superset наведите курсор на Settings и выберите в выпадающем списке пункт Database Connections.
-
Нажмите кнопку + DATABASE.
Откроется окно мастера Connect a database.
-
На первом шаге мастера нажмите кнопку PostgreSQL.
-
На втором шаге мастера введите данные для подключения к YDB в следующие поля:
- HOST — эндпоинт кластера YDB, к которому осуществляется подключение.
- PORT — порт эндпоинта YDB.
- DATABASE NAME — путь к базе данных в кластере YDB, к которой будут выполняться запросы.
- USERNAME — логин для подключения к базе данных YDB.
- PASSWORD — пароль для подключения к базе данных YDB.
- DISPLAY NAME — наименование соединения с YDB в Apache Superset.
-
Нажмите кнопку CONNECT.
-
Нажмите кнопку FINISH, чтобы сохранить подключение.
Создание набора данных (dataset)
Чтобы создать набор данных из таблицы YDB, выполните следующие шаги:
-
В верхнем меню Apache Superset наведите курсор на кнопку + и выберите в выпадающем списке пункт SQL query.
-
В выпадающем списке DATABASE выберите подключение к YDB.
-
В выпадающем меню SCHEMA выберите
public
.Внимание
В настоящее время YDB не предоставляет схемы таблиц через сетевой протокол PostgreSQL. Поэтому выбор таблицы в выпадающем списке SEE TABLE SCHEMA можно пропустить.
-
Введите текст SQL-запроса в правой части страницы. Например,
SELECT * FROM <наименование_таблицы>
.Совет
Если вы хотите создать набор данных из таблицы, которая расположена в поддиректории YDB, необходимо указать путь к таблице в самом наименовании таблицы. Например:
SELECT * FROM "<путь/к/таблице/наименование_таблицы>";
-
Нажмите кнопку RUN, чтобы проверить SQL-запрос.
-
Нажмите на стрелку рядом с кнопкой SAVE и выберите Save dataset в выпадающем списке.
Откроется диалоговое окно Save or Overwrite Dataset.
-
В открывшемся окне Save or Overwrite Dataset выберите Save as new, введите наименование набора данных и нажмите SAVE & EXPLORE.
После создания наборов данных вы можете использовать данные из YDB для создания диаграмм в Apache Superset. См. документацию Apache Superset.
Создание диаграммы
Теперь давайте создадим пример диаграммы с использованием набора данных из таблицы episodes
, которая описана в Туториале по YQL.
Таблица episodes
содержит следующие колонки:
- series_id;
- season_id;
- episode_id;
- title;
- air_date.
Предположим, что мы хотим построить круговую диаграмму, в которой бы было видно, сколько серий содержит каждый сезон сериала.
Чтобы создать диаграмму, выполните следующие шаги:
-
В верхнем меню Apache Superset наведите курсор на + и выберите в выпадающем списке пункт Chart.
-
В выпадающем списке Choose a dataset, выберите набор данных из таблицы
episodes
. -
На панели Choose chart type, выберите тип диаграммы
Pie chart
. -
Нажмите кнопку CREATE NEW CHART.
-
На панели Query настройте диаграмму:
- В выпадающем списке DIMENSIONS выберите колонку
season_id
. - В поле METRIC введите функцию
COUNT(title)
. - В поле FILTERS введите фильтр
series_id in (2)
.
- В выпадающем списке DIMENSIONS выберите колонку
-
Нажмите кнопку CREATE CHART.
Круговая диаграмма появится на панели справа.
-
Нажмите кнопку SAVE.
Откроется диалоговое окно Save chart.
-
В открывшемся окне Save chart в поле CHART NAME введите наименование диаграммы.
-
Нажмите кнопку SAVE.