Когда я создаю индекс для таблицы в mysql, я вижу, что index_type имеет тип BTREE
. Теперь, хотя я понимаю о btree (s), я не понимаю, как он хранит индекс и как база данных ищет записи на основе этого.как индексирование B-дерева работает в mysql
Я имею в виду, ВТКЕЙ отлично подходит для баз данных, чтобы выполнять операции чтения и запись больших блоков данных, при создании индекса для типа столбца Primary key
, что я понимаю, оно создает дерево и расщепляющие значения для корня основанный на типе значения корня.
Теперь он хранит только первичный ключ ID
под деревьями или все данные, связанные с этим первичным ключом?
После нахождения нужного первичного идентификатора, как база данных извлекает запись?
Спасибо за объяснение. В моей базе данных у меня есть несколько таблиц с MyISAM, а некоторые - как InnoDB с индексами на них. Будет ли это в любом случае влиять на соединения и запросы, которые я пишу, - это разные типы? – JPro
@JPro: база данных обрабатывает основные данные индексации автоматически. Синтаксис 'JOIN' одинаковый для таблиц' MyISAM' и 'InnoDB'. – Quassnoi
Я имею в виду, имеет ли значение вообще создавать все таблицы с одинаковым механизмом хранения или нет? – JPro