PDA

Показать полную графическую версию : Одновременное сохранение базы SQL 2008 на несколько жестких дисков


diagnoz_
20-12-2013, 03:06
Доброго времени.
На предприятии имеется локальная сеть из 50 машин + сервер 1С. сам сервер построен на Server 2003 SP2, база хранится на Microsoft SQL Server 2008, антивирус NOD 32 Eset Smart Security. Одновременно на сервере работают максимум 10-15 человек. С недавних пор стали происходить временные зависания во время работы клиентов с 1С. В основном зависания (5-10 минут) происходят при запуске каких-то обработок\формирований\сохранений и т. д. Эти процедуры раньше происходили быстро, без видимых задержек. Прослеживал обстановку на сервере через perfmon и его счетчиков и увидел картинку о том что эти зависания\"задумчивость" сервера происходит по вине дисковой подсистемы, а кокретно показал счетчик avg. disk queue length очередь обработки запросов, она под потолок, в пике и так держится до момента спада зависания. только зависание пропало, очередь спала и все стало на свои места, работоспособность восстановилась. соответственно каждый кто в этот пик попадает, стоит в очереди и ждет, что вызывает возмущения у клиентов. с самой локальной сетью проблем нет. База растет не быстро, свободного места достаточно. дефрагментация диска делается. процессор загружен не сильно, ОЗУ также. Сам сервер из себя представляет обычный компьютер на базе Intel Pentium G850 (3m Cache, 2,9 GHz), ОЗУ в объеме 4Гб (максимально загружена всегда примерно на 2,2 Гб не более), жесткий диск Seagate 7200, 16 Mb cache, 500Gb. Для нужд предприятия достаточно. RAID не имеется. Соответственно вопрос, как разгрузить очередь жесткого диска, дабы прекратились эти временные зависания. В запасе имею такой же жесткий на 500Гб. Для улучшения производительности хочу еще и его добавить, но как разделить сохранение и работу с самой базы SQL на второй жесткий диск, таким образом разгрузив рабочий? Как мне правильно поступить в этой ситуации? Спасибо.

diagnoz_
20-12-2013, 18:17
Вообщем перебросил базы и логи + tempdb на второй винт. посмотрим как оно дальше будет.

alef2474
23-12-2013, 15:38
жесткий диск Seagate 7200, 16 Mb cache, 500Gb. Для нужд предприятия достаточно. RAID не имеется. Соответственно вопрос, как разгрузить очередь жесткого диска, дабы прекратились эти временные зависания. В запасе имею такой же жесткий на 500Гб. Для улучшения производительности хочу еще и его добавить, но как разделить сохранение и работу с самой базы SQL на второй жесткий диск, таким образом разгрузив рабочий? Как мне правильно поступить в этой ситуации? »

Имхо, для нужд предприятия как раз недостаточно. Нужно иметь нормальный аппаратный контроллер с рейдом на серверных винчестерах, нормальный сервер с Xeon, не так уж и дорого для организации в 20 человек.
Кто-то может не понимать, что в один прекрасный день все может накрыться и экономить деньги, но Вы должны понимать и предпринять меры. А так на Вас будут сыпаться незаслуженные упреки о зависаниях, которые Вы временно будете устранять.




© OSzone.net 2001-2012