Работаем! Вместе.
ДЕНЬ 07
Как угодить всем и сохранить данные
в безопасности
Научимся выдавать права доступа к нашим подготовленным дашбордам коллегам для совместной работы, настраивать разрешения на просмотр, редактирование, администрирование. Совместная работа — основа корпоративной дата-культуры любой организации.

На основе кейса о партнерских дашбордах рассмотрим практическую выгоду от применения DataLens в компаниях, где требуется разграничение доступа. Подведем итоги нашего облачного путешествия, чтобы вспомнить кейсы и предоставить обратную связь. Полетели.
Теория дня
... кому можно доверять, а кому – нельзя
Как управлять доступами
Доступ к DataLens регулируется через консоль Yandex.Cloud. Чтобы предоставить доступ кому-либо, назначьте пользователю одну из ролей DataLens.

Перед тем, как выдавать пользователям роли доступа внутри DataLens, вам необходимо сначала завести этого пользователя в вашем облаке. Для этого нужно открыть страницу Управление облаком и добавить пользователя через кнопку в правой части экрана.
Сейчас можно добавить только пользователя с учетной записью Яндекса или настроить федерацию с корпоративной системой аутентификации вашей компании. Подробнее здесь.
Новому пользователю автоматически присвоится роль resource-manager.clouds.member – участник Облака. Вы можете выдать новые роли datalens.instances.user или datalens.instances.admin пользователю на отдельный каталог или на все облако целиком.

Каталоги используются в крупных организациях для изоляции ресурсов и сервисов облака, например, по проектам или департаментам. В нашем обучении мы их не использовали.
После добавления пользователя в Консоли, ему становится доступно все содержимое DataLens с правами «Все»
Разграничение прав доступа внутри DataLens реализовано на уровне объектов (подключения, датасеты, чарты, дашборды) и папок в навигаторе. На каждый объект и папку можно назначать пользователю права доступа, которые определяют допустимые операции.

По умолчанию, объекты наследуют права родительской папки.
Какие права можно выдавать на уровне объектов
Итак, права доступа выдаются в контекстном меню интересующего вас объекта. Чтобы пользователь появился в списке доступных участников, он уже должен быть заведен в качестве пользователя Облака (этап выше).
На каждый объект в DataLens, вы можете назначить следующие права доступа:
  • исполнение*
  • просмотр
  • редактирование
  • администрирование

*Исполнение — это право доступа, с которым пользователь может только выполнять запросы к доступным подключениям и датасетам. Это право не дает возможности просматривать подключения и датасеты. И само право можно назначить только на подключения и датасеты.
Полная и детальная таблица соответствия прав доступа и действий на разных объектах находится здесь.

Вы можете назначить роли и на связанные объекты. Например, если вы выдаете доступ к чарту, вы можете выдать доступ к датасету и к подключению – работает и при публикации чарта в открытый доступ и Yandex DataLens Public, и при сохранении объекта во внутренние каталоги компании.
Разграничение прав на уровне данных
Настройки доступа, описанные выше, относятся к объектам DataLens (каталоги, подключения, датасеты, чарты, дашборды). Однако, в некоторых случаях может понадобиться бóльшая гибкость. В DataLens вы также можете разграничить права на уровне данных (Row-level security).

RLS (или Row-level security — т.е. безопасность на уровне строк) позволяет ограничить доступ к данным для пользователей в рамках одного датасета на уровне строк. Это значит, что с точки зрения объекта доступ к датасету у всех будет одинаковый (например, на Просмотр), но набор данных внутри будет различаться.

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

Подробнее – тут.
Если вы разграничили доступ к строкам, ограничьте также доступ и к датасету с помощью выставления права доступа Исполнение. Это исключит возможность изменения прав доступа к строкам, а также открытия окна предпросмотра данных.
Ваши дальнейшие шаги после Марафона
В каких областях вам стоит развиваться, если вы хотите продолжать работу с данными?

→ Знание основных СТАТИСТИЧЕСКИХ КОНЦЕПЦИЙ обязательно для решения дата-задач. Вы должны понимать разницу между средними значениями, медианами и модами, как правильно рассчитывать процентное изменение между периодами и уметь выполнять другие базовые статистические вычисления. Развитие статистического мышления находится в списке обязательных навыков при грамотной работе с данными.

