|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
есть 2 похожие таблицы в двух базах одна с общим размером полей 126 байт, вторая с общим размером 157 байт - поменены некоторые поля с iNT на BIGINT и добавлено 3 поля (int,decimal(18,2),timestamp) количество записей примерно одинаковое ~ 700 млн При этом размер данных(по sp_spaceused) в первой таблице 90GB а во второй 180GB В чем причина? Неужели из-за изменения длины записи в 2 раза увеличились занятые страницы ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 10:16 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR поменены некоторые поля с iNT на BIGINT ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 10:39 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
в таблице изначально нарезаны столбцы bigint и добавлены 3 поля. Потом данные перелиты из старой таблицы в новую. Вопрос в том что общая длина полей выросла с 126 до 157 байт то есть на 25 % а размер данных в таблице вырос в 2 раза и против теоеретических 110-115 GB показывает 180 GB ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 10:59 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 11:32 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR, разговор ни о чем, сравните структуру старой таблицы и новой, возьмите калькулятор и подсчитайте разницу. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 11:54 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
уже посчитал - я же написал что старая структура 126 байт сумма размеров всех полей а новая 157 байт итого на 700 млн должно быть 110ГБ а sp_spaceused показывает размер данных (без индексов) 189ГБ ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 12:10 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
старая таблица Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 12:45 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
новая таблица Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 12:45 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
Эх... а как вы данные переливали в новую таблицу? Может банально фрагментация на новой таблице высокая потому и такие результаты. Вставляли с WITH(TABLOCK)? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 13:25 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
Какие еще индексы у вас там есть? Кроме кластерных. Есть подозрение что таки еще что-то прячете :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 13:44 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
+ fill factor может быть разный ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 14:35 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
komrad, после заливки делал шринк базы с дефрагментацией. индексы есть и они разные , но я смотрю разницу по данным без индексов ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 15:46 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
komrad, EXEC sp_configure 'fill factor' ---- 100 на обоих серверах ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 15:57 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
name minimum maximum config_value run_value fill factor (%) 0 100 0 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 15:59 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR komrad, EXEC sp_configure 'fill factor' ---- 100 на обоих серверах это серверный лучше проверить в sys.indexes для ваших таблиц (index_id=1) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 16:28 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
komrad LexusR komrad, EXEC sp_configure 'fill factor' ---- 100 на обоих серверах это серверный лучше проверить в sys.indexes для ваших таблиц (index_id=1) А смысл? Он используется только при ребилде и начальном построении индекса К реальной заполненности страниц он имеет очень далекое отношение ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 16:31 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR, гляньте на avg_page_space_used_in_percent в sys.dm_db_index_physical_stats c SAMPLED а лучше DETAILED !!!DETAILED вызовет полный скан таблицы включая нелистовые уровни ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 16:59 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
Вы были правы - в старой таблице 98.73922659% для index_id=1 а в новой 59.18146775% Как с этим бороться и надо ли ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 18:50 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
я имею в виду avg_page_space_used_in_percent в sys.dm_db_index_physical_stats ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 18:52 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR Вы были правы - в старой таблице 98.73922659% для index_id=1 а в новой 59.18146775% Как с этим бороться и надо ли ? Как - ребилд. Нужно ли - это сложный вопрос. Из потенциальных плюсов такого низкого avg_page_space_used_in_percent - отсутствие расщепления при вставка в середину индекса (кластерного в вашем случае) Из потенциальных минусов - больший объем как на диске, так и в памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 19:03 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
я так понимаю надо дефрагментацию кластерного индекса запустить или реиндексацию. Что быстрее сработает на 700 млн записей ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 19:06 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
LexusR я так понимаю надо дефрагментацию кластерного индекса запустить или реиндексацию. Что быстрее сработает на 700 млн записей ? Я не знаю, что в вашем понимании дефрагментация и реиндексация индекса Самый быстрый способ - это alter index rebuild ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 19:10 |
|
разница размеров 2 очень похожих таблиц в 2 раза
|
|||
---|---|---|---|
#18+
запустил ребилд так как выгоды от отсутствия расщепления не будет. Вставка старых записей была с отключением автоинкремента а дальше будет работать автоинкремент и ключи будут монотонно возрастающие. А вот уменьшить объем памяти будет весьма полезно. Спасибо за советы. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2021, 19:35 |
|
|
start [/forum/topic.php?fid=46&msg=40045413&tid=1685078]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
167ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
others: | 302ms |
total: | 572ms |
0 / 0 |