Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

Размер таблицы в памяти   Найти похожие ветки 

 
Ega23 ©   (2006-03-13 18:36) [0]

Есть процедура s_spaceused , фактически "наследник" системной sp_spaceused.
Выдаёт информацию о физическом размере таблицы, количестве записей и т.п.
Есть 2 сервера, есть база с шестью таблицами. Написал некий репликатор этих шести таблиц с рабочего сервера на резервный.
Взялся проверять, насколько корректно добавились записи (там достаточно сложная иерархическая структура).
Прогнал эту ХП для шести таблиц на обоих серверах. По количеству записей - всё ОК. А вот по занимаемому таблицей размеру - на основном (рабочем) сервере чуть ли не в 2 раза размер таблиц больше.
Собственно вопрос: это может быть как-то связано с тем, что на основном сервере данные таблицы активно используются? Ну там, свап какой-нибудь, или что-то в этом роде?
А то что-то не хочется 10000 записей вдумчиво проверять...


 
Sergey Masloff   (2006-03-13 18:59) [1]

Ega23 ©   (13.03.06 18:36)  
>Собственно вопрос: это может быть как-то связано с тем,
Я абсолютно не знаток MS SQL но примерно одинаково же данные организуются. Есть % заполнения блоков при достижении заполнения которого начинается следующий блок. Этот % настраивается (в Oracle, DB2 -точно, уверен что и в MS есть нечто подобное). При разном % размер одинаковых таблиц будет разным.
 Более того при интенсивной работе с таблицей блоки могут оказаться заполнеными не до допустимой границы а меньше - ну была запись. Ее проапдейтили так что она стала длиннее и в данный блок не влезает. Естественно она была перемещена в другой блок место от нее пока осталось а по какой-то причине пока не заполнилось. Размер опять будет отличаться - в результате репликации записи по блокам разложены более аккруратно. Ну вобшем ничего страшного ИМХО


 
sniknik ©   (2006-03-13 20:32) [2]

смотря как как еще был обмен сделан/структура скопирована
мог "потерять" индексы, а они место тоже занимают. мог неправильно задать тип например Char вместо VarChar (разный размер при одинаковом наполнении), или nChar nVarChar вместо предыдущих (двойной размер при тех же данных - юникод). ну или наоборот. VarChar вместо Char... и т.д.

перед сравнением делай Shrink Database в EM обоих баз (и галочки там выставь "перемещать данные перед упаковкой" вроде, и % резерва 0... там увидиш поймеш). тогда приблизительно должно сходится.


 
Nikolay M. ©   (2006-03-13 21:26) [3]


> Собственно вопрос: это может быть как-то связано с тем,
> что на основном сервере данные таблицы активно используются?
>  Ну там, свап какой-нибудь, или что-то в этом роде?


Обычная фрагментация страниц данных. Особенно заметна на активно обновляемых таблицах. Почти полная аналогия с фрагментацией жесткого диска.


 
Ega23 ©   (2006-03-14 08:59) [4]

В общем, насчёт размера блоков данных - я примерно так и думал.
Просто убедиться хотел.
Всем большое спасибо!!!



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.015 c
2-1145302733
Norfolk
2006-04-17 23:38
2006.05.07
Запрет изменения размера окна


2-1145466770
0101010101
2006-04-19 21:12
2006.05.07
TDrawGrig


2-1145271172
scamp_
2006-04-17 14:52
2006.05.07
про графы


2-1145180834
Yastreb
2006-04-16 13:47
2006.05.07
Работа Paradox на ненастроенных машиннах


8-1125856202
NightLord
2005-09-04 21:50
2006.05.07
Звуковые данные





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский