IT-словарь › Базы данных › Буфер изменений (change buffer)

Буфер изменений (change buffer)

Базы данных Svenska → Обновлено: 2026-10-18

Механизм InnoDB, откладывающий обновление вторичных индексов, страниц которых нет в памяти. Оптимизация, созданная для вращающихся дисков, и это заметно.

При записи строки нужно обновить каждый вторичный индекс, а записи попадают в случайные места индексов — на механическом диске одна вставка может обернуться десятком перемещений головки. Вместо того чтобы читать страницу только ради изменения, изменение сохраняется в отдельной древовидной структуре в системном табличном пространстве и сливается с настоящей страницей позже — когда её всё равно прочитают или когда подтянутся фоновые потоки. Условие: индекс не должен быть уникальным, так как проверка уникальности требует заглянуть в страницу. Два обстоятельства сделали приём менее привлекательным: на SSD случайные чтения почти ничего не стоят, а большой накопленный буфер замедляет перезапуск и делает восстановление после сбоя непредсказуемым. MySQL поэтому пометил параметр как уходящий.

← Назад к словарю