В отчете Сергей Котов делится опытом работы Аксапты 2.5 на 64-битном SQL сервере. Автор рекомендует задуматься о возможности перехода на 64-разрядную систему только при активном росте БД и превышении ее общего объема порядка 30 GB, при меньшем размере БД целесообразнее применять традиционнные аппаратные технологии вместе с работой по оптимизации системы программными средствами.

Мое мнение не всегда совпадает с мнением автора. Однако считаю, что отчет безусловно интересен и полезен для изучения, поэтому опубликовал его без редакторских правок, как есть. Спасибо, Сергей.

Сергей Котов, serge_kotov@mail.ru
Руководитель отдела ИТ
ЗАО "АСБ – Рейтинг - Центр"

Отчет о внедрении MBS Axapta V 2.5
на сервере IBM x 455 (Itanium2)

 

Загрузить

AxaptaOnIBM64x455report.doc (108Kb, Для загрузки требуется регистрация на форуме у Mazzy)

 

1. Введение

В компании АСБ – Рейтинг внедрено комплексное решение информационной системы уровня предприятия на основе MBS Axapta (версия 2.5). Активная эксплуатация данной системы ведется с июля прошлого года.

Объем базы данных Axapta в SQL Server составляет на данный момент (август 2004) 112 GB. Ежемесячный рост базы данных - приблизительно 10 GB в месяц.

Чтобы обеспечить производительность работы системы, адекватную крупному размеру базы данных, в начале текущего года Руководство Компании приняло решение приобрести сервер на основе 64 разрядных технологий на процессорах Intel Itanium 2.

Решение приобрести данный сервер, было обусловлено тщательным анализом существующей ситуации и тенденций развития системы в будущем. Только 64-разрядный сервер может адресовать для одного процесса операционной системы гигантский объем оперативной памяти. В этом случае все активные таблицы крупной базы данных размещаются в оперативной памяти SQL Server, многократно ускоряя операции по чтению данных. В противном случае приходится увеличивать мощность дисковой подсистемы, что хотя и дает положительный эффект, но не очень эффективно с точки зрения качественного роста производительности.

На данный момент в России нет реализованных решений на Axapta и SQL Server 64-битной редакции, поэтому было решено перед закупкой протестировать данный вариант.

В июне при активном содействии IBM и компании X-COM был протестирован на копии рабочей базы данных 64–разрядный сервер IBM x 455. Никаких проблем с точки зрения совместимости обнаружено не было. По результатам решения данной задачи ранее был подготовлен "Отчет о тестировании системы Axapta на сервере IBM X 455 (Itanium )" от 10.06.04 г.

В середине августа компанией X-COM был поставлен сервер IBM x 455 c дисковой стойкой EXP 400 и после двух недель окончательного тестирования и настройки в субботу 11.09.04 г. специалистами отдела ИТ был осуществлен полный перенос рабочей базы данных на новый сервер.

Проблемы в процессе тестирования нового сервера возникли только при подключении SQL сервера 64 бит к удаленной базе на Oracle 9. Для связи различных баз данных в нашем случае используется механизм OLE DB . В поставке SQL сервера 64 отсутствует провайдер OLE для Oracle (в 32-разрядной версии есть). Провайдер OLE DB от Oracle практически не работает вследствие многочисленных ошибок. Для организации связи в данном случае пришлось организовать промежуточный сервер с 32-разрядной версией SQL Server.

 

2. Действующая архитектура системы Axapta

В компании АСБ - Рейтинг была принята трехуровневая организация системы. К серверу баз данных на операционной системе Windows 2000 Server и SQL Server 2000 по отдельным сетевым адаптерам напрямую без коммуникационных устройств подключены два сервера приложений Axapta Object Server (AOS) на операционной системе Windows 2000 Server.

К серверам приложений подключаются пользователи системы. В дневное время количество одновременно работающих пользователей достигает 130 человек. Часть пользователей напрямую (без использования терминального режима) подключается по выделенным 2Мб оптоволоконным каналам из территориально удаленных складов.

Доступ к серверу баз данных круглосуточный. Еженедельно в ночь с воскресенье на понедельник производится переиндексация базы данных. В остальное время система Axapta доступна для работы.

На новый сервер IBM установлена операционная система Windows Server Enterprise 2003 64-битная редакция и SQL Server 2000 Enterprise Edition, также в редакции 64-бит.

 

