Автор: george_smith 16.04.19, 11:13
Здравствуйте!
Хочу увеличить производительность системы "Управление торговым предприятием для Украины", редакция 1.2. (1.2.48.1)
База 1Сv8.3 под MS SQL (mdf - файл весить около 15 gb., log урезанный до 1 gb.).
До перестройки индексов запрос sys.dm_db_index_physical_stats показал для многих объектов id avg_fragmentation_in_percent больше 30%.
После Rebuild Indexes ситуация не изменилась. Запрос sys.dm_db_index_physical_stats показал тоже самое.
Подскажите как победить высокий процент не фрагментированых индексов? Может через Reorganize Indexes? Чем эти два способа отличаются.
Автор: Vladal 16.04.19, 12:02
0. Какая версия SQL-сервера?
2.
Цитата(george_smith @ 16.04.19, 11:13)
База 1Сv8.3 под MS SQL (mdf - файл весит около 15 gb., log урезанный до 1 gb.).
А реальный размер базы каков? Что говорит об этом сам сервер?
Цитата(george_smith @ 16.04.19, 11:13)
После Rebuild Indexes ситуация не изменилась. Запрос sys.dm_db_index_physical_stats показал то же самое.
Подскажите как победить высокий процент фрагментированных индексов? Может через Reorganize Indexes? Чем эти два способа отличаются.
Для начала нужно понимать, что файл индексов содержит b-tree. некое дерево, в котором располагаются ссылки на записи в таблице или на другие ветки дерева.
Reorganize Indexes - Упорядочивает страницы в файле индекса, аналогично дефрагментации файлов на диске. Практически "прозрачно" для работы пользователей.
Rebuild Indexes - удаляет существующее дерево и читаете все записи, создавая новое дерево непосредственно из данных. Эта операция более дорогостоящая чем реорганизация: занимает время, место на диске, но взамен можно получить более-менее оптимизированное дерево индексов.
Обе операции не рекомендуется делать при пороге фрагментации меньше 5%, некоторые рекомендуют этот порог повысить до 10%.
3.
Цитата(george_smith @ 16.04.19, 11:13)
После Rebuild Indexes ситуация не изменилась.
Делали ТиИ средствами 1С? С пересчетом итогов и реиндексацией? Период рассчитанных итогов актуальный
Как это повлияло на статистику индексов?
Узнайте, какие таблицы БД имеют самые фрагментированные индексы.
Какие данные они представляют в 1С с помощью метода ПолучитьСтруктуруХраненияБазыДанных (напишите или поищите готовую обработку).
Наверно это будет регистр бухгалтерии Хозрасчетный и его виртуальные таблицы?
1.
Цитата(george_smith @ 16.04.19, 11:13)
Хочу увеличить производительность системы "Управление торговым предприятием для Украины", редакция 1.2. (1.2.48.1)
И все-таки для начала бы сделать регламентные операции средствами 1С - кофигурации: закрытие месяца, актуализация рассчитанных итогов; платформы: ТиИ...
4. Вот еще нашел у Майкрософт
http://pro1c.org.ua/redirect.php?https://docs.microsoft.com/en-us/sql/relational-databases/indexes/reorganize-and-rebuild-indexes?view=sql-server-2017
Как-то писал дефрагментацию и оптимизацию индексов для отдельных таблиц, чтобы не замораживать всю базу. Если коллеги с прошлой работы пришлют, поделюсь. но это не точно.
Да уж... хорошо копнул. У Майкрософт уже есть, наверняка лучше моего )))
http://pro1c.org.ua/redirect.php?https://github.com/Microsoft/tigertoolbox/tree/master/AdaptiveIndexDefrag
Автор: andr_andrey 16.04.19, 16:01
Цитата(Vladal @ 16.04.19, 13:02)
Да уж... хорошо копнул. У Майкрософт уже есть, наверняка лучше моего )))
Хорошая ссылка, чтобы выкинуть свои велосипеды.
Автор: george_smith 16.04.19, 16:45
Vladal @ Сегодня, 12:02
,
Спасибо за ответы! Размер базы 18637,69 MB MS SQL server 2014 management studio.
Средствами 1С, а именно ТиИс.. еще не делал, в конце недели попробую. Думал, что через sql-сервер это более эффективно.
Заметил что, физически, работать начало, все таки быстрее.
В свой новосозданный maintenance plan включил, так же update statistics task и DBCC FREEPROCCACHE.
Автор: Vladal 16.04.19, 19:58
Цитата(george_smith @ 16.04.19, 17:45)
Думал, что через sql-сервер это более эффективно.
Да, средствами SQL-сервера эффективнее. Просто если в 1С "беспорядок в таблицах", ТиИ их немного причешет.
Не забывайте об открытии периодов и пересчете итогов - это уже особенность хранения остатков самой 1С.
george_smith @ Сегодня, 17:45
,
А модель восстановления базы какая?
Цитата(andr_andrey @ 16.04.19, 17:01)
Хорошая ссылка, чтобы выкинуть свои велосипеды.
к той ссылке
http://pro1c.org.ua/redirect.php?https://github.com/Microsoft/tigertoolbox/tree/master/AdaptiveIndexDefrag
добавьте и этот сборник:
http://pro1c.org.ua/redirect.php?https://github.com/Microsoft/tigertoolbox/tree/master/MaintenanceSolution