Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Размер базы в SQL 2008 (http://forums.kuban.ru/f1040/razmer_bazy_v_sql_2008_a-2041429.html)

lww 11.01.2012 08:47

Размер базы в SQL 2008
 
Доброе утро, уважаемые!
Используется клиент-серверный вариант работы, платформа 8.2.13.219.
Сложилась непонятная ситуация по размеру sql-базы. У клиента СУБД SQL 2008 SP3 и размер базы около 60 Гб, беру их dt-файл и загружаю у себя (СУБД SQL 2008 R2 SP1) - получаю базу размером 8.5 Гб. У клиента ИТ-специалисты пробовали удалить sql-базу, создать новую и загрузить из dt-файла, в результате размер базы тот же...
Подскажите в чем причина или в каком направлении двигаться?

Sadovnikov 11.01.2012 08:51

1-lww > Для начала - посмотреть, сколько пустого места в базе клиента.

Lexusss 11.01.2012 08:57

Размеры mdf и ldf у клиента, а так же заполненность базы. Может у них стоит рост на 50Гб )))))

Пудель 11.01.2012 12:51

автошринк не включен, вот и не уменьшается обратно.

Reaper 11.01.2012 13:08

(4) И слава богу...

Lexusss 11.01.2012 13:27

(4) Из топика "создать новую". Так что шринк не катит.

lww 11.01.2012 17:26

exec sp_spaceused @updateusage = N'TRUE'
в результате примерно данные 26 Гб, индексы 30 Гб, пустое место 60 Мб...
mdf примерно 58 Гб, ldf периодически сжимают и он небольшой... прирост данных установлен 1 Мб, а вот смущает начальный размер 55 Гб, хотя утверждают, что при создании было указано 3 Мб и таким параметр стал сам по себе...
завтра попробую создать базу сам и залить туда dt

lww 11.01.2012 17:27

пока ничего так и не прояснилось...

Lexusss 11.01.2012 18:40

(7) Запусти обработку статистики базопузомера на обоих базах и посмотри, в размерах каких таблиц самая большая разница.

DeiMos 11.01.2012 18:46

3-Lexusss >
+100500

Lexusss 12.01.2012 16:05

И чего, продолжения кина не будет?

lww 12.01.2012 17:24

Будет :) сегодня не смог заняться этим вопрсом, все действия перенесены на завтра...
А что за обработка "базопузомер"? для 8.х не нашел такую, только под 7.7

Lexusss 13.01.2012 08:21

StatistikaIB.erf

DeiMos 13.01.2012 22:34

А в чём проблема, собственно?
Зачем куда-то двигаться?

user1C 13.01.2012 22:49

(14)
тут сила веры в настройки скуля побеждает наивность доверия к оптимальности восприятия скуля одноэсом, как близкого родственника...

lww 17.01.2012 13:20

(13) обработки у меня не оказалось, побыстрому найти в инете не получилось, если не сложно, то пришлите на мыло
(14) проблема в размере базы, загруженной из одного и того же dt-файла

lww 17.01.2012 13:29

Общее количество записей в таблицаз баз сходиться "копейка в копейку", а размер сильно плывет...
Размер не используемого места в базах
SQL 2008 SP3 ~ 100 Мб
SQL 2008 R2 SP1 ~ 33 Мб
Настройки баз одинаковые. Можно рассмотреть, например, таблицу ОтражениеВУчете документа ОтражениеЗарплатыВРеглУчете (записей 727572)

SQL 2008 SP3
Данные=2 910 304
Индексы=10 552
Неиспользуется=448

SQL 2008 R2 SP1
Данные=363 792
Индексы=1 320
Неиспользуется=80

Может быть 1С при создании структуры таблиц в зависимости от версии СУБД назанчает разный тип полям?

Lexusss 17.01.2012 13:42

[url]http://infostart.ru/public/download.php?file=51056[/url]

lww 17.01.2012 15:25

(18) спасибо! скачаю, посмотрю результаты...
вариант "при создании структуры таблиц в зависимости от версии СУБД назанчает разный тип полям" отпадает, проверил - структура таблиц идентичная...

lww 18.01.2012 15:20

Результат отчета (18) полностью совпадает с результатами запросов sql, поэтому данные приведенные в (17) такие же...
У кого какие есть предположения почему такая разница в занимаемом месте???

Lexusss 18.01.2012 15:39

(20) Скинь на lexusssмяуfreemailру сохраненные mxl с отчетами StatistikaIB по одной и той же базе на разных серверах.

lww 18.01.2012 17:01

(21) файлы выслал...

lww 19.01.2012 12:57

День добрый, Lexusss, есть какие-то мысли по результатам анализа файлов с отчетами?

Lexusss 19.01.2012 13:28

