Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Managed Service for Trino
  • Начало работы
    • Все инструкции
      • Получение информации об имеющихся каталогах
      • Создание каталога
      • Изменение каталога
      • Удаление каталога
  • Справочник Terraform
  • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Метрики Yandex Monitoring
  • Аудитные логи Audit Trails
  • История изменений

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

  • Роли для создания каталога Trino
  • Создать каталог Trino
  • Настройки каталога Trino
  • Коннектор ClickHouse®
  • Коннектор Delta Lake
  • Коннектор Hive
  • Коннектор Hudi Preview
  • Коннектор Iceberg
  • Коннектор Oracle Preview
  • Коннектор PostgreSQL
  • Коннектор MySQL® Preview
  • Коннектор MS SQL Server Preview
  • Коннектор TPC-DS
  • Коннектор TPC-H
  1. Пошаговые инструкции
  2. Каталоги
  3. Создание каталога

Создание каталога Trino

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 27 ноября 2025 г.
  • Роли для создания каталога Trino
  • Создать каталог Trino
  • Настройки каталога Trino
    • Коннектор ClickHouse®
    • Коннектор Delta Lake
    • Коннектор Hive
    • Коннектор Hudi Preview
    • Коннектор Iceberg
    • Коннектор Oracle Preview
    • Коннектор PostgreSQL
    • Коннектор MySQL® Preview
    • Коннектор MS SQL Server Preview
    • Коннектор TPC-DS
    • Коннектор TPC-H

Роли для создания каталога TrinoРоли для создания каталога Trino

Для создания каталога Trino с типом подключения Connection Manager вашему аккаунту в Yandex Cloud нужна дополнительная роль connection-manager.user, чтобы использовать подключения из Connection Manager.

Сервисному аккаунту кластера должны быть назначены роли connection-manager.user и lockbox.payloadViewer. Это даст кластеру нужные права для работы с подключениями из Connection Manager. Подробнее см. в разделе Имперсонация.

О назначении ролей читайте в документации Yandex Identity and Access Management.

Создать каталог TrinoСоздать каталог Trino

Консоль управления
CLI
Terraform
REST API
gRPC API
  1. На странице каталога ресурсов выберите сервис Managed Service for Trino.
  2. Нажмите на имя нужного кластера.
  3. На панели слева выберите Каталоги.
  4. Нажмите кнопку Создать каталог.
  5. В поле Имя каталога задайте имя каталога Trino.
  6. В поле Тип коннектора выберите тип коннектора.
  7. Задайте настройки каталога Trino.
  8. Нажмите кнопку Создать.

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

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

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

    yc managed-trino catalog create --help
    
  2. Посмотрите описание команды CLI для создания каталога Trino c конкретным коннектором:

    yc managed-trino catalog create <тип_коннектора> --help
    
  3. Чтобы создать каталог Trino, выполните команду:

    yc managed-trino catalog create <тип_коннектора> <имя_каталога_Trino>
    

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

  1. Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.

    О том, как создать такой файл, см. в разделе Создание кластера.

  2. Добавьте ресурс yandex_trino_catalog:

    resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
      name        = "<имя_каталога_Trino>"
      cluster_id  = yandex_trino_cluster.<имя_кластера>.id
      <тип_коннектора> = {
        <настройки_каталога_Trino>
      }
    }
    

    Подробнее о настройках каталога Trino для разных типов коннекторов.

  3. Проверьте корректность настроек.

    1. В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.

    2. Выполните команду:

      terraform validate
      

      Если в файлах конфигурации есть ошибки, Terraform на них укажет.

  4. Подтвердите изменение ресурсов.

    1. Выполните команду для просмотра планируемых изменений:

      terraform plan
      

      Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.

    2. Если вас устраивают планируемые изменения, внесите их:

      1. Выполните команду:

        terraform apply
        
      2. Подтвердите изменение ресурсов.

      3. Дождитесь завершения операции.

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

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

    curl \
        --request POST \
        --header "Authorization: Bearer $IAM_TOKEN" \
        --header "Content-Type: application/json" \
        --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
        --data '{
                  "catalog": {
                    "name": "<имя_каталога_Trino>",
                    "connector": {
                      "<тип_коннектора>": {
                        <настройки_каталога_Trino>
                      }
                    }
                  }
                }'
    

    Подробнее о настройках каталога Trino для разных типов коннекторов.

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

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

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

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

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

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

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

    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
              "cluster_id": "<идентификатор_кластера>",
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "<тип_коннектора>": {
                        <настройки_каталога_Trino>
                  }
                }
              }
            }' \
        trino.api.cloud.yandex.net:443 \
        yandex.cloud.trino.v1.CatalogService.Create
    

    Подробнее о настройках каталога Trino для разных типов коннекторов.

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

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

Настройки каталога TrinoНастройки каталога Trino

Настройки каталога Trino отличаются в зависимости от выбранного коннектора.

Примечание

Коннекторы с пометкой Preview находятся на стадии предварительного тестирования. Стабильность работы не гарантируется.

Коннектор ClickHouse®Коннектор ClickHouse®

Задайте настройки для нужного типа подключения — Connection Manager или On-premise (пользовательская инсталляция).

Connection Manager позволяет создавать подключения к кластеру с управляемой базой данных и к пользовательской инсталляции базы данных.

При подключении через Connection Manager любые изменения в параметрах подключения автоматически учитываются в Trino. Для On-Premise изменения в параметрах подключения не отслеживаются в Trino. Их необходимо отслеживать и вносить вручную.

Подключение Connection ManagerПодключение Connection Manager

