Valiotti Analytics — построение аналитики для мобильных и digital-стартапов
    DataMarathon.ru — семидневный интенсив в области аналитики для начинающих

Деплой дашборда на виртуальной машине Amazon EC2

Время чтения текста – 4 минуты

Мы уже рассказывали о том, как развернуть дашборд с помощью сервиса Elastic Beanstalk от Amazon Web Services. В этом материале расскажем как развертывать дашборды на виртуальной машине Amazon EC2.

Подготовка

Начало работы с платформой AWS и создание сервера мы описали в материале Устанавливаем Clickhouse на AWS. Проект дашборда был подготовлен в предыдущей заметке Деплой дашборда на AWS Elastic Beanstalk. Все файлы можно скачать из нашего репозитория на GitHub.

Работа с терминалом

Подключитесь к вашему серверу на EC2 через терминал, используя SSH-ключ.
Из домашней директории копируем архив с необходимыми файлами на сервер командой scp:

scp -i /home/user/.ssh/ssh_key.pem /home/user/brewery_dashboard.zip ubuntu@api.sample.ru:/home/ubuntu/

Распаковываем архив с помощью команды unzip, указав директорию:

unzip -d /home/ubuntu/brewery_dashboard/brewery_dashboard.zip

После этого в каталоге появится папка /brewery_dashboard/, в которой среди прочих будет текстовый файл requirements.txt. В нем находятся все библиотеки Python, которые нужны для корректной работы дашборда. Устанавливаем их следующей командой:

pip install -r requirements.txt

Запускаем дашборд

Создаем сервисный файл brewery.service в системной папке /etc/systemd/system:

sudo touch brewery.service

В нем прописываем всю необходимую информацию для деплоя нашего дашборда. Текстовый редактор вызывается следующей командой:

sudo nano brewery.service

В WorkingDirectory указываем папку, в которой находятся файлы проекта, а в ExecStart команду для запуска:

[Unit]
Description=Brewery Dashboard
After=network.target

[Service]
User=ubuntu
Group=www-data
WorkingDirectory=/home/ubuntu/brewery_dashboard/
ExecStart=/usr/bin/gunicorn3 --workers 3 --bind 0.0.0.0:8083 application:application

Запускаем brewery.service следующей командой:

sudo systemctl start brewery.service

И проверяем успешность запуска:

sudo systemctl status brewery.service

Система должна ответить, что все хорошо:

Теперь дашборд доступен по публичному адресу сервера с указанием порта . Можно открыть его в браузере или вставить на любой сайт с помощью тега <iframe>:

<ifrаme id='igraph' scrolling='no' style='border:none;'seamless='seamless' src='http://54.227.137.142:8083/' height='1100' width='800'></ifrаme>
 Нет комментариев    163   14 дн   Amazon Web Services   AWS   BI-инструменты   dash   dashboard   plotly

Обзор дашборда Yandex DataLens

Время чтения текста – 2 минуты

Два года назад Яндекс выпустил собственный инструмент для визуализации данных — Yandex DataLens, работающий на базе Yandex Cloud. В блоге уже выходил обзор инструмента — но тогда сервис был на стадии Preview, и за два года функционал инструмента расширили. Сервис тарифицируемый и без привязки платёжного аккаунта поработать в нём не получится, но помимо платного тарифа есть и бесплатный.

Подробнее о тарифах Yandex DataLens можно почитать в документации

В сегодняшнем обзоре BI-систем мы посмотрим, как зарегистрировать аккаунт в DataLens, подключить датасет и создать дополнительные таблицы на основе SQL-запросов, построить визуализации, связать их с фильтрами и добавить на дашборд согласно макету, а затем опубликовать результат.

Внутри команды мы оценили дашборд в DataLens и получили следующие средние оценки (1 — худшая оценка, 10 — лучшая):

Отвечает ли заданным вопросам — 7,0
Порог входа в инструмент — 8,0
Функциональность инструмента — 7,0
Удобство пользования — 8,3
Соответствие результата макету — 7,5
Визуальная составляющая — 8,5
Итог: дашборд получает 8 баллов из 10. Посмотрите на полученный результат.

 1 комментарий    93   1 мес   bi   BI guide   BI-инструменты   datalens

