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