Задать вопрос

Проблема производительности 1С и MSSQL

Имеется 1С Предприятие 8.2, 100 активных пользователей, работает в связке с MSSQL 2012, на двух физических серверах. В принципе скорость работы устраивает всех, но есть несколько пользователей, которые выполняют действия, требующие от базы выборки большого количества информации, и при этом крайне критична скорость выполнения (планирование закупок). Конфигурация сервера БД: hp dl380g8 (2хXeon E5-2650/128GB RAM/6xSAS 15k rpm). В планах переход на FC СХД, и покупка более производительного сервера. Как я понял, высокопроизводительный кластер на MSSQL сделать не получится. Подскажите, какие есть варианты наращивания производительности MSSQL?
  • Вопрос задан
  • 16715 просмотров
Подписаться 8 Оценить 2 комментария
Решения вопроса 2
@xrd
1. Дописать конфу так, чтобы в свободное время (ночью) регламентным заданием данные для тяжелых отчетов подготавливались, т.е. упрощалась структура данных, проводились расчеты. В результате человек будет получать уже сформированные данные. Судя по описанию — отчет не просто огромная простыня с данными и там есть что оптимизировать. Но 3-5 секунд — я бы не стал заморачиваться, у Вас пользователи разбалованы (=

2. Если у Вас конфа работает не в режиме совместимости — посмотрите агрегаты, возможно выиграете некоторое количество времени после настройки. Не требует конфигурирования.
Ответ написан
Комментировать
arxont
@arxont
C# программист
1. 1С очень критична к частоте процессора. Так что, чтобы делалось быстрее, нужно процессоров не больше, а мощнее :)
2. Попробуйте отключить hyper threading. В некоторых случаях с 1С даёт очень серьёзный прирост (шаманизм конечно, но помогает)
3. В своё время подобных товарищей (которым нужны были сложные отчёты) вывели в отдельную рбд. БД на raid-0 SSD (важнее была скорость, чем надежность и даже если бы упала, заново выгрузили бы из центральной). Ещё один плюс (но это был косяк нашей конфы и отчётов) — работа не мешает остальным в плане блокировок
4. настройки БД на скуле (к примеру infostart.ru/public/65955/ +коменты).
5. Если сервера разнесены, то как вариант заменить сетевые на 10G

А вообще надо садиться и смотреть счётчики производительности (как заметили выше) и устранять «бутылочное горлышко» — это может быть и проц, и оперативка (скулю сколько дай, всё съест :) ), и дисковая подсистема, и сетевая подсистема, и настройки софта.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@shagguboy
осмотреть счетчики производительности. сделать выводы
Ответ написан
Комментировать
dbmaster
@dbmaster
Варианты такие:
  • Добавить CPU
  • Оптимизация расчётов планов закупок (views, procedures, indexes)
  • Materialized Views
  • Вторичные таблицы и предрасчёт планов
Ответ написан
Комментировать
erp_shnik
@erp_shnik
изменить систему планирования закупок на такую, которая будет работать нормально.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы