Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
26.05.2019, 21:14
|
|||
---|---|---|---|
Как хранится индекс |
|||
#18+
Здравствуйте. Как всегда туплю. Собственно вопрос. А как хранятся ключи и значения на страницах в базе? Физически Еще с ключами соображу. А вот со значениями (rdb$db_key) не допереть) вернее есть соображения... Собственно при создании индекса могут быть два варианта. Либо все ключи уникальные. Тогда каждому ключу будет соответствовать один rdb$db_key. Но может быть и для одного ключа допустим 1000, 10000 rdb$db_key. Как они в этих случаях будут храниться на странице? И по пути такой вопрос. А в не листовых страницах индекса в FB хранятся значения? Или же только в листовых узлах? Вроде как в постгре значения (номера строк) хранятся только в листовых узлах, те на последнем уровне дерева. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.05.2019, 01:05
|
|||
---|---|---|---|
Как хранится индекс |
|||
#18+
Очень упрощённо: на индексной странице хранятся пары {ключ, значение}. Ключ хранится как - набор флагов, описывающих что именно идёт дальше, - длина префикса - сколько первых байт этого ключа совпадает с началом предыдущего ключа - длина остальных данных ключа - байты с данными ключа Для ключей-дубликатов получим: длина данных == 0, сами данные не хранятся Значение есть либо указатель на страницу вниз (для не листовых страниц индекса), либо физ номер записи в таблице (для листьев) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
27.05.2019, 01:09
|
|||
---|---|---|---|
Как хранится индекс |
|||
#18+
hvladЗначение есть либо указатель на страницу вниз (для не листовых страниц индекса), либо физ номер записи в таблице (для листьев)Начиная с ODS 11 стало чуть иначе: Значение есть физ номер записи в таблице (для всех уровней дерева) и указатель на страницу вниз (для не листовых страниц индекса). ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=40&mobile=1&tid=1560701]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
136ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
others: | 293ms |
total: | 511ms |
0 / 0 |