3. Характеристики технического оборудования

Новый сервер IBM x 455 с дисковой стойкой EXP 400 для организации сервера баз данных имеет следующие основные характеристики:

  • 4 х Itanium 2 1.5 GHz 6MB
  • RAM 56 GB
  • Контроллер ServeRAID-6M SCSI
  • 2 x 73 GB RAID 1 (для операционной системы)
  • 10 х 73 GB RAID 10 (для базы данных)
  • 2 x 73 GB RAID 1 (для лога транзакций)
  • 4 х 1 Gb Ethernet Adapter (три для серверов приложений, один системный)

Два сервера приложений, которые не менялись в процессе внедрения нового сервера, имеют следующие характеристики:

  1. Платформа Supermicro
    • 2 х Xeon 2.6 GHz
    • RAM 2 GB
    • 2 x 73 GB RAID 1
    • 2 x 1 Gb Ethernet Adapter
  2. Платформа Supermicro
    • 2 х Xeon 2. 4 GHz
    • RAM 2 GB
    • 2 x 73 GB RAID 1
    • 2 x 1 Gb Ethernet Adapter

Для сравнения, "старый" 32-разрядный сервер баз данных имеет следующие характеристики:

  1. Платформа Supermicro
    • Pentium 4 1.4GHz
    • RAM 4 GB (2 под SQL Server)
    • Контроллер Adaptec 54 xx SCSI
    • Контроллер Mylex AcceleRAID 352
    • 2 x 17 GB RAID 1 (для операционной системы)
    • 6 RAID 1 и RAID 10 массивов разной емкости для базы данных, разделенной на файловые группы, а также для копии рабочей базы данных
    • 4 х 1 Gb Ethernet Adapter (три для серверов приложений, один системный)

 

4. Тестирование совместимости

Перед переводом рабочей базы данных на новый сервер IBM были осуществлены тесты функциональности:

  • Пользовательский интерфейс
  • Запуск всех типовых функций модулей Логистика (Закупки, Заказы), Финансы, Основные средства, Управленческий учет, Кадровый учет
  • Доступ в двухуровневой архитектуре с использованием прямых вызовов функций SQL Server и COM-объектов.
  • Запуск внешних приложений
  • Синхронизация приложения и базы данных, переиндексация базы данных
  • Шлюз с внешней программой автоматизации удаленного склада SOLVO
  • Закрытие склада

Запуск функций производился одновременно с нескольких клиентов, установленных на сервере приложения AOS.

Как и во время предыдущего тестирования, после предварительной настройки никаких проблем совместимости Axapta в связи с переходом на 64-разрядную технологию обнаружено не было.

 

5 . Тестирование производительности

Для оценки эффективности инвестиционных вложений в новый сервер была проведена оценка общей производительности сервера IBM x 455.

Тестирование было основано на трех областях показателей:

  • время выполнения основных пользовательских и служебных операций
  • счетчики программы Performance Monitor
  • субъективные оценки пользователей системы

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

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

Для оценки были выбраны наиболее характерные функции и отчеты. Тесты проводились в разное время в течение дня по три раза. В таблице приведены средние арифметические значения.

Показатель Результаты на старом сервере Результаты на новом сервере %
1 Функция: копирование из предварительного заказа. Количество строк заказа в минуту. 150 384 256
2 Функция: Резервирование товара.
Количество строк заказа в минуту.
508 955 188
3 Функция: перенос резерва.
Количество строк заказа в минуту.
206 290 141
4 Функция: импорт данных для заказа из файла dbf.
Количество строк заказа в минуту.
144 455 316
5 Обработка накладных и счетов - фактур для печати.
Количество строк заказа в минуту.
98 248 253
6 Отчет: Отгрузка по номенклатурным складам.
Выборка за 19 месяцев. (мин:сек)
04:43 03:42 127
7 Отчет: Динамика изменения товарных запасов.
Август 2004. (мин:сек)
08:28 0:42 1210
8 Отчет: Оборотно - сальдовая ведомость
Все счета Июль 2004. (мин:сек)
17:40 1:32 1152
9 Отчет: Динамика отгрузок в филиалы.
Август 2004. (мин:сек)
03:30 0:18 1167
10 Функция: Выгрузка данных отгрузки в файл.
Июль 2004. (мин:сек)
22:47 0:58 2357
11 Закрытие склада.
Июль 2004 (час)

36 14 257
12 Полная переиндексация базы данных
110 GB (час:мин)
5:20 2:35 206

Анализ полученных данных:

Наиболее впечатляющий рост производительности наблюдается на операциях, требующих анализа больших объемов данных (отчеты). Рост более чем 10-кратный!

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

Часть операций, например отчет № 6, в процессе расчета полностью задействуют обработку данных на ресурсах персональных компьютеров пользователей, поэтому время их расчета изменилось не столь существенно.

В отличие от чтения данных, количество циклов записи на дисковую подсистему сервера не зависит от объема его оперативной памяти, ускорение достигается за счет общего снижения очередей на дисковой подсистеме. Количество циклов записи обычно существенно меньше циклов чтения – не более 10% в целом.

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

Счетчики программы Performance Monitor

Средние дневные показатели счетчиков сведены в таблицу.

Продолжительность измерения - 6 часов, с 10:00 до 16:00. Данные приведены как среднее арифметическое между тремя замерами по два часа. Во время измерений не было длительных экстремально высоких по ресурсам запросов на обработку данных.

Показатель Результаты на старом сервере Результаты на новом сервере
1 Нагрузка процессоров сервера базы данных % 25 20
2 Нагрузка процессоров сервера приложений №1 % 9 22
3 Нагрузка процессоров сервера приложений №2 % 11 12
4 Оперативная память, занимаемая процессом SQL Server МБ 2890 58336
5 Сетевой трафик с сервера баз данных на сервер №1 МБ/сек 0.150 0.530
6 Сетевой трафик с сервера баз данных на сервер №2 МБ/сек 0.350 0.320
7 Чтение данных дисковой подсистемы сервера БД МБ/сек 20.25 0.450
8 Запись данных на дисковую подсистему сервера БД МБ/сек 0.414 0.390
9 Среднее время задержки на дисковой подсистеме БД мсек 35 11

Анализ полученных данных:

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

Сервера приложений ( AOS ) Axapta в основном, используют процессорные мощности сервера. По тестам заметна разница в нагрузке серверов приложений, гораздо более мощный сервер БД может заметно приводить к их повышенной нагрузке. Это подтверждает и разница в сетевом трафике. В данном случае сетевой трафик – это количество данных, получаемых AOS для обработки и последующей отправки конечным пользователям.

Нагрузка на процессорах сервера баз данных практически не изменилась. Это, очевидно, следствие мощности 64-разрядных серверов Itanium 2.

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

Измерения на более мелких отрезках времени показывают, что новый сервер IBM может на короткое время подгружать сервера приложений до 100 % в случае активных запросов пользователей Axapta . Задержка на дисковой подсистеме всегда остается приемлемой. На старом сервере на период до десятков минут задержка может превышать 100 мсек, что заметно отражается как на интерфейсе системы так и на времени выполнения активных операций.

 

Субъективные оценки пользователей системы

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

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

6. Результаты тестирования и внедрения сервера IBM

Переход на новые 64-разрядные технологии – совершенно необходимый шаг в данном случае. Гигантский размер базы данных может оперативно обрабатывать только сервер с адекватным объемом оперативной памяти.

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

Также необходимо отметить значительный резерв по мощности сервера IBM x 455 – результаты измерений в однопользовательском режиме и при рабочей нагрузке заметно не изменились.

Результаты объективных измерений также подтверждает и субъективная положительная оценка пользователей.

Внедренное решение IBM, в отличие от старой системы, имеет возможности дальнейшего перспективного развития.

1. В случае значительного роста общей нагрузки системы можно поднять производительность, заменив сравнительно недорогие серверы приложений на более мощные. Можно также увеличить количество AOS до трех и более.

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

3. При дальнейшем росте базы данных можно имеющийся сервер IBM x 455 объединить с новыми дополнительными серверами. Всего до восьми серверов можно объединить в кластерное решение.

4. Для сервисного обслуживания очень крупной базы данных (резервное копирование, создания тестовых баз для разработки и обучения) можно использовать отдельные системы хранения данных, соединенные с рабочим сервером БД не по сравнительно медленному протоколу LAN, как это реализовано сейчас, а по скоростной шине Fiber Channel или SCSI.

 

Сергей Котов, serge_kotov@mail.ru
Руководитель отдела ИТ
ЗАО "АСБ – Рейтинг - Центр"