Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Neurosupport
    • Yandex Cloud Detection and Response
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • GOST Gateway
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • SourceCraft
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • Serverless Integrations
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • Статус работы сервисов
  • Marketplace
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Yandex Cloud Trust
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ООО «Яндекс.Облако»
Yandex MPP Analytics for PostgreSQL
  • Начало работы
    • Все инструкции
      • Обзор
        • S3
        • JDBC
        • HDFS
        • Hive
      • Создание внешней таблицы
      • Изменение настроек PXF
    • Подключение к внешнему файловому серверу (gpfdist)
    • Вспомогательные утилиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Обучающие курсы
  1. Пошаговые инструкции
  2. Работа с PXF
  3. Создание внешних источников данных
  4. JDBC

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

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 22 июля 2026 г.
Открыть в Markdown

В Yandex MPP Analytics for PostgreSQL в качестве внешнего источника данных с типом подключения JDBC можно использовать:

  • ClickHouse®;
  • MySQL®;
  • Oracle;
  • PostgreSQL;
  • SQL Server;
  • Trino.

В этот список входят управляемые БД Yandex Cloud и сторонние БД.

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

Консоль управления
CLI
REST API
gRPC API
SQL
  1. Перейдите на страницу каталога.
  2. Перейдите в сервис Yandex MPP Analytics for PostgreSQL.
  3. Откройте страницу нужного кластера Yandex MPP Analytics for PostgreSQL.
  4. На панели слева выберите  PXF.
  5. Нажмите кнопку Создать источник данных.
  6. Выберите тип подключения JDBC.
  7. Укажите имя источника.
  8. Задайте хотя бы одну опциональную настройку.
  9. Нажмите кнопку Создать.

После создания внешнего источника данных создайте внешнюю таблицу.

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

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

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

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

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

    yc managed-greenplum pxf-datasource create jdbc <имя_внешнего_источника_данных> \
       --cluster-id=<идентификатор_кластера> \
       --driver=<адрес_драйвера> \
       --url=<URL_базы_данных> \
       --user=<имя_пользователя> \
       --password=<пароль>
    

    Где:

    • cluster-id — идентификатор кластера. Его можно получить со списком кластеров в каталоге.

    • driver — класс JDBC-драйвера в Java. Возможные значения:

      • com.clickhouse.jdbc.ClickHouseDriver
      • com.ibm.as400.access.AS400JDBCDriver
      • com.microsoft.sqlserver.jdbc.SQLServerDriver
      • com.mysql.cj.jdbc.Driver
      • org.postgresql.Driver
      • oracle.jdbc.driver.OracleDriver
      • net.snowflake.client.jdbc.SnowflakeDriver
      • io.trino.jdbc.TrinoDriver
    • url — URL базы данных. Примеры:

      • jdbc:mysql://mysqlhost:3306/testdb — для локальной БД MySQL®.
      • jdbc:postgresql://c-<идентификатор_кластера>.rw.mdb.yandexcloud.net:6432/db1 — для кластера Yandex Managed Service for PostgreSQL. Адрес содержит особый FQDN мастера в кластере.
      • jdbc:oracle:thin:@host.example:1521:orcl — для БД Oracle.
    • user — имя пользователя, владельца БД.

    • password — пароль пользователя БД.

    Вы также можете указать дополнительные настройки.

  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": "<имя_внешнего_источника_данных>",
                    "jdbc": {
                      "driver": "<адрес_драйвера>",
                      "url": "<URL_базы_данных>",
                      "user": "<логин_пользователя>",
                      "password": "<пароль_пользователя>",
                      ...
                    }
                  }
                }'
    

    Где:

    • name — имя внешнего источника данных.
    • jdbc — настройки внешнего источника данных. Задайте хотя бы одну опциональную настройку.

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

  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": "<имя_внешнего_источника_данных>",
                "jdbc": {
                  "driver": "<адрес_драйвера>",
                  "url": "<URL_базы_данных>",
                  "user": "<логин_пользователя>",
                  "password": "<пароль_пользователя>",
                  ...
                }
              }
            }' \
        mdb.api.cloud.yandex.net:443 \
        yandex.cloud.mdb.greenplum.v1.PXFDatasourceService.Create
    

    Где:

    • name — имя внешнего источника данных.
    • jdbc — настройки внешнего источника данных. Задайте хотя бы одну опциональную настройку.

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

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

Этот способ подходит для Yandex MPP Analytics for PostgreSQL, использующего Apache Cloudberry™.

Чтобы создать внешний источник данных, выполните следующие действия:

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

    CREATE SERVER "<локальное_имя_источника>"
      FOREIGN DATA WRAPPER jdbc_pxf_fdw
      OPTIONS (
        jdbc_driver '<имя_класса_JDBC_драйвера>',
        db_url 'jdbc:<тип_СУБД>://<FQDN_кластера>:<порт>/<имя_БД>',
        user '<имя_пользователя>',
        pass '<пароль>'
      );
    
  2. Создайте сопоставление локального пользователя с пользователем на внешнем источнике:

    CREATE USER MAPPING FOR CURRENT_USER
      SERVER "<локальное_имя_источника>";
    

Совет

После создания внешнего источника данных создайте внешнюю таблицу.

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

ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc.

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

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