Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex MPP Analytics for PostgreSQL
  • Начало работы
    • Все инструкции
    • Подключение к внешнему файловому серверу (gpfdist)
      • Управление расширениями
      • gp_relaccess_stats
      • gp_relsizes_stats
      • gp_url_tools
      • pgcrypto
      • try_convert
      • uuid-cb
      • Yezzey
    • Вспомогательные утилиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы

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

  • Установить расширение Yezzey в кластер Yandex MPP Analytics for PostgreSQL
  • Получить информацию, где размещена таблица
  • Определить, как размещена таблица в холодном хранилище
  • Выгрузить таблицу из хранилища кластера в холодное хранилище
  • Загрузить таблицу из холодного хранилища в хранилище кластера
  • Пример использования
  1. Пошаговые инструкции
  2. Расширения
  3. Yezzey

Использование Yezzey в Yandex MPP Analytics for PostgreSQL

Статья создана
Yandex Cloud
Обновлена 21 мая 2026 г.
  • Установить расширение Yezzey в кластер Yandex MPP Analytics for PostgreSQL
  • Получить информацию, где размещена таблица
  • Определить, как размещена таблица в холодном хранилище
  • Выгрузить таблицу из хранилища кластера в холодное хранилище
  • Загрузить таблицу из холодного хранилища в хранилище кластера
  • Пример использования

Расширение Yezzey позволяет использовать гибридное хранилище в кластере Yandex MPP Analytics for PostgreSQL для хранения таблиц, оптимизированных для добавления данных (append-optimized tables).

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

Подробнее о типах хранилищ и расширении Yezzey см. в разделе Гибридное хранилище.

Установить расширение Yezzey в кластер Yandex MPP Analytics for PostgreSQLУстановить расширение Yezzey в кластер Yandex MPP Analytics for PostgreSQL

  1. Включите опцию для использования гибридного хранилища, если этого не было сделано при создании кластера.

    Важно

    Эту опцию нельзя отключить после сохранения настроек кластера.

  2. Подключитесь к базе данных от имени владельца или пользователя, имеющего в базе данных разрешение CREATE, и выполните запрос:

    CREATE EXTENSION yezzey;
    
  3. Проверьте, что расширение было установлено:

    SELECT extname FROM pg_extension;
    

Получить информацию, где размещена таблицаПолучить информацию, где размещена таблица

Чтобы узнать, где размещена таблица и ее сегментные файлы — в хранилище кластера или в холодном хранилище:

  1. Подключитесь к базе данных от имени владельца или пользователя, имеющего в базе данных разрешение SELECT.

  2. Выполните один из запросов, чтобы узнать, где размещена таблица:

    • С указанием имени таблицы:

      SELECT * FROM yezzey_offload_relation_status('<имя_таблицы>');
      
    • С указанием схемы, где расположена таблица, и имени таблицы:

      SELECT * FROM yezzey_offload_relation_status('<имя_схемы>', '<имя_таблицы>');
      

    Будет выведена информация о каждом сегменте кластера Yandex MPP Analytics for PostgreSQL, в котором размещены данные таблицы.

    Результат запроса содержит следующие поля:

    Поле Описание
    offload_reloid OID объекта.
    segindex Идентификатор сегмента. Значение -1 соответствует мастеру.
    local_bytes Размер данных, размещенных в хранилище кластера. Если 0, таблица выгружена.
    external_bytes Размер данных, выгруженных в холодное хранилище. Если в столбце все значения нулевые, таблица размещена в хранилище кластера. Если в столбце есть ненулевые значения, таблица размещена в холодном хранилище.
    external_bloat_bytes Размер данных, выгруженных в холодное хранилище, которые больше не используются, но еще не удалены.
  3. Выполните один из запросов, чтобы узнать, где размещены сегментные файлы таблицы:

    • С указанием имени таблицы:

      SELECT * FROM yezzey_offload_relation_status_per_filesegment('<имя_таблицы>');
      
    • С указанием схемы, где расположена таблица, и имени таблицы:

      SELECT * FROM yezzey_offload_relation_status_per_filesegment('<имя_схемы>', '<имя_таблицы>');
      

    Будет выведена информация о каждом сегментном файле таблицы. Изучите столбец external_bytes:

    • Если в столбце все значения нулевые, то файлы размещены в хранилище кластера.
    • Если в столбце есть ненулевые значения, то файлы размещены в холодном хранилище.

