Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
Всем привет!

у меня возник следующий вопрос: насколько критичным является разнос по разным физическим дискам рабочей базы, логов и tempdb?
у меня в наличие всего три винта - на одном система и файл подкачки, два других думаю занять под базу и логи.
если разгружать системный винт, то как оптимально поделить три элемента на два диска? базу.1 и логи.2 на один диск, а tempdb.3 на другой или в каком-нибудь другом порядке их скомпоновать?

Windows Server 2008 R2, MSSQL2005, сервер 1С предприятия, конфигурация "Управление производственным предприятием"

В данный момент с базой работают одновременно не более 25 человек. В планах увеличение человеко-нагрузки в 2-3 раза.
24 апр 12, 07:41    [12460439]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Данные и tempdb на один диск, журнал транзакций на другой. Уж больно у них характер нагрузки разный.
24 апр 12, 07:51    [12460450]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
tpg
Данные и tempdb на один диск, журнал транзакций на другой. Уж больно у них характер нагрузки разный.


спасибо за ответ.
а можно чуть по-подробнее про характер нагрузки?:)
ну вот мне бы какой-нибудь такой вариант(вроде вполне логичный:)), чтобы отдельный винт выделить наиболее нагруженной БД, а две остальных посадить по соседству друг с другом.
в базу и в логи запись идет практически постоянно, а каков характер использования tempdb? ну в частности при работе с 1с.
24 апр 12, 07:56    [12460458]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
Glory
Member

Откуда:
Сообщений: 104751
leks_smile
в базу и в логи запись идет практически постоянно,

Только из базы еще и читается. Причем в случайном порядке
А в лог только пишется. Причем последовательно.
leks_smile
а каков характер использования tempdb? ну в частности при работе с 1с.

Так это вопрос к вашей 1С
Вы вообще почему решили оптимизировать именно дисковую систему ? Вы выяснили, что у вас это узкое место ?
24 апр 12, 08:03    [12460471]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
спасибо за ответ.

Glory
leks_smile
в базу и в логи запись идет практически постоянно,

Только из базы еще и читается. Причем в случайном порядке
А в лог только пишется. Причем последовательно.

т.е. предложенный выше вариант (база+tempdb и логи отдельно) является оптимальным?

Glory
leks_smile
а каков характер использования tempdb? ну в частности при работе с 1с.

Так это вопрос к вашей 1С
Вы вообще почему решили оптимизировать именно дисковую систему ? Вы выяснили, что у вас это узкое место ?


Intel Xeon E5504 (4 ядра) 2шт, оперативочки правда всего 16гиг, но дорастить еще на 8 не проблема.
ну и хочется нормально, без узких мест, организовать работу субд с дисками.


вообще, в моем случае
leks_smile
Windows Server 2008 R2, MSSQL2005, сервер 1С предприятия, конфигурация "Управление производственным предприятием"

В данный момент с базой работают одновременно не более 25 человек. В планах увеличение человеко-нагрузки в 2-3 раза.

ведь вполне имеет смысл разнести базу и логи по разным физическим дискам? или вполне хватит и одного(дабы не насиловать диск с системой и файлом подкачки) под базу+логи+tempdb?
24 апр 12, 08:15    [12460498]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
Glory
Member

Откуда:
Сообщений: 104751
leks_smile
т.е. предложенный выше вариант (база+tempdb и логи отдельно) является оптимальным?

Об оптимальности можно говорить для конкретной задачи уменьшения нагрузки
Вы же даже не знаете, какая сейчас будет нагрузка.
Поэтому мы говорим о неком "среднем" варианте.

leks_smile
ну и хочется нормально, без узких мест, организовать работу субд с дисками.

Тогда каждому файлу по отдельному физическому массиву raid10.
А еще файл данных базы поделить на несколько, там отдельно для индексов, отдельно для каких то таблиц и тд. И каждой файловой группк тоже по отдельному физическому массиву raid10.
24 апр 12, 08:21    [12460503]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
Glory
leks_smile
т.е. предложенный выше вариант (база+tempdb и логи отдельно) является оптимальным?

Об оптимальности можно говорить для конкретной задачи уменьшения нагрузки
Вы же даже не знаете, какая сейчас будет нагрузка.
Поэтому мы говорим о неком "среднем" варианте.

leks_smile
ну и хочется нормально, без узких мест, организовать работу субд с дисками.

Тогда каждому файлу по отдельному физическому массиву raid10.
А еще файл данных базы поделить на несколько, там отдельно для индексов, отдельно для каких то таблиц и тд. И каждой файловой группк тоже по отдельному физическому массиву raid10.


смешно, ага))


ну в общем я понял, tempdb положу вместе с непосредственно базой данных. в любом случае, перенести ее - дело 8 строк sql запросов к субд.

всем спасибо!)
24 апр 12, 08:25    [12460513]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
Glory
Member

Откуда:
Сообщений: 104751
leks_smile
смешно, ага))

Смешно то, что вы пытаетесь что-то оптимизировать, не зная, что вы оптимизируете
Любая оптимизацимя подразумевает наличие начальных показателей. Потом идут уже действия. И конечные показатели. По разнице начальных и конечных показателей и делают вывод об успешности\неуспешности оптимизации
24 апр 12, 08:33    [12460524]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
Glory
leks_smile
смешно, ага))

Смешно то, что вы пытаетесь что-то оптимизировать, не зная, что вы оптимизируете
Любая оптимизацимя подразумевает наличие начальных показателей. Потом идут уже действия. И конечные показатели. По разнице начальных и конечных показателей и делают вывод об успешности\неуспешности оптимизации


это я назвал просто "оптимизация". на самом деле это процесс превращения сервера 1с из файл-серверной в клиент-серверную версию путем переноса базы в mssql.

понял вас, обращусь если что-то будет не устраивать в производительности и будут иметься точные показатели.
24 апр 12, 08:38    [12460537]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31954
leks_smile
Intel Xeon E5504 (4 ядра) 2шт, оперативочки правда всего 16гиг, но дорастить еще на 8 не проблема.
ну и хочется нормально, без узких мест, организовать работу субд с дисками.
Непонятно, зачем покупают кучу процессоров без дисков для СУБД?

Купив самый дешёвый, простенький однопроцессорный сервер и потратив остальные деньги на диски, вы бы увеличили производительность вашей 1С в несколько раз. Даже в однопроцессорном сервере процессор нагружался бы процентов на несколько.
leks_smile
ведь вполне имеет смысл разнести базу и логи по разным физическим дискам? или вполне хватит и одного(дабы не насиловать диск с системой и файлом подкачки) под базу+логи+tempdb?
Вам и сказали - данные и логи по разным дискам, темпдб можно положить на системный.

leks_smile
дабы не насиловать диск с системой и файлом подкачки
Не надо жалеть системный диск, он не лучьше других.
24 апр 12, 08:44    [12460555]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31954
leks_smile
на самом деле это процесс превращения сервера 1с из файл-серверной в клиент-серверную версию путем переноса базы в mssql.
А, понятно.

Тогда нужно будет потом покупать диски, 3 диска для 1С на 25 пользоватей очень мало, и для надёжности это плохо, рейды нужны обязательно.
24 апр 12, 08:46    [12460559]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
alexeyvg
leks_smile
Intel Xeon E5504 (4 ядра) 2шт, оперативочки правда всего 16гиг, но дорастить еще на 8 не проблема.
ну и хочется нормально, без узких мест, организовать работу субд с дисками.
Непонятно, зачем покупают кучу процессоров без дисков для СУБД?


этот сервер собирал предыдущий сисадмин под файловый вариант 1с(с перспективой переноса файловой бд в субд). работа каждого пользователя через RemoteApp. поэтому нормальный процессор.
24 апр 12, 08:49    [12460567]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
leks_smile
Member

Откуда:
Сообщений: 10
alexeyvg
leks_smile
на самом деле это процесс превращения сервера 1с из файл-серверной в клиент-серверную версию путем переноса базы в mssql.
А, понятно.

Тогда нужно будет потом покупать диски, 3 диска для 1С на 25 пользоватей очень мало, и для надёжности это плохо, рейды нужны обязательно.


рейды? на рейдах у меня серверные системы, которую проще восстановить подсунув исправный диск в зеркальный рейд, чем восстанавливать из резервной копии несколько часов.

а в mssql я смогу хоть каждый день делать бэкап базы, зачем рейд? восстановлю базу на новый исправный диск за полчаса.
24 апр 12, 08:53    [12460580]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31954
leks_smile
а в mssql я смогу хоть каждый день делать бэкап базы, зачем рейд? восстановлю базу на новый исправный диск за полчаса.
Ну понятно, это определяется потребностями бизнеса. Если не проблема восстановить бакап и ввести данные за период от момента бакапа до момента фиксации неисправности, то можно и без рейда.

Только нужно ещё ежедневно отслеживать состояние базы. Если к примеру испортится сектор, к которому нет обращений (из за чего дефект не будет замечен сразу), то база будет испорчена и придётся восстанавливать бакап месячной давности (если сектор испортился месяц назад), соответственно с вводом вручную данных за этот месяц.
24 апр 12, 09:01    [12460601]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
HoBTID
Member

Откуда:
Сообщений: 929
alexeyvg
Ну понятно, это определяется потребностями бизнеса. Если не проблема восстановить бакап и ввести данные за период от момента бакапа до момента фиксации неисправности, то можно и без рейда.

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

Не нужно отслеживать состояние базы, нужно поставить для нее контроль целостности CHECKSUM.
24 апр 12, 10:55    [12461240]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
iljy
Member

Откуда:
Сообщений: 8711
HoBTID
alexeyvg
Ну понятно, это определяется потребностями бизнеса. Если не проблема восстановить бакап и ввести данные за период от момента бакапа до момента фиксации неисправности, то можно и без рейда.

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

Не нужно отслеживать состояние базы, нужно поставить для нее контроль целостности CHECKSUM.

Вы сами-то эту статью прочитали? Она НИКАКОГО отношения к ситуации, упомянутой alexeyvg, не имеет даже приблизительно.
24 апр 12, 12:31    [12461893]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31954
HoBTID
alexeyvg
Ну понятно, это определяется потребностями бизнеса. Если не проблема восстановить бакап и ввести данные за период от момента бакапа до момента фиксации неисправности, то можно и без рейда.

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

Не нужно отслеживать состояние базы, нужно поставить для нее контроль целостности CHECKSUM.
Можно, даже не читая BOL, понять, что способа информирования о потере данных на диске не существует, ни в какой программе.

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

На практике сиквел может узнать об ошибке на диске либо при выполнении чтения в процессе работы, либо при выполнении чекдб. Обычно это уже слишком поздно, ну и как минимум этот чекдб надо делать.

И не у всех всё так заточено для удобства админов, как у leks_smile, обычно менеджеры очень негативно относятся к необходимости повторного ввода первички даже за день, поэтому предпочитают заплатить бабла (намного меньше стоимости пос вторного ввода данных) на парные диски и сделать рейды :-)
24 апр 12, 15:35    [12463601]     Ответить | Цитировать Сообщить модератору
 Re: Нужна помощь: снижение нагрузки на дисковую подсистему, MSSQL2005  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
leks_smile
а в mssql я смогу хоть каждый день делать бэкап базы, зачем рейд? восстановлю базу на новый исправный диск за полчаса.
Пфф. У нас даже tempdb зазеркалена. Бо по выходным отдыхать охота на даче, а не судорожно перекладывать tempdb на новый массив после того, как диск вылетит. Но хозяин - барин, как говорится. Диски огого дорогие нынче, да.
24 апр 12, 15:40    [12463647]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить