Параметры категории кластера базы данных YMatrix

Документ описывает параметры системной конфигурации категории кластера базы данных YMatrix.

Примечание!
Для обеспечения стабильности и безопасности системы ручное изменение этих параметров должно выполняться с осторожностью.


Параметры конфигурации кластера

enable_drop_matrixdb_extension


Определяет, разрешено ли удаление расширения YMatrix.

Тип данных Значение по умолчанию Область настройки
boolean off master; session; reload

mx_create_table_default_segments


Задаёт сегмент, используемый при создании таблицы.

Тип данных Значение по умолчанию Область настройки
string segments; session; reload; superuser

mx_default_segment_set


Задаёт набор сегментов по умолчанию, используемый при создании таблицы. См. подробнее

Тип данных Значение по умолчанию Область настройки
string segments; session; reload; superuser

mx_ha_provider


Задаёт провайдер для функций высокой доступности YMatrix.

  • При развертывании через графический интерфейс YMatrix по умолчанию использует external; при развертывании через командную строку — fts.
Тип данных Значение по умолчанию Допустимые значения Область настройки
enum external fts / external segments; system; restart

mx_postmaster_pdeath_signal


Сигнал, отправляемый postmaster при завершении его родительского процесса.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 0 0 ~ 64 segments; system; restart


Параметры конфигурации зеркала

repl_catchup_within_range


Управляет обновлением активных резервных сегментов в репликации YMatrix основной-зеркальной.

  • Если количество файлов WAL, которые ещё не обработаны walsender, превышает это значение, YMatrix обновляет активный резервный сегмент.
  • Если количество файлов не превышает это значение, YMatrix блокирует обновление, чтобы дать walsender время на обработку файлов. Если все сегменты WAL обработаны, обновляется активный основной сегмент.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 1 0 ~ INT_MAX/1073741824 master; system; reload; superuser

wait_for_replication_threshold


При включённом зеркалировании сегментов задаёт максимальный объём данных Write-Ahead Logging (WAL) (в КБ), который может быть записан транзакцией Primary, прежде чем данные будут сброшены на Mirror для репликации.

  • По умолчанию YMatrix записывает записи на экземпляры зеркального сегмента либо при контрольной точке, либо при достижении этого порога.
  • Значение 0 отключает проверку по количеству записей. Записи записываются только после выполнения контрольной точки.
  • Установка этого значения в 0 может привести к проблемам с производительностью при высокой нагрузке, связанной с длительными транзакциями без контрольных точек.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 1024 0 ~ INT_MAX/1024 master; system; reload


Параметры конфигурации межузлового соединения

gp_interconnect_fc_method


Задаёт метод управления потоком для стандартного межузлового соединения UDPIFC YMatrix.

  • При управлении потоком на основе пропускной способности отправитель прекращает передачу, когда приёмник не имеет свободного буфера.
  • Управление потоком на основе потерь строится на управлении на основе пропускной способности и также регулирует скорость передачи на основе потерь пакетов.
Тип данных Значение по умолчанию Допустимые значения Область настройки
enum loss loss / capacity master; session; reload

gp_interconnect_proxy_addresses


Задаёт порты прокси, используемые YMatrix, если параметр сервера gp_interconnect_type установлен в proxy. В противном случае этот параметр игнорируется.

  • При установке gp_interconnect_type в proxy необходимо указать порт прокси для каждого Master, Standby и всех экземпляров Segments в формате: <db_id>:<cont_id>:<seg_address>:<port>[, ... ].
  • Для Master, Standby и Segments первые три поля — db_id, cont_id и seg_address — можно найти в каталогической таблице gp_segment_configuration. Четвёртое поле, port, — это TCP/IP-порт прокси для экземпляра Master или Segment YMatrix.
    • db_id соответствует столбцу dbid в каталогической таблице.
    • cont_id соответствует столбцу content.
    • seg_address — это IP-адрес или имя хоста из столбца address в каталогической таблице.
    • port — это TCP/IP-порт, назначенный прокси для экземпляра Segment.
  • Примечание: Если имя хоста Segment разрешается в другой IP-адрес во время выполнения, выполните mxstop -u, чтобы перезагрузить значения gp_interconnect_proxy_addresses.
  • Это значение должно быть указано как строка в одинарных кавычках. Используйте следующую команду gpconfig для установки gp_interconnect_proxy_addresses как заключённой в кавычки строки:
    gpconfig --skipvalidation -c gp_interconnect_proxy_addresses -v "'1:-1:192.168.180.50:35432,2:0:192.168.180.54:35000'"
Тип данных Значение по умолчанию Область настройки
string segments; system; reload

gp_interconnect_queue_depth


Задаёт глубину очереди данных межузлового соединения на стороне приёмника для стандартного UDPIFC (данные отбрасываются, если нет свободного буфера, что требует повторной передачи).

  • Увеличение этого значения сверх значения по умолчанию потребляет больше системной памяти, но может улучшить производительность.
  • Разумные значения находятся в диапазоне от 1 до 10.
  • Запросы с перекосом данных могут работать лучше при увеличенной глубине очереди.
  • Значительное увеличение этого значения значительно повышает общее потребление памяти.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 4 1 ~ 4096 master; session; reload

gp_interconnect_setup_timeout


Задаёт время (в секундах), в течение которого YMatrix ожидает завершения настройки межузлового соединения, прежде чем превысить таймаут.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 7200 0 ~ 7200 master; session; reload

gp_interconnect_snd_queue_depth


Задаёт глубину очереди данных на стороне отправителя для стандартного межузлового соединения UDPIFC.

  • Увеличение этого значения сверх значения по умолчанию потребляет больше системной памяти, но может улучшить производительность.
  • Разумные значения находятся в диапазоне от 1 до 4.
  • Увеличение этого значения может значительно повысить общее потребление памяти.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 2 1 ~ 4096 master; session; reload

gp_interconnect_transmit_timeout


Задаёт время (в секундах), в течение которого YMatrix ожидает сетевой передачи трафика межузлового соединения, прежде чем превысить таймаут.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 3600 1 ~ 7200 master; session; reload

gp_interconnect_type


Задаёт сетевой протокол, используемый для трафика межузлового соединения YMatrix.

  • udpifc указывает на UDP с управлением потоком и является единственным поддерживаемым значением.
  • Используйте gp_interconnect_fc_method для указания метода управления потоком межузлового соединения.
  • Использование tcp в качестве протокола межузлового соединения ограничивает YMatrix 1000 экземплярами Segments — менее 1000, если рабочие нагрузки включают сложные многопотоковые запросы.
Тип данных Значение по умолчанию Допустимые значения Область настройки
enum udpifc udpifc / tcp segments; system; restart

gp_max_packet_size


Задаёт размер блока сериализации кортежей для межузлового соединения YMatrix.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 8192 512 ~ 65507 master; system; restart

gp_segment_connect_timeout


Таймаут (в секундах) для попыток межузлового соединения YMatrix подключиться к экземпляру Segment по сети.

  • Управляет таймаутами сетевых соединений между Master и Primary, а также между Primary и Mirror во время репликации.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 180 0 ~ INT_MAX segments; system; reload

mx_interconnect_compress


Включает сжатие полезной нагрузки межузлового соединения.

Тип данных Значение по умолчанию Область настройки
boolean off master; session; reload

mx_generic_packet_rtt


Задаёт время прохождения сигнала туда и обратно (RTT) для базового уровня межузлового соединения.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 100 10 ~ 1000 master; session; reload


Параметры конфигурации аварийного переключения

gp_fts_probe_retries


Количество попыток агента репликации на каждом Segment повторить отправку запроса-зонда, если ответ не получен.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 30 0 ~ 100 master; system; restart

gp_fts_probe_interval


Интервал (в секундах) между сообщениями-зондами, отправляемыми агентом репликации на каждом Segment.

  • Каждый агент репликации отправляет сообщение-зонд своему postmaster не реже одного раза за указанный интервал.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 60 10 ~ 3600 master; system; restart

gp_fts_probe_timeout


Таймаут (в секундах) для запросов-зондов, отправляемых агентом репликации на каждом Segment.

Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 20 10 ~ 3600 master; system; restart


Параметры конфигурации диспетчеризации

gp_cached_segworkers_threshold


Количество бездействующих рабочих процессов Segment, сохраняемых в кэше после выполнения запроса. Все остальные уничтожаются.

  • Меньшие значения экономят системные ресурсы на хостах Segment. Более высокие значения могут улучшить производительность для опытных пользователей, выполняющих множество последовательных сложных запросов.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 5 1 ~ INT_MAX master; system; reload

gp_set_proc_affinity


При включении привязывает серверные процессы YMatrix (postmaster) к определённым CPU при запуске.

Тип данных Значение по умолчанию Область настройки
boolean off master; system; reload


Параметры управления распределёнными транзакциями

gp_max_local_distributed_cache


Максимальное количество записей журнала распределённых транзакций, кэшируемых в памяти процесса бэкенда на экземпляре Segment для оптимизации обработки видимости.

  • Записи журнала содержат информацию о состоянии строк, доступную SQL-запросам.
  • Эта информация определяет видимые строки для SQL-транзакций, выполняемых параллельно в среде MVCC.
  • Кэширование ускоряет обработку транзакций за счёт оптимизации проверок видимости строк.
  • Значение по умолчанию подходит для большинства сред обработки SQL.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int 1024 0 ~ INT_MAX segments; system; restart

track_commit_timestamp


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

Тип данных Значение по умолчанию Область настройки
boolean off segments; system; restart


Только для чтения параметры

data_directory


Каталог, используемый для хранения данных.

Тип данных Значение по умолчанию Область настройки
string ConfigDir read only

gp_command_count


Отображает количество команд, полученных мастер-сервером от клиентов.

  • Примечание: Одна SQL-команда может генерировать несколько внутренних команд, поэтому счётчик может увеличиваться несколько раз за один запрос. Этот счётчик общий для всех процессов Segment, обрабатывающих команду.
Тип данных Значение по умолчанию Область настройки
int 0 read only

gp_contentid


ID содержимого сервера.

Тип данных Значение по умолчанию Область настройки
int read only

gp_dbid


Локальный dbid для Segment.

Тип данных Значение по умолчанию Область настройки
int 1 read only

gp_role


Роль серверного процесса.

  • Устанавливается в dispatch на Master, execute на Segment.
Тип данных Значение по умолчанию Допустимые значения Область настройки
enum dispatch / execute / utility read only

gp_session_id


Идентификатор сессии, присвоенный системой клиентской сессии.

  • Счёт начинается с 1 при первом запуске экземпляра Master.
Тип данных Значение по умолчанию Допустимый диапазон Область настройки
int -1 integer > 1 read only

gp_server_version


Возвращает номер версии сервера в виде строки.

  • К числовому значению могут добавляться модификаторы версии, например, "5.0.0 beta".
Тип данных Область настройки
string (например, 5.0.0) read only

gp_server_version_num


Возвращает номер версии сервера в виде целого числа.

  • Это число всегда увеличивается с каждым релизом и поддерживает числовое сравнение.
  • Основные версии представлены напрямую; второстепенные и патч-версии дополняются нулями до двух цифр.
Тип данных Допустимый диапазон Область настройки
int Mmmpp, где M = основная, mm = второстепенная с дополнением нулей, pp = патч с дополнением нулей. Пример: 50000 read only