Как создавать дашборды, используя подход продуктивного мышления

Время чтения текста – 15 минут

Этот материал — перевод статьи «How to Make Dashboards Using a Product Thinking Approach»

Ни для кого не секрет, что передача результатов исследований другим людям — важнейшая часть науки о данных. Один из инструментов, который мы часто используем в Shopify — дашборды. Этот пост — пошаговое руководство по созданию дашбордов, ориентированных на пользователя и результат.

Люди используют слово «дашборд» для обозначения разных вещей. В этом посте я сужаю своё определение до автоматически обновляемого набора визуализаций данных и бизнес-показателей.

К сожалению, если вы несерьёзно относитесь к процессу создания дашборда, получится так, что вы вложили много усилий в создание продукта, который не имеет реальной ценности. Дашборд, который никто не использует полезен примерно так же, как барахло из магазинов на диване. Итак, как вы можете убедиться том, что ваш дашборд удовлетворяет запросам пользователя?

Ключевой момент — продуктовое мышление. Это неотъемлемая часть отдела Data Science в Shopify. Как мы создаём продукты, думая о наших продавцах, так и специалисты по обработке данных создают дашборды, ориентированные на потребности аудитории.

Нужен ли мне дашборд?

Прежде чем мы погрузимся в создание дашбордов, первое, о чём вы должны спросить себя — подходит ли этот инструмент вам. Есть множество других способов передачи данных, включая длинные отчёты и презентации. Создание и обслуживание дашборда может занять много времени, и вам ни к чему тратить силы без необходимости.

Вопросы, которые следует задать себе:

  1. Будут ли данные дашборда обновляться динамически?
  2. Хотите ли вы, чтобы исследование было интерактивным?
  3. Ваша цель заключается в том, чтобы мониторить что-то и отвечать на вопросы, связанные с данными?
  4. Нужно ли пользователю возвращаться к этим данным ввиду их ежедневного изменения?

Если на большинство вопросов вы ответили «Да», то дашборд — хороший выбор для решения вашей проблемы.

Иначе, если ваша цель — призыв пользователя к действию, дашборд — не лучший выбор. Дашборды удобны, потому что они автоматически представляют обновляемые метрики и визуализации. Если вы хотите рассказать историю, чтобы повлиять на аудиторию, вам лучше поработать с историческими статическими данными в отчёте или презентации.

1. Поймите проблему и аудиторию

После того, как вы приняли решение создать дашборд, вам нужно определить цель и аудиторию. Можете начать с подобной таблицы:

Аудитория Цель
Команда обработки данных Решить, нужно ли отправлять экспериментальную фичу всем нашим продавцам
Руководство Мониторить влияние COVID-19 на продавцов в розничных магазинах
Продуктовая команда Обнаружить изменения в поведении пользователей после внедрения новой фичи

Может получиться так, что для одной аудитории у вас больше одной цели. Это означает, что вам нужно больше одного дашборда.

Четко определив свою аудиторию и причину создания дашборда, вам нужно выяснить, какие показатели лучше всего удовлетворяют потребностям группы. В большинстве случаев это неочевидно и может превратиться в долгую беседу с пользователем, и это нормально! Время, потраченное на данном этапе, принесёт плоды позже.

Хорошие показатели — те, которые тщательно отобраны с учётом поставленных целей. Если ваша цель — отслеживание аномалий, вам необходимо включить широкий спектр метрик и визуализаций с заданными пороговыми значениями. Если вы хотите, чтобы дашборд показывал, насколько успешен ваш продукт, вам нужно подумать о небольшом количестве KPI, которые являются показателями реальной ценности.

После того, как вы определитесь с показателями и визуализацией данных, составьте приблизительный план того, как они будут представлены: это может быть электронная таблица, или что-то более наглядное — эскиз на доске или в даже ежедневнике. Покажите его целевой группе, прежде чем писать код: важно убедиться, что ваше предложение поможет решить их проблему.

Пример макета дашборда. Визуальное представление способствует быстрому согласованию

Теперь, когда у вас есть план, вы готовы приступить к созданию дашборда.

2. Помните о своих пользователях

Основная сложность создания дашборда заключается в том, что представление данных должно одновременно точным и понятным вашей аудитории.

Когда дело доходит до точности и эффективности, вам, вероятно, придётся написать код или запросы для создания показателей или визуализации на основе ваших данных. В Shopify при написании кода мы всегда следуем лучшим методам работы с программным обеспечением.

  1. Придерживайтесь единых стандартов оформления, чтобы сделать запросы более читабельными
  2. Оптимизируйте запросы, чтобы сделать их максимально эффективными
  3. Пользуйтесь системами контроля версий, чтобы отслеживать изменение кода в процессе разработки
  4. Получите обратную связь по дашборду для обмена контекстом

Способ представления данных напрямую влияет на понимание данных пользователем.

Используйте макет, чтобы сосредоточить внимание пользователей

Как и на первой полосе газеты, вашим пользователям нужно узнать самую важную информацию в первые несколько секунд. Один из способов сделать это — структурировать дашборд в виде перевернутой пирамиды, у которой вверху самые «сочные» заголовки, в середине — важные детали, а внизу — общая, но не менее важная справочная информация.

Перевернутая пирамида — пример организации иерархии информации, которую вы отражаете на дашборде

Не забудьте использовать исходные цели из первого этапа при формировании иерархии.

Делайте макет логичным и простым. Провожайте взгляд пользователя по странице, используя последовательную визуальную иерархию заголовков и разделов. Сгруппируйте вместе связанные показатели, чтобы их было легко найти.

Визуальная иерархия, группировка разделов и свободное пространство делают дашборд удобным для чтения

Не бойтесь добавлять свободное пространство — оно даёт пользователям передышку улучшает понимание информации.

Оставляйте только целевой контент

Визуализации, которые вы выбираете для дашборда, могут сделать его лучше или навредить. По этому поводу существует множество ресурсов, поэтому я не буду вдаваться в подробности, но стоит ознакомиться с теорией и поэкспериментировать с тем, что лучше всего подходит для вашей ситуации.

Будьте смелыми и удалите все визуализации или KPI, не имеющие прямого отношения к вашим целям. Лишние подробности скрывают важные факты под беспорядком. Если вам все равно кажется, что они нужны, подумайте о создании отдельного дашборда для вторичного анализа.

Убедитесь, что ваш дашборд включает бизнес-контекст и контекст данных

Обеспечьте достаточный бизнес-контекст, чтобы кто-то, открывший ваш дашборд, мог сразу получить ответы на такие вопросы:

  1. Почему существует этот дашборд
  2. Для кого он создан
  3. Когда он был построен и когда он перестанет быть актуальным
  4. Какие функции он реализует

Контекст данных тоже способен сориентировать пользователя и задать базовый уровень для показателей на дашборде. Например, вместо того, чтобы просто показывать число новых пользователей за неделю, добавьте стрелку, показывающую направление и процентное изменение с того же времени на прошлой неделе.

Статистика справа лучше, чем слева, потому что преподносит контекст.

Контекст можно предоставить и другим путём — например, наладив сегментацию или фильтрацию данных. Различные сегменты могут давать результаты с совершенно противоположными значениями.

Перед публикацией подумайте об актуальности данных

Свежесть дашборда зависит от актуальности приведённых данных, поэтому подумайте о том, как часто обновляется информация. Перед отправкой лучше всего получить как минимум два технических обзора и одобрение предполагаемых пользователей. В конце концов, если они не понимают дашборд или не видят в нём ценности, они не будут им пользоваться.

3. Поддержка

Предположим, вы приложили много усилий, чтобы понять проблему и аудиторию, и создали лучший дашборд на свете. Однако важно помнить, что дашборд — это прежде всего инструмент, и важно убедиться, что он используется и приносит пользу.

«Продавайте» дашборд

Вы должны распространить информацию и убедиться, что дашборд попал в нужные руки. То, как вы решите продвигать свой инструмент, зависит от аудитории и команды, и хорошо бы подумать о том, как его запустить и сделать доступным для поиска в долгосрочной перспективе.

