Лекция
Привет, Вы узнаете о том , что такое обратный индекс, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое обратный индекс, reverse index , настоятельно рекомендую прочитать все из категории Обработка естественного языка.
Системы управления базами данных предоставляют несколько типов индексов для повышения производительности и целостности данных в различных приложениях. Типы индексов включают b-деревья , растровые изображения и r-деревья .
В системах управления базами данных стратегия индексации обратного ключа меняет значение ключа на противоположное перед его вводом в индекс . Например, значение 245380 становится в индексе 835420. Изменение значения ключа на обратное особенно полезно для индексирования данных, таких как порядковые номера , где каждое новое значение ключа больше предыдущего значения, т. Е. Значения монотонно увеличиваются. Индексы с обратным ключом стали особенно важны в системах обработки больших объемов транзакций, поскольку они уменьшают конкуренцию за блоки индекса .
В индексах с обратным ключом используются структуры b-tree , но значения ключей предварительно обрабатываются перед их вставкой. Упрощая, b-деревья размещают аналогичные значения в одном индексном блоке, например, сохраняя 245380 в том же блоке, что и 245390. Об этом говорит сайт https://intellect.icu . Это делает их эффективными как для поиска определенного значения, так и для поиска значений в пределах диапазона. Однако, если приложение вставляет значения последовательно, каждая вставка должна иметь доступ к самому новому блоку в индексе, чтобы добавить новое значение. Если несколько пользователей пытаются вставить одновременно, все они должны писать в этот блок и должны встать в очередь, замедляя работу приложения. Это особенно проблема в кластеризованных базах данных , для которых может потребоваться копирование блока из памяти одного компьютера в память другого, чтобы следующий пользователь мог выполнить вставку.
При обращении ключа аналогичные новые значения распространяются по всему индексу вместо того, чтобы концентрировать их в каком-либо одном листовом блоке. Это означает, что 245380 появляется в том же блоке, что и 145380, а 245390 - в другом блоке, устраняя эту причину конфликта . (Поскольку 145380 было создано задолго до 245380, их вставки не мешают друг другу.)
Обратные индексы так же эффективны, как и необратные индексы для поиска определенных значений, хотя они бесполезны для запросов диапазона. Запросы диапазона не являются обычным явлением для искусственных значений, таких как порядковые номера. При поиске по индексу обработчик запросов просто переворачивает цель поиска, прежде чем искать ее.
Обычно приложения удаляют в среднем более старые данные перед удалением более новых данных. Таким образом, данные с более низкими порядковыми номерами обычно идут раньше данных с более высокими значениями. По прошествии времени в стандартных b-деревьях индексные блоки для более низких значений в конечном итоге содержат небольшое количество значений с соразмерным увеличением неиспользуемого пространства, называемого «гнилью». Rot не только тратит впустую пространство, но и снижает скорость запросов, потому что меньшая часть блоков испорченного индекса умещается в памяти в любой момент. В b-дереве, если 145380 удаляется, его индексное пространство остается пустым. В обратном индексе, если 145380 идет до прибытия 245380, 245380 может повторно использовать пространство 145380.
Исследование, описанное в статье про обратный индекс, подчеркивает ее значимость в современном мире. Надеюсь, что теперь ты понял что такое обратный индекс, reverse index и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Обработка естественного языка
Из статьи мы узнали кратко, но содержательно про обратный индекс
Комментарии
Оставить комментарий
Обработка естественного языка
Термины: Обработка естественного языка