Конфигурация

pipelinedb.stream_insert_level

Определяет, когда операция INSERT клиента вернет результат. Возможные варианты:

  • async — результат возвращается как только вставки загружаются в память сервера.

  • sync_receive (по умолчанию) — результат возвращается как только рабочий процесс получает вставки.

  • sync_commit — результат возвращается только когда следующий комбинирующий процесс фиксирует все изменения, вызванные вставкой строк.

    Примечание

    sync_commit в основном используется для тестирования и не предназначен для производственных рабочих нагрузок из-за значительно увеличенной задержки записи.

pipelinedb.num_combiners

Устанавливает количество параллельных комбинирующих процессов непрерывного запроса для каждой базы данных. При указании большего значения будет использоваться несколько ядер и увеличится пропускная способность, пока не будет достигнут лимит ввода-вывода. По умолчанию — 1.

pipelinedb.commit_interval

Устанавливает количество миллисекунд, которое комбинирующие процессы будут комбинировать данные в памяти перед фиксацией результата. Более длительный интервал фиксации увеличит производительность за счет менее частых обновлений непрерывного представления, но большей вероятности потери данных. По умолчанию — 50ms.

pipelinedb.num_workers

Устанавливает количество параллельных рабочих процессов непрерывного запроса для каждой базы данных. Большее количество будет использовать несколько ядер и увеличивать пропускную способность, пока не будет достигнут лимит по процессору. По умолчанию — 1.

pipelinedb.num_queues

Устанавливает количество параллельных процессов очереди непрерывного запроса для каждой базы данных. Очереди используются, когда рабочие и комбинирующие процессы записывают результаты в потоки, и им требуется очередь IPC для предотвращения долгих ожиданий. По умолчанию — 1.

pipelinedb.num_reapers

Устанавливает количество параллельных процессов сборщика (reaper) для каждой базы данных. Процессы сборщика обрабатывают истечение времени жизни (TTL). По умолчанию — 1.

pipelinedb.ttl_expiration_batch_size

Устанавливает максимальное количество строк, которые сборщик удаляет из непрерывного представления за один раз. Это делается для минимизации длительных транзакций. Значение 0 означает, что в данной транзакции может быть удалено неограниченное количество строк. По умолчанию — 10000.

pipelinedb.ttl_expiration_threshold

Устанавливает процент TTL, который должен пройти с момента последнего удаления строк сборщиком из непрерывного представления перед повторной попыткой удаления из него. Более низкий процент приведет к быстрому истечению срока за счет более частых удалений транзакций в непрерывном представлении. По умолчанию — 5%.

pipelinedb.batch_mem

Устанавливает максимальный размер пакета событий, который должен накапливаться перед выполнением плана непрерывного запроса для них. Более высокое значение обычно приводит к менее частым непрерывным обновлениям представления, но отрицательно влияет на задержку и может привести к большей потере данных в случае сбоев процесса. Значение указывается в килобайтах. По умолчанию — 262144 (256 МБ).

pipelinedb.batch_size

Устанавливает максимальное количество накапливаемых событий перед выполнением плана непрерывного запроса по ним. Более высокое значение обычно приводит к менее частым обновлениям непрерывного представления, но негативно влияет на задержку и может вызвать больше потерь данных в случае сбоев процесса. По умолчанию — 10000.

pipelinedb.combiner_work_mem

Устанавливает максимальный объем памяти, используемый для комбинирования частичных результатов для непрерывных запросов. Этот объем памяти может быть использован внутренними операциями сортировки и хеш-таблицей каждого комбинирующего процесса до перехода к временным дисковым файлам. По умолчанию — 256mb.

pipelinedb.matrels_writable

Определяет, можно ли изменения вносить непосредственно в таблицы материализованного представления. По умолчанию — false.

pipelinedb.ipc_hwm

Устанавливает верхний водяной знак для IPC-сообщений между рабочим и объединяющим процессом. По умолчанию — 10.

pipelinedb.max_wait

Устанавливает время, в течение которого процесс непрерывного запроса будет ожидать накопления пакета. Более высокое значение обычно приводит к менее частым обновлениям непрерывного представления, но негативно влияет на задержку и может вызвать больше потерь данных в случае сбоев процесса. По умолчанию — 10ms.

pipelinedb.fillfactor

Устанавливает значение коэффициента заполнения по умолчанию для таблиц материализованного представления. По умолчанию — 50.

pipelinedb.sliding_window_step_factor

Устанавливает ширину ступеньки по умолчанию для запроса со скользящим окном в процентах относительно размера окна. Более высокое значение улучшит производительность, но за счет интервала обновления. По умолчанию — 5.

pipelinedb.continuous_queries_enabled

Включает непрерывные запросы при их создании. Если значение false — они создаются в деактивированном состоянии. По умолчанию — true.

pipelinedb.stream_targets

Список непрерывных представлений, разделенных запятыми, которые будут затронуты при вставке в поток. Это позволяет ограничить набор активных непрерывных представлений только теми, которые указаны в этом параметре. Подробнее в разделе stream_targets. По умолчанию — пустое значение, то есть без ограничений.

pipelinedb.queue_mem

Устанавливает максимальный объем памяти, который разрешено использовать каждому процессу очереди. Это мягкое ограничение — при его достижении процесс очереди попытается очистить свою очередь более агрессивно. Значение указано в килобайтах. По умолчанию — 262144 (256 МБ).

pipelinedb.log_partitions

Включает ведение журнала для разделов, автоматически созданных комбинирующим процессом. По умолчанию — false.