Консоль управления
CLI
Terraform
REST API
gRPC API
  • Идентификатор подключения — идентификатор подключения в Connection Manager для подключения к кластеру ClickHouse®.

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

    1. Перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
    2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
  • База данных — имя БД в кластере ClickHouse®.

  • Параметры клиента — параметры клиента ClickHouse® в формате ключ: значение.

    Доступные параметры
    • async — использовать ли асинхронный режим. Значение: true или false.

    • buffer_queue_variation — сколько раз может заполниться буфер, прежде чем его размер будет увеличен.

    • buffer_size — размер буфера. При переполнении увеличивается до max_buffer_size.

    • client_name — имя клиента.

    • compress — сжимать ли данные в ответе сервера. Значение: true или false.

    • compress_algorithm — какой алгоритм использовать для сжатия данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

    • compress_level — уровень сжатия данных.

    • connect_timeout — максимальное время ожидания подключения к серверу (в миллисекундах).

    • decompress — распаковывать ли данные в запросе клиента. Значение: true или false.

    • decompress_algorithm — какой алгоритм использовать для распаковки данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

    • decompress_level — уровень сжатия данных при распаковке.

    • failover — максимальное число попыток подключения к репликам, если сервер недоступен.

    • load_balancing_policy — алгоритм выбора реплик для подключения.

      • firstAlive — запрос отправляется на первую доступную реплику.
      • random — запрос отправляется на любую реплику случайным образом.
      • roundRobin — запрос отправляется в соответствии с политикой Round-robin.
    • max_buffer_size — максимальный размер буфера.

    • max_threads_per_client — максимальное число потоков на один клиент.

    • product_name — имя продукта в User-Agent.

    • read_buffer_size — размер буфера для чтения данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

    • request_buffering — режим буферизации запросов.

      • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
      • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
      • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
    • request_chunk_size — размер куска данных в запросе (в байтах).

    • response_buffering — режим буферизации ответов.

      • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
      • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
      • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
    • server_time_zone — часовой пояс.

    • use_server_time_zone — использовать ли часовой пояс сервера. Значение: true или false.

    • use_server_time_zone_for_dates — использовать ли часовой пояс сервера при обработке значений Date. Значение: true или false.

    • use_time_zone — какой часовой пояс использовать. Пример значения: Europe/Amsterdam. Работает, если значение use_server_time_zone равно false.

    • write_buffer_size — размер буфера для записи данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create clickhouse <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --connection-manager-connection-id <идентификатор_подключения> \
  --connection-manager-database <имя_БД> \
  --connection-manager-connection-properties <список_параметров_клиента_ClickHouse®> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --connection-manager-connection-id — идентификатор подключения в Connection Manager для подключения к кластеру ClickHouse®.

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

    1. Перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
    2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
  • --connection-manager-database — имя БД в кластере ClickHouse®.

  • --connection-manager-connection-properties — параметры клиента ClickHouse® в формате ключ=значение.

    Доступные параметры
    • async — использовать ли асинхронный режим. Значение: true или false.

    • buffer_queue_variation — сколько раз может заполниться буфер, прежде чем его размер будет увеличен.

    • buffer_size — размер буфера. При переполнении увеличивается до max_buffer_size.

    • client_name — имя клиента.

    • compress — сжимать ли данные в ответе сервера. Значение: true или false.

    • compress_algorithm — какой алгоритм использовать для сжатия данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

    • compress_level — уровень сжатия данных.

    • connect_timeout — максимальное время ожидания подключения к серверу (в миллисекундах).

    • decompress — распаковывать ли данные в запросе клиента. Значение: true или false.

    • decompress_algorithm — какой алгоритм использовать для распаковки данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

    • decompress_level — уровень сжатия данных при распаковке.

    • failover — максимальное число попыток подключения к репликам, если сервер недоступен.

    • load_balancing_policy — алгоритм выбора реплик для подключения.

      • firstAlive — запрос отправляется на первую доступную реплику.
      • random — запрос отправляется на любую реплику случайным образом.
      • roundRobin — запрос отправляется в соответствии с политикой Round-robin.
    • max_buffer_size — максимальный размер буфера.

    • max_threads_per_client — максимальное число потоков на один клиент.

    • product_name — имя продукта в User-Agent.

    • read_buffer_size — размер буфера для чтения данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

    • request_buffering — режим буферизации запросов.

      • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
      • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
      • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
    • request_chunk_size — размер куска данных в запросе (в байтах).

    • response_buffering — режим буферизации ответов.

      • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
      • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
      • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
    • server_time_zone — часовой пояс.

    • use_server_time_zone — использовать ли часовой пояс сервера. Значение: true или false.

    • use_server_time_zone_for_dates — использовать ли часовой пояс сервера при обработке значений Date. Значение: true или false.

    • use_time_zone — какой часовой пояс использовать. Пример значения: Europe/Amsterdam. Работает, если значение use_server_time_zone равно false.

    • write_buffer_size — размер буфера для записи данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

  • additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  clickhouse = {
    connection_manager = {
      connection_id = "<идентификатор_подключения>"
      database      = "<имя_БД>"
      connection_properties = {
        <список_настроек_клиента_ClickHouse®>
      }
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • connection_manager — настройки Connection Manager:

    • connection_id — идентификатор подключения в Connection Manager для подключения к кластеру ClickHouse®.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере ClickHouse®.

    • connection_properties — список настроек клиента ClickHouse® в формате "ключ" = "значение".

      Доступные параметры
      • async — использовать ли асинхронный режим. Значение: true или false.

      • buffer_queue_variation — сколько раз может заполниться буфер, прежде чем его размер будет увеличен.

      • buffer_size — размер буфера. При переполнении увеличивается до max_buffer_size.

      • client_name — имя клиента.

      • compress — сжимать ли данные в ответе сервера. Значение: true или false.

      • compress_algorithm — какой алгоритм использовать для сжатия данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • compress_level — уровень сжатия данных.

      • connect_timeout — максимальное время ожидания подключения к серверу (в миллисекундах).

      • decompress — распаковывать ли данные в запросе клиента. Значение: true или false.

      • decompress_algorithm — какой алгоритм использовать для распаковки данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • decompress_level — уровень сжатия данных при распаковке.

      • failover — максимальное число попыток подключения к репликам, если сервер недоступен.

      • load_balancing_policy — алгоритм выбора реплик для подключения.

        • firstAlive — запрос отправляется на первую доступную реплику.
        • random — запрос отправляется на любую реплику случайным образом.
        • roundRobin — запрос отправляется в соответствии с политикой Round-robin.
      • max_buffer_size — максимальный размер буфера.

      • max_threads_per_client — максимальное число потоков на один клиент.

      • product_name — имя продукта в User-Agent.

      • read_buffer_size — размер буфера для чтения данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

      • request_buffering — режим буферизации запросов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • request_chunk_size — размер куска данных в запросе (в байтах).

      • response_buffering — режим буферизации ответов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • server_time_zone — часовой пояс.

      • use_server_time_zone — использовать ли часовой пояс сервера. Значение: true или false.

      • use_server_time_zone_for_dates — использовать ли часовой пояс сервера при обработке значений Date. Значение: true или false.

      • use_time_zone — какой часовой пояс использовать. Пример значения: Europe/Amsterdam. Работает, если значение use_server_time_zone равно false.

      • write_buffer_size — размер буфера для записи данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "clickhouse": {
                    "connection": {
                      "connectionManager": {
                        "connectionId": "<идентификатор_подключения>",
                        "database": "<имя_БД>",
                        "connectionProperties": {
                          <список_настроек_клиента_ClickHouse®>
                        }
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • connectionManager — настройки Connection Manager:

    • connectionId — идентификатор подключения в Connection Manager для подключения к кластеру ClickHouse®.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере ClickHouse®.

    • connectionProperties — список настроек клиента ClickHouse® в формате "ключ": "значение".

      Доступные параметры
      • async — использовать ли асинхронный режим. Значение: true или false.

      • buffer_queue_variation — сколько раз может заполниться буфер, прежде чем его размер будет увеличен.

      • buffer_size — размер буфера. При переполнении увеличивается до max_buffer_size.

      • client_name — имя клиента.

      • compress — сжимать ли данные в ответе сервера. Значение: true или false.

      • compress_algorithm — какой алгоритм использовать для сжатия данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • compress_level — уровень сжатия данных.

      • connect_timeout — максимальное время ожидания подключения к серверу (в миллисекундах).

      • decompress — распаковывать ли данные в запросе клиента. Значение: true или false.

      • decompress_algorithm — какой алгоритм использовать для распаковки данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • decompress_level — уровень сжатия данных при распаковке.

      • failover — максимальное число попыток подключения к репликам, если сервер недоступен.

      • load_balancing_policy — алгоритм выбора реплик для подключения.

        • firstAlive — запрос отправляется на первую доступную реплику.
        • random — запрос отправляется на любую реплику случайным образом.
        • roundRobin — запрос отправляется в соответствии с политикой Round-robin.
      • max_buffer_size — максимальный размер буфера.

      • max_threads_per_client — максимальное число потоков на один клиент.

      • product_name — имя продукта в User-Agent.

      • read_buffer_size — размер буфера для чтения данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

      • request_buffering — режим буферизации запросов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • request_chunk_size — размер куска данных в запросе (в байтах).

      • response_buffering — режим буферизации ответов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • server_time_zone — часовой пояс.

      • use_server_time_zone — использовать ли часовой пояс сервера. Значение: true или false.

      • use_server_time_zone_for_dates — использовать ли часовой пояс сервера при обработке значений Date. Значение: true или false.

      • use_time_zone — какой часовой пояс использовать. Пример значения: Europe/Amsterdam. Работает, если значение use_server_time_zone равно false.

      • write_buffer_size — размер буфера для записи данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "clickhouse": {
                "connection": {
                  "connection_manager": {
                    "connection_id": "<идентификатор_подключения>",
                    "database": "<имя_БД>",
                    "connection_properties": {
                      <список_настроек_клиента_ClickHouse®>
                    }
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • connection_manager — настройки Connection Manager:

    • connection_id — идентификатор подключения в Connection Manager для подключения к кластеру ClickHouse®.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for ClickHouse.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере ClickHouse®.

    • connection_properties — список настроек клиента ClickHouse® в формате "ключ": "значение".

      Доступные параметры
      • async — использовать ли асинхронный режим. Значение: true или false.

      • buffer_queue_variation — сколько раз может заполниться буфер, прежде чем его размер будет увеличен.

      • buffer_size — размер буфера. При переполнении увеличивается до max_buffer_size.

      • client_name — имя клиента.

      • compress — сжимать ли данные в ответе сервера. Значение: true или false.

      • compress_algorithm — какой алгоритм использовать для сжатия данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • compress_level — уровень сжатия данных.

      • connect_timeout — максимальное время ожидания подключения к серверу (в миллисекундах).

      • decompress — распаковывать ли данные в запросе клиента. Значение: true или false.

      • decompress_algorithm — какой алгоритм использовать для распаковки данных. Возможные значения: BROTLI, BZ2, DEFLATE, GZIP, LZ4, SNAPPY, XZ, ZSTD или NONE.

      • decompress_level — уровень сжатия данных при распаковке.

      • failover — максимальное число попыток подключения к репликам, если сервер недоступен.

      • load_balancing_policy — алгоритм выбора реплик для подключения.

        • firstAlive — запрос отправляется на первую доступную реплику.
        • random — запрос отправляется на любую реплику случайным образом.
        • roundRobin — запрос отправляется в соответствии с политикой Round-robin.
      • max_buffer_size — максимальный размер буфера.

      • max_threads_per_client — максимальное число потоков на один клиент.

      • product_name — имя продукта в User-Agent.

      • read_buffer_size — размер буфера для чтения данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

      • request_buffering — режим буферизации запросов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • request_chunk_size — размер куска данных в запросе (в байтах).

      • response_buffering — режим буферизации ответов.

        • RESOURCE_EFFICIENT — обеспечивает умеренную производительность при минимальном использовании CPU и памяти. В этом режиме учитывается только размер буфера, очередь не используется.
        • PERFORMANCE — обеспечивает лучшую производительность за счет активного использования CPU и памяти.
        • CUSTOM — позволяет вручную настроить параметры буферизации, чтобы сбалансировать использование ресурсов и желаемую производительность.
      • server_time_zone — часовой пояс.

      • use_server_time_zone — использовать ли часовой пояс сервера. Значение: true или false.

      • use_server_time_zone_for_dates — использовать ли часовой пояс сервера при обработке значений Date. Значение: true или false.

      • use_time_zone — какой часовой пояс использовать. Пример значения: Europe/Amsterdam. Работает, если значение use_server_time_zone равно false.

      • write_buffer_size — размер буфера для записи данных (в байтах). По умолчанию значение равно buffer_size. При заполнении буфера размер увеличивается до значения max_buffer_size.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Подключение On-premiseПодключение On-premise

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URL — URL для подключения к БД ClickHouse® в формате jdbc:clickhouse://<адрес_хоста>:<порт>/<имя_БД>.
  • Имя пользователя — имя пользователя для подключения к БД ClickHouse®.
  • Пароль — пароль пользователя для подключения к БД ClickHouse®.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create clickhouse <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --on-premise-connection-url <URL_для_подключения> \
  --on-premise-user-name <имя_пользователя> \
  --on-premise-password <пароль_пользователя> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --on-premise-connection-url — URL для подключения к БД ClickHouse® в формате jdbc:clickhouse://<адрес_хоста>:<порт>/<имя_БД>
  • --on-premise-user-name — имя пользователя для подключения к БД ClickHouse®.
  • --on-premise-password — пароль пользователя для подключения к БД ClickHouse®.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  clickhouse = {
    on_premise = {
      connection_url = "<URL_для_подключения>"
      user_name      = "<имя_пользователя>"
      password       = "<пароль_пользователя>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД ClickHouse® в формате jdbc:clickhouse://<адрес_хоста>:<порт>/<имя_БД>.
    • user_name — имя пользователя для подключения к БД ClickHouse®.
    • password — пароль пользователя для подключения к БД ClickHouse®.
  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "clickhouse": {
                    "connection": {
                      "onPremise": {
                        "connectionUrl": "<URL_для_подключения>",
                        "userName": "<имя_пользователя>",
                        "password": "<пароль_пользователя>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • onPremise — настройки для подключения к пользовательской инсталляции:

    • connectionUrl — URL для подключения к БД ClickHouse® в формате jdbc:clickhouse://<адрес_хоста>:<порт>/<имя_БД>.
    • userName — имя пользователя для подключения к БД ClickHouse®.
    • password — пароль пользователя для подключения к БД ClickHouse®.
  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "clickhouse": {
                "connection": {
                  "on_premise": {
                    "connection_url": "<URL_для_подключения>",
                    "user_name": "<имя_пользователя>",
                    "password": "<пароль_пользователя>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД ClickHouse® в формате jdbc:clickhouse://<адрес_хоста>:<порт>/<имя_БД>.
    • user_name — имя пользователя для подключения к БД ClickHouse®.
    • password — пароль пользователя для подключения к БД ClickHouse®.
  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор Delta LakeКоннектор Delta Lake

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URI — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • Файловое хранилище — тип файлового хранилища. Доступные варианты: Yandex Object Storage и внешнее хранилище.

    Для внешнего хранилища необходимо указать:

    • Идентификатор ключа доступа — идентификатор AWS-совместимого статического ключа доступа.
    • Секретный ключ — секретный ключ AWS-совместимого статического ключа доступа.
    • Эндпоинт — эндпоинт файлового хранилища, например storage.yandexcloud.net.
    • Регион — регион файлового хранилища, например ru-central1.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create delta-lake <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --metastore-hive-uri <URI_для_подключения> \
  --filesystem-native-s3 \
  --filesystem-external-s3-aws-access-key <идентификатор_ключа_доступа> \
  --filesystem-external-s3-aws-secret-key <секретный_ключ> \
  --filesystem-external-s3-aws-endpoint <эндпоинт> \
  --filesystem-external-s3-aws-region <регион> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --metastore-hive-uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • --filesystem-native-s3 — хранилище Yandex Object Storage.

  • --filesystem-external-s3-aws-access-key — идентификатор AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-secret-key — секретный ключ AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.

  • --filesystem-external-s3-aws-region — регион файлового хранилища, например ru-central1.

    Примечание

    Укажите либо флаг --filesystem-native-s3, чтобы использовать хранилище Object Storage, либо флаги группы --filesystem-external-s3-aws, чтобы использовать внешнее хранилище.

  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  delta_lake = {
    file_system = {
      s3 = {}
    }
    metastore = {
      uri = "<URI_для_подключения>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • file_system — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "deltaLake": {
                    "filesystem": {
                      "s3": {}
                    },
                    "metastore": {
                      "hive": {
                        "uri": "<URI_для_подключения>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • externalS3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • awsAccessKey — идентификатор AWS-совместимого статического ключа доступа.
      • awsSecretKey — секретный ключ AWS-совместимого статического ключа доступа.
      • awsEndpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • awsRegion — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "delta_lake": {
                "filesystem": {
                  "s3": {}
                },
                "metastore": {
                  "hive": {
                    "uri": "<URI_для_подключения>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор HiveКоннектор Hive

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URI — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • Файловое хранилище — тип файлового хранилища. Доступные варианты: Yandex Object Storage и внешнее хранилище.

    Для внешнего хранилища необходимо указать:

    • Идентификатор ключа доступа — идентификатор AWS-совместимого статического ключа доступа.
    • Секретный ключ — секретный ключ AWS-совместимого статического ключа доступа.
    • Эндпоинт — эндпоинт файлового хранилища, например storage.yandexcloud.net.
    • Регион — регион файлового хранилища, например ru-central1.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create hive <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --metastore-hive-uri <URI_для_подключения> \
  --filesystem-native-s3 \
  --filesystem-external-s3-aws-access-key <идентификатор_ключа_доступа> \
  --filesystem-external-s3-aws-secret-key <секретный_ключ> \
  --filesystem-external-s3-aws-endpoint <эндпоинт> \
  --filesystem-external-s3-aws-region <регион> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --metastore-hive-uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • --filesystem-native-s3 — хранилище Yandex Object Storage.

  • --filesystem-external-s3-aws-access-key — идентификатор AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-secret-key — секретный ключ AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.

  • --filesystem-external-s3-aws-region — регион файлового хранилища, например ru-central1.

    Примечание

    Укажите либо флаг --filesystem-native-s3, чтобы использовать хранилище Object Storage, либо флаги группы --filesystem-external-s3-aws, чтобы использовать внешнее хранилище.

  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  hive = {
    file_system = {
      s3 = {}
    }
    metastore = {
      uri = "<URI_для_подключения>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • file_system — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "hive": {
                    "filesystem": {
                      "s3": {}
                    },
                    "metastore": {
                      "hive": {
                        "uri": "<URI_для_подключения>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • externalS3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • awsAccessKey — идентификатор AWS-совместимого статического ключа доступа.
      • awsSecretKey — секретный ключ AWS-совместимого статического ключа доступа.
      • awsEndpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • awsRegion — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "hive": {
                "filesystem": {
                  "s3": {}
                },
                "metastore": {
                  "hive": {
                    "uri": "<URI_для_подключения>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор Hudi PreviewКоннектор Hudi Preview

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URI — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • Файловое хранилище — тип файлового хранилища. Доступные варианты: Yandex Object Storage и внешнее хранилище.

    Для внешнего хранилища необходимо указать:

    • Идентификатор ключа доступа — идентификатор AWS-совместимого статического ключа доступа.
    • Секретный ключ — секретный ключ AWS-совместимого статического ключа доступа.
    • Эндпоинт — эндпоинт файлового хранилища, например storage.yandexcloud.net.
    • Регион — регион файлового хранилища, например ru-central1.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create hudi <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --metastore-hive-uri <URI_для_подключения> \
  --filesystem-native-s3 \
  --filesystem-external-s3-aws-access-key <идентификатор_ключа_доступа> \
  --filesystem-external-s3-aws-secret-key <секретный_ключ> \
  --filesystem-external-s3-aws-endpoint <эндпоинт> \
  --filesystem-external-s3-aws-region <регион> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --metastore-hive-uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • --filesystem-native-s3 — хранилище Yandex Object Storage.

  • --filesystem-external-s3-aws-access-key — идентификатор AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-secret-key — секретный ключ AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.

  • --filesystem-external-s3-aws-region — регион файлового хранилища, например ru-central1.

    Примечание

    Укажите либо флаг --filesystem-native-s3, чтобы использовать хранилище Object Storage, либо флаги группы --filesystem-external-s3-aws, чтобы использовать внешнее хранилище.

  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  hudi = {
    file_system = {
      s3 = {}
    }
    metastore = {
      uri = "<URI_для_подключения>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • file_system — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "hudi": {
                    "filesystem": {
                      "s3": {}
                    },
                    "metastore": {
                      "hive": {
                        "uri": "<URI_для_подключения>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • externalS3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • awsAccessKey — идентификатор AWS-совместимого статического ключа доступа.
      • awsSecretKey — секретный ключ AWS-совместимого статического ключа доступа.
      • awsEndpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • awsRegion — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "hudi": {
                "filesystem": {
                  "s3": {}
                },
                "metastore": {
                  "hive": {
                    "uri": "<URI_для_подключения>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор IcebergКоннектор Iceberg

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URI — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • Файловое хранилище — тип файлового хранилища. Доступные варианты: Yandex Object Storage и внешнее хранилище.

    Для внешнего хранилища необходимо указать:

    • Идентификатор ключа доступа — идентификатор AWS-совместимого статического ключа доступа.
    • Секретный ключ — секретный ключ AWS-совместимого статического ключа доступа.
    • Эндпоинт — эндпоинт файлового хранилища, например storage.yandexcloud.net.
    • Регион — регион файлового хранилища, например ru-central1.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create iceberg <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --metastore-hive-uri <URI_для_подключения> \
  --filesystem-native-s3 \
  --filesystem-external-s3-aws-access-key <идентификатор_ключа_доступа> \
  --filesystem-external-s3-aws-secret-key <секретный_ключ> \
  --filesystem-external-s3-aws-endpoint <эндпоинт> \
  --filesystem-external-s3-aws-region <регион> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --metastore-hive-uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • --filesystem-native-s3 — хранилище Yandex Object Storage.

  • --filesystem-external-s3-aws-access-key — идентификатор AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-secret-key — секретный ключ AWS-совместимого статического ключа доступа.

  • --filesystem-external-s3-aws-endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.

  • --filesystem-external-s3-aws-region — регион файлового хранилища, например ru-central1.

    Примечание

    Укажите либо флаг --filesystem-native-s3, чтобы использовать хранилище Object Storage, либо флаги группы --filesystem-external-s3-aws, чтобы использовать внешнее хранилище.

  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  iceberg = {
    file_system = {
      s3 = {}
    }
    metastore = {
      uri = "<URI_для_подключения>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • file_system — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "iceberg": {
                    "filesystem": {
                      "s3": {}
                    },
                    "metastore": {
                      "hive": {
                        "uri": "<URI_для_подключения>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • externalS3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • awsAccessKey — идентификатор AWS-совместимого статического ключа доступа.
      • awsSecretKey — секретный ключ AWS-совместимого статического ключа доступа.
      • awsEndpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • awsRegion — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "iceberg": {
                "filesystem": {
                  "s3": {}
                },
                "metastore": {
                  "hive": {
                    "uri": "<URI_для_подключения>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • filesystem — тип файлового хранилища. Доступные варианты:

    • s3 — хранилище Yandex Object Storage.

    • external_s3 — внешнее хранилище. Для него необходимо указать дополнительные параметры:

      • aws_access_key — идентификатор AWS-совместимого статического ключа доступа.
      • aws_secret_key — секретный ключ AWS-совместимого статического ключа доступа.
      • aws_endpoint — эндпоинт файлового хранилища, например storage.yandexcloud.net.
      • aws_region — регион файлового хранилища, например ru-central1.
  • metastore.hive.uri — URI для подключения к кластеру Apache Hive™ Metastore в формате thrift://<IP-адрес_кластера>:9083.

    Чтобы узнать IP-адрес кластера Apache Hive™ Metastore, в консоли управления выберите сервис Yandex MetaData Hub и на панели слева выберите Metastore-сервер.

    Важно

    Для интеграции с сервисом Managed Service for Trino требуется кластер Apache Hive™ Metastore с версией 3.1.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор Oracle PreviewКоннектор Oracle Preview

Консоль управления
CLI
Terraform
REST API
gRPC API
  • Тип подключения — On-premise.
  • URL — URL для подключения к БД Oracle в формате jdbc:oracle:thin:@<адрес_хоста>:<порт>:<SID>. SID — системный идентификатор Oracle.
  • Имя пользователя — имя пользователя для подключения к БД Oracle.
  • Пароль — пароль пользователя для подключения к БД Oracle.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create oracle <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --on-premise-connection-url <URL_для_подключения> \
  --on-premise-user-name <имя_пользователя> \
  --on-premise-password <пароль_пользователя> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --on-premise-connection-url — URL для подключения к БД Oracle в формате jdbc:oracle:thin:@<адрес_хоста>:<порт>:<SID>. SID — системный идентификатор Oracle.
  • --on-premise-user-name — имя пользователя для подключения к БД Oracle.
  • --on-premise-password — пароль пользователя для подключения к БД Oracle.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  oracle = {
    on_premise = {
      connection_url = "<URL_для_подключения>"
      user_name      = "<имя_пользователя>"
      password       = "<пароль_пользователя>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД Oracle в формате jdbc:oracle:thin:@<адрес_хоста>:<порт>:<SID>. SID — системный идентификатор Oracle.
    • user_name — имя пользователя для подключения к БД Oracle.
    • password — пароль пользователя для подключения к БД Oracle.
  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "oracle": {
                    "connection": {
                      "onPremise": {
                        "connectionUrl": "<URL_для_подключения>",
                        "userName": "<имя_пользователя>",
                        "password": "<пароль_пользователя>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • onPremise — настройки для подключения к пользовательской инсталляции:

    • connectionUrl — URL для подключения к БД Oracle в формате jdbc:oracle:thin:@<адрес_хоста>:<порт>:<SID>. SID — системный идентификатор Oracle.
    • userName — имя пользователя для подключения к БД Oracle.
    • password — пароль пользователя для подключения к БД Oracle.
  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "oracle": {
                "connection": {
                  "on_premise": {
                    "connection_url": "<URL_для_подключения>",
                    "user_name": "<имя_пользователя>",
                    "password": "<пароль_пользователя>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД Oracle в формате jdbc:oracle:thin:@<адрес_хоста>:<порт>:<SID>. SID — системный идентификатор Oracle.
    • user_name — имя пользователя для подключения к БД Oracle.
    • password — пароль пользователя для подключения к БД Oracle.
  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор PostgreSQLКоннектор PostgreSQL

Задайте настройки для нужного типа подключения — Connection Manager или On-premise (пользовательская инсталляция).

Connection Manager позволяет создавать подключения к кластеру с управляемой базой данных и к пользовательской инсталляции базы данных.

При подключении через Connection Manager любые изменения в параметрах подключения автоматически учитываются в Trino. Для On-Premise изменения в параметрах подключения не отслеживаются в Trino. Их необходимо отслеживать и вносить вручную.

Подключение Connection ManagerПодключение Connection Manager

Консоль управления
CLI
Terraform
REST API
gRPC API
  • Идентификатор подключения — идентификатор подключения в Connection Manager для подключения к кластеру PostgreSQL.

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

    1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
    2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
  • База данных — имя БД в кластере PostgreSQL.

  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create postgresql <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --connection-manager-connection-id <идентификатор_подключения> \
  --connection-manager-database <имя_БД> \
  --connection-manager-connection-properties <список_параметров_клиента_PostgreSQL> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.

  • --connection-manager-connection-id — идентификатор подключения в Connection Manager для подключения к кластеру PostgreSQL.

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

    1. Перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
    2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
  • --connection-manager-database — имя БД в кластере PostgreSQL.

  • --connection-manager-connection-properties — список настроек клиента PostgreSQL в формате ключ=значение.

    Доступные параметры
    • ApplicationName — имя приложения, использующего соединение.

    • defaultRowFetchSize — количество строк, извлекаемых в ResultSet за один запрос к базе данных. Значение по умолчанию — 0 (извлекаются все строки сразу). Ограничение на количество строк позволит избежать ненужного потребления памяти.

    • hostRecheckSeconds — время в секундах, по истечении которого статус хоста проверяется повторно. Значение по умолчанию — 10.

    • loadBalanceHosts — определяет вариант подключения хостов. Возможные значения:

      • false (по умолчанию) — хосты подключаются в указанном порядке.
      • true — хосты выбираются случайным образом из набора подходящих кандидатов.
    • maxResultBuffer — размер буфера результатов, который нельзя превышать при чтении набора результатов. Значение можно указать двумя способами:

      • В байтах (например: 100, 200M, 2G).
      • В процентах от максимального объема памяти кучи (например: 10p, 20pct, 50percent). Значение не может превышать 90 % от максимального объема памяти кучи. Все значения, превышающие это ограничение, будут уменьшены до ограничения.

      По умолчанию maxResultBuffer не установлен (имеет значение null). Это означает, что чтение результатов будет выполняться без ограничений.

    • maxSendBufferSize — максимальное количество байтов, буферизуемых перед отправкой на серверную часть. Драйвер pgjdbc использует функцию least(maxSendBufferSize, greatest(8192, SO_SNDBUF)) для определения размера буфера.

    • readOnly — позволяет перевести соединение в режим только для чтения. Значение по умолчанию — false.

    • readOnlyMode — управляет поведением, когда соединение настроено только на чтение (readOnly = true). Возможные значения:

      • ignore — параметр readOnly не действует.
      • transaction (по умолчанию) — если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
      • always — если автокоммит равен true, то сеанс будет настроен только на чтение. Если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
    • receiveBufferSize — размер буфера чтения сокета (SO_RCVBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

    • sendBufferSize — размер буфера записи сокета (SO_SNDBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

    • targetServerType — определяет, к какому типу сервера подключаться. Возможные значения: any (по умолчанию), master, primary, slave, secondary, preferSlave, preferSecondary, preferPrimary. Значения master, slave и preferSlave не рекомендуется использовать, т. к. они устарели и заменены на primary, secondary и preferSecondary соответственно.

  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  postgresql = {
    connection_manager = {
      connection_id = "<идентификатор_подключения>"
      database      = "<имя_БД>"
      connection_properties = {
        <список_настроек_клиента_PostgreSQL>
      }
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • connection_manager — настройки Connection Manager:

    • connection_id — идентификатор подключения в Connection Manager для подключения к кластеру PostgreSQL.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере PostgreSQL.

    • connection_properties — список настроек клиента PostgreSQL в формате "ключ" = "значение".

      Доступные параметры
      • ApplicationName — имя приложения, использующего соединение.

      • defaultRowFetchSize — количество строк, извлекаемых в ResultSet за один запрос к базе данных. Значение по умолчанию — 0 (извлекаются все строки сразу). Ограничение на количество строк позволит избежать ненужного потребления памяти.

      • hostRecheckSeconds — время в секундах, по истечении которого статус хоста проверяется повторно. Значение по умолчанию — 10.

      • loadBalanceHosts — определяет вариант подключения хостов. Возможные значения:

        • false (по умолчанию) — хосты подключаются в указанном порядке.
        • true — хосты выбираются случайным образом из набора подходящих кандидатов.
      • maxResultBuffer — размер буфера результатов, который нельзя превышать при чтении набора результатов. Значение можно указать двумя способами:

        • В байтах (например: 100, 200M, 2G).
        • В процентах от максимального объема памяти кучи (например: 10p, 20pct, 50percent). Значение не может превышать 90 % от максимального объема памяти кучи. Все значения, превышающие это ограничение, будут уменьшены до ограничения.

        По умолчанию maxResultBuffer не установлен (имеет значение null). Это означает, что чтение результатов будет выполняться без ограничений.

      • maxSendBufferSize — максимальное количество байтов, буферизуемых перед отправкой на серверную часть. Драйвер pgjdbc использует функцию least(maxSendBufferSize, greatest(8192, SO_SNDBUF)) для определения размера буфера.

      • readOnly — позволяет перевести соединение в режим только для чтения. Значение по умолчанию — false.

      • readOnlyMode — управляет поведением, когда соединение настроено только на чтение (readOnly = true). Возможные значения:

        • ignore — параметр readOnly не действует.
        • transaction (по умолчанию) — если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
        • always — если автокоммит равен true, то сеанс будет настроен только на чтение. Если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
      • receiveBufferSize — размер буфера чтения сокета (SO_RCVBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • sendBufferSize — размер буфера записи сокета (SO_SNDBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • targetServerType — определяет, к какому типу сервера подключаться. Возможные значения: any (по умолчанию), master, primary, slave, secondary, preferSlave, preferSecondary, preferPrimary. Значения master, slave и preferSlave не рекомендуется использовать, т. к. они устарели и заменены на primary, secondary и preferSecondary соответственно.

  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "postgresql": {
                    "connection": {
                      "connectionManager": {
                        "connectionId": "<идентификатор_подключения>",
                        "database": "<имя_БД>",
                        "connectionProperties": {
                          <список_настроек_клиента_PostgreSQL>
                        }
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • connectionManager — настройки Connection Manager:

    • connectionId — идентификатор подключения в Connection Manager для подключения к кластеру PostgreSQL.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере PostgreSQL.

    • connectionProperties — список настроек клиента PostgreSQL в формате "ключ": "значение".

      Доступные параметры
      • ApplicationName — имя приложения, использующего соединение.

      • defaultRowFetchSize — количество строк, извлекаемых в ResultSet за один запрос к базе данных. Значение по умолчанию — 0 (извлекаются все строки сразу). Ограничение на количество строк позволит избежать ненужного потребления памяти.

      • hostRecheckSeconds — время в секундах, по истечении которого статус хоста проверяется повторно. Значение по умолчанию — 10.

      • loadBalanceHosts — определяет вариант подключения хостов. Возможные значения:

        • false (по умолчанию) — хосты подключаются в указанном порядке.
        • true — хосты выбираются случайным образом из набора подходящих кандидатов.
      • maxResultBuffer — размер буфера результатов, который нельзя превышать при чтении набора результатов. Значение можно указать двумя способами:

        • В байтах (например: 100, 200M, 2G).
        • В процентах от максимального объема памяти кучи (например: 10p, 20pct, 50percent). Значение не может превышать 90 % от максимального объема памяти кучи. Все значения, превышающие это ограничение, будут уменьшены до ограничения.

        По умолчанию maxResultBuffer не установлен (имеет значение null). Это означает, что чтение результатов будет выполняться без ограничений.

      • maxSendBufferSize — максимальное количество байтов, буферизуемых перед отправкой на серверную часть. Драйвер pgjdbc использует функцию least(maxSendBufferSize, greatest(8192, SO_SNDBUF)) для определения размера буфера.

      • readOnly — позволяет перевести соединение в режим только для чтения. Значение по умолчанию — false.

      • readOnlyMode — управляет поведением, когда соединение настроено только на чтение (readOnly = true). Возможные значения:

        • ignore — параметр readOnly не действует.
        • transaction (по умолчанию) — если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
        • always — если автокоммит равен true, то сеанс будет настроен только на чтение. Если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
      • receiveBufferSize — размер буфера чтения сокета (SO_RCVBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • sendBufferSize — размер буфера записи сокета (SO_SNDBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • targetServerType — определяет, к какому типу сервера подключаться. Возможные значения: any (по умолчанию), master, primary, slave, secondary, preferSlave, preferSecondary, preferPrimary. Значения master, slave и preferSlave не рекомендуется использовать, т. к. они устарели и заменены на primary, secondary и preferSecondary соответственно.

  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "postgesql": {
                "connection": {
                  "connection_manager": {
                    "connection_id": "<идентификатор_подключения>",
                    "database": "<имя_БД>",
                    "connection_properties": {
                      <список_настроек_клиента_PostgreSQL>
                    }
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • connection_manager — настройки Connection Manager:

    • connection_id — идентификатор подключения в Connection Manager для подключения к кластеру PostgreSQL.

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

      1. В консоли управления перейдите на страницу каталога и выберите сервис Managed Service for PostgreSQL.
      2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
    • database — имя БД в кластере PostgreSQL.

    • connection_properties — список настроек клиента PostgreSQL в формате "ключ": "значение".

      Доступные параметры
      • ApplicationName — имя приложения, использующего соединение.

      • defaultRowFetchSize — количество строк, извлекаемых в ResultSet за один запрос к базе данных. Значение по умолчанию — 0 (извлекаются все строки сразу). Ограничение на количество строк позволит избежать ненужного потребления памяти.

      • hostRecheckSeconds — время в секундах, по истечении которого статус хоста проверяется повторно. Значение по умолчанию — 10.

      • loadBalanceHosts — определяет вариант подключения хостов. Возможные значения:

        • false (по умолчанию) — хосты подключаются в указанном порядке.
        • true — хосты выбираются случайным образом из набора подходящих кандидатов.
      • maxResultBuffer — размер буфера результатов, который нельзя превышать при чтении набора результатов. Значение можно указать двумя способами:

        • В байтах (например: 100, 200M, 2G).
        • В процентах от максимального объема памяти кучи (например: 10p, 20pct, 50percent). Значение не может превышать 90 % от максимального объема памяти кучи. Все значения, превышающие это ограничение, будут уменьшены до ограничения.

        По умолчанию maxResultBuffer не установлен (имеет значение null). Это означает, что чтение результатов будет выполняться без ограничений.

      • maxSendBufferSize — максимальное количество байтов, буферизуемых перед отправкой на серверную часть. Драйвер pgjdbc использует функцию least(maxSendBufferSize, greatest(8192, SO_SNDBUF)) для определения размера буфера.

      • readOnly — позволяет перевести соединение в режим только для чтения. Значение по умолчанию — false.

      • readOnlyMode — управляет поведением, когда соединение настроено только на чтение (readOnly = true). Возможные значения:

        • ignore — параметр readOnly не действует.
        • transaction (по умолчанию) — если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
        • always — если автокоммит равен true, то сеанс будет настроен только на чтение. Если автокоммит равен false, то драйвер настроит транзакцию только на чтение, отправив BEGIN READ ONLY.
      • receiveBufferSize — размер буфера чтения сокета (SO_RCVBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • sendBufferSize — размер буфера записи сокета (SO_SNDBUF) в байтах. Значение по умолчанию — -1 (нет ограничения).

      • targetServerType — определяет, к какому типу сервера подключаться. Возможные значения: any (по умолчанию), master, primary, slave, secondary, preferSlave, preferSecondary, preferPrimary. Значения master, slave и preferSlave не рекомендуется использовать, т. к. они устарели и заменены на primary, secondary и preferSecondary соответственно.

  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Подключение On-premiseПодключение On-premise

Консоль управления
CLI
Terraform
REST API
gRPC API
  • URL — URL для подключения к БД PostgreSQL в формате jdbc:postgresql://<адрес_хоста>:<порт>/<имя_БД>.
  • Имя пользователя — имя пользователя для подключения к БД PostgreSQL.
  • Пароль — пароль пользователя для подключения к БД PostgreSQL.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create postgresql <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --on-premise-connection-url <URL_для_подключения> \
  --on-premise-user-name <имя_пользователя> \
  --on-premise-password <пароль_пользователя> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --on-premise-connection-url — URL для подключения к БД PostgreSQL в формате jdbc:postgresql://<адрес_хоста>:<порт>/<имя_БД>.
  • --on-premise-user-name — имя пользователя для подключения к БД PostgreSQL.
  • --on-premise-password — пароль пользователя для подключения к БД PostgreSQL.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  postgresql = {
    on_premise = {
      connection_url = "<URL_для_подключения>"
      user_name      = "<имя_пользователя>"
      password       = "<пароль_пользователя>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД PostgreSQL в формате jdbc:postgresql://<адрес_хоста>:<порт>/<имя_БД>.
    • user_name — имя пользователя для подключения к БД PostgreSQL.
    • password — пароль пользователя для подключения к БД PostgreSQL.
  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "postgesql": {
                    "connection": {
                      "onPremise": {
                        "connectionUrl": "<URL_для_подключения>",
                        "userName": "<имя_пользователя>",
                        "password": "<пароль_пользователя>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • onPremise — настройки для подключения к пользовательской инсталляции:

    • connectionUrl — URL для подключения к БД PostgreSQL в формате jdbc:postgresql://<адрес_хоста>:<порт>/<имя_БД>.
    • userName — имя пользователя для подключения к БД PostgreSQL.
    • password — пароль пользователя для подключения к БД PostgreSQL.
  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "postgresql": {
                "connection": {
                  "on_premise": {
                    "connection_url": "<URL_для_подключения>",
                    "user_name": "<имя_пользователя>",
                    "password": "<пароль_пользователя>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД PostgreSQL в формате jdbc:postgresql://<адрес_хоста>:<порт>/<имя_БД>.
    • user_name — имя пользователя для подключения к БД PostgreSQL.
    • password — пароль пользователя для подключения к БД PostgreSQL.
  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор MySQL® PreviewКоннектор MySQL® Preview

Задайте настройки для нужного типа подключения — Connection Manager или On-premise (пользовательская инсталляция).

Connection Manager позволяет создавать подключения к кластеру с управляемой базой данных и к пользовательской инсталляции базы данных.

При подключении через Connection Manager любые изменения в параметрах подключения автоматически учитываются в Trino. Для On-Premise изменения в параметрах подключения не отслеживаются в Trino. Их необходимо отслеживать и вносить вручную.

Подключение Connection ManagerПодключение Connection Manager

Консоль управления
  • Идентификатор подключения — идентификатор подключения в Connection Manager для подключения к кластеру MySQL®.

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

    1. Перейдите на страницу каталога и выберите сервис Managed Service for MySQL.
    2. Нажмите на имя нужного кластера и перейдите на вкладку Подключения.
  • Свойства подключения — параметры подключения MySQL® в формате ключ: значение.

    Доступные параметры
    • connectTimeout — максимальное время ожидания установки соединения с MySQL®, в миллисекундах;

    • socketTimeout — максимальное время ожидания выполнения операций через сокет, в миллисекундах;

    • connectionTimeZone — временная зона, которую использует MySQL®, например, UTC или Europe/Moscow;

    • serverTimezone — временная зона, которую использует MySQL®, например, UTC или Europe/Moscow;

      Примечание

      Параметр устарел, используйте connectionTimeZone.

    • autoReconnect — использовать ли автоматическое переподключение. Значение: true или false;

    • maxReconnects — максимальное количество попыток переподключения;

    • useCompression — использовать ли сжатие при передаче данных. Значение: true или false;

    • cachePrepStmts — использовать ли кеширование подготовленных запросов. Значение: true или false;

    • prepStmtCacheSize — максимальное количество подготовленных запросов, хранящихся в кеше;

    • prepStmtCacheSqlLimit — максимальное количество символов в подготовленном запросе, который может быть закеширован.

  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Подключение On-premiseПодключение On-premise

Консоль управления
  • URL — URL для подключения к серверу MySQL® в формате jdbc:mysql://<адрес_хоста>:<порт>/. Имя базы данных указывать не нужно — Trino автоматически обнаружит все доступные базы данных.
  • Имя пользователя — имя пользователя для подключения к серверу MySQL®.
  • Пароль — пароль пользователя для подключения к серверу MySQL®.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Коннектор MS SQL Server PreviewКоннектор MS SQL Server Preview

Консоль управления
CLI
Terraform
REST API
gRPC API
  • Тип подключения — On-premise.
  • URL — URL для подключения к БД Microsoft SQL Server в формате jdbc:sqlserver://<адрес_хоста>:<порт>;databaseName=<имя_БД>.
  • Имя пользователя — имя пользователя для подключения к БД Microsoft SQL Server.
  • Пароль — пароль пользователя для подключения к БД Microsoft SQL Server.
  • Дополнительные настройки — в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create sqlserver <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --on-premise-connection-url <URL_для_подключения> \
  --on-premise-user-name <имя_пользователя> \
  --on-premise-password <пароль_пользователя> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --on-premise-connection-url — URL для подключения к БД Microsoft SQL Server в формате jdbc:sqlserver://<адрес_хоста>:<порт>;databaseName=<имя_БД>.
  • --on-premise-user-name — имя пользователя для подключения к БД Microsoft SQL Server.
  • --on-premise-password — пароль пользователя для подключения к БД Microsoft SQL Server.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  sqlserver = {
    on_premise = {
      connection_url = "<URL_для_подключения>"
      user_name      = "<имя_пользователя>"
      password       = "<пароль_пользователя>"
    }
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД Microsoft SQL Server в формате jdbc:sqlserver://<адрес_хоста>:<порт>;databaseName=<имя_БД>.
    • user_name — имя пользователя для подключения к БД Microsoft SQL Server.
    • password — пароль пользователя для подключения к БД Microsoft SQL Server.
  • additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "sqlserver": {
                    "connection": {
                      "onPremise": {
                        "connectionUrl": "<URL_для_подключения>",
                        "userName": "<имя_пользователя>",
                        "password": "<пароль_пользователя>"
                      }
                    },
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где:

  • onPremise — настройки для подключения к пользовательской инсталляции:

    • connectionUrl — URL для подключения к БД Microsoft SQL Server в формате jdbc:sqlserver://<адрес_хоста>:<порт>;databaseName=<имя_БД>.
    • userName — имя пользователя для подключения к БД Microsoft SQL Server.
    • password — пароль пользователя для подключения к БД Microsoft SQL Server.
  • additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "sqlserver": {
                "connection": {
                  "on_premise": {
                    "connection_url": "<URL_для_подключения>",
                    "user_name": "<имя_пользователя>",
                    "password": "<пароль_пользователя>"
                  }
                },
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где:

  • on_premise — настройки для подключения к пользовательской инсталляции:

    • connection_url — URL для подключения к БД Microsoft SQL Server в формате jdbc:sqlserver://<адрес_хоста>:<порт>;databaseName=<имя_БД>.
    • user_name — имя пользователя для подключения к БД Microsoft SQL Server.
    • password — пароль пользователя для подключения к БД Microsoft SQL Server.
  • additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор TPC-DSКоннектор TPC-DS

Коннектор TPC-DS не требует обязательных настроек. Опционально можно задать дополнительные настройки.

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

Вы можете задать дополнительные настройки в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create tpcds <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  tpcds = {
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "tpcds": {
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "tpcds": {
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Коннектор TPC-HКоннектор TPC-H

Коннектор TPC-H не требует обязательных настроек. Опционально можно задать дополнительные настройки.

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

Вы можете задать дополнительные настройки в формате ключ: значение. Список доступных настроек см. в официальной документации.

Пример команды:

yc managed-trino catalog create tpch <имя_каталога_Trino> \
  --cluster-id <идентификатор_кластера> \
  --additional-properties <список_дополнительных_настроек>

Где:

  • --cluster-id — идентификатор кластера, в котором создается каталог Trino. Идентификатор кластера можно запросить со списком кластеров.
  • --additional-properties — дополнительные настройки в формате ключ=значение. Список доступных настроек см. в официальной документации.

Пример конфигурации:

resource "yandex_trino_catalog" "<имя_каталога_Trino>" {
  ...
  tpch = {
    additional_properties = {
      <список_дополнительных_настроек>
    }
  }
}

Где additional_properties — список дополнительных настроек в формате "ключ" = "значение". Список доступных настроек см. в официальной документации.

Пример команды:

curl \
    --request POST \
    --header "Authorization: Bearer $IAM_TOKEN" \
    --header "Content-Type: application/json" \
    --url 'https://trino.api.cloud.yandex.net/managed-trino/v1/clusters/<идентификатор_кластера>/catalogs' \
    --data '{
              "catalog": {
                "name": "<имя_каталога_Trino>",
                "connector": {
                  "tpch": {
                    "additionalProperties": {
                      <список_дополнительных_настроек>
                    }
                  }
                }
              }
            }'

Где additionalProperties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

Пример команды:

grpcurl \
    -format json \
    -import-path ~/cloudapi/ \
    -import-path ~/cloudapi/third_party/googleapis/ \
    -proto ~/cloudapi/yandex/cloud/trino/v1/catalog_service.proto \
    -rpc-header "Authorization: Bearer $IAM_TOKEN" \
    -d '{
          "cluster_id": "<идентификатор_кластера>",
          "catalog": {
            "name": "<имя_каталога_Trino>",
            "connector": {
              "tpch": {
                "additional_properties": {
                  <список_дополнительных_настроек>
                }
              }
            }
          }
        }' \
    trino.api.cloud.yandex.net:443 \
    yandex.cloud.trino.v1.CatalogService.Create

Где additional_properties — список дополнительных настроек в формате "ключ": "значение". Список доступных настроек см. в официальной документации.

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

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

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

Предыдущая
Получение информации об имеющихся каталогах
Следующая
Изменение каталога
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»