Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Реализация индексов (в том числе составных) в MySQL
 
 автор: Igorek   (19.11.2012 в 13:34)   письмо автору
 
 

Насколько я знаю, почти все индексы в MySQL реализованы в виде B-деревьев. Хотелось бы узнать как строится это B-дерево в контексте индексов MySQL (и особенно составных), чтобы лучше понимать логику поиска по индексу.
Не могу найти подходящую литературу по этому вопросу. Может кто поделится ссылкой?

  Ответить  
 
 автор: cheops   (19.11.2012 в 21:45)   письмо автору
 
   для: Igorek   (19.11.2012 в 13:34)
 

Хм... можно от сюда начать http://ru.wikipedia.org/wiki/B-%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE

  Ответить  
 
 автор: Igorek   (22.11.2012 в 13:48)   письмо автору
 
   для: cheops   (19.11.2012 в 21:45)
 

эхх... пытаюсь разобраться, возникли следующие вопросы:
1. Видов B-деревьев несколько - какой использует MySQL? Каков порядок этого дерева? Как он выбирается?
2. Если для простого индекса (не составного) я могу представить как он выглядит, согласно правилам построения B-дерева, а вот для составного индекс вообще беда - как эта магия работает?!
3. Я правильно понимаю, что сам индекс при работе мускла закеширован в оперативную память и, если мы делаем выборку по полю, для которого создан индекс, то сначала в индексе находятся ID-шники удовлетворяющие поиску, а потом уже идет обращение к файлу данных для выборки собственно данных по найденным ID-шникам?
4. Вопрос видимо связан со вторым - почему для составного ключа поиск возможен только по левому префиксу? т.е. если есть индекс (key1, key2, key3), то индекс будет использован для поисков вида key1=33 AND key3=23, но не для key2 = 3 AND key3=23.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования