Я пытаюсь выяснить, выяснить, как работает индекс БД и когда его следует использовать.Я прочитал несколько статей об этом, и одна важная, которую я нашел, находится в Как работает индексация базы данных? .
Как это работает : -
Advantage2: - После прочтения обсуждения по приведенной выше ссылке одна вещь, которую помогает индекс, заключается в том, что он уменьшает количество блоков данных для итерации, как описано в примере 1.
Advantage1: - Но снова мне пришёл в голову один вопрос, после введения индекса он также должен искать индекс из таблицы индексов (которую любое внутреннее хранилище данных создает), что должно быть временем.снова.Итак, после дальнейшего чтения я обнаружил, что индекс хранится эффективным способом, обычно с использованием структуры данных, такой как B-деревья, через которые можно быстро перейти к любому значению, а после перехода к узлу он даст нам точное место в памяти для записи данного значенияв состоянии where или join. Правильно? Таким образом, в основном index sro сохраняет значение записи, для которой мы создаем индекс, и место в памяти фактической записи.
Когда это следует использовать:- КАК мы знаем, если мы создадим индекс для какого-либо столбца и если мы вставим / обновим / удалим какое-либо значение для этого столбца, индекс должен быть обновлен для этого столбца в таблице индексов.Так что это займет немного больше времени и памяти во время операции CUD.Поэтому, когда это следует использовать. Представьте, что мы создаем клиента по одному на экране пользователя. Таким образом, общее количество клиентов на конец дня составляет 1 миллион.Теперь, если мы хотим найти клиента, для которого принадлежит индекс NewYork.here, это очень поможет.Согласитесь, это немного замедлит работу клиента вставки, это будет незначительно плохо, но производительность, которую мы получим при поиске для клиента из Нью-Йорка, будет исключительно хорошей.
Пожалуйста, исправьте меня, если вы согласны / не согласныс вышеуказанным нахождением?