![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Поддержка уникальности данных⇐ ПредыдущаяСтр 25 из 25
Несмотря на достоинства, индексы так же имеют и ряд недостатков. Первый из них – индексы занимают дополнительное место на диске и в оперативной памяти. Каждый раз когда вы создаете индекс, вы сохраняете ключи в порядке убывания или возрастания, которые могут иметь многоуровневую структуру. И чем больше/длиннее ключ, тем больше размер индекса. Второй недостаток – замедляются операции вставки, обновления и удаления записей. Однако алгоритмы построения индексов разработаны таким образом что бы иметь как можно меньший негативный эффект для указанных операций и даже позволяет выполнять их быстрее. В SQL Server индексы хранятся в виде B-деревьев (B-tree). “B” означает сбалансированное (не путать с бинарным). Рис 2 показывает индекс, созданный для поля CustomerID для таблицы Customers. Теперь если выполнить предыдущий запрос по поиску записи CustomerID = ‘ROMEY’, будут прочитаны только страницы 30, 22 и 10 в указанном порядке. Как указывалось ранее индексы в SQL Server представляют собой сбалансированные деревья. Это означает, что длины веток для всех ответвлений индекса, одинаковы. Если посмотреть на Рис. 2 сверху вниз, вам придется просканировать только три страницы что бы найти запись удовлетворяющую условию. Каждая ветка сбалансирована и внутренний механизм построения индексов держит это дерево сбалансированным при любых изменениях в таблице. Язык SQL: запрос удаления данных из таблицы. Основные параметры
|