Перед запуском подумайте, как вы можете представить всем вашу работу. У вас будет только один шанс сделать это, поэтому действовать надо осознанно. Например, вы можете подготовить сопроводительное руководство по использованию дашборда в виде короткого пошагового видео.

В долгосрочной перспективе убедитесь, что после запуска дашборд легко найти каждому, кто может в нём нуждаться. Можно разместить его на каких-нибудь внутренних порталах и использовать заголовки и теги, адаптированные к общим условиям поиска. Не бойтесь кричать о своем дашборде в подходящие моменты.

Используйте и улучшайте

Вернитесь к первоначальным целям и подумайте, как их достичь. Например, если задача дашборда — понять, стоит ли внедрять новую фичу, будьте готовы в момент принятия решения поделиться с коллегами своим мнением на основе данных дашборда.

Отслеживайте использование дашборда, чтобы узнать, как часто люди делятся им или цитируют его. Так вы получите полное представление о том, какое влияние сумели оказать.

Если дашборд не дал желаемого результата, выясните, что пошло не так. Есть ли что-то, что вы могли бы изменить, чтобы сделать его полезнее? Используйте это исследование, чтобы улучшить следующий дашборд.

Поддерживайте

Наконец, как и в случае с любой информационной системой, без надлежащего обслуживания дашборд придёт в негодность. Назначьте специалиста по данным или группу специалистов, которые ответят на вопросы или исправят возникшие проблемы.

Ключевые выводы

Посмотрите и другие наши переводы — «10 правил для совершенного дизайна дашбордов» и «Полное руководство по созданию таблиц»

Теперь вы знаете, как разбить процесс создание дашборда с помощью продуктового мышления. Резюмируя, вы можете использовать продуктовый подход к созданию впечатляющего дашборда, выполнив следующие действия:

  1. Понять проблему и аудиторию, спроектировать дашборд, который хорошо справляется с одной задачей для чёткого круга пользователей
  2. Учесть интересы пользователей, чтобы он был точным и простым для понимания
  3. Поддерживать полученный результат, продвигая и улучшая его в дальнейшем

Выполнив эти три шага, вы создадите дашборд, который будет в центре внимания вашей аудитории.

 Нет комментариев    570   2 мес   bi   BI-инструменты   дашборд   перевод

Обзор Looker

Время чтения текста – 3 минуты

Looker — BI-инструмент класса self-service. Это подразумевает, что все отчёты и быструю аналитику пользователь делает самостоятельно без привлечения специалиста в области данных (последний заранее настраивает необходимые модели данных).

Looker особенно популярен в США: в 2019 году Google купил стартап за $2,6 млрд. Тем не менее, далеко не каждый российский аналитик с ним знаком. В рунете ещё не было обзора на Looker, так что заложим фундамент для последующих публикаций.

В сегодняшнем обзоре BI-систем мы изучим интерфейс Looker, погрузимся в терминологию инструмента, взглянем на готовые приложения в Marketplace, разберёмся с построением Look ML моделей и посмотрим на итоговый дашборд по датасету SuperStore.

Подробнее об инструменте можно почитать в материале «Обзор Looker»

Публикация дашборда

При публикации дашборда таким методом он может некорректно отображаться в браузерах Safari и Internet Explorer

Для публикации мы использовали подход, описанный в документации Looker. Генерация ссылки происходит как в примере с GitHub.

Предварительно выполняем создание нового пользователя в настройках админ-панели Looker с соответствующими просмотру дашборда доступами, чтобы любой незарегистрированной пользователь мог войти под этой учётной записью в одной сессии. Для вывода дашборда на веб-страницу используется фреймворк Flask, а сама сгенерированная ссылка вставляется как источник в тег iframe в html-файле. Весь код деплоим на Heroku, чтобы иметь постоянный URL для доступа к дашборду.

Так как ссылка для SSO генерируется для одной сессии, нужно настроить Heroku Scheduler и прописать выполнение скрипта такого вида соответственно длине одной сессии. Например, если сессия длится 10 минут, то и выполнение должно происходить каждые 10 минут.

Оценки

