gifts2017

Тестирование быстродействия базы

Опубликовал чингачгук (чингачгук) в раздел Администрирование - Оптимизация БД (HighLoad)

Синтетический тест позволяющий замерить скорость выполнения запроса (типового или своего).
Всем доброго времени суток!

Столкнулся с такой проблемой - периодическое замедление работы 1С, причем зависимости от нагрузки или "железа" быстро выявить не получилось.
Тогда была написана эта обработка, которая в цикле (количество итераций меняется), могла выполнять запрос и выводила результат в таблицу для сравнения (по данным можно в Екселе построить диаграмму, чтобы отследить визуально изменения скорости в разные моменты времени).

Прошу не пинать, и не говорить что замеры можно производить и другими способами, я все это знаю.
Обработка была написана под конкретные цели - выловить закономерности в тормозах базы (в какое время база начинает работать медленнее, а когда быстрее), причем я сравнивал таким образом скорость на разных железках и в разное время (день, ночь, выходные). Некоторые результаты честно поразили...
Кроме того обработку можно использовать как аналог замера производительности. Сунул свой запрос проверил сколько выполняется. Поменял снова проверил, запустил один и тот же запрос в разных базах (SQL/DBF). Ну или еще для чего :)

Написана под УПП, но если свой запрос - можно на любой конфе открывать (под управляемый формы кому надо сам переделает, мне пока ни к чему)

Из функционала:
- Изменение количества повторов выполнения запроса;
- Прерывание выполнения;
- Выбор типовой запрос (остатки товаров) или произвольный;
- Возможность сохранить результат в файл XLS (файл создаете руками - лень было писать сразу функцию создания, а потом так и не дошли руки);
- Вывод результата в таблицу для анализа и сохранения, либо сохранение результата в файл (если ставите на ночь и есть проблемы с вылетом базы - тогда результат не пропадет);

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

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Тестирование базы
.epf 10,78Kb
15.09.14
16
.epf 1 10,78Kb 16 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Николай Терновой (ojiojiowka) 15.09.14 19:45
Вы же понимаете, что этим тестируете только время выполнения конкретного запроса, и что оно зависит скорее не от загруженности сервера вцелом, сколько от количества записей в таблицах(е), актуальности статистике по индексам таблиц(ы), структуры индексов, наложенных на таблицы блокировок и т.д.?
2. чингачгук (чингачгук) 16.09.14 09:38
Этот фактор тоже имеет место быть...

Вот элементарный пример - один и тот же запрос в файловой базе выполняется 15 секунд а на sql минуту. Такой обработкой это можно быстро оттестить, поменяв запрос и проверив быстродействие на лету.
Хотя тут конечно теже есть подводные камни :) скорее всего нужно оптимизировать работу самого sql...

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

Сколько людей столько и мнений (с)
3. Пабло (CaptainMorgan) 16.09.14 07:48
Если бы обработка была бы бесплатной, то можно было бы посмотреть на предложенную идею.
Возможно некий смысл в этом есть.
Вопрос к автору:
Чем ваша идея отличается от стандартного "Замера производительности"?
4. Сергей Галюк (dj_serega) 16.09.14 16:07
(3) CaptainMorgan, А она платная?
5. чингачгук (чингачгук) 16.09.14 16:14
1 еденица внутренней валюты :)
иначе как тогда скачивать обработки других авторов?

Ответ на предыдущий вопрос почему то не сохранился.
кратко повторю.
CaptainMorgan - обработка по сути не имеет ни чего общего с замером производительности.
у нее другое назначение - все есть в описании...

И вообще, к чему пустые обсуждения? Есть конкретная идея/предложение/пожелание, давайте обсудим...
А так обсуждение перерастет во флуд.
6. Николай Мохнатов (softilium@hotmail.com) 10.10.14 13:44
По-хорошему, параллельно нужно снимать замеры ресурсов и очередей к ресурсам серверов приложений и БД. Тогда картина становится гораздо интереснее.

А если еще вытаскивать информацию dmv с таблиц сервера СУБД - добавляется объем и цвет в такие замеры :)
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа