powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Как происходит операция Index Seek на самом нижнем уровне?
25 сообщений из 95, страница 1 из 4
Как происходит операция Index Seek на самом нижнем уровне?
    #37398667
Index Seek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Допустим есть таблица без PK и по одному из её полей построен индекс. Как происходит операция Index Seek на самом нижнем уровне?
Проходим по узлам дерева до листьев, а там лежит служебное rowid и номер страницы в которой искомая запись, и по этому номеру страницы вычисляем смещение с которого нужно прочитать данные из файла БД?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37398668
Index Seek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну и интересует как это реализовано в различных СУБД и есть ли принципиальные отличия?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37398789
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37398913
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 17.08.2011 2:18, Index Seek wrote:

> Ну и интересует как это реализовано в различных СУБД и есть ли принципиальные
> отличия?

В разных СУБД по-разному.
Есть принципиальные отличия.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37399614
Index Seek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklin, спасибо!

MasterZiv
Ок. А какие основные отличия?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37400982
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Index Seekи по этому номеру страницы вычисляем смещение с которого нужно прочитать данные из файла БД?
смещение, конечно, да, но обычно имеется в виду размер_страницы * номер_страницы . И читаются обычно страницы целиком.
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37403183
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 17.08.2011 15:34, Index Seek wrote:

> MasterZiv
> Ок. А какие основные отличия?

В общем-то кратко -- два подхода:
хранить в листах индекса ROWID -- некий физический адрес, по которому можно
найти запись (типа НОМЕР_ФАЙЛА:НОМЕР_СТРАНИЦЫ::НОМЕР_ЗАПИСИ). В таком случае
после поиска индексной записи в индексе производится чтение записи по
физическому адресу.

хранить в листах индекса значения полей уникального кластерного индекса --
первичного ключа таблицы. В таком случае после поиска индексной записи значения
PK используются для повторного поиска нужной индексной записи в первичном ключе
таблицы, в листах которого находится уже физически запись со всей строкой.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37403779
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivВ общем-то кратко -- два подхода:Как я понял, человек спрвшивает про варианты реализации в первом случае.
Index Seekа там лежит служебное rowid и номер страницы в которой искомая запись, и по этому номеру страницы вычисляем смещение с которого нужно прочитать данные из файла БД?В MSSQL rowid и означает номер страницы. В других СУБД - не знаю...
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37403812
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexeyvgВ MSSQL rowid и означает номер страницы.
О как... Одна запись на страницу? Шикарно живёте...
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37403882
Зайцев Фёдор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovО как... Одна запись на страницу? Шикарно живёте...

http://msdn.microsoft.com/ru-ru/library/ms190969%28v=SQL.100%29
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404003
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 19.08.2011 17:15, alexeyvg wrote:

> В MSSQL rowid и означает номер страницы. В других СУБД - не знаю...

В MSSQL rowid и означает номер страницы и номер записи на этой странице.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404011
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovalexeyvgВ MSSQL rowid и означает номер страницы.
О как... Одна запись на страницу? Шикарно живёте...

это он пошутил так


Указатель строится на основе идентификатора файла (ID), номера страницы и номера строки на странице. Весь указатель целиком называется идентификатором строки (RID).
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404089
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv хранить в листах индекса значения полей уникального кластерного индекса -- первичного ключа таблицы. В таком случае после поиска индексной записи значения PK используются для повторного поиска нужной индексной записи в первичном ключе

Ну, "уникальный кластерный индекс" - вещь сама по себе весьма небесспорная, но просто интересно - где на практике применяется описанный угробищный подход?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404111
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerпросто интересно - где на практике применяется описанный угробищный подход?

Paradox.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404115
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovsoftwarerпросто интересно - где на практике применяется описанный угробищный подход?

Paradox.

(побрызгал святой водой)
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404126
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerпросто интересно - где на практике применяется описанный угробищный подход?
Если убрать слово "кластерный", то это Мускль+ИнноДБ.
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404131
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglirsoftwarerпросто интересно - где на практике применяется описанный угробищный подход?
Если убрать слово "кластерный", то это Мускль+ИнноДБ.И, кстати, IOT-ы в Оракле разве не также сделаны?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404139
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksofttanglirпропущено...
Если убрать слово "кластерный", то это Мускль+ИнноДБ.И, кстати, IOT-ы в Оракле разве не также сделаны?
А хз, если честно. Я не зря сказал "на практике", потому как мелькнула та же мысль :) IOT-ы в оракле используются не то чтобы часто, и совершенно точно с однозначной рекомендацией "без левых индексов".
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404145
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftИ, кстати, IOT-ы в Оракле разве не также сделаны?
Посмотрел, как. Да нет, таки заметно получше :)
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404146
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarermiksoftИ, кстати, IOT-ы в Оракле разве не также сделаны?
Посмотрел, как. Да нет, таки заметно получше :)Можно в двух словах разницу?
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404149
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftМожно в двух словах разницу?
Если над IOT строится вторичный индекс, то его значением является UROWID, включающее в себя как физический адрес блока, так и представление первичного ключа. При доступе по вторичному индексу СУБД берёт адрес, дёргает блок, и если не находит в нём нужной записи, то использует представление для поиска по базовому индексу. Таким образом до тех пор, пока строчки в IOT не начинают часто мигрировать, доступ к ним оказывается вполне эффективным.
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404153
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerUROWID, включающее в себя как физический адрес блока , так и представление первичного ключа.Про этот момент забыл. Тогда согласен, что в Оракле оно получше сделано :)
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404241
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 08/19/2011 08:34 PM, softwarer wrote:

> Ну, "уникальный кластерный индекс" - вещь сама по себе весьма небесспорная, но
> просто интересно - где на практике применяется описанный угробищный подход?

Про небесспорность абсолютно согласен, потребители такого подхода (что я знаю)
-- MSSQLServer, InnoDB.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404242
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 08/19/2011 09:08 PM, tanglir wrote:

> Если убрать слово "кластерный", то это Мускль+ИнноДБ.

Зачем убирать ? В InnoDB вообще-то других индексов, кроме кластерных,
вообще не существует. Там всё в одном здоровом индексном дереве.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Как происходит операция Index Seek на самом нижнем уровне?
    #37404266
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
On 08/19/2011 09:32 PM, softwarer wrote:

> базовому индексу. Таким образом до тех пор, пока строчки в IOT не начинают часто
> мигрировать, доступ к ним оказывается вполне эффективным.

Как IOT расшифровывается?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
25 сообщений из 95, страница 1 из 4
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Как происходит операция Index Seek на самом нижнем уровне?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]