Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Терегулов Артур Member Откуда: Сообщений: 3 |
Он обновляется сразу при записи или это может быть какая-то фоновая задача? И где про это можно почитать? Если база несколько гигов и каждую минуту будет запись блока данных в середину, он каждый раз двигать все данные на диске будет? |
3 июн 13, 11:54 [14382853] Ответить | Цитировать Сообщить модератору |
Сергей Викт. Member Откуда: Москва Сообщений: 888 |
Напишите простейший запрос (insert) например и посмотрите план. у вас будет Clustered Index Insert (%). Другой вопрос обслуживания индекса. |
||
3 июн 13, 11:57 [14382882] Ответить | Цитировать Сообщить модератору |
Сергей Викт. Member Откуда: Москва Сообщений: 888 |
Терегулов Артур, http://msdn.microsoft.com/ru-ru/library/ms189271(v=sql.105).aspx - Здесь достаточно много теоретической информации об индексах, для общего понимания вполне хватит. |
3 июн 13, 12:04 [14382936] Ответить | Цитировать Сообщить модератору |
Терегулов Артур Member Откуда: Сообщений: 3 |
за ссылку спасибо, а чтение планов еще не освоил |
3 июн 13, 12:18 [14383056] Ответить | Цитировать Сообщить модератору |
Mnior Member Откуда: Кишинёв Сообщений: 6723 |
Тут многое надо понимать. У базы 2 типа файлов: 1. Логи 2. Данные Логи это все операции над данными. Самая ценные и первичные файлы. Остальное это кеширование текущено состояния данных. Кеширование и индексы это оптимизации работы с данными. На диски данные фалов данных сбрасывается периодически, а не сразу, а логи постоянно. В логах нет индексов. А актуальные данные индексов (и данных) есть только в памяти. Для целостности данных оно не актуально - всё можно восстановить из логов. И так и делается постоянно. Когда даже просто подымается сервер. В середину будет вставлять, постоянно. Но не сбрасывается на диск каждый раз. Но ещё есть такая оптимизация, как неполнота страниц. Если вставить в середине некуда, то страница делится пополам на две, и теперь в этой серединке уже много дырок для вставки (в двух наполовину незаполненных страницах). |
||
3 июн 13, 14:02 [14383833] Ответить | Цитировать Сообщить модератору |
Mnior Member Откуда: Кишинёв Сообщений: 6723 |
И другая "оптимизация". Данные в файле располагаются не последовательно. Данные таблицы может быть разбросано в файлах данных в разных местах. Последовательность определена списочной связанностью страниц данных. Страница это просто структурно монолитный кусок в 4 килобайта. |
3 июн 13, 14:06 [14383856] Ответить | Цитировать Сообщить модератору |
Гавриленко Сергей Алексеевич Member Откуда: Moscow Сообщений: 37139 |
|
||
3 июн 13, 14:09 [14383864] Ответить | Цитировать Сообщить модератору |
Mind Member Откуда: Лучший город на Земле Сообщений: 2322 |
Разницы нет, какого размера у вас база, потому что двигаться (и то не всегда) будут только измененные данные, ну и при этом естественно расти фрагментация. |
||
3 июн 13, 21:08 [14386216] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |