Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for PostgreSQL
  • Начало работы
    • Все руководства
    • Создание кластера PostgreSQL для 1С
    • Создание кластера Linux-серверов «1С:Предприятия» с кластером Managed Service for PostgreSQL
    • Выгрузка базы данных в Yandex Data Processing
    • Поиск проблем с производительностью кластера
    • Анализ производительности и оптимизация
    • Настройка подключения из контейнера Serverless Containers
    • Поставка данных в Yandex Managed Service for Apache Kafka® с помощью Yandex Data Transfer
    • Поставка данных в Yandex Managed Service for YDB с помощью Yandex Data Transfer
    • Поставка данных в Yandex Managed Service for Apache Kafka® с помощью Debezium
    • Захват изменений PostgreSQL и поставка в YDS
    • Поставка данных из Yandex Managed Service for Apache Kafka® с помощью Yandex Data Transfer
    • Перенос данных из Yandex Object Storage с использованием Yandex Data Transfer
    • Настройка отказоустойчивой архитектуры в Yandex Cloud
    • Мониторинг состояния географически распределенных устройств
    • Запись логов балансировщика в PostgreSQL
    • Создание сервера MLFlow для логирования экспериментов и артефактов
    • Работа с данными с помощью Query
    • Федеративные запросы к данным с помощью Query
    • Решение проблем с сортировкой строк после обновления glibc
    • Запись данных с устройства в базу данных
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы

В этой статье:

  • Перед началом работы
  • Необходимые платные ресурсы
  • Подготовьте инфраструктуру
  • Создайте каталог
  • Создайте сервисный аккаунт для проекта DataSphere
  • Добавьте сервисный аккаунт в проект
  • Создайте авторизованный ключ для сервисного аккаунта
  • Создайте секрет
  • Создайте ноутбук
  • Начните работу в Query
  • Создайте кластер Managed Service for PostgreSQL
  • Создайте таблицу
  • Подключитесь к данным в Managed Service for PostgreSQL
  • Как удалить созданные ресурсы
  1. Практические руководства
  2. Работа с данными с помощью Query

Работа с данными с помощью Yandex Query

Статья создана
Yandex Cloud
Обновлена 6 марта 2025 г.
  • Перед началом работы
    • Необходимые платные ресурсы
  • Подготовьте инфраструктуру
    • Создайте каталог
    • Создайте сервисный аккаунт для проекта DataSphere
    • Добавьте сервисный аккаунт в проект
    • Создайте авторизованный ключ для сервисного аккаунта
    • Создайте секрет
    • Создайте ноутбук
  • Начните работу в Query
  • Создайте кластер Managed Service for PostgreSQL
    • Создайте таблицу
  • Подключитесь к данным в Managed Service for PostgreSQL
  • Как удалить созданные ресурсы

Yandex Query — это интерактивный сервис для бессерверного анализа данных. С его помощью можно обрабатывать информацию из различных хранилищ без необходимости создания выделенного кластера. Поддерживается работа с хранилищами данных Yandex Object Storage, Yandex Managed Service for PostgreSQL, Yandex Managed Service for ClickHouse®.

В этом руководстве вы подключитесь к базе данных Managed Service for PostgreSQL и выполните запросы к ней из ноутбука JupyterLab с помощью Query.

  1. Подготовьте инфраструктуру.
  2. Начните работу в Query.
  3. Создайте кластер Managed Service for PostgreSQL.
  4. Подключитесь к данным Managed Service for PostgreSQL.

Если созданные ресурсы вам больше не нужны, удалите их.

Ноутбук с примерами также доступен на GitHub.

Открыть в DataSphere

Перед началом работыПеред началом работы

Перед началом работы нужно зарегистрироваться в Yandex Cloud, настроить сообщество и привязать к нему платежный аккаунт:

  1. На главной странице DataSphere нажмите Попробовать бесплатно и выберите аккаунт для входа — Яндекс ID или рабочий аккаунт в федерации (SSO).
  2. Выберите организацию Yandex Cloud Organization, в которой вы будете работать в Yandex Cloud.
  3. Создайте сообщество.
  4. Привяжите платежный аккаунт к сообществу DataSphere, в котором вы будете работать. Убедитесь, что у вас подключен платежный аккаунт, и он находится в статусе ACTIVE или TRIAL_ACTIVE. Если платежного аккаунта нет, создайте его в интерфейсе DataSphere.

