Производительность серверов БД в OE 12
Тест
Среда:
- Linux
- #1 SMP Thu Jan 4 17:31:22 UTC 2018
- 2.6.32-696.18.7.el6.x86_64
- Architecture: x86_64
- CPU(s): 24
- Thread(s) per core: 2
- Core(s) per socket: 6
- Socket(s): 2
- NUMA node(s): 2
- Model name: Intel(R) Xeon(R) Gold 6128 CPU @ 3.40GHz
Версии OpenEdge:
- 12.1 против 11.7.4.
Конфигурация базы данных и распределение данных:
Типичная высокая нагрузка на чтение, чтение 250 000 записей в секунду для 150 конкурентных пользователей на 8 серверах БД.
Информация о запросе:
Объединение 7 таблиц, представление 25% записей, фильтрация записей варьируется в пределах 75% между таблицами.
FOR EACH Table1 NO-LOCK, EACH Table2 NO-LOCK OF Table1, EACH Table3 NO-LOCK WHERE Table3.Percent_100 = Table2.Num_key2, EACH Table4 NO-LOCK OF Table3, EACH Table5 NO-LOCK WHERE Table5.Percent_75 = Table4.Num_Key4, EACH Table6 NO-LOCK OF Table5, EACH Table7 NO-LOCK WHERE Table7.Percent_50 = Table6.Num_Key6.
Результат для BHT
Улучшение производительности на ~ 3%.
Здесь следует понимать, что в качестве измеряемого улучшения использовался сервер без потоков, поэтому для 150 пользователей был обеспечен параллелизм только в 8 потоков, поскольку MTDBS не был включён в тестирование. Трудно сказать, насколько улучшение производительности, обеспечиваемое MTDBS, можно отнести на счёт улучшений BHT.
Этот тест следует повторить с параметрами -Mi 1, -Ma 1, -Mn 150 для увеличения параллелизма. Однако это нельзя использовать для демонстрации пошагового эффекта добавления каждой из трёх функций по очереди.
Результат для MTDBS
Помимо латчей BHT, MTDBS улучшил производительность на 35%.
Результат для SSJ
Помимо латчей BHT и MTDBS, SSJ улучшил производительность дополнительно на 44%, что в общей сложности означает, что для выполнения одних и тех же операций с доступом по локальной сети в OpenEdge 12 необходимо на 63% времени меньше.
Напомним, что для достижения 100% уменьшения времени выполнения результат SSJ должен быть равен 0. Однако мы можем сказать, что в отношении OpenEdge 11.7.4 конечный результат этого тестирования зафиксировал факт того, что OpenEdge 12 необходимо примерно треть времени запуска, чем это было ранее. Это видно из результатов, представленных на Рис.5. Повышение производительности при использовании SSJ увеличивается по мере увеличения задержки в сети, например, в реальном развёртывании широкополосной связи TCP с медленными проводами и маршрутизаторами, в отличие от того, когда все работает на локальном хосте.
Стандартное отклонение, представленное на рис. 6, показывает, что не только улучшена производительность всей системы, но и результаты намного более последовательны для каждого пользователя при использовании MTDBS и даже более с SSJ.
Наконец, диаграмма на рис. 7 показывает изменение сетевой активности в различных тестовых сценариях. Это изменение в сетевой активности с использованием SSJ приведёт к ещё большему повышению производительности по мере увеличения задержки в сети, то есть, если тесты будут выполнены в реальной сети, а не локальной.
Метка:Производительность