Share via


Нужно ли использовать секционирование в Microsoft SQL Server 2005 для DAX 3.0

Сразу хочу заметить, что речь пойдет о Microsoft Dynamics AX 3.0, не о новой версии 4.0.

Если рассматривать пути увеличения производительности и использование для этого секционирования, то получение эффекта от секционирования не очевидно.

Лучше рассматривать стандартные пути увеличения производительности:

  • TempDb на разных устройствах. С Microsoft SQL Server 2005 возможность возникновения проблемы конкуренции в tempDB гораздо более высока по сравнению с Microsoft SQL Server 2000. Файловая группа для базы данных tempdbдолжна содержать несколько идентичных файлов одинакового размера; количество файлов должно определяться числом процессоров сервера (логических процессоров при гипертрейдинге, или физических при использовании процессоров с несколькими ядрами). Желательно разместить файлы на разных физических дисках, использующие разные контроллеры.
  • Журналы на отдельном от данных устройстве с RAID 10.
  • Данные на RAID 10, что гораздо более эффективно, чем использование секционирования.

Основная цель использования секционирования в случае DAX 3.0 – для целей администрирования. Обычно, администратор баз данных создает дополнительные файловые группы для операций обслуживания (резервное копирование, восстановление, и т.п.), а не для повышения производительности.

В версии 5 будут введены изменения в процесс синхронизации для поддержки секционирования.

Следует также заметить, что для оптимальной работы Microsoft Dynamics AX 3.0 с Microsoft SQL Server 2005 необходим достаточно серьезный анализ оптимальности использования индексов, в частности кластерных по сравнению с Microsoft SQL Server 2000.

Также, рекомендуется использовать последние пакеты обновления для Microsoft SQL Server 2005, поскольку в базовой версии базы данных были проблемы, влияющие на производительность системы и исправленные в пакетах обновления, например, работа с автоматическим расширением файлов или возникновение ошибок при работе с курсорами (Microsoft Dynamics AX использует курсоры).

Comments

  • Anonymous
    March 17, 2007
    А можно более детально обосновать утверждение "Данные на RAID 10, что гораздо более эффективно, чем использование секционирования"? Какие причины больше всего подтверждают это утверждение?

  • Anonymous
    March 22, 2007
    Данное утверждение основывается на опыте и проведенных в штаб-квартире внутренних тестах.Возможно, фраза построена не очень точно, имелось ввиду, что следует уделить внимание оптимизации дисковой подсистемы и типу RAID; и это дает гораздо больший эффект, чем использование секционирования на неоптимально настроенном хранилище.Имелось ввиду, что желательно использовать RAID 10 (0+1), и распределять данные равномерно между множеством дисков (и контроллеров).Как инструмент, можно использовать sys.dm_db_operational_index_stats для экземпляра для анализа статистики для индексов. Наиболее часто используемые индексы могут быть перемещены на отдельный диск.

  • Anonymous
    March 20, 2008
    «В версии 5 будут введены изменения в процесс синхронизации для поддержки секционирования» - было ли это воплощено в жизнь?