Мысля первая: У клиента может быть сервер x64. Это может быть и увеличит размер некоторых индексов. Но ведь значительная часть таблиц увеличена в десяток раз при том же самом количестве записей!
Мысля вторая: Можно пробовать запустить перестройку кластерных индексов. Это может несколько сократить размер таблиц. Но опять же, не в 10 раз.
Мысля третья: В большинстве случаев размер отличается раза в 1,5-2, что опять же может быть объяснимо битностью платформы. Но отдельные таблицы значительно массивнее. Это можно попробовать объяснить изменением логики хранения строк переменной длины.
Мысля четвертая: Режима совместимости какого нить не стоит?

Lexusss 19.01.2012 13:51

Дальнейший анализ можно делать, параллельно посматривая на конфигурацию. Я так понимаю, ты от типовой недалеко ушел?

lww 19.01.2012 15:13

(24)
1. и у клиента, и у меня версия серверов 64-битная
2. режим совместимости не используется
3. про перестройку кластерных индексов думал, но решил что это все равно какой-то процент места высвободит, но явно не более 50%
4. мысль об изменившихся механизмах/логике хранения информации от версии к версии СУБД посещала, но ни в каких источниках не нашел подтверждения
(25)
конфигурация отличается от типовой, но все изменения/доработки старались делать без существенных изменения типового решения

lww 19.01.2012 17:15

Можно для эксперимента установить у себя СУБД как у клиента и развернуть базу из dt... и сравнить результат

qweqwe123123 19.01.2012 22:49

вопрос со стороны: а рейды всякие на это не влияют?

Чучундер 20.01.2012 02:55

ждем продолжения

ilya_i 20.01.2012 17:01

Скуль между записями оставляет место чтобы при последующих вставках меньше перемещать другие записи для поддержания кластерного индекса, так вот есть параметр за это отвечающий, но если не лазить ручками то скуль сам решит как лучше. Про параметр этот читал в описании функции то ли реиндексации, то ли дефрагментации индекса.

lww 24.01.2012 09:05

(30) анализ на наличие неиспользуемого простраства в базе данных проводился, но разницу между 8.5 Гб и 60 Гб это явно не покрывает... видно, что при одинаковом количестве записей одни и теже таблицы занимают разный размер - см (17)

lww 24.01.2012 09:08

по (27) ничего сделать не удалось, т.к. тестовых серверов нет, а на рабочих поднимать вторую СУБД не позволительно, т.к. это может повлиять на работу пользователей, если не остановить ее...
что дальше делать не знаю!

angro 24.01.2012 09:52

ну а взять таблицу да посмотреть какие типы полей сколько записей.
сделай пустую, только конфу загрузи какой размер.
потом добавь одну запись в самую большую таблицу посмотри

lww 24.01.2012 11:56

(33) загрузил cf в пустую файловую базу, создал пользователя, выгрузил в dt, полученный файл загрузил у себя и клиента в скульную базу.
Без запуска 1С в режиме "Предприятие" получил (Кб):
Наименование | Свой сервер | Клиентский
-------------+-------------+------------
mdf |130 880 |146 880
ldf |576 |1 024
данные в базе|111 336 |122 584
индексы |12 080 |16 256
свободно |1 152 |2 176

lww 24.01.2012 12:05

(34)+
Запустил 1С в режиме "Предприятие", прошло заполнение данных при инициализации, завел документ "ОтражениеЗарплатыВРеглУчете" и заполнил 100 строк ТЧ "ОтражениеВУчете"

Таблица Config (данные/индексы/свободно) записей 8881
Свой сервер: 1128/32/0
Клиентский: 10152/136/24

Таблица Acc19 - План счетов хозрасчетный (данные/индексы/свободно) записей 343
Свой сервер: 112/408/8
Клиентский: 504/1528/296

Таблица Acc19_ExtDim518 (данные/индексы/свободно) записей 485
Свой сервер: 32/56/0
Клиентский: 248/240/88

Таблица ОтражениеВУчете документа ОтражениеЗарплатыВРеглУчете (данные/индексы/свободно) записей 100
Свой сервер: 56/16/0
Клиентский: 56/16/0
Ранее при загрузке dt как раз на этой таблице большой разрыв был, см (17)

lww 24.01.2012 12:15

Разница в размерах баз осталась, на пустых базах это не так заметно, но по некоторым таблицам уже ошутимо...

angro 24.01.2012 12:49

Таблица Acc19_ExtDim518 (данные/индексы/свободно) записей 485
Свой сервер: 32/56/0
Клиентский: 248/240/88

то есть у тебя 32 кБ а у клиента 248 кБ,
тип полей сравнивал?

angro 24.01.2012 12:50

select * from Acc19_ExtDim518

хотя бы по результату запроса одно и то же?

lww 24.01.2012 17:14

(37) да 32 против 248, подробно сравнивал структуру интересующих таблиц - они идентичны
(38) одно и тоже

angro 24.01.2012 21:30

прикольно


Текущее время: 05:57. Часовой пояс GMT +3.