Индекс Mysql использует B-дерево или B дерево

#mysql

#mysql

Вопрос:

Мне много раз говорили, что mysql использует B tree в качестве структуры данных индекса, и в этом вопросе также указана история индекса в B tree. Но я нахожу что-то другое в официальном документе Mysql, в индексах mysql говорится Most MySQL indexes (PRIMARY KEY, UNIQUE, INDEX, and FULLTEXT) are stored in B-trees

итак, мне интересно, какой из них правильный, B-Tree или B tree?

Комментарии:

1. Вы не верите официальному руководству пользователя?

2. @Akina Я верю чиновнику, но так много людей сказали мне, что индекс Mysql использует B дерево, в Китае у нас есть пословица 三人成虎 : ложь, если повторять ее достаточно часто, будет принята за правду. итак, я публикую этот вопрос

3. Нет слов .. попросите кого-нибудь из этих «многих людей» доказать, что индекс MySQL на самом деле B , а не B..

4. @Akina any Мне любопытно, почему так много людей ошибаются, и как они приходят к выводу, что индекс в mysql — это B tree

5. Людям нравится повторять за кем-то, не задумываясь — это легко.

Ответ №1:

https://dev.mysql.com/doc/internals/en/innodb-fil-header.html

Вы можете посмотреть это предложение в документации:

Это сложность, которую вы не найдете в классическом B-дереве, поэтому InnoDB, возможно, следует называть B -деревом