Привет. Интересует что такое B-TREE, HASH индексы? Как они влияют на ускорение выборки? Каков их синтаксис?
Ответ
B-tree он же balanced tree индекс, это индекс сгруппированный по листьям сбалансированного дерева. Применяется для больших индексов, по сути это индекс индексов. Ну скажем индексы с величиной от 1 до 10 хранятся в одной ветке, от 11 до 20 в другой и т.д., когда приходит запрос на индекс с номером 35, идем к 3-й ветке и находим там 5-й элемент. В общем как то так. Подробнее здесь
Hash индекс применяется для сравнения/построения индексов строчных и/или двоичных данных. Каждому значению индексируемого выражения сопоставляется значение определенной хэш функции отображающей исходное значение на целое число (иногда на строку). Подробнее здесь
B-Tree индекс дает скорость выборки порядка log(N), hash дает линейную. В реальной жизни hash и B-Tree применяются совместно, то есть для вычисления значений B-Tree индекса все равно применяются хэши.
Комментариев нет:
Отправить комментарий