# Анализ продаж и локаций пиццерий на данных из БД ClickHouse® и Галереи DataLens


{% note warning %}

Часть ресурсов, необходимых для прохождения практического руководства, доступны только в [регионе Россия](../../overview/concepts/region.md).

{% endnote %}


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

С помощью DataLens вы проанализируете локации на основе реальных данных:

* Выручка по текущим пиццериям Додо.
* Поисковые запросы к пиццериям по локациям (данные Яндекса).
* Численность всех пиццерий по локациям (данные Яндекса).

В качестве источника используется демонстрационная база данных ClickHouse® и демо-воркбук из работы [Организации: спрос и предложение](https://datalens.ru/gallery/euma77kb36nc0) в Галерее.

Руководство также доступно в [записи](https://www.youtube.com/watch?v=cw6PotbQYng) на YouTube-канале Yandex Cloud.

Для визуализации и исследования данных [подготовьте DataLens к работе](#before-you-begin), затем выполните следующие шаги:

1. [Разверните демо-воркбук из Галереи](#create-template).
1. [Изучите дашборд](#view-dashboard).
1. [Создайте подключение](#create-connection).
1. [Создайте датасет](#create-dataset).
1. [Проанализируйте динамику открытия пиццерий](#create-column-chart).
1. [Исследуйте выручку пиццерий](#create-bar-chart).
1. [Посчитайте сумму выручки и количество пиццерий](#create-indicator-chart).
1. [Исследуйте плотность заказов на карте](#create-map-chart).
1. [Создайте дашборд](#create-dashboard).
1. [Добавьте геослои на дашборд](#add-geolayers).

## Перед началом работы {#before-you-begin}

Чтобы начать работать с DataLens:


{% list tabs group=datalens_user %}

- Новый пользователь {#new}

  1. [Войдите](https://passport.yandex.ru/auth) в ваш аккаунт на Яндексе. Если у вас еще нет аккаунта, [создайте](https://yandex.ru/support/passport/authorization/registration.html) его.
  1. Откройте [главную страницу](https://datalens.ru/promo) DataLens.
  1. Нажмите **Начать в облаке**.
  1. Подтвердите, что ознакомились с [Условиями использования](https://yandex.ru/legal/cloud_termsofuse/?lang=ru) и принимаете их и нажмите кнопку **Войти**.

- Уже использую Yandex Cloud {#already}

  1. [Войдите](https://passport.yandex.ru/auth) в ваш аккаунт на Яндексе.
  1. Откройте [главную страницу](https://datalens.ru/promo) DataLens.
  1. Нажмите **Начать в облаке**.
  1. Выберите один из вариантов:

     * Если у вас уже есть организация, выберите ее в выпадающем меню на вкладке **Организации** и нажмите **DataLens**.

       {% note info %}

       Для активации экземпляра DataLens пользователю нужна роль `admin` или `owner`. Подробнее про роли смотрите в разделе [Управление доступом в Yandex Identity Hub](../../organization/security/index.md).

       {% endnote %}

     * Если у вас есть облако, но нет организации, нажмите **Добавить новый DataLens**. В открывшемся окне введите название и описание организации и нажмите **Создать организацию и DataLens**. Подробнее о работе с организациями смотрите в разделе [Начало работы с организациями](../../organization/quickstart.md).

{% endlist %}

Если у вас возник технический вопрос по работе сервиса, обратитесь в [службу поддержки](https://kz.center.yandex.cloud/support) Yandex Cloud. Чтобы спросить совета, обсудить решение вашей задачи или лучшие практики работы сервиса, напишите в чат [DataLens](https://t.me/YandexDataLens) в Telegram.

## Разверните демо-воркбук {#create-template}

1. В Галерее откройте работу с названием [Организации: спрос и предложение](https://datalens.ru/gallery/euma77kb36nc0).
1. В правом верхнем углу нажмите **Использовать** → ![collections](../../_assets/console-icons/file-arrow-up.svg) **Развернуть**.
1. Выберите, куда сохранить воркбук: в корне воркбуков и коллекций, в существующую коллекцию или в новую коллекцию. Перейдите в место для сохранения воркбука и нажмите **Развернуть**. Название воркбука должно быть уникальным, поэтому при необходимости скорректируйте его.
1. Нажмите **Создать**.
1. Дождитесь создания воркбука и нажмите кнопку **Открыть воркбук**.

## Изучите дашборд {#view-dashboard}

1. Откройте дашборд `Организации: спрос и предложение`.
1. Изучите дашборд:

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

     * `Спрос` — число поисковых запросов пользователей геосервисов Яндекса к выбранной категории организаций или услуг. Категория (рубрика) определяется из запроса. Учитываются локальные запросы с мобильных устройств с радиусом поиска менее 3 км.
     * `Предложение` — число существующих организаций выбранной категории. Используются данные организаций из [Яндекс Справочника](https://business.yandex.ru/sprav/).
     * `Спрос на предложение` — показывает, насколько предложение покрывает спрос в полигоне относительно всего города.

   * На карте отображается распределение спроса и предложения по городу.

1. Выберите рубрику `Пиццерия` и ознакомьтесь на карте с показателями `Спрос`, `Предложение` и `Спрос на предложение на город`.

   ![dashboard](../../_assets/datalens/solution-09/03-dashboard-90.png)

## Создайте подключение {#create-connection}

1. Перейдите в воркбук `Организации: спрос и предложение` — нажмите его название в пути до дашборда.

   ![chart-settings](../../_assets/datalens/solution-09/03-2-bread-crumbs.png)

1. В правом верхнем углу нажмите **Создать** → ![image](../../_assets/console-icons/thunderbolt.svg) **Подключение**.
1. В разделе **Базы данных** выберите подключение **ClickHouse®**.

   1. В открывшемся окне выберите тип подключения `Указать вручную` и укажите параметры подключения:

      * **Имя хоста** — `rc1a-g1gicp3imcc0pnsg.mdb.yandexcloud.net,rc1b-vbbl6tob599tr3oi.mdb.yandexcloud.net,rc1d-qf1ven1igeihhbep.mdb.yandexcloud.net` (указать через запятую).
      * **Порт HTTP-интерфейса** — `8443` (по умолчанию).
      * **Имя пользователя** — `datalens-marathon-2020-11-ro`.
      * **Пароль** — `/4b+xBF6aSCgN9wKTevYGuDjxC9IO4Fa`.

   1. Нажмите кнопку **Проверить подключение** и убедитесь, что появился зеленый значок.
   1. Нажмите кнопку **Создать подключение**.
   1. Введите название подключения — `DODO Con`.
   1. Нажмите кнопку **Создать**.

      ![create-connection](../../_assets/datalens/solution-09/04-create-connection.png)

Дождитесь сохранения подключения.

## Создайте датасет {#create-dataset}

Создайте [датасет](../../datalens/dataset/index.md) на базе подключения `DODO Con`:

1. На странице подключения в правом верхнем углу нажмите кнопку **Создать датасет**.
1. Перенесите на рабочую область таблицу `marathon-2020-11.DODO_opendata`.

   ![drag-table](../../_assets/datalens/solution-09/05-drag-table.png)

1. Перейдите на вкладку **Поля**.
1. Переименуйте поле `Name` в `Pizzerias`. Чтобы изменить название поля, нажмите на его имя, удалите текущее имя и введите новое.
1. Для поля `Coordinates` в столбце **Тип** выберите **Геоточка**.
1. Для поля `Revenue` укажите тип агрегации **Сумма**. Поля с определенными функциями агрегации становятся показателями и меняют свой цвет на синий.

   ![image](../../_assets/datalens/solution-09/06-field-changes.png)

1. Создайте показатель с количеством пиццерий:

   1. Продублируйте поле `Pizzerias` — в правой части строки с полем нажмите ![image](../../_assets/console-icons/ellipsis.svg) и выберите **Дублировать**.
   1. Переименуйте дубликат поля `Pizzerias (1)` в `The number of pizzerias`.
   1. Измените тип агрегации на **Количество уникальных**.

      ![dublicate-field](../../_assets/datalens/solution-09/07-dublicate-field.png)

1. Создайте вычисляемое поле для ранжирования пиццерий по выручке:

   1. В правом верхнем углу нажмите кнопку ![image](../../_assets/console-icons/plus.svg) **Добавить поле**.
   1. Слева вверху укажите название поля — `Rank by revenue`. Если надо изменить название поля, нажмите ![image](../../_assets/console-icons/pencil.svg) справа от него.
   1. В поле для формулы введите: `RANK([Revenue])`.
   1. Нажмите кнопку **Создать**.

      ![add-field](../../_assets/datalens/solution-09/08-add-rank-field.png)

1. Сохраните датасет:

   1. В правом верхнем углу нажмите кнопку **Сохранить**.
   1. Введите название датасета — `DODO` и нажмите кнопку **Создать**.

## Проанализируйте динамику открытия пиццерий {#create-column-chart}

Для визуализации динамики открытия пиццерий по месяцам создайте [столбчатую диаграмму](../../datalens/visualization-ref/column-chart.md):

1. На странице датасета в правом верхнем углу нажмите кнопку **Создать чарт**.
1. Добавьте в чарт дату открытия. Для этого из раздела **Измерения** перетащите поле `OpenDate` в секцию **X**.
1. Добавьте в чарт показатель — число пиццерий. Для этого из раздела **Показатели** перетащите поле `The number of pizzerias` в секцию **Y**.

   ![add-measure-selector](../../_assets/datalens/solution-09/09-create-column-chart.png)

   Диаграмма покажет, сколько открылось новых пиццерий по дням.

1. Отобразите чарт по месяцам:

   1. Нажмите на иконку с календарем у поля `OpenDate` в секции **X**.
   1. В поле **Группировка** выберите **Округление** ⟶ **Месяц**, затем нажмите **Применить**.

      ![image](../../_assets/datalens/solution-09/10-date-to-month.png)

1. Сохраните чарт:

   1. В правом верхнем углу нажмите кнопку **Сохранить**.
   1. В открывшемся окне введите название чарта `Динамика открытий` и нажмите кнопку **Сохранить**.

      ![image](../../_assets/datalens/solution-09/11-save-column-chart.png)

## Исследуйте выручку пиццерий {#create-bar-chart}

Чтобы отобразить рейтинг топ-10 пиццерий по выручке, создайте [линейчатую диаграмму](../../datalens/visualization-ref/bar-chart.md):

1. Создайте копию чарта, созданного на предыдущем шаге:

   1. В правом верхнем углу нажмите значок ![image](../../_assets/console-icons/chevron-down.svg) → **Сохранить как копию**.

      ![save-chart-as-copy](../../_assets/datalens/solution-09/12-save-chart-as-copy.png)

   1. В открывшемся окне введите название нового чарта `Топ-10 пиццерий` и нажмите кнопку **Сохранить**.

1. Выберите тип визуализации **Линейчатая диаграмма**.

   ![image](../../_assets/datalens/solution-09/13-choose-bar-chart.png)

1. Замените месяцы на названия пиццерий на оси Y. Для этого из раздела **Измерения** перетащите поле `Pizzerias` в секцию **Y** и наведите его над полем `OpenDate`, пока то не станет красным.
1. Замените количество пиццерий на сумму выручки на оси X. Для этого из раздела **Показатели** перетащите поле `Revenue` в секцию **X** и наведите его над полем `The number of pizzerias`, пока то не станет красным.
1. Отсортируйте диаграмму по убыванию выручки. Для этого из раздела **Показатели** перетащите поле `Revenue` в секцию **Сортировка**. На диаграмме отобразилась сумма выручки по пиццериям.
1. Добавьте фильтрацию для топ-10 пиццерий по выручке:

   1. Из раздела **Показатели** перетащите поле `Rank by revenue` в секцию **Фильтры**.
   1. Из списка **Операция** выберите `Меньше или равно`.
   1. В поле **Значение** укажите число `10`.

      ![image](../../_assets/datalens/solution-09/14-add-chart-filter.png)

   1. Нажмите кнопку **Применить фильтр**.

   На диаграмме отобразится рейтинг топ-10 пиццерий по России.

   ![image](../../_assets/datalens/solution-09/15-bar-chart-section.png)

1. В правом верхнем углу нажмите кнопку **Сохранить**.

## Посчитайте сумму выручки и количество пиццерий {#create-indicator-chart}

Чтобы отобразить сумму выручки, создайте [индикатор](../../datalens/visualization-ref/indicator-chart.md):

1. Создайте копию чарта, созданного на предыдущем шаге:

   1. В правом верхнем углу нажмите значок ![image](../../_assets/console-icons/chevron-down.svg) → **Сохранить как копию**.
   1. В открывшемся окне введите название нового чарта `Выручка` и нажмите кнопку **Сохранить**.

1. Выберите тип визуализации **Индикатор**.

   ![choose-indicator](../../_assets/datalens/solution-09/16-choose-indicator.png)

1. Уберите фильтрацию топ-10 пиццерий по выручке — в секции **Фильтры** напротив поля `Rank by revenue` нажмите значок ![image](../../_assets/console-icons/xmark.svg) (значок появляется при наведении указателя на поле).
1. Из раздела **Показатели** перетащите поле `Revenue` в секцию **Показатель**.
1. Уберите отображение заголовка в настройках чарта:

   1. Справа от типа визуализации нажмите значок ![image](../../_assets/console-icons/gear.svg).
   1. Выберите для заголовка значение **Скрыть**.
   1. Нажмите кнопку **Применить**.

      ![title-option-off](../../_assets/datalens/solution-09/16-2-title-hide.png)

1. В правом верхнем углу нажмите кнопку **Сохранить**.

   ![indicator](../../_assets/datalens/solution-09/17-save-indicator.png)

Чтобы отобразить количество пиццерий, создайте еще один индикатор:

1. Создайте копию чарта, созданного на предыдущем шаге:

   1. В правом верхнем углу нажмите значок ![image](../../_assets/console-icons/chevron-down.svg) → **Сохранить как копию**.
   1. В открывшемся окне введите название нового чарта `Количество пиццерий` и нажмите кнопку **Сохранить**.

1. Замените выручку на количество пиццерий. Для этого из раздела **Показатели** перетащите поле `The number of pizzerias` в секцию **Показатель** и наведите его над полем `Revenue`, пока то не станет красным.
1. В правом верхнем углу нажмите кнопку **Сохранить**.

   ![indicator-metric](../../_assets/datalens/solution-09/18-indicator-metric.png)

## Исследуйте плотность заказов на карте {#create-map-chart}

Для визуализации плотности заказов на карте России создайте [карту](../../datalens/visualization-ref/point-map-chart.md).

1. Создайте копию чарта, созданного на предыдущем шаге:

   1. В правом верхнем углу нажмите значок ![image](../../_assets/console-icons/chevron-down.svg) → **Сохранить как копию**.
   1. В открывшемся окне введите название нового чарта `Пиццерии на карте` и нажмите кнопку **Сохранить**.

1. Выберите тип визуализации **Карта**.

   ![image](../../_assets/datalens/solution-09/19-choose-map.png)

1. Добавьте на карту координаты пиццерий. Для этого из раздела **Измерения** перетащите поле `Coordinates` в секцию **Точки (Геоточки)**.
1. Измените размер точек относительно показателя выручки. Для этого из раздела **Показатели** перетащите поле `Revenue` в секцию **Размер точек**.
1. Измените цвет точек относительно показателя выручки. Для этого из раздела **Показатели** перетащите поле `Revenue` в секцию **Цвета**.
1. Добавьте в секцию **Тултипы** поля:

   * `Pizzerias`;
   * `Address`;
   * `OpenDate`;
   * `Revenue`.

     ![map-measure](../../_assets/datalens/solution-09/20-map-sections-90.png)

1. Измените настройки секции **Цвета**:

    1. В секции **Цвета** нажмите значок ![image](../../_assets/console-icons/gear.svg) (значок появляется при наведении указателя на секцию).
    1. Выберите тип градиента **Двухцветный** и цвет **Желтый (оттенки)**.
    1. Нажмите кнопку **Применить**.

       ![map-colour](../../_assets/datalens/solution-09/21-map-colour-90.png)

1. В правом верхнем углу нажмите кнопку **Сохранить**.

    ![pizzerias-on-the-map](../../_assets/datalens/solution-09/22-pizzerias-on-the-map-90.png)

## Создайте дашборд {#create-dashboard}

1. Перейдите в воркбук `Организации: спрос и предложение` — нажмите его название в пути до дашборда.
1. В правом верхнем углу нажмите **Создать** → ![image](../../_assets/console-icons/layout-cells-large.svg) **Дашборд**.
1. На панели в нижней части страницы зажмите ![image](../../_assets/console-icons/chart-column.svg) **Чарт** и перетащите его в нужную область.

   ![add-chart](../../_assets/datalens/solution-09/23-add-chart.png)

1. В открывшемся окне нажмите кнопку **Выбрать**.
1. Выберите чарт `Динамика открытий`. После этого автоматически заполнится поле **Название**.
1. Нажмите кнопку **Добавить**.

   ![add-chart-window](../../_assets/datalens/solution-09/24-add-chart-window.png)

1. Повторите шаги 3-6, чтобы добавить чарты:

   * `Топ-10 пиццерий`;
   * `Выручка`;
   * `Количество пиццерий`;
   * `Пиццерии на карте`.

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

   ![image](../../_assets/datalens/solution-09/26-dashboard1.png)

Добавьте [селектор](../../datalens/dashboard/selector.md), чтобы фильтровать чарты по городу:

1. На панели в нижней части страницы зажмите ![image](../../_assets/console-icons/sliders.svg) **Селектор** и перетащите виджет в нужную область.

   ![image](../../_assets/datalens/solution-09/27-add-selector.png)

1. Добавьте селектор для выбора города заказа:

   1. Выберите датасет `DODO`.
   1. Выберите поле `City`.
   1. Укажите заголовок: `Город`.
   1. Нажмите кнопку **Сохранить**.

      ![image](../../_assets/datalens/solution-09/28-selector1.png)

1. Сохраните дашборд:

   1. В правом верхнем углу дашборда нажмите кнопку **Сохранить**.
   1. Введите название дашборда `DODO Dashboard` и нажмите кнопку **Создать**.

Дашборд готов.

![image](../../_assets/datalens/solution-09/29-saved-dashboard.png)

Выберите в селекторе город `Москва`. Если фокус карты остался на прежней локации, обновите страницу браузера. DataLens фиксирует масштаб и местоположение карты, если вы изменяли их в рамках текущей сессии.

![dashboard-pizza](../../_assets/datalens/solution-09/30-dashboard-pizza-moscow.png)

## Добавьте геослои на дашборд {#add-geolayers}

1. Убедитесь, что на дашборде в фильтре города выбрана только Москва. В правом верхнем углу карты нажмите значок ![image](../../_assets/console-icons/ellipsis.svg) → ![image](../../_assets/console-icons/pencil.svg) **Редактировать**.

   ![map-editor](../../_assets/datalens/solution-09/31-map-edit.png)

1. Нажмите на название датасета **DODO**.
1. Нажмите кнопку ![image](../../_assets/console-icons/plus.svg) **Добавить датасет**.
1. Выберите датасет `Организации`, [импортированный из Галереи](#create-template).

   ![organizations](../../_assets/datalens/solution-09/32-add-dataset.png)

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

   1. Нажмите кнопку **Добавить связь**.
   1. Установите связь между полями датасетов `City` (DODO) и `Город` (Организации) и нажмите **Сохранить**.
  
      ![links](../../_assets/datalens/solution-09/33-add-links.png)

1. Закройте окно **Связи**, нажав кнопку **Сохранить**.

1. Переименуйте слой **Слой 1**:

   1. Нажмите на слой и справа от названия нажмите значок ![image](../../_assets/console-icons/ellipsis.svg) (значок появляется при наведении указателя на слой).

      ![select-layer](../../_assets/datalens/solution-09/34-select-layer.png)

   1. В открывшемся окне **Настройки слоя** укажите название `ДОДО` и нажмите кнопку **Применить**.

1. Добавьте еще один слой:

   1. Нажмите кнопку ![image](../../_assets/console-icons/square-plus.svg) справа от слоя.
   1. Переименуйте слой в `Спрос на предложение`.
   1. Измените тип геослоя **Точки (Геоточки)** на **Полигоны (Геополигоны)**.

   ![geopolygon](../../_assets/datalens/solution-09/35-geopolygon.png)

1. Убедитесь, что текущий датасет – `Организации`, а не `DODO`. Если текущий датасет `DODO`, то нажмите в левом верхнем углу на название датасета и выберите `Организации`.

   ![organizations-dataset](../../_assets/datalens/solution-09/36-organizations-dataset.png)

1. Перетащите измерение `Полигон` в секцию **Полигоны**.
1. Добавьте измерение `Полигон.Тип` в секцию **Фильтры** и выберите значение `hash7`. Нажмите кнопку **Применить фильтр**.
1. Добавьте измерение `Рубрика` в секцию **Фильтры слоя** и выберите значение `Пиццерия`. Нажмите кнопку **Применить фильтр**.
1. Добавьте показатель `Спрос на предложение на город` в секцию **Цвета**.
1. В настройках цвета выберите трехцветный градиент `Синий-Серый-Красный` и нажмите **Применить**.

    ![colour-settings](../../_assets/datalens/solution-09/37-colour-settings.png)

1. Измените уровень прозрачности до `60`.

   ![transparency](../../_assets/datalens/solution-09/38-transparency.png)

1. Добавьте в секцию **Тултипы** поля:

   * `Спрос`;
   * `Предложение`;
   * `Спрос на предложение на город`;
   * `Топ запросов`;
   * `Топ компаний`.

     ![map-geolayers](../../_assets/datalens/solution-09/39-map-geolayers.png)

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

   ![dashboard-spb](../../_assets/datalens/solution-09/40-dashboard-spb.png)

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

## Дополнительно {#additional}

В качестве идей для дальнейшей самостоятельной работы предлагаем:

1. Добавить геослой с организациями категории `Где поесть` (в целом рестораны и фастфуд, не только пиццерии).
1. Добавить из Галереи работу [Аудитория: интересы и соцдем](https://datalens.ru/gallery/zf7wou4zyhtml), чтобы аналогично отобразить на карте данные по аудитории города.
1. На примере демонстрационного набора данных [Базовая геоаналитика города и региона](https://datalens.ru/gallery/eulugmmyio7s0) можно изучить бесплатные геослои от компании Геоинтеллект.

_ClickHouse® является зарегистрированным товарным знаком [ClickHouse, Inc](https://clickhouse.com)._