Tarantool CE/EE Documentation portal logo
Помощь
Обновлена 15 сентября 2026 г. в 08:55

cfg_storage

memtx_memory

Начиная с версии 1.7.4.

Объем памяти, выделяемый Tarantool для хранения кортежей. При достижении лимита запросы INSERT или UPDATE начинают завершаться с ошибкой ER_MEMORY_ISSUE. Сервер не выходит за пределы memtx_memory при выделении памяти для кортежей, однако дополнительная память используется для хранения индексов и информации о соединениях.

Тип: float

Значение по умолчанию: 256 * 1024 * 1024 = 268435456 байт

Минимум: 33554432 байт (32 МБ)

Переменная окружения: TT_MEMTX_MEMORY

Динамический: да, но не может быть уменьшено

memtx_max_tuple_size

Начиная с версии 1.7.4.

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

Тип: integer

Значение по умолчанию: 1024 * 1024 = 1048576 байт

Переменная окружения: TT_MEMTX_MAX_TUPLE_SIZE

Динамический: да

memtx_min_tuple_size

Начиная с версии 1.7.4.

Размер наименьшей единицы выделения памяти. Значение можно уменьшить, если большинство кортежей очень маленькие.

Тип: integer

Значение по умолчанию: 16 байт

Возможные значения: от 8 до 1048280 включительно

Переменная окружения: TT_MEMTX_MIN_TUPLE_SIZE

Динамический: нет

memtx_allocator

Начиная с версии 2.10.0.

Задает аллокатор, управляющий памятью для кортежей memtx. Возможные значения:

  • system – память выделяется по мере необходимости с проверкой того, что квота не превышена. Аллокатор основан на функции malloc.
  • smallslab-аллокатор. Аллокатор повторно использует блок памяти для выделения объектов одного типа. Учтите, что этот аллокатор подвержен неустранимой фрагментации при определенных нагрузках, поэтому в таких случаях можно переключиться на system.

Тип: string

Значение по умолчанию: 'small'

Переменная окружения: TT_MEMTX_ALLOCATOR

Динамический: нет

memtx_sort_threads

Начиная с версии: 3.0.0.

Количество потоков из пула потоков, используемых для сортировки ключей вторичных индексов при загрузке базы данных memtx. Минимальное значение – 1, максимальное – 256. По умолчанию используются все доступные ядра.

Тип: integer

Значение по умолчанию: box.NULL

Переменная окружения: TT_MEMTX_SORT_THREADS

Динамический: нет

slab_alloc_factor

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

См. также: slab_alloc_granularity

Тип: float

Значение по умолчанию: 1.05

Возможные значения: от 1 до 2 включительно

Переменная окружения: TT_SLAB_ALLOC_FACTOR

Динамический: нет

slab_alloc_granularity

Начиная с версии 2.8.1.

Задает гранулярность (в байтах) выделения памяти в аллокаторе small. Значение memtx.slab_alloc_granularity должно соответствовать следующим условиям:

  • Значение является степенью двойки.
  • Значение больше или равно 4.

Ниже приведены несколько рекомендаций по настройке параметра memtx.slab_alloc_granularity:

  • Если кортежи в спейсе маленькие и имеют примерно одинаковый размер, задайте значение 4 байта для экономии памяти.
  • Если кортежи имеют разные размеры, увеличьте значение параметра, чтобы выделять кортежи из одного mempool (пула памяти).

См. также: slab_alloc_factor

Тип: number

Значение по умолчанию: 8 байт

Переменная окружения: TT_SLAB_ALLOC_GRANULARITY

Динамический: нет

vinyl_bloom_fpr

Начиная с версии 1.7.4.

Уровень ложных срабатываний фильтра Блума – допустимая вероятность того, что фильтр Блума выдаст неверный результат. Параметр vinyl_bloom_fpr является значением по умолчанию для одного из параметров в таблице Параметры space_object:create_index().

Тип: float

Значение по умолчанию: 0.05

Переменная окружения: TT_VINYL_BLOOM_FPR

Динамический: нет

vinyl_cache

Начиная с версии 1.7.4. Размер кэша для движка хранения vinyl. Размер кэша можно изменять динамически.

Тип: integer

Значение по умолчанию: 128 * 1024 * 1024 = 134217728 байт

Переменная окружения: TT_VINYL_CACHE

Динамический: да

vinyl_max_tuple_size

Начиная с версии 1.7.5.

Размер наибольшей единицы выделения памяти для движка хранения vinyl. Значение можно увеличить, если требуется хранить большие кортежи. См. также: memtx_max_tuple_size.

Тип: integer

Значение по умолчанию: 1024 * 1024 = 1048576 байт

Переменная окружения: TT_VINYL_MAX_TUPLE_SIZE

Динамический: нет

vinyl_memory

Начиная с версии 1.7.4.

Максимальный объем оперативной памяти в байтах, используемый vinyl.

Тип: integer

Значение по умолчанию: 128 * 1024 * 1024 = 134217728 байт

Переменная окружения: TT_VINYL_MEMORY

Динамический: да, но не может быть уменьшено

vinyl_page_size

Начиная с версии 1.7.4.

Размер страницы. Страница – это единица чтения/записи для дисковых операций vinyl. Параметр vinyl_page_size является значением по умолчанию для одного из параметров в таблице Параметры space_object:create_index().

Тип: integer

Значение по умолчанию: 8 * 1024 = 8192 байт

Переменная окружения: TT_VINYL_PAGE_SIZE

Динамический: нет

vinyl_range_size

Начиная с версии 1.7.4.

Максимальный размер диапазона по умолчанию для индекса vinyl, в байтах. Максимальный размер диапазона влияет на решение о разделении диапазона.

Если vinyl_range_size не равен nil и не равен 0, то это значение используется по умолчанию для параметра range_size в таблице Параметры space_object:create_index().

Если vinyl_range_size равен nil или 0, а range_size не указан при создании индекса, то Tarantool задает значение позже, исходя из соображений производительности. Чтобы увидеть фактическое значение, используйте index_object:stat().range_size.

В версиях Tarantool до 1.10.2 значением по умолчанию для vinyl_range_size было 1073741824.

Тип: integer

Значение по умолчанию: nil

Переменная окружения: TT_VINYL_RANGE_SIZE

Динамический: нет

vinyl_run_count_per_level

Начиная с версии 1.7.4.

Максимальное количество прогонов на уровень в LSM-дереве vinyl. При превышении этого числа создается новый уровень. Параметр vinyl_run_count_per_level является значением по умолчанию для одного из параметров в таблице Параметры space_object:create_index().

Тип: integer

Значение по умолчанию: 2

Переменная окружения: TT_VINYL_RUN_COUNT_PER_LEVEL

Динамический: нет

vinyl_run_size_ratio

Начиная с версии 1.7.4.

Соотношение размеров различных уровней в LSM-дереве. Параметр vinyl_run_size_ratio является значением по умолчанию для одного из параметров в таблице Параметры space_object:create_index().

Тип: float

Значение по умолчанию: 3.5

Переменная окружения: TT_VINYL_RUN_SIZE_RATIO

Динамический: нет

vinyl_read_threads

Начиная с версии 1.7.5.

Максимальное количество потоков чтения, которые vinyl может использовать для некоторых параллельных операций, таких как ввод-вывод и сжатие.

Тип: integer

Значение по умолчанию: 1

Переменная окружения: TT_VINYL_READ_THREADS

Динамический: нет

vinyl_write_threads

Начиная с версии 1.7.5.

Максимальное количество потоков записи, которые vinyl может использовать для некоторых параллельных операций, таких как ввод-вывод и сжатие.

Тип: integer

Значение по умолчанию: 4

Переменная окружения: TT_VINYL_WRITE_THREADS

Динамический: нет