→ Базовые ЗНАНИЯ ОТРАСЛЕВЫХ ЗАДАЧ необходимы для проектирования востребованных визуализаций и требует удивительно глубокого понимания того, почему вашей аудитории нужно видеть именно эти данные; а также, для чего аудитория будет использовать именно эти диаграммы.
Вам нужно понимать на какие вопросы мы ищем ответ или какие гипотезы стремимся проверить.
→ Понимание ПРИРОДЫ ДАННЫХ для решения визуально-аналитических задач включает знание того, как выбрать правильный тип и расположение диаграмм для данной ситуации и аудитории и как определить, какие данные необходимо включить в диаграммы. Чтобы развивать этот навык, необходимо регулярно читать книги, статьи и блоги от разных авторов, таких как Стивен Фью, Альберто Каиро, Колин Уэр и Эдвард Тафти (и других исследователей в этой области знаний). Участвуйте в дискуссионных форумах по визуализации данных, конференциях, конкурсах и мероприятиях.
Вы будет намного более продуктивны, если сможете выполнять очистку данных самостоятельно, а не полагаться на других, а знание SQL может быть действительно ценным.
→ Глубокие навыки ГРАФИЧЕСКОГО ДИЗАЙНА – это плюс, но и базового понимания особенностей работы с цветом и шрифтами достаточно для разработки большинства диаграмм, которые будут использоваться во многих организациях на повседневной основе. Интерес к когнитивным искажениям, принятию решений и психологии визуального восприятия. Большинство диаграмм создано для поддержки более эффективного принятия решений, поэтому интерес к работам Дэниела Канемана, Дэна Ариели, Шейна Пэрриша, братьев Хит и других, пишущих о принятии решений, является хорошим знаком.

→ Опыт работы с ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ для визуализации данных, как прикладными программами, так и базовыми сервисами – требуется компетенция в DataLens или любом другом инструменте визуализации данных. Вы можете проходить сертификацию по выбранным вами инструментам, а также формировать свое портфолио удачно решенных кейсов.

→ Умение ЧЕТКО ИЗЛАГАТЬ СВОИ МЫСЛИ, организовывать материал, опираясь на критическое мышление, выстраивание иерархии аргументаций, формирование связного рассказа на основе данных.
Быть хорошим слушателем, отказаться от собственных представлений и ожиданий и уметь «залезать в головы» лиц, принимающих решения, чтобы выяснить, что им действительно нужно.
Практика дня
Партнерская аналитика
Часто в организациях стоит задача передачи отчетности своим партнерам: магазин дает отчетность производителям и дистрибьюторам о том, как продается его товар, рекламные агентства отчитываются перед клиентами как потратили деньги и сколько привели новых покупателей, и т.п.

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

Представим, что мы агрегатор такси, такой, например, как Яндекс Такси. И нам нужно передавать отчетность в каждый таксопарк, который подключился к нашему сервису. Для этой задачи отлично подходит DataLens, потому что мы можем быстро собрать отчет и выдать доступ на его просмотр нашим партнерам-таксопаркам или даже самим таксистам. При этом, нам не нужно покупать лицензии DataLens для каждого пользователя отдельно – поэтому конечная стоимость такого решения будет минимальна!