Определить, как размещена таблица в холодном хранилищеОпределить, как размещена таблица в холодном хранилище

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

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

  1. Подключитесь к базе данных от имени владельца или пользователя, имеющего в базе данных разрешение SELECT.

  2. Выполните один из запросов:

    • С указанием имени таблицы:

      SELECT * FROM yezzey_relation_describe_external_storage_structure('<имя_таблицы>');
      
    • С указанием схемы, где расположена таблица, и имени таблицы:

      SELECT * FROM yezzey_relation_describe_external_storage_structure('<имя_схемы>', '<имя_таблицы>');
      

    Будет выведена следующая информация о каждом сегментном файле таблицы:

    • offload_reloid — идентификатор объекта (object identifier, OID) для таблицы.

    • segindex — номер сегмента.

    • segfileindex — номер сегментного файла.

    • external_storage_filepath — путь к сегментному файлу в бакете Object Storage.

      Путь к сегментному файлу формируется автоматически. Он зависит от структуры таблицы и количества сегментов в кластере Yandex MPP Analytics for PostgreSQL.

    • local_bytes и local_commited_bytes — сколько байтов сегментного файла находится в хранилище кластера. Значения должны быть нулевыми.

    • external_bytes — размер сегментного файла.

Выгрузить таблицу из хранилища кластера в холодное хранилищеВыгрузить таблицу из хранилища кластера в холодное хранилище

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

Примечание

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

После завершения выгрузки и снятия эксклюзивной блокировки (exclusive lock) таблицу снова можно будет изменять.

Чтобы выгрузить таблицу:

  1. Подключитесь к базе данных от имени владельца или пользователя, имеющего в базе данных разрешение SELECT.

  2. Вызовите одну из функций:

    • С указанием имени таблицы:

      SELECT yezzey_define_offload_policy('<имя_таблицы>');
      
    • С указанием схемы, где расположена таблица, и имени таблицы:

      SELECT yezzey_define_offload_policy('<имя_схемы>', '<имя_таблицы>');
      

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

  • Сообщения следующего вида показывают размер выгруженных ранее сегментных файлов:

    NOTICE:  yezzey: relation virtual size calculated: 0  (segX sliceY ... pid=...)
    

    Значение 0 означает, что ранее выгруженных сегментных файлов нет (они выгружаются впервые).

  • Сообщения следующего вида свидетельствуют об успешной выгрузке сегментных файлов:

    INFO:  yezzey: relation segment reached external storage (blkno=...), up to logical eof ...  (segX sliceY ... pid=...)
    

Загрузить таблицу из холодного хранилища в хранилище кластераЗагрузить таблицу из холодного хранилища в хранилище кластера

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

Примечание

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

После завершения загрузки и снятия эксклюзивной блокировки (exclusive lock) таблицу снова можно будет изменять.

Чтобы загрузить таблицу:

  1. Подключитесь к базе данных от имени владельца или пользователя, имеющего в базе данных разрешение SELECT.

  2. Вызовите одну из функций:

    • С указанием имени таблицы:

      SELECT yezzey_load_relation('<имя_таблицы>');
      
    • С указанием схемы, где расположена таблица, и имени таблицы:

      SELECT yezzey_load_relation('<имя_схемы>', '<имя_таблицы>');
      

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

INFO:  loaded relation ... to local storage

Пример использованияПример использования

Пример использования расширения для работы с гибридным хранилищем см. в разделе Выгрузка данных Greenplum® в холодное хранилище Yandex Object Storage.

Greenplum® и Greenplum Database® являются зарегистрированными товарными знаками или товарными знаками Broadcom Inc в США и/или других странах.

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

Предыдущая
uuid-cb
Следующая
Оценка количества уникальных элементов с помощью алгоритма HyperLogLog
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»