Необходимые платные ресурсыНеобходимые платные ресурсы

В стоимость поддержки инфраструктуры для работы с данными Managed Service for PostgreSQL входит:

  • плата за использование вычислительных ресурсов DataSphere;
  • плата за запущенный кластер Managed Service for PostgreSQL;
  • плата за объем считанных данных при исполнении запросов Query.

Подготовьте инфраструктуруПодготовьте инфраструктуру

Войдите в консоль управления Yandex Cloud и выберите организацию, в которой вы работаете с DataSphere. На странице Yandex Cloud Billing убедитесь, что у вас подключен платежный аккаунт.

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

Примечание

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

Создайте каталогСоздайте каталог

Консоль управления
  1. В консоли управления выберите облако и нажмите кнопку Создать каталог.
  2. Введите имя каталога, например data-folder.
  3. Нажмите кнопку Создать.

Создайте сервисный аккаунт для проекта DataSphereСоздайте сервисный аккаунт для проекта DataSphere

Консоль управления
  1. Перейдите в каталог data-folder.
  2. В списке сервисов выберите Identity and Access Management.
  3. Нажмите кнопку Создать сервисный аккаунт.
  4. Введите имя сервисного аккаунта, например yq-sa.
  5. Нажмите Добавить роль и назначьте сервисному аккаунту роли:
    • yq.editor — для отправки запросов Query.
    • managed-postgresql.viewer — для просмотра содержимого кластера Managed Service for PostgreSQL.
  6. Нажмите кнопку Создать.

Добавьте сервисный аккаунт в проектДобавьте сервисный аккаунт в проект

Чтобы сервисный аккаунт мог запускать проект DataSphere, добавьте его в список участников проекта.

  1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

  2. На вкладке Участники нажмите Добавить участника.
  3. Выберите аккаунт yq-sa и нажмите Добавить.
  4. Измените роль сервисного аккаунта на Editor.

Создайте авторизованный ключ для сервисного аккаунтаСоздайте авторизованный ключ для сервисного аккаунта

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

Пакет yandex_query_magic предоставляет magic commands для работы в Jupyter. Установите его для отправки запросов в Query. Скопируйте код в ячейки ноутбука yq-storage.ipynb:

  1. Откройте проект DataSphere:

    1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

    2. Нажмите кнопку Открыть проект в JupyterLab и дождитесь окончания загрузки.
    3. Откройте вкладку с ноутбуком.
  2. Установите пакет yandex_query_magic:

    %pip install yandex_query_magic
    
  3. После завершения установки на верхней панели выберите Kernel ⟶ Restart kernel....

  4. Загрузите расширение:

    %load_ext yandex_query_magic
    
  5. Настройте подключение, указав идентификатор каталога data-folder и название секрета с авторизованным ключом:

    %yq_settings --folder-id <идентификатор_каталога> --env-auth yq_access_key
    
  6. Выполните тестовый запрос к Query:

    %yq select "Hello, world!"
    
Консоль управления
  1. В консоли управления перейдите в каталог data-folder.
  2. В списке сервисов выберите Identity and Access Management.
  3. На панели слева выберите Сервисные аккаунты.
  4. В открывшемся списке выберите сервисный аккаунт yq-sa.
  5. Нажмите кнопку Создать новый ключ на верхней панели и выберите пункт Создать авторизованный ключ.
  6. Выберите алгоритм шифрования и нажмите Создать.
  7. Нажмите Скачать файл с ключами.

Создайте секретСоздайте секрет

Чтобы получить авторизованный ключ из ноутбука, создайте секрет с содержимым файла авторизованного ключа.

  1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

  2. В блоке Ресурсы проекта нажмите Секрет.
  3. Нажмите Создать.
  4. В поле Имя задайте имя секрета — yq_access_key.
  5. В поле Значение вставьте полное содержимое скачанного файла с авторизированным ключом.
  6. Нажмите Создать.

