Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Managed Service for Greenplum®
  • Начало работы
    • Все инструкции
    • Подключение к базе данных
      • Обзор
        • S3
        • JDBC
        • HDFS
        • Hive
      • Создание внешней таблицы
      • Изменение настроек PXF
    • Подключение к внешнему файловому серверу (gpfdist)
    • Вспомогательные утилиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы
  1. Пошаговые инструкции
  2. Работа с PXF
  3. Создание внешних источников данных
  4. S3

Создание внешнего источника данных S3

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 7 мая 2025 г.

В Managed Service for Greenplum® в качестве внешнего источника данных с типом подключения S3 можно использовать сервис Yandex Object Storage или другие сторонние сервисы S3.

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

Создайте внешний источник данныхСоздайте внешний источник данных

Консоль управления
CLI
REST API
gRPC API

Чтобы создать внешний источник данных S3:

  1. Перейдите на страницу каталога и выберите сервис Managed Service for Greenplum.
  2. Откройте страницу нужного кластера Managed Service for Greenplum®.
  3. На панели слева выберите  PXF.
  4. Нажмите кнопку Создать источник данных.
  5. Выберите тип подключения S3.
  6. Укажите имя источника.
  7. Задайте хотя бы одну опциональную настройку.
  8. Нажмите кнопку Создать.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы создать внешний источник данных S3:

  1. Посмотрите описание команды CLI для создания источника данных:

    yc managed-greenplum pxf-datasource create s3 --help
    
  2. Задайте настройки источника данных:

    yc managed-greenplum pxf-datasource create s3 <имя_внешнего_источника_данных> \
       --cluster-id=<идентификатор_кластера> \
       --access-key=<идентификатор_статического_ключа> \
       --secret-key=<секретная_часть_статического_ключа> \
       --endpoint=<адрес_S3-хранилища> \
       --fast-upload=<быстрая_загрузка>
    

    Где:

    • cluster-id — идентификатор кластера. Его можно получить со списком кластеров в каталоге.
    • access-key, secret-key — идентификатор и содержимое статического ключа доступа.
    • endpoint — адрес S3-хранилища. Значение для Object Storage — storage.yandexcloud.net. Это значение используется по умолчанию.
    • fast-upload — быстрая загрузка больших файлов в S3-хранилище. Возможные значения:
      • true (значение по умолчанию) — PXF формирует файлы на диске перед отправкой в S3-хранилище.
      • false — PXF формирует файлы в оперативной памяти (если ее не хватает, то записывает на диск).
  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Воспользуйтесь методом PXFDatasource.Create и выполните запрос, например, с помощью cURL:

    curl \
        --request POST \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://mdb.api.cloud.yandex.net/managed-greenplum/v1/clusters/<идентификатор_кластера>/pxf_datasources' \
        --data '{
                  "datasource": {
                    "name": "<имя_внешнего_источника_данных>",
                    "s3": {
                      "accessKey": "<идентификатор_статического_ключа>",
                      "secretKey": "<секретная_часть_статического_ключа>",
                      "fastUpload": "<быстрая_загрузка>",
                      "endpoint": "<адрес_S3-хранилища>"
                    }
                  }
                }'
    

    Где:

    • name — имя внешнего источника данных.

    • s3 — настройки внешнего источника данных:

      • accessKey, secretKey — идентификатор и содержимое статического ключа доступа.

      • fastUpload — быстрая загрузка больших файлов в S3-хранилище. Возможные значения:

        • true (значение по умолчанию) — PXF формирует файлы на диске перед отправкой в S3-хранилище.
        • false — PXF формирует файлы в оперативной памяти (если ее не хватает, то записывает на диск).
      • endpoint — адрес S3-хранилища. Значение для Object Storage — storage.yandexcloud.net. Это значение используется по умолчанию.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  3. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

  1. Получите IAM-токен для аутентификации в API и поместите токен в переменную среды окружения:

    export IAM_TOKEN="<IAM-токен>"
    
  2. Клонируйте репозиторий cloudapi:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Далее предполагается, что содержимое репозитория находится в директории ~/cloudapi/.

  3. Воспользуйтесь вызовом PXFDatasourceService.Create и выполните запрос, например, с помощью gRPCurl:

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/greenplum/v1/pxf_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
              "cluster_id": "<идентификатор_кластера>"
              "datasource": {
                "name": "<имя_внешнего_источника_данных>",
                "s3": {
                  "access_key": "<идентификатор_статического_ключа>",
                  "secret_key": "<секретная_часть_статического_ключа>",
                  "fast_upload": <быстрая_загрузка>,
                  "endpoint": "<адрес_S3-хранилища>"
                }
              }
            }' \
        mdb.api.cloud.yandex.net:443 \
        yandex.cloud.mdb.greenplum.v1.PXFDatasourceService.Create
    

    Где:

    • name — имя внешнего источника данных.

    • s3 — настройки внешнего источника данных:

      • access_key, secret_key — идентификатор и содержимое статического ключа доступа.

      • fast_upload — быстрая загрузка больших файлов в S3-хранилище. Возможные значения:

        • true (значение по умолчанию) — PXF формирует файлы на диске перед отправкой в S3-хранилище.
        • false — PXF формирует файлы в оперативной памяти (если ее не хватает, то записывает на диск).
      • endpoint — адрес S3-хранилища. Значение для Object Storage — storage.yandexcloud.net. Это значение используется по умолчанию.

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

  4. Убедитесь, что запрос был выполнен успешно, изучив ответ сервера.

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

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

Предыдущая
Обзор
Следующая
JDBC
Проект Яндекса
© 2025 ООО «Яндекс.Облако»