Всем привет! Меня зовут Паша Дубинин, в Яндекс.Облаке я развиваю сервис для анализа и визуализации данных – Yandex DataLens. Хочу познакомить вас с работой инструмента на актуальном примере — мы решили посмотреть, как погода (температура, облачность, осадки) могла быть связана с индексом самоизоляции. В тексте все расписано пошагово — изучив статью, каждый сможет создавать подобные дашборды со своими данными.Подключения. Описание подключения к источнику данных, в данном случае это БД Clickhouse, развернутая в Яндекс.Облаке специально для хранения данных по коронавирусу;Шаг 1. Работа с DataLensYandex DataLens — это инструмент для быстрой визуализации данных из разных источников и предоставления доступа к ним через дашборды. В рамках этого сервиса есть маркетплейс с готовыми наборами данных, дашбордами и коннекторы к другим системам. С ним мы сегодня и поработаем.Для начала нужно перейти по ссылке, указав учетную запись Яндекс.Паспорт. Если до этого вы не пользовались сервисом, то для полноценной работы потребуется привязать банковскую карту и активировать бесплатный тариф Yandex DataLens. Для данного сценария нам достаточно бесплатного тарифа.Шаг 2. Разворачиваем пресет Коронавирус: Дашборд и данныеЧерез маркетплейс развернем пресет (обновляемый набор данных + преднастроенный дашборд) с данными по коронавирусу:Пресет состоит из:Подключения. Описание подключения к источнику данных, в данном случае это БД Clickhouse, развернутая в Яндекс.Облаке специально для хранения данных по коронавирусу;Датасетов. Каждый датасет создается на базе подключения и описывает конкретный набор данных, включая наименования полей и их описания, расчетные поля, логику агрегации данных, правила разграничения доступа к данным, регламент их материализации (механизм кэширования данных на стороне DataLens во встроенной БД Clickhouse);Чартов. Отдельные графики, гео-визуализации и таблицы, которые строятся на датасетах;Дашбордов. Информационные панели, с множеством чартов и общими селекторами для фильтрации данных.«Коронавирус: дашборд» – это основной дашборд пресета. Можно его открыть и ознакомиться с актуальной статистикой распространения коронавируса и динамикой индекса самоизоляции. В папках «Статистика по миру», «Самоизоляция», «Статистика по России» также расположены соответствующие названиям датасеты и чарты.Шаг 3. Разворачиваем пресет ПогодаАналогично предыдущему шагу развернем из маркетплейса бесплатный пресет Яндекс.Погоды.Открыв дашборд «Погода», можно проанализировать исторические данные о погоде по городам с населением более 100 000 человек.Шаг 4. Объединение датасетов и создание новой визуализацииСоздадим новый чарт. Для этого через левую панель навигации перейдем в раздел «Датасеты», затем выберем датасет Isolation Daily:Справа наверху нажимаем кнопку «Создать Чарт»:Теперь работаем в конструкторе:Меняем тип чарта на «Линейную диаграмму»;Поле «Дата» перетаскиваем в секцию X;Поле «Город» в секцию «Фильтры», выбираем, например, Москву;Показатель «Индекс» перетаскиваем в раздел Y.Мы получили график изменения индекса самоизоляции по Москве. По нему видно, например, что пик самоизоляции обычно приходится на воскресенье. Сохраним чарт, нажав на кнопку справа вверху и указав название.Далее добавим к чарту еще один датасет «Weather»:В появившемся диалоговом окне необходимо настроить связи между датасетами. Связи должны быть выставлены автоматически по названиям атрибутов «Дата», «Город» и «Страна», поэтому можем нажать на кнопку «Сохранить» и вернуться в конструктор.Теперь в списке датасетов у нас должно отображаться два датасета, выберем «Weather»:Теперь мы можем обогатить наш график самоизоляции данными о погоде. Для этого перетащим:показатель «Средняя температура» в раздел Y2;измерение «Дата» в раздел «Фильтры» и сформируем условие «больше 21 Февраля 2020г» (именно с этой даты начал считаться индекс самоизоляции);Мы должны получить подобную визуализацию:Чем выше индекс самоизоляции, тем больше людей оставалось дома. Примечательно, что локальные максимумы температуры, например, 9 и 13 апреля являются локальными минимумами самоизоляции населения города. Нажмите на кнопку «Сохранить как» справа вверху и выберите новое название для чарта, например, «Самоизоляция и Температура».Далее заменим показатель «Средней температуры» сначала на «Облачность», затем на «Осадки» и «Максимальную температуру». Каждый из получаемых чартов сохраните в виде отдельного объекта используя кнопку «Сохранить Как» справа вверху.Шаг 5. Создание дашбордаТеперь создадим дашборд, на котором разместим наши чарты с сопоставлением данных о погоде и самоизоляции.Для этого, перейдя на главную страницу DataLens, нажимаем справа вверху Создать -> Дашборд. Указываем название и нажимаем «Создать». Открыв этот дашборд, выбираем справа вверху «Добавить»-> «Чарт» и последовательно добавляем созданные чарты:Затем добавим селектор, с помощью которого можно будет выбирать города. Для этого нужно нажать «Добавить» -> «Селектор». Далее выбрать Датасет – Isolation Daily, Поле – Город, ставим галочку на «Показывать» (для отображения названия селектора):В итоге у нас получился такой дашборд (расположение элементов можно просто изменить в режиме редактирования), селектором можно переключать города:Вместо заключения Каждый может повторить то же самое и это бесплатно;Можно посмотреть данные по своему городу, а не только по Москве, как в примере;Можно добавить еще свои данные, например, CSV-файл или подключение к БД;Более детальная пошаговая инструкция для работы с DataLens здесь;Сервис можно также использовать для анализа и визуализации корпоративных данных, как внутри организации (истории AnywayAnyDay, SevenTech), так и для внешних партнеров (история Edadeal).
Павел а когда планируется добавить возможность загрузки CSV из внешних источников? Вроде давно говорили, что планируется.
Есть тикет для голосования за новые коннекторы, если есть желание можете принять участие)
https://cloud.yandex.ru/features/187