Внутри команды мы оценили дашборд и получили следующие средние оценки (1 — худшая оценка, 10 — лучшая):
1) Отвечает ли заданным вопросам — 8,8
2) Порог входа в инструмент — 7
3) Функциональность инструмента — 7,4
4) Удобство пользования — 7,2
5) Соответствие результата макету — 7,8
6) Визуальная составляющая — 8,6
Итог: дашборд в Looker получает 7,8 баллов из 10.

Посмотрите на полученный результат.

 Нет комментариев    53   2 мес   BI guide   BI-инструменты   looker

Radial pie в Tableau

Время чтения текста – 11 минут

Как-то раз на просторах YouTube мы нашли вот такое видео с гайдом по Radial Pie в Tableau:

Нам очень понравилась реализация — диаграмма сильно напоминает кольца активности Apple Watch. Но, к сожалению, по задумке графика кольца останавливаются на 270 градусах. Показываем, как сделать максимально приближенную к кольцам активности реализацию.

Кольца активности в Apple Watch

Подготовка данных

Данная визуализация является весьма спорной в контексте бизнес-дашбордов

Загрузим датасорс в Tableau. Наши кольца — это круги из 360 точек, и для каждой нам нужно своё наблюдение. Это легко реализовать при помощи Bins: сначала перетянем файл под поле с этим же файлом, чтобы объединить датасет с самим собой. В результате датасет должен «удвоиться» и появится новое поле с наименованием файла.

Создадим новое вычисляемое поле и назовем его Path.

Затем перейдём на график. Кликнем правой кнопкой мыши по Path из раздела Measures и создадим из этого поля Bins. Size of bins установим на единицу:

Создадим новое вычисляемое поле Index:

И поле Percentage, которое отобразит, насколько выполнены цели. Если достижение по цели будет больше самой цели, мы отобразим 1, чтобы не появлялись значения больше единицы.

Теперь создаём следующие меры:

wc_start — мера начальной координаты каждого кольца. Она считается по полю Order, соответственно, у Stand Order равен 1, а значит начинаться это кольцо будет раньше всех, в точке 1 по OY. У кольца Exercise Order равен 2, оно будет в середине. У Move Order равен 3 — это кольцо будет внешним и начнётся в точке 3.

percentage_label — мера для Label, в которой записано процентное отношение достижения по цели к самой цели:

Y2 — вспомогательная мера для начальных точек колец:

Наконец, финальные поля X и Y. Если значение меньше 360, мы описываем при помощи синуса внутреннюю линию кольца, если больше — то внешнюю линию, иначе — острие, на котором кончается кольцо. Формула вычисления Y аналогична X, но считаем не синус, а косинус.

Визуализация

Измерение Path (bin) перетянем в поле Detail, X — в Columns, а Y — в Rows. X и Y должны вычисляться при помощи Path:

Тип графика сменим с Automatic на Polygon и перетянем меру Index в поле Path. Поле Description перетягиваем в Color.

Меру Y2 тоже перетягиваем в Rows и устанавливаем для оси Dual Axis. Из All в Marks необходимо удалить Measure Names. Правой кнопкой мыши кликаем на ОY и синхронизируем оси:

Для Y2 устанавливаем тип Circle и корректируем размер:

Работа над оформлением

В Tableau есть возможность самому подобрать нужную гамму. Для жмём на Colors, затем на Edit colors, выбираем нужное поле и указываем цвет. Для гаммы колец из WatchOS мы подобрали такие цвета:

  1. Красный: rgb(229, 54, 83)
  2. Зелёный: rgb(186, 252, 79)
  3. Синий: rgb(117, 229, 228)

В Label Y2 перетягиваем поля Description и percentage_label. Устанавливаем выравнивание, Description выделяем жирным цветом, ставим галочку в Options у поля Allow labels to overlap other marks, чтобы Label был виден:

Скрываем все линии, границы и индикатор, заливаем фон чёрным цветом. Результат — такая диаграмма:

Книга и таблица из примера доступны в нашем репозитории на GitHub.

 Нет комментариев    222   3 мес   bi   BI-инструменты   tableau
Ранее Ctrl + ↓