Итак, давайте сделаем два дашборда, один для парка, другой для водителей.
Описание задачи
Вам нужно будет проанализировать данные по таксопарку и составить дашборд для парка автомобилей и для водителей. Дашборд должен предусматривать возможность разделения доступов.
    Давайте разработаем такой отчет и выведем нужную информацию о поездках за неделю. Каждая строчка данных в источнике — это одна поездка. Необходимо рассчитать затраты таксопарка и посчитать прибыль. Таксопарк получает комиссию, но теряет деньги на амортизацию авто (40 копеек на километр) и также тратит 620 рублей в неделю на взаимодействие с каждым водителем (осмотры, справки и т.п.). Ещё таксопарку важно следить за средним чеком, рейтингом водителей и проводить сравнение в утилизации по машинам.

    Для водителя нам нужно сделать дашборд для мобильного и посчитать его прибыль, а также рассказать про основные показатели за неделю: сколько сделал поездок, какой получил рейтинг и т.п. Со стоимости каждого заказа берется комиссия парка, комиссия агрегатора и подоходный налог. Комиссия парка есть в таблице и зависит от заказа, комиссия агрегатора и налог составляют постоянный процент, который сразу платит агрегатор: 18% комиссия + 7% подоходный налог. К тому же, водитель тратит деньги на бензин. Будем считать, что расход машины – 6 литров на 100км, а стоимость литра — 50 рублей.

    Для этого дашборда важно настроить Row-level security – безопасность на уровне строк. Чтобы при открытии дашборда водитель видел данные только по себе и не смог выбрать в фильтре другого водителя.
    Решение от эксперта
    Роман Бунин
    Руководитель команды визуализации данных Yandex.Go
    В верхней части дашборда парка, я расположил фактоиды с основными метриками, которые важны для парка — сколько он получил комиссии на счет в банке, сколько денег потратил и что в итоге заработал. В центре – график с разбивкой по неделям с возможностью переключиться в поездки по дням и комиссию по часам. Этот график нужен, чтобы детальнее понять приходы на счет по дням, а также увидеть нет ли каких-то аномалий. В этом случае пригодился функционал подмены чартов через вкладки.

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

    Первой выведена самая главная информация в виде фактоидов — сколько заработал денег «чистыми», сколько сделал поездок и какой рейтинг получил за все поездки.

    Также дан мини-график поездок по дням, детализация за период с основными показателями и — в самом конце — самая детальная таблица по поездкам.

    Для этого дашборда очень пригодился функционал RLS (Row-level Security), так как каждый водитель увидеть свою индивидуальную визуализацию и не надо будет делать много дашбордов.

    Для того, чтобы настроить RLS, нужно прописать условие в настройках датасета.

    Вот текст RLS конфигурации для поля Водитель:
    *: pvdb@yandex.ru
    'Павел Дубинин': pvdb2@yandex.ru
    
    //pvdb@yandex.ru видит данные по всем значениям.
    //pvdb2@yandex.ru видит данные только по Павлу Дубинину
    DataLens будет проверять email-адреса в настройках RLS, поэтому, должны быть прописаны реальные почтовые адреса, добавленные в качестве учетных записей в облако. Попробуйте проставить настройки для своего личного email, под которым вы пользуетесь инструментом, и проверить отфильтруются ли данные.
      Дублирую тут расчетные формулы, которые были использованы в отчете:
      Вычисления
      //Расходы
      0.4*SUM([Дальность поездки, км]) + countd([Водитель])*620
      
      //Прибыль
      SUM([Комиссия парка, руб]) - [Расходы]
      
      //Затраты на бензин
      SUM([Дальность поездки, км])*3
      
      //Комиссия агрегатора 
      (SUM([Стоимость поездки, руб])-SUM([Комиссия парка, руб]))*0.25
      
      //Заработок водителя
      (SUM([Стоимость поездки, руб])-SUM([Комиссия парка, руб]))*0.75 - [Затраты на бензин]
      
      
      Вы можете посмотреть на интерактивную версию дашборда по ссылке
      Вдохновение
      ... Почему анализ данных – базовый навык
      Для поиска вдохновения в днях нашего Марафона мы решили написать экспертам в области дизайна, работы с данными и их визуализации и услышать ценное мнение по какой-либо теме. Сегодня говорим про аналитику и гипотезы.
      Алексей Никушин
      Автор канала «Интернет-аналитика» и основатель профессионального сообщества digital-аналитиков и маркетологов в России, организатор конференции Матемаркетинг.
      Анализ данных – базовый навык сегодня
      Аналитик сегодня — это «профессиональная функция», которая должна жить внутри любого digital-специалиста. Маркетолог, product-менеджер, специалист по контекстной или таргетированной рекламе должны быть в какой-то степени аналитиками. Это значит, что в своих решениях они должны полностью полагаться на данные, должны давать репрезентативные ответы на заданные вопросы и сами должны уметь задавать вопросы к имеющимся у них данным.

      Анализ данных можно назвать «чтением XXI века». Если раньше грамотностью считали умение читать и писать, то сегодня уметь находить смысл в данных — такая же необходимая грамотность для всех тех, кто пытается содействовать росту бизнеса и развитию компании.
      В завершающий день онлайн-марафона, мы бы хотели вам предложить пройти небольшой опрос и оставить обратную связь касательно этого Марафона. Будем рады вашим мнениям, советам, комментариям и пожеланиям!
      Поделитесь впечатлениями

      Будем рады принять ваши комментарии по качеству, формату, наполнению и проведению этого Марафона, чтобы сделать следующий лучше.