Создайте ноутбукСоздайте ноутбук

Запросы к базе данных Managed Service for PostgreSQL через Query будут отправляться из ноутбука.

  1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

  2. Нажмите кнопку Открыть проект в JupyterLab и дождитесь окончания загрузки.
  3. На верхней панели нажмите File и выберите New ⟶ Notebook.
  4. Выберите ядро и нажмите Select.

Начните работу в QueryНачните работу в Query

Пакет yandex_query_magic предоставляет magic commands для работы в Jupyter. Установите его для отправки запросов в Query. Скопируйте код в ячейки ноутбука yq-storage.ipynb:

  1. Откройте проект DataSphere:

    1. Выберите нужный проект в своем сообществе или на главной странице DataSphere во вкладке Недавние проекты.

    2. Нажмите кнопку Открыть проект в JupyterLab и дождитесь окончания загрузки.
    3. Откройте вкладку с ноутбуком.
  2. Установите пакет yandex_query_magic:

    %pip install yandex_query_magic
    
  3. После завершения установки на верхней панели выберите Kernel ⟶ Restart kernel....

  4. Загрузите расширение:

    %load_ext yandex_query_magic
    
  5. Настройте подключение, указав идентификатор каталога data-folder и название секрета с авторизованным ключом:

    %yq_settings --folder-id <идентификатор_каталога> --env-auth yq_access_key
    
  6. Выполните тестовый запрос к Query:

    %yq select "Hello, world!"
    

Создайте кластер Managed Service for PostgreSQLСоздайте кластер Managed Service for PostgreSQL

Для отправки запросов подойдет любой рабочий кластер Managed Service for PostgreSQL со включенной опцией Доступ из Yandex Query.

Консоль управления
  1. В консоли управления выберите каталог data-folder.
  2. Выберите сервис Managed Service for PostgreSQL.
  3. Нажмите кнопку Создать кластер.
  4. Введите имя кластера в поле Имя кластера, например postgresql.
  5. В блоке База данных:
    • Укажите Имя БД, например db1.
    • Укажите Имя пользователя и Пароль.
  6. В блоке Сервисные настройки включите опции Доступ из Yandex Query и Доступ из консоли управления.
  7. Остальные настройки можно оставить по умолчанию.
  8. Нажмите кнопку Создать кластер.

Создайте таблицуСоздайте таблицу

На этом шаге вы создадите тестовую таблицу со случайными числами от 0 до 100.

Консоль управления
  1. В консоли управления, откройте страницу кластера postgresql и перейдите на вкладку SQL.

  2. Введите Имя пользователя и Пароль, указанные при создании кластера.

  3. В окно ввода справа вставьте SQL-запрос:

    CREATE TABLE test (
        id SERIAL PRIMARY KEY,
        number INT
    );
    
    INSERT INTO test (number)
    SELECT random() * 100
    FROM generate_series(1, 100);
    
  4. Нажмите Выполнить.

Подключитесь к данным в Managed Service for PostgreSQLПодключитесь к данным в Managed Service for PostgreSQL

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

Консоль управления
  1. В консоли управления выберите каталог data-folder.

  2. В списке сервисов выберите Yandex Query.

  3. На панели слева выберите Соединения.

  4. Нажмите кнопку Создать.

  5. Введите имя соединения, например postgresql.

  6. Выберите тип соединения Managed Service for PostgreSQL.

  7. В блоке Параметры типа соединения:

    • Кластер — выберите ранее созданный кластер postgresql.
    • Сервисный аккаунт — yq-sa.
    • База данных — db1.
    • Введите Логин и Пароль, указанные при создании кластера.
  8. Нажмите кнопку Создать.

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

%yq SELECT * FROM postgresql.test

Как удалить созданные ресурсыКак удалить созданные ресурсы

Чтобы перестать платить за созданные ресурсы:

  • удалите кластер базы данных;
  • удалите проект.

Была ли статья полезна?

Предыдущая
Создание сервера MLFlow для логирования экспериментов и артефактов
Следующая
Федеративные запросы к данным с помощью Query
Проект Яндекса
© 2025 ООО «Яндекс.Облако»