T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

Heap, струпани индекс и не-клъстерирани индекси

Помислете за теорията на индекси.

• SQL Server съхранява данните на страниците на 8 килобайта - 8,060 байта

• страници, принадлежащи на обект (например таблица), свързан с двупосочен списъка

• Първите 8 страници на "обект" се съхраняват в районите със смесено население. Данните се съхраняват само в стандартни части.

• 8 страници са групирани в "раздели". Смесени зони съхраняват данни от различни "обекти". Unified зони съхраняват данни на "обект"

• SQL Server използва страницата по-нататък - "Индекс Разпределение Карта» (Индекс Разпределение Карта), или накратко - на IAM за дадена страница, принадлежащ на "обекта"

Heap - тези данни се съхраняват без особена вид, които нямат индекси, достъп и търсене на тези данни се извършва последователно, като сканирате страници и може да отнеме доста дълго време, накърняваща производителност.

Купчина за съхраняване на малки количества данни.

Има два вида индекси: скупчени и не-скупчени.

Клъстер магазини индекси в техните сайтове изброяват действителните редове от данни.

Не-клъстерирани индекс е опорната структура, която показва данни в Таблица

  • В SQL Server индекси са организирани като B-дървета. Всяка страница в балансиран индекс дърво се нарича индекс възел.

<>Най-B-дърво се нарича корен възел. Възлите на по-ниското ниво на индекса наречените ограничени. <>Всички нива на индекса между корен и крайни възли се наричат ​​междинни. <>Клъстерирани индекс листа възли съдържат страници с данни базовата таблица. <>От индекс корена и междинни възли са индекс линия. <>Всеки индекс ред съдържа ключ и указател към всяка страница на B-дърво средно ниво, или в редицата на данни в крайното ниво индекс. <>Страници на всяко ниво са свързани със схемата за двупосочен spisok.Na - струпани индекс прилича на B-дърво, където редове от таблицата на реални данни се съхраняват в сортиран ред в списъка с възли.

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

ТЕ Данните ще се съхраняват, както следва:

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

защото скупчени данните за индекса, съхранявани в списъка с възли, те ще бъдат на разположение, когато се установи определен възел списък, то ще се намали броят на входно-изходни операции и да се подобри производителността на системата.

Също така, при четене на данните идват сортирани по индекс. Например, ако знаем, че винаги ще се изисква за сортиране на данни в определен ред, използването на клъстери индекс означава, че няма да има нужда да сортирате данните си чрез вземане на проби.

Недостатъкът е, че достъпът до масата винаги ще чрез кода, който води до допълнително натоварване на SQL Server. Достъпът до данните, започва с коренът и преминава през индекса, докато се направи възел-списък, съдържащ необходимите данни. При големи обеми от данни, създадена от няколко листа възли, съответно, броят на нивата на индекса изисква да поддържа такъв голям брой листни възли - се увеличава, и увеличава броя на входно-изходни операции, за да премине от корен възел към списъка на възела.

защото струпани индексни магазини действителните данни, не можете да създадете повече от един клъстерирани индекс на масата.

Non-клъстерирани индекс съдържа действителната маса на данни в списъка с възли. Leaf възли съдържат един от два вида информация за местоположението на реда с данни.

Ако струпани се създава индекс в таблицата, които не са струпани индекси на масата, се съхраняват в техните сайтове списък идентификатори на редове (Row ID в първата схема). Точките за пореден идентификационен номер за недвижими ред на данните в таблицата, в действителност това е - стойност, която включва броя на файл с данни, номера на страницата и мястото на линията на страницата.

Ако струпани се създава индекс в таблицата, които не са струпани индекси съдържат списък възел струпани ключова стойност индекс за тези данни (втората схема). При достигане на лист-нон-клъстерирани индекс възел разположено там клъстерирани ключ стойност използва за търсене в клъстерирани индекс съответстващ списъка на възела, който съдържа желаната низ данни.

Възможност да създадете до 249 nonclustered индекси на маса.

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси


Т.е. за съхранение на данни е както следва:

T-SQL купчина, клъстерирани индекс и не-клъстерирани индекси

В същото време - всичко на добър час!

Прочетете за индексите, все още можете да си тук: