[Документация Yandex Cloud](../../index.md) > [Yandex DataLens](../index.md) > [Yandex DataLens Platform](index.md) > Начало работы

# Как начать работать с Yandex DataLens Platform

В этом разделе описано, как настроить окружение DataLens Platform, подключиться к источнику данных, загрузить данные в REST-каталог, исследовать их с помощью редактора SQL и создать дашборд.

* [Перед началом работы](#before-you-begin)
* [Активируйте сервис и настройте окружение](#activate-service)
* [Настройте Apache Airflow™](#configure-airflow)
* [Загрузите данные из источника](#load-data)
* [Исследуйте данные с помощью редактора SQL](#prepare-data)
* [Создайте дашборд](#create-dashboard)

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

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

{% list tabs %}

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

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

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

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

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

       {% note info %}

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

       {% endnote %}

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

{% endlist %}

## Активируйте сервис и настройте окружение {#activate-service}

При первом запуске DataLens Platform:

1. Введите название [организации](../../organization/concepts/organization.md) и нажмите **Продолжить**.
1. Ответьте на вопросы об использовании сервиса и нажмите **Продолжить**.
1. Привяжите ваш платежный аккаунт: выберите **Привязать**, укажите платежный аккаунт и нажмите **Продолжить**, либо выберите **Не привязывать** и воспользуйтесь пробным периодом.
1. Настройте окружение для работы с данными: выберите **Настроить сейчас** и нажмите **Продолжить**.

   Платформа самостоятельно создаст облако Yandex Cloud, сеть и подсеть, [окружение](concepts/clusters/index.md#environments), [REST-каталог](concepts/rest-catalog/index.md) и [кластеры Trino и Apache Spark™](concepts/clusters/index.md#clusters). Настройка займет несколько минут и продолжится в фоне.

1. Пригласите пользователей: укажите адреса электронной почты коллег через запятую и нажмите **Отправить приглашения**. Если вы пока не хотите приглашать пользователей, оставьте поле с адресами пустым и нажмите **Продолжить**. Откроется главная страница DataLens Platform.

   На главной странице в блоке **Настройте DataLens Platform** отображаются этапы настройки: **Настройте окружение**, **Настройте загрузку данных**, **Постройте дашборд** и **Пригласите пользователей**. Выберите **Настройте окружение**, чтобы проверить состояние настройки. Когда останется настроить Apache Airflow™, в блоке появится карточка **Осталось настроить Airflow**.

Если вы пропустили настройку окружения при первом запуске, вернитесь к ней с главной страницы: в блоке **Настройте DataLens Platform** выберите **Настройте окружение**.

Чтобы просмотреть созданное окружение, откройте раздел ![image](../../_assets/datalens/compute.svg) **Кластеры**, перейдите на вкладку **Окружения** и нажмите на его название. На странице окружения отображаются облако, сеть и подсеть, выбранные при создании.

{% note info %}

Для выполнения следующих шагов используйте REST-каталог и кластеры Trino, Apache Spark™ и Apache Airflow™ в одном облаке Yandex Cloud и в одном окружении. Это необходимо, чтобы объекты могли взаимодействовать друг с другом.

{% endnote %}

Если вы [создаете окружение вручную](operations/clusters/manage-environment.md#create-environment), заранее подготовьте облако, сеть и подсеть по [требованиям](operations/clusters/manage-environment.md#before-you-begin). К подсети должна быть привязана таблица маршрутизации с маршрутом `0.0.0.0/0` через NAT-шлюз, который обеспечивает доступ в интернет.

## Настройте Apache Airflow™ {#configure-airflow}

Чтобы запускать [пайплайны обработки данных](concepts/airflow/index.md), необходимо создать кластер Apache Airflow™. Для этого:

1. На главной странице в блоке **Настройте ваш DataLens Platform** выберите **Настройте окружение**.
1. В карточке **Осталось настроить Airflow** нажмите **Перейти к настройке**.
1. В блоке **Основные настройки** укажите параметры Git-репозитория:

   * **Адрес репозитория** — адрес для подключения по SSH.
   * **Путь до папки с файлами** — путь к папке с DAG-файлами в Git-репозитории.
   * **Ветка** — ветка, из которой нужно загружать DAG-файлы.
   * **SSH-ключ** — содержимое закрытого ключа. Соответствующий открытый ключ должен предоставлять доступ на чтение Git-репозитория.


1. В поле **Окружение** выберите то же окружение, в котором находятся REST-каталог и кластеры Trino и Apache Spark™.
1. Если для выполнения DAG нужны дополнительные зависимости Python, в блоке **Другие настройки** заполните поле **Pip-пакеты**. Укажите каждую зависимость на отдельной строке: название пакета или название с точной версией через `==`. Можно указать дополнительные компоненты пакета, например:

   ```text
   numpy
   requests[security,socks]
   ```

1. Нажмите **Создать кластер**.
1. Дождитесь завершения операции. После создания кластера откроется список пайплайнов.

Если вы пока не планируете использовать пайплайны, в карточке **Осталось настроить Airflow** нажмите **Пропустить**.

## Загрузите данные из источника {#load-data}

В этом примере источник данных — реляционная база PostgreSQL, из которой нужно регулярно загружать таблицы в REST-каталог. Для загрузки сначала создайте подключение к базе, а затем поставку данных. Сейчас для поставок данных доступны подключения к ClickHouse®, PostgreSQL и MySQL®. Список поддерживаемых источников будет пополняться.

Если нужный источник пока не поддерживается поставками данных, загрузку можно организовать с помощью кода в Apache Spark™ или подключения к источнику в Trino. Возможность подключения зависит от доступных библиотек и коннекторов.

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

В [подключении](../concepts/connection/index.md) хранятся параметры доступа к источнику данных. Одно подключение можно использовать для загрузки данных, сбора метаданных, выполнения SQL-запросов и создания датасетов.

Чтобы создать подключение к PostgreSQL:

1. На панели слева выберите ![image](../../_assets/console-icons/database-arrow-right.svg) **Поставки данных** и нажмите ![image](../../_assets/console-icons/plus.svg) **Создать поставку данных**.
1. На шаге **Выбор подключения** нажмите **Создать подключение**.
1. В разделе **Базы данных** выберите **PostgreSQL**.
1. На шаге **Подключение** выберите **Выбрать в организации** и укажите параметры:

   * **Облако и каталог** — облако и каталог Yandex Cloud, в которых находится кластер PostgreSQL.
   * **Кластер** — кластер с исходными данными.
   * **Идентификатор подключения** — подключение к выбранному кластеру.
   * **Хост** — хост кластера.
   * **База данных** — база данных, из которой нужно загружать таблицы.

   Для подключения к внешней базе данных выберите **Указать вручную** и заполните [параметры доступа](../operations/connection/create-postgresql.md).

1. Остальные настройки оставьте без изменений.
1. Нажмите **Проверить подключение**.
1. После успешной проверки нажмите **Создать подключение**.
1. В открывшемся окне выберите [коллекцию](../workbooks-collections/index.md), введите название подключения и нажмите **Создать**.
1. Дождитесь создания подключения и загрузки шага **Метаданные**.
1. Убедитесь, что включена опция **Получать метаданные**. В поле **Расписание** выберите **Каждый день**, а в поле **Временные интервалы** — время обновления метаданных, например `00:00`. Остальные настройки оставьте без изменений.
1. Нажмите **Продолжить**.

Расписание на шаге **Метаданные** определяет частоту обновления метаданных источника. Периодичность копирования самих данных задается отдельно при настройке поставки.

### Настройте поставку данных {#configure-transfer}

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

Чтобы [регулярно копировать данные](concepts/data-transfer/index.md#regular-copy) из PostgreSQL в REST-каталог:

1. Перейдите в раздел ![image](../../_assets/console-icons/database-arrow-right.svg) **Поставки данных** и нажмите ![image](../../_assets/console-icons/plus.svg) **Создать поставку данных**.
1. На шаге **Выбор подключения** укажите [подключение-источник](../concepts/connection/index.md) и перейдите к шагу **Настройка поставки данных**.
1. В переключателе типа поставки выберите **Регулярное копирование** — копирование с обновлением данных по расписанию.
1. Задайте основные параметры поставки:
   * В поле **Название поставки** введите имя поставки.
   * (Опционально) В поле **Описание** укажите, для чего нужна поставка.
   * В поле **База данных** укажите имя базы данных в выбранном подключении-источнике.
   * В поле **Коллекция** выберите коллекцию из списка. Если подходящей коллекции нет, нажмите **Создать** и [создайте новую](../workbooks-collections/collections-operations.md#create-collections).
   * (Опционально) добавьте метку для поиска и фильтрации поставки.
1. В блоке **Назначение** укажите, куда переносить данные:
   * В поле **REST-каталог** выберите [REST-каталог](operations/rest-catalog/create-rest-catalog.md).
   * В поле **Пространство имён** выберите пространство имен внутри выбранного каталога. Если подходящего пространства имен нет, нажмите **Создать** и [создайте новое](operations/rest-catalog/create-namespace.md).
1. В блоке **Параметры поставки** настройте расписание и состав данных:
   * В поле **Периодичность** выберите частоту обновления (например, **Каждый месяц**), а в поле ниже задайте день и время запуска (например, `1 в 12:00`).
   * В поле **Таблицы для поставки** выберите, какие таблицы переносить:
     * **Все таблицы** — перенести все таблицы источника.
     * **Список** — указать таблицы для переноса в отдельных полях.
   * (Опционально) В блоке **Инкрементальные таблицы** настройте инкрементальное копирование по колонке курсора.

     {% cut "Настройка инкрементальных таблиц" %}

     При инкрементальном копировании на каждом запуске поставки переносятся только строки, у которых значение колонки курсора превышает сохраненное с прошлого запуска, — так в приемник попадают только новые данные, а не вся таблица целиком.
     Заполнить блок можно в двух режимах, которые переключаются кнопками в правой части его заголовка: каждое поле отдельно или в табличном виде. Каждая настраиваемая таблица отображается отдельным блоком с порядковым номером (**Таблица 1**, **Таблица 2** и т. д.); чтобы удалить таблицу, нажмите ![image](../../_assets/console-icons/trash-bin.svg) в ее заголовке.
     Для каждой инкрементальной таблицы задайте параметры:
     * (Опционально) В поле **Пространство имён таблицы** укажите пространство имен (схему) таблицы в источнике. Если пространство имен по умолчанию, поле можно оставить пустым.
     * В поле **Имя таблицы** укажите имя таблицы, для которой настраивается инкрементальное копирование.
     * В поле **Колонка курсора** укажите колонку, по которой отслеживаются новые данные, — например, монотонно возрастающий идентификатор или колонку с датой либо временем изменения записи.
     * (Опционально) В поле **Начальное значение** задайте значение курсора, начиная с которого копировать данные при первом запуске. Если оставить поле пустым, копирование начнется с самого раннего доступного значения.

     {% endcut %}

1. Нажмите **Создать поставку**.

{% note info %}

Для запуска поставки данных нажмите **Активировать**.

{% endnote %}

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

## Исследуйте данные с помощью редактора SQL {#prepare-data}

Для выполнения запросов используйте кластер Trino из того же облака и окружения, что и REST-каталог с загруженными данными.

Чтобы исследовать загруженные данные с помощью SQL:

1. На панели слева выберите ![image](../../_assets/console-icons/terminal.svg) **Редактор SQL**.
1. Выберите подключение к кластеру Trino, связанному с REST-каталогом, в который вы загрузили данные.
1. Создайте SQL-запрос одним из способов:

   * введите запрос в редакторе;
   * на панели **Нейроаналитик** опишите, какие данные нужно получить, а затем нажмите **Вставить в редактор**.

1. Нажмите **Выполнить** и проверьте результат запроса.
1. Нажмите **Сохранить**, введите название скрипта и выберите коллекцию.

Открыть редактор также можно со страницы подключения или таблицы REST-каталога. Подробнее о [работе в редакторе SQL](operations/sql/work-with-sql.md).

Создавать и выполнять SQL-запросы также можно через [внешнего AI-агента](concepts/index.md#external-agents), подключенного к API платформы.

<!-- TODO: После реализации сценария с локальным агентом описать публикацию сохраненного SQL-скрипта как регулярного пайплайна Airflow. -->

Если для скрипта уже создан пайплайн Apache Airflow™:

1. На панели слева выберите ![image](../../_assets/router.svg) **Оркестратор**.
1. Убедитесь, что сервисный аккаунт кластера имеет доступ к сохраненному SQL-скрипту, подключению, используемым данным и вычислениям в кластере Trino. Идентификатор аккаунта указан в карточке **Сервисный аккаунт**. Для перехода к [запросу доступа](operations/airflow/manage-airflow.md#service-account-access) в меню карточки выберите **Запросить доступ**.
1. [Включите пайплайн](operations/airflow/manage-airflow.md#activate-pipeline).
1. Откройте пайплайн и [проверьте результат запуска](operations/airflow/manage-airflow.md#view-runs).

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

Чтобы создать [дашборд](../concepts/dashboard.md) с помощью [Нейроаналитика](../concepts/neuroanalyst.md):

1. Вернитесь на главную страницу DataLens Platform.
1. В блоке **Настройте ваш DataLens** выберите **Постройте дашборд** и нажмите **Показать**.
1. Опишите задачу в поле **Чем вам помочь?**. Укажите подключение или таблицу, по которой нужно построить дашборд, и необходимые показатели. Например:

   > Собери дашборд по данным из таблицы `<имя_таблицы>`. Покажи динамику показателей по месяцам и распределение по типам.

1. Отправьте запрос.
1. Дождитесь, когда Нейроаналитик создаст [датасет](../dataset/index.md) и дашборд.
1. Откройте созданный дашборд и проверьте данные на чартах.

В результате вы настроили окружение DataLens Platform, загрузили данные из PostgreSQL в REST-каталог, исследовали данные с помощью SQL и создали дашборд.