Учебно-практическое пособие москва 2017 ббк


Просмотр исключительно на основе индекса



Pdf көрінісі
бет216/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   212   213   214   215   216   217   218   219   ...   243
Байланысты:
Язык SQL. Базовый курс

Просмотр исключительно на основе индекса
(index only scan), как следует из на-
звания метода, не должен, казалось бы, требовать обращения к строкам таблицы, по-
скольку все данные, которые нужно получить с помощью запроса, в этом случае при-
сутствуют в индексе. Однако в индексе нет информации о
видимости
строк транзак-
циям — нельзя быть уверенным, что данные, полученные из индекса, видны текущей
транзакции. Поэтому сначала выполняется обращение к карте видимости (visibility
228


map), которая существует для каждой таблицы. В ней одним битом отмечены стра-
ницы, на которых содержатся только те версии строк, которые видны всем без ис-
ключения транзакциям. Если полученная из индекса версия строки находится на та-
кой странице, значит, эта строка видна текущей транзакции и обращаться к самой
таблице не требуется. Поскольку размер карты видимости очень мал, то в результа-
те сокращается объем операций ввода/вывода. Если же строка находится на страни-
це, не отмеченной в карте видимости, тогда происходит обращение и к таблице; в
результате никакого выигрыша по быстродействию в сравнении с обычным индекс-
ным поиском не достигается. Просмотр исключительно на основе индекса особенно
эффективен, когда выбираемые данные изменяются редко. Он может применяться,
когда в предложении SELECT указаны только имена столбцов, по которым создан ин-
декс.
Просмотр на основе битовой карты
(bitmap scan) является модификацией про-
смотра на основе индекса. Данный метод позволяет оптимизировать индексный по-
иск за счет того, что сначала производится поиск в индексе для всех искомых строк и
формирование так называемой битовой карты, в которой указывается, в каких стра-
ницах таблицы эти строки содержатся. После того как битовая карта сформирована,
выполняется извлечение строк из страниц таблицы, но при этом обращение к каждой
странице производится
только один
раз.
Другим важным понятием является


Достарыңызбен бөлісу:
1   ...   212   213   214   215   216   217   218   219   ...   243




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет