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

Откуда: Красноярск
Сообщений: 96
Windows Server 2003 R2, Enterprise Edition Service Pack 2
Kernel Version 5.2.3790.4354 x86

Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

16гб RAM

вот какой вопрос. Без опции /pae в boot.ini и awe в настройках бд, дисп задач показывал ~3гб используемой вирутальной памяти. После включения данных опций и установки max serv memory 15 000Mb диспетчер задач показывает ~15гб используемой виртуальной памяти. Производительность SQL сервера не изменилась. Зачем mssql взял память, и ничего не ускорилось?

смотрю счетчики по публикации Контроль производительности памяти SQL Server

Process\Working Set(Рабочее множество) для единственного Экземпляра sqlservr максимальное значение ~235 000 000 байт

Рекомендуемое пороговое значение
Если значение этого счётчика ниже объема выделенной SQL Server памяти, и SQL Server ограничен в использовании памяти установленными параметрами min и max server memory, значит SQL серверу выделено больше памяти чем ему необходимо.


SQL Server\Memory Manager\Total Server Memory (KB) == 14 187 944 Kb

выходит что серверу надо не больше 300мб памяти чтоли? Разъясните. Посоветуйте что сделать с памятью для повышения производительности.
4 май 09, 12:51    [7142036]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz

вот какой вопрос. Без опции /pae в boot.ini и awe в настройках бд, дисп задач показывал ~3гб используемой вирутальной памяти. После включения данных опций и установки max serv memory 15 000Mb диспетчер задач показывает ~15гб используемой виртуальной памяти. Производительность SQL сервера не изменилась. Зачем mssql взял память, и ничего не ускорилось?

А до этого вашим запросам не хватало именно памяти ?
4 май 09, 12:54    [7142042]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory

А до этого вашим запросам не хватало именно памяти ?


Наверное нет. Но дисковая система нагружается достаточно сильно я думаю из за нее тормозит работа в БД. RAM на то и нужна чтобы дисковую систему разгружать, но у меня что то не разгружает.

Жесткие диски: 8 шт * 300 GB SAS 15000 rpm, 3.5" c горячей заменой с доступом с передней панели,.
один RAID-контроллер 8 портов SAS, кэш 256 MB, PCI-E x8 RAID 5 с батарейкой.

к примеру средняя длинна очереди диска доходит до 40 единиц.

оптимизировать бд уже пробовал, индексы создавал и переписывал некоторые процедуры, сил пока недостаточно продолжать копание кода.
4 май 09, 13:11    [7142127]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz

один RAID-контроллер 8 портов SAS, кэш 256 MB, PCI-E x8 RAID 5 с батарейкой.

к примеру средняя длинна очереди диска доходит до 40 единиц.


Т.е. вы все файлы разместили на RAID 5 и ждете, что 16гб оперативной памяти "разгрузят дисковую систему" ??
4 май 09, 13:16    [7142145]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory
[quot kampuz]
Т.е. вы все файлы разместили на RAID 5 и ждете, что 16гб оперативной памяти "разгрузят дисковую систему" ??


угу)= а что делать то? в сервак на

motherBoard
Manufacturer Supermicro
Model X7DBU
North Bridge Intel 5000P Revision B1
South Bridge Intel 6321ESB Revision B1

второй контроллер не вставишь)= есть встроенный в мать контроллер для SATA. незнаю можно его использовать? или может обычные SATA винты добавить? как вапще поступить то?

и всетаки для чего mssql берет 14гигов RAM если они ему не нужны, и не помогают?
4 май 09, 13:31    [7142260]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz

второй контроллер не вставишь)= есть встроенный в мать контроллер для SATA. незнаю можно его использовать? или может обычные SATA винты добавить? как вапще поступить то?

Вы хотите сказать, что ваш контроллер умеет создавать только массивы RAID 5 ?

kampuz

и всетаки для чего mssql берет 14гигов RAM если они ему не нужны, и не помогают?

Сколько вы разрешили, столько он и взял.
А скорость работы RAID 5 сервер при всем желании увеличить не может, будь у него хоть миллион гигабайт оперативаной памяти
4 май 09, 13:36    [7142296]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Ennor Tiegael
Member

Откуда:
Сообщений: 3200
kampuz,

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

ЗЫ И еще очень интересно, какой у вас суммарный размер пользовательских баз.
4 май 09, 13:43    [7142370]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory

Вы хотите сказать, что ваш контроллер умеет создавать только массивы RAID 5 ?


умеет вот что (RAID 0, 1, 5, 10, 6, 60, JBOD) ну а что тогда выбрать? неужели можно прилично выиграть создав другой массив? судя из этого
4 май 09, 13:47    [7142408]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
vino
Member

Откуда:
Сообщений: 1191
kampuz
Glory
[quot kampuz]
Т.е. вы все файлы разместили на RAID 5 и ждете, что 16гб оперативной памяти "разгрузят дисковую систему" ??


угу)= а что делать то? в сервак на

motherBoard
Manufacturer Supermicro
Model X7DBU
North Bridge Intel 5000P Revision B1
South Bridge Intel 6321ESB Revision B1

второй контроллер не вставишь)= есть встроенный в мать контроллер для SATA. незнаю можно его использовать? или может обычные SATA винты добавить? как вапще поступить то?

и всетаки для чего mssql берет 14гигов RAM если они ему не нужны, и не помогают?

Гигабайты помогут только разгрузить очереди на чтение, но не на запись! Это полезно, если много пользователей выбирают много данных. А если интенсивные изменения - то вы пролетели с дисковой подсистемой... Почитайте здесь
4 май 09, 13:49    [7142433]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Ennor Tiegael

ЗЫ И еще очень интересно, какой у вас суммарный размер пользовательских баз.

~50гб
4 май 09, 13:50    [7142438]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
vino
Member

Откуда:
Сообщений: 1191
kampuz, использовать RAID5 для не readonly БД, а тем более с интенсивной записью, - большой риск
4 май 09, 13:55    [7142471]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
vino
[quot kampuz]
Гигабайты помогут только разгрузить очереди на чтение, но не на запись! Это полезно, если много пользователей выбирают много данных. А если интенсивные изменения - то вы пролетели с дисковой подсистемой... Почитайте здесь


читал я читал.. что мне теперь выкинуть 8 сас винтов с контроллером и воткнуть 8 сата винтов ?

действительно %активности диска при записи растет одновременно с текущей длинной очереди диска, активность при чтении в сравнении очень мала.
4 май 09, 13:56    [7142487]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz
vino
[quot kampuz]
Гигабайты помогут только разгрузить очереди на чтение, но не на запись! Это полезно, если много пользователей выбирают много данных. А если интенсивные изменения - то вы пролетели с дисковой подсистемой... Почитайте здесь


читал я читал.. что мне теперь выкинуть 8 сас винтов с контроллером и воткнуть 8 сата винтов ?

Зачем что то выкидывать, если по вашим словам "умеет вот что (RAID 0, 1, 5, 10, 6, 60, JBOD)"
4 май 09, 13:58    [7142506]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
vino
kampuz, использовать RAID5 для не readonly БД, а тем более с интенсивной записью, - большой риск


риск потери данных или риск низкой производительности?(=

так просто рассуждаете, скажите же что мне может помочь?
4 май 09, 14:00    [7142519]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory

Зачем что то выкидывать, если по вашим словам "умеет вот что (RAID 0, 1, 5, 10, 6, 60, JBOD)"


какой же расклад из этого мне может дать большую производительность. сократить очереди записи.
4 май 09, 14:02    [7142535]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz


так просто рассуждаете, скажите же что мне может помочь?

Начните с поиска узкого места/запроса
Хотя с большой вероятностью узким местом является ваш raid-5, на котором находятся все файлы всех баз
4 май 09, 14:02    [7142538]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory

Начните с поиска узкого места/запроса
Хотя с большой вероятностью узким местом является ваш raid-5, на котором находятся все файлы всех баз


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

я могу с помощью того что у меня есть создать несколько рейд массивов, чтобы разместить на них разные файл группы, журнал транзакиций...? или создать другой массив более производительный?
4 май 09, 14:06    [7142576]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz
Glory

Начните с поиска узкого места/запроса
Хотя с большой вероятностью узким местом является ваш raid-5, на котором находятся все файлы всех баз


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

Ну продолжайте тогда тыкать пальцем в небо в надежде, что вам повезет

kampuz

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

Ну откуда же известно, сможете вы создать другие массивы или не сможете
4 май 09, 14:10    [7142606]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
vino
Member

Откуда:
Сообщений: 1191
kampuz
vino
kampuz, использовать RAID5 для не readonly БД, а тем более с интенсивной записью, - большой риск


риск потери данных или риск низкой производительности?(=

так просто рассуждаете, скажите же что мне может помочь?

Пока RAID5 или 6 целый - только потери данных. При деградации - потери и того и другого из-за резкого увеличения нагрузки на оставшиеся диски.

Совет повсеместный - разделять файлы БД и лога, а если tempDB интенсивно используется - именно Вы можете разместить его на RAMDISKе.
Совет из той самой темы - распределять файлы БД по нескольким зеркалам для получения максимальной надежности и эффективности.
4 май 09, 14:15    [7142653]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
kampuz
Member

Откуда: Красноярск
Сообщений: 96
Glory

kampuz

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

Ну откуда же известно, сможете вы создать другие массивы или не сможете


насколько мне известно с помощью единственного raid контроллера несколько raid массивов создать нельзя, поменяв 5 raid допустим на raid 0 я получу конечно немного прироста. Но это может быть правильным решением?
4 май 09, 14:28    [7142729]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
Glory
Member

Откуда:
Сообщений: 104760
kampuz


насколько мне известно с помощью единственного raid контроллера несколько raid массивов создать нельзя, поменяв 5 raid допустим на raid 0 я получу конечно немного прироста.

Это вы так думаете или прочитали в документации контроллера или попробовали создать несколько массивов ?
4 май 09, 14:30    [7142742]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
MaxiBek
Member

Откуда:
Сообщений: 112
Пятый рейд один из самых тормозных, если базы тяжелые и их много, а NetApp-а нет, тогда только
10-ый рейд. Вообще много полезного по конфигурации рейдов тут - http://www.raidarray.com/04_01_00.html .
А еще лучше при 8 дисках - 6 из них в 10-ый, и 2 в - 0-ой, на 10-ом расположишь файлы данных, а на нулевой вынесешь файлы транзакционных и логов и можно и TempDB, т.к. не жалко если что.
4 май 09, 15:42    [7143266]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
vino
Member

Откуда:
Сообщений: 1191
MaxiBek
Пятый рейд один из самых тормозных, если базы тяжелые и их много, а NetApp-а нет, тогда только
10-ый рейд. Вообще много полезного по конфигурации рейдов тут - http://www.raidarray.com/04_01_00.html .
А еще лучше при 8 дисках - 6 из них в 10-ый, и 2 в - 0-ой, на 10-ом расположишь файлы данных, а на нулевой вынесешь файлы транзакционных и логов и можно и TempDB, т.к. не жалко если что.

Логи нельзя держать на ненадежном диске.
Насчет RAID10 - пока нет доказательств, что для БД он эффективен, а дороговизна - максимальная.
4 май 09, 15:53    [7143331]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
MaxiBek
Member

Откуда:
Сообщений: 112
vino,

Если денег не хватает на более мощную полку, чтобы можно было бы выделить диски еще и под десятку для тразакционников, то при выборе сбалансированной стратегии бекапирования логи вполне допустимо держать на нулевом.
У меня доказательств навалом :-) Моей группе подконтрольно около 300 баз объемами до 150 ГБ. И оптимизацией диковых подсистем назанимались по самое нехочу. Факт - десятка лучший вариант на пересечении быстродействие/надежность/стоимость. Быстрее может быть только NetApp или другие решения на SAN.
4 май 09, 16:04    [7143422]     Ответить | Цитировать Сообщить модератору
 Re: выделение памяти  [new]
vino
Member

Откуда:
Сообщений: 1191
kampuz
Glory

kampuz

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

Ну откуда же известно, сможете вы создать другие массивы или не сможете


насколько мне известно с помощью единственного raid контроллера несколько raid массивов создать нельзя, поменяв 5 raid допустим на raid 0 я получу конечно немного прироста. Но это может быть правильным решением?

Не нужно никакого raid0, если нет активно используемой tempdb (или свопинга).
4 зеркальных диска (в режиме RAID1). Распределить файловые группы БД на три зеркала, а первое зеркало использовать на ОС и логи (каковы размеры логов?), да и редко используемую часть данных можно туда же, раз 50 Гиг накоплено.
Напомню, что причина выигрыша по скорости - в предоставлении оптимизатору MSSQL самостоятельно распределять содержимое таблиц каждой файловой группы по нескольким дискам. Ведь у RAID-контроллера нет достаточно важных сведений для этого (статистики по запросам, например), да и качественной реализации чередования в таких контроллерах не наблюдается
4 май 09, 16:08    [7143460]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить