19.10.2006, 15:16 | #1 |
Участник
|
Поделитесь опытом - кто как настроил файловые группы в MSSQL и какая конфигурация дисков в массиве.
Пользовался кто рекомендациями из статьи на этом сайте? Привели манипуляции к положительным результатам? Предстоит тюнинг базы, поэтому собираю информацию как это лучше сделать и с наименьшими затратами. |
|
19.10.2006, 22:57 | #2 |
Участник
|
Цитата:
Сообщение от IgorK
Поделитесь опытом - кто как настроил файловые группы в MSSQL и какая конфигурация дисков в массиве.
Пользовался кто рекомендациями из статьи на этом сайте? Привели манипуляции к положительным результатам? Предстоит тюнинг базы, поэтому собираю информацию как это лучше сделать и с наименьшими затратами. Для начала попробуйте выполнить рекомендации из статьи и BOL - отделите программистские ресурсы от бизнес-данных, попробуйте отделить индексы от данных. Если у вас все еще есть диски, то попробуйте отделить таблицы с итогами (inventSum, LedgerBalances* и т.п.) от операций (InventTrans, LedgerTrans, CustTrans и т.п.) Очень много споров вызывает таблица inventDim. Если она сравнительно маленькая и полностью помещается в память, то особых проблем нет. Если же ее размер сравним с размером InventTrans, то и ее можно выделить на отдельный физический дикс. Но результативность этих рекомендаций сильно зависит от реального железа. Скорее всего в вашем распоряжении не будет столько физических дисков, сколько хочется, чтобы было "по правильному". Поэтому берите в зубы планы запросов и эксперементировать. По-моему, так. |
|
20.10.2006, 09:10 | #3 |
Модератор
|
Цитата:
Сообщение от IgorK
Поделитесь опытом - кто как настроил файловые группы в MSSQL и какая конфигурация дисков в массиве.
Пользовался кто рекомендациями из статьи на этом сайте? Привели манипуляции к положительным результатам? Предстоит тюнинг базы, поэтому собираю информацию как это лучше сделать и с наименьшими затратами. Пока что при разнесении наблюдаю как правило довольно неравномерное распределение нагрузки - одни массивы недозагружены, другие чуть ли не лежат. Тем более что с внутренними массивами (ну не все еще созрели для SAN) возможности для маневра весьма ограничены - дисков мало Точно не стал бы выделять под перекрестные ссылки отдельный массив. Выделил бы отдельную файловую группу для системных объектов И всерьез подумал бы о partitioning-е, если версия СУБД позволяет Да, кстати - есть смысл сначала определиться с тем, является ли дисковая система узким местом. Иначе может случиться так, что время и деньги будут потрачены впустую
__________________
-ТСЯ или -ТЬСЯ ? |
|
20.10.2006, 09:24 | #4 |
Участник
|
Пока имеется 10 дисков 4х36 15К + 6х72 15К на Smart Array 6404/256
Организованы в 5 логических дисков (точно конфигурацию пока не знаю - недавно работаю). 1- система+tempdb, 1- база, 1 - лог 2 под архивирование и для всякой всячины. База 50 Г лог 30 Г Анализ происходящего выявил проблемы с дисковой системой - большая очередь (в пиках до 25-30, в среднем 5) ну и другие показатели тоже не очень. Процессоров и памяти хватает. Поэтому хочется немного переконфигурировать для увеличения производительности. При необходимости дисков докупим еще, просто нужно определиться с конкретной конфигурацией. |
|
20.10.2006, 10:13 | #5 |
Участник
|
Хм. В такой формулировке - согласен.
А стоит ли выделять в отдельный массив лог изменений базы данных? лог входа пользователей? поисковые индексы? А как их выделять в отдельную группу? Они же принудительно в PRIMARY записываются. Может есть какой способ? Согласен. Но об этом стоит всерьез думать, когда данных накопиться достаточно много. Кстати, не пробовал мучать partitioning в SQL 2005? Насколько помогает? Лучше/хуже, чем в Оракле? |
|
26.10.2006, 17:22 | #6 |
Ищу людей. Дорого.
|
По поводу разделения индексов и данных очень много споров. Одни говорят - что ситуация улучшается, другие, что наоборот становится хуже.
На мой взгляд оптимальный вариант следующий 2х36 15К - RAID1 - система и tempdb 2х36 15К - RAID1 - логи 6х72 15К - RAID10 или RAID5 - база с последним нужно экспериментировать у меня построен RAID10. Т.к. RAID5 тормозит при записи.. и операций чтения примерно в 2 раза больше чем операций записи. Системные вряд ли.. Скорее всего можно все остальное перетащить в другую группу и сделать ее по умолчанию. ТОгда все вновь созданные объекты будут попадать не в примари, а в нужную группу |
|