TimGallin Ответов: 1

Как расщепляется листовой узел в innodb?


Если записи вставляются в порядке возрастания(обычно первичный ключ автоматически увеличивается),то каждое разделение приведет к тому, что старый лист будет заполнен наполовину.Поскольку записи вставляются в порядке возрастания,то более поздние записи будут вставляться в новый листовой узел до следующего разделения.Старый листовой узел будет поддерживать наполовину полное состояние.
На самом деле логический узел равен физической странице в innodb.Так что же, если наполовину заполненная страница приведет к пустой трате места для хранения?

Что я уже пробовал:

читать справку:
b+раскол дерева:Wiki B+ дерево
innodb b+ древовидная индексная структура:B+древовидные индексные структуры в InnoDB - Jeremy Cole

1 Ответов

Рейтинг:
0

Mehdi Gholam

Как правило, узлы дерева B+в среднем заполнены примерно на 65-75%, и да, они не все заполнены, то есть по дизайну.

Что касается потраченного впустую пространства, то это действительно зависит от того, как страница записывается на диск, но потенциально есть некоторые "отходы".