Изменение настроек PXF
Настройки PXF, которые можно задать средствами Yandex Cloud, совпадают с настройками в конфигурационном файле Greenplum® pxf-application.properties
Чтобы изменить настройки PXF:
-
Перейдите на страницу каталога
и выберите сервис Managed Service for Greenplum. -
Нажмите на имя нужного кластера и выберите на панели слева
PXF. -
Нажмите кнопку
Изменить настройки PXF в верхней части страницы. -
Измените настройки:
-
Connection Timeout — таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на чтение. Диапазон значений: от
5
до600
секунд. Значение можно указать в разных единицах времени. -
Upload Timeout — таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на запись. Диапазон значений: от
5
до600
секунд. Значение можно указать в разных единицах времени. -
Max Threads — максимальное количество потоков Apache Tomcat®. Диапазон значений: от
1
до1024
.Чтобы предотвратить ситуации, когда запросы зависают или не выполняются из-за перерасхода памяти или некорректной работы сборщика мусора Java, задайте количество потоков Apache Tomcat®. О регулировке числа потоков читайте в документации VMware Greenplum® Platform Extension Framework
. -
Pool Allow Core Thread Timeout — разрешен ли таймаут для стриминговых потоков ядра приложения (core streaming threads).
-
Pool Core Size — количество стриминговых потоков ядра в пуле. Диапазон значений: от
1
до1024
. -
Pool Queue Capacity — максимальное количество запросов, которое можно добавить в очередь в пул за стриминговыми потоками ядра. Диапазон значений: от нуля и выше. При значении
0
очередь в пул не образуется. -
Pool Max Size — максимально допустимое количество стриминговых потоков ядра. Диапазон значений: от
1
до1024
. -
Xmx — изначальный размер JVM-кучи для демона PXF. Диапазон значений: от
64
до16384
МБ. Значение можно указать в разных единицах измерения. -
Xms — максимальный размер JVM-кучи для демона PXF. Диапазон значений: от
64
до16384
МБ. Значение можно указать в разных единицах измерения.
-
-
Нажмите кнопку Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
Чтобы изменить настройки PXF:
-
Посмотрите описание команды CLI для изменения конфигурации кластера:
yc managed-greenplum cluster update --help
-
Задайте настройки PXF:
yc managed-greenplum cluster update <имя_или_идентификатор_кластера> \ --pxf-connection-timeout=<таймаут_для_запросов_на_чтение> \ --pxf-upload-timeout=<таймаут_для_запросов_на_запись> \ --pxf-max-threads=<максимальное_число_потоков_Apache_Tomcat®> \ --pxf-pool-allow-core-thread-timeout=<разрешен_ли_таймаут_для_стриминговых_потоков> \ --pxf-poll-core-size=<количество_стриминговых_потоков> \ --pxf-pool-queue-capacity=<емкость_очереди_в_пул_за_стриминговыми_потоками> \ --pxf-pool-max-size=<максимальное_число_стриминговых_потоков> \ --pxf-xmx=<изначальный_размер_JVM-кучи> \ --pxf-xms=<максимальный_размер_JVM-кучи>
Где:
-
pxf-connection-timeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на чтение (в секундах). Диапазон значений: от5
до600
. -
pxf-upload-timeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на запись (в секундах). Диапазон значений: от5
до600
. -
pxf-max-threads
— максимальное количество потоков Apache Tomcat®. Диапазон значений: от1
до1024
.Чтобы предотвратить ситуации, когда запросы зависают или не выполняются из-за перерасхода памяти или некорректной работы сборщика мусора Java, задайте количество потоков Apache Tomcat®. О регулировке числа потоков читайте в документации VMware Greenplum® Platform Extension Framework
. -
pxf-pool-allow-core-thread-timeout
— разрешен ли таймаут для стриминговых потоков ядра приложения (core streaming threads). Значение по умолчанию:false
. -
pxf-poll-core-size
— количество стриминговых потоков ядра в пуле. Диапазон значений: от1
до1024
. -
pxf-pool-queue-capacity
— максимальное количество запросов, которое можно добавить в очередь в пул за стриминговыми потоками ядра. Диапазон значений: от нуля и выше. При значении0
очередь в пул не образуется. -
pxf-pool-max-size
— максимально допустимое количество стриминговых потоков ядра. Диапазон значений: от1
до1024
. -
pxf-xmx
— изначальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
. -
pxf-xms
— максимальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
.
Имя кластера можно получить со списком кластеров в каталоге.
-
Чтобы изменить настройки PXF:
-
Откройте актуальный конфигурационный файл Terraform с планом инфраструктуры.
О том, как создать такой файл, см. в разделе Создание кластера Greenplum®.
Полный список доступных для изменения полей конфигурации кластера Managed Service for Greenplum® см. в документации провайдера Terraform
. -
В описании кластера, в блоке
pxf_config
, задайте настройки PXF:resource "yandex_mdb_greenplum_cluster" "<имя_кластера>" { ... pxf_config { connection_timeout = <таймаут_для_запросов_на_чтение> upload_timeout = <таймаут_для_запросов_на_запись> max_threads = <максимальное_число_потоков_Apache_Tomcat®> pool_allow_core_thread_timeout = <разрешен_ли_таймаут_для_стриминговых_потоков> pool_core_size = <количество_стриминговых_потоков> pool_queue_capacity = <емкость_очереди_в_пул_за_стриминговыми_потоками> pool_max_size = <максимальное_число_стриминговых_потоков> xmx = <изначальный_размер_JVM-кучи> xms = <максимальный_размер_JVM-кучи> } }
Где:
-
connection_timeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на чтение (в секундах). Диапазон значений: от5
до600
. -
upload_timeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на запись (в секундах). Диапазон значений: от5
до600
. -
max_threads
— максимальное количество потоков Apache Tomcat®. Диапазон значений: от1
до1024
.Чтобы предотвратить ситуации, когда запросы зависают или не выполняются из-за перерасхода памяти или некорректной работы сборщика мусора Java, задайте количество потоков Apache Tomcat®. О регулировке числа потоков читайте в документации VMware Greenplum® Platform Extension Framework
. -
pool_allow_core_thread_timeout
— разрешен ли таймаут для стриминговых потоков ядра приложения (core streaming threads). Значение по умолчанию:false
. -
pool_core_size
— количество стриминговых потоков ядра в пуле. Диапазон значений: от1
до1024
. -
pool_queue_capacity
— максимальное количество запросов, которое можно добавить в очередь в пул за стриминговыми потоками ядра. Диапазон значений: от нуля и выше. При значении0
очередь в пул не образуется. -
pool_max_size
— максимально допустимое количество стриминговых потоков ядра. Диапазон значений: от1
до1024
. -
xmx
— изначальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
. -
xms
— максимальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
.
-
-
Проверьте корректность настроек.
-
В командной строке перейдите в каталог, в котором расположены актуальные конфигурационные файлы Terraform с планом инфраструктуры.
-
Выполните команду:
terraform validate
Если в файлах конфигурации есть ошибки, Terraform на них укажет.
-
-
Подтвердите изменение ресурсов.
-
Выполните команду для просмотра планируемых изменений:
terraform plan
Если конфигурации ресурсов описаны верно, в терминале отобразится список изменяемых ресурсов и их параметров. Это проверочный этап: ресурсы не будут изменены.
-
Если вас устраивают планируемые изменения, внесите их:
-
Выполните команду:
terraform apply
-
Подтвердите изменение ресурсов.
-
Дождитесь завершения операции.
-
-
Чтобы изменить настройки PXF, воспользуйтесь методом REST API update для ресурса Cluster или вызовом gRPC API ClusterService/Update и передайте в запросе:
-
Идентификатор кластера в параметре
clusterId
. Чтобы узнать идентификатор, получите список кластеров в каталоге. -
Список изменяемых настроек PXF в параметре
configSpec.pxfConfig
:-
connectionTimeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на чтение (в секундах). Диапазон значений: от5
до600
. -
uploadTimeout
— таймаут подключения к серверу Apache Tomcat® во время выполнения запросов на запись (в секундах). Диапазон значений: от5
до600
. -
maxThreads
— максимальное количество потоков Apache Tomcat®. Диапазон значений: от1
до1024
.Чтобы предотвратить ситуации, когда запросы зависают или не выполняются из-за перерасхода памяти или некорректной работы сборщика мусора Java, задайте количество потоков Apache Tomcat®. О регулировке числа потоков читайте в документации VMware Greenplum® Platform Extension Framework
. -
poolAllowCoreThreadTimeout
— разрешен ли таймаут для стриминговых потоков ядра приложения (core streaming threads). Значение по умолчанию:false
. -
poolCoreSize
— количество стриминговых потоков ядра в пуле. Диапазон значений: от1
до1024
. -
poolQueueCapacity
— максимальное количество запросов, которое можно добавить в очередь в пул за стриминговыми потоками ядра. Диапазон значений: от нуля и выше. При значении0
очередь в пул не образуется. -
poolMaxSize
— максимально допустимое количество стриминговых потоков ядра. Диапазон значений: от1
до1024
. -
xmx
— изначальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
. -
xms
— максимальный размер JVM-кучи для демона PXF (в мегабайтах). Диапазон значений: от64
до16384
.
-
-
Список изменяемых полей конфигурации кластера в параметре
updateMask
.
Важно
Метод API переопределит все параметры изменяемого объекта, которые не были явно переданы в запросе, на значения по умолчанию. Чтобы избежать этого, перечислите настройки, которые вы хотите изменить, в параметре updateMask
(одной строкой через запятую).
Greenplum® и Greenplum Database® являются зарегистрированными товарными знаками или товарными знаками VMware, Inc в США и/или других странах.