Визуализация данных из Yandex Object Storage в Yandex DataLens
С помощью интеграции Yandex Query и Yandex DataLens можно визуализировать данные, хранимые в Yandex Object Storage. DataLens формирует запрос на языке YQL, Yandex Query исполняет запрос и возвращает результаты, которые визуализируются с помощью чартов.
Ниже приведена архитектура решения.
Рассмотрим визуализацию зависимости количества и средней стоимости поездок Нью-Йоркского желтого такси от времени суток. Данные заранее размещены в Yandex Object Storage в общедоступном бакете yq-sample-data
в каталоге nyc_taxi_csv
.
Примечание
Yandex Cloud предоставляет набор данных — поездки Нью-Йоркского такси — на условиях “как есть” (as is). Yandex Cloud не дает никаких заверений, явных или подразумеваемых, гарантий или условий в отношении использования вами указанного датасета (набора данных). В пределах, разрешенных вашим местным законодательством, Yandex Cloud не несет никакой ответственности за любые убытки или ущерб, включая прямые, побочные, специальные, косвенные, случайные или штрафные, возникшие в результате использования вами датасета.
NYC Taxi and Limousine Commission (TLC):
Данные были собраны и предоставлены NYC Taxi and Limousine Commission (TLC) поставщиками технологий, уполномоченными в рамках Taxicab & Livery Passenger Enhancement Programs (TPEP/LPEP). Данные о поездке не были созданы TLC, и TLC не делает никаких заявлений относительно точности этих данных.
Ознакомьтесь с Источником датасета
Для визуализации и исследования данных подготовьте облако к работе, затем выполните следующие шаги:
- Подключитесь к данным в Object Storage.
- Создайте подключение в Yandex DataLens.
- Настройте поля датасета.
- Настройте визуализацию.
Перед началом работы
Зарегистрируйтесь в Yandex Cloud и создайте платежный аккаунт:
- Перейдите в консоль управления
, затем войдите в Yandex Cloud или зарегистрируйтесь. - На странице Yandex Cloud Billing
убедитесь, что у вас подключен платежный аккаунт, и он находится в статусеACTIVE
илиTRIAL_ACTIVE
. Если платежного аккаунта нет, создайте его.
Если у вас есть активный платежный аккаунт, вы можете создать или выбрать каталог, в котором будет работать ваша инфраструктура, на странице облака
Подробнее об облаках и каталогах.
Примечание
Для создания в DataLens подключения к Yandex Query требуется сервисный аккаунт с ролью editor
на каталог, в котором будет создано соединение с бакетом Object Storage.
Подключитесь к данным в Object Storage
-
В консоли управления
выберите каталог, в котором нужно создать соединение. -
В списке сервисов выберите Yandex Query.
-
На панели слева выберите
Учебник. -
Нажмите кнопку Создать соединение. В блоке создания соединения все поля ввода параметров уже заполнены — введите описание (опционально) и нажмите кнопку Создать. Вы перейдете на экран создания привязки к данным.
-
Введите описание привязки к данным (опционально) и нажмите кнопку Создать. Будут созданы нужные для обучения ресурсы.
Создайте подключение в Yandex DataLens
Чтобы создать подключение к Yandex Query:
-
Перейдите на главную страницу
DataLens. -
На панели слева выберите
Подключения и нажмите кнопку Создать подключение. -
Выберите подключение Yandex Query.
-
Укажите параметры подключения:
- Облако и каталог. Выберите каталог, в котором находится ваш сервисный аккаунт.
- Сервисный аккаунт. Выберите существующий сервисный аккаунт или создайте новый.
- Время жизни кеша в секундах. Укажите время жизни кеша или оставьте значение по умолчанию.
- Уровень доступа SQL запросов. Выберите вариант Разрешить подзапросы из датасетов и запросы из чартов.
-
Нажмите кнопку Создать подключение.
-
Введите имя подключения
yq-connect
и нажмите Создать.
Настройте поля датасета
-
На странице создания подключения в правом верхнем углу нажмите кнопку Создать датасет.
-
В открывшемся окне введите текст запроса, указанный ниже, и нажмите кнопку Создать.
SELECT * FROM bindings.`tutorial-analytics`
Если все настроено правильно, то в нижней части экрана в блоке Предпросмотр появятся данные следующего вида:
-
Создайте вычисляемое поле, содержащее данные часа посадки:
-
Перейдите на вкладку Поля и нажмите кнопку Добавить поле.
-
В поле Название поля укажите
hour_trip
. -
В строке формул введите:
HOUR([tpep_pickup_datetime])
-
Нажмите кнопку Создать. Новое поле
hour_trip
отобразится в списке полей датасета.
-
-
В столбце Агрегация для поля
total_amount
выберите тип агрегации Среднее. -
В правом верхнем углу нажмите кнопку Сохранить. Введите имя датасета
yellow-taxi-dataset
и нажмите Создать. -
После сохранения датасета в правом верхнем углу нажмите Создать чарт.
Настройте визуализацию
Для визуализации и исследования используйте чарт типа комбинированная диаграмма.
-
Выберите тип визуализации Комбинированная диаграмма.
-
Перетащите измерение
hour_trip
в секцию X. Измерение в секции X будет общим для всех слоев. -
Для первого слоя выберите тип Столбчатая диаграмма.
-
Перетащите показатель
total_amount
в секцию Y. В области визуализации отобразится столбчатая диаграмма. -
Добавьте слой. Для этого нажмите значок
справа от названия первого слоя. -
Для второго слоя выберите тип Линейная диаграмма.
-
Добавьте в чарт поле:
-
Вверху слева нажмите
и выберите Поле. -
В открывшемся окне введите:
-
В поле Название поля —
count_trip
. -
В строке формул —
COUNT()
.
-
-
Нажмите кнопку Создать.
-
-
Перетащите новый показатель
count_trip
в секцию Y2. В области визуализации поверх первой диаграммы отобразится линейная диаграмма. -
В правом верхнем углу нажмите кнопку Сохранить. Введите имя чарта
yellow-taxi-combo-chart
и нажмите Сохранить.
В созданном чарте прослеживается зависимость количества поездок (линейная диаграмма) и средней стоимости поездок (столбчатая диаграмма) от времени суток.
Аналогичным образом вы можете построить дополнительные чарты и дашборды и поделиться результатом с коллегами.