|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
Появилась одна специфическая задача. Оценить для произвольной системы суммарного вклада Времени, ЦПУ, reads(количество запросов тоже важно) со стороны запросов приводящих к изменению данных. Снятие полной трассы не дает нужной информации. Моя методика следующая. Готовим демо-стенд. На стенде запускаем мониторинг(счетчики, sysprocesses). Запускаем нужную операцию(например проведением документов в 1С) с логированием времени. Отдельно смотрим интегральный ЦПУ и reads по spid.(в идеале в начале процесса и в конце получаем значение инициируемое приложением из sysprocesses) Разумеется делаем это несколько раз. Затем генерируем на систему триггеры на изменение(репликацию). Затем откатываем систему до исходного состояния(бэкап, откат проведения и т.п.). А затем включаем агент репликации и накатываем очередь записывая время, ЦПУ, reads. Сравнивая данные с первого замера и с замера воспроизведения репликации получаем отношение. Если есть проще варианты или точнее? - то расскажите о них. Заранее спасибо. P.s. это нужно для оценки эффекта кластерной системы. Там данные на запись пишутся на одну ноду а чтение распределяется по другим нодам. В зависимости от отношения(чтение - запись) будет эффект максимального масштабирования. Разумеется могут быть хранимки со сложной логикой чтение-запись и будут погрешности но тем не менее, хотя бы что-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2020, 20:13 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу, Железо в идеале нужно оценивать на уровне железа. А если Вам просто все в комплексе надо оценить (с кучей допущений), то Query Store и Data Collection вполне подойдут для этого. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 02:01 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу, Вот это копание в трассировках, оно конечно нужный шаг, но если этим приходится заниматься постоянно, то это свидетельство того, что база спроектирована неправильно и что код написан криво. Нужно систему перепроектировать и логику переписывать (естественно на это скажут, что нет времени и ресурсов и надо вбивать костыли). ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 08:12 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
(Idol_111) Интересно как оценивать железо на уровне железа? (масло маслянистое,вода водянистая;)) Я знаю про нагрузочные тесты типа tpc-c,h... ? Вы про них?, так там подобный вопрос который я поднимаю один из краеугольных. Про Query Store и Data Collection можно подробнее? Один из вариантов в трассе собрать все конструкции привести их к воспроизводимому виду выделить предварительно что не тривиальная задача, и одним батчем(если возможно) выполнить. Замеры по трассе не дадут приемлимого результата так как время выполнения может быть маленьким(инсерт, апдейт по ключу) и возникает проблема округления и неверной оценки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 11:43 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
a_voronin, Ну как бы работаю в компании которая помогает другим исправить косяки архитектуры,кода и т.п. Поэтому этим приходится заниматься постоянно, и хочется все автоматизировать, упростить. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 11:46 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
А еще забавно спорить со специалистами о подобных соотношениях, а потом когда спрашиваешь о методике измерения то выясняется, что считалось все на глазок.(если вообще считалось) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 11:50 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу, практическую ценности при сравнении имеет сравнение конечных измерений, а не технологических. Например, поставили супер-компьютер, а время вычислений мало изменилось. Можно сделать вывод, что затраты на супер-компьютер излишние, надо менять что-то ещё - сетевое оборудования, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 12:39 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
У нас закупки по пол года в некоторых компаниях согласуются, представляю себе поменяли серверок - эх не угадали;) Ну потом могут ИТ директора на выход попросить. Ценность имеет то что можно измерить и обосновать. К примеру я привел оценочную задачу для тестового стенда, для рабочей системы задача на порядок сложнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 12:59 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу, в таком случае можно только гадать, что получится. Тестовая среда всего лишь моделирует архитектуру, но никак не производственную нагрузку, т.к. находится на системе заведомо другой конфигурации "железа". ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 14:04 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
Владислав Колосов, Согласен, моделирование правильной (сопоставимой с продакт)тестовой нагрузки задача непростая и дорогая. Обычно все забивают на это;) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 16:09 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу, думаю, что существует какое-то эмпирическое соотношение между писателями и читателями, по которому принимается решение о кластеризации. Или производственная необходимость, сбор данных для аналитики может занимать существенное время. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 17:14 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу Владислав Колосов, Согласен, моделирование правильной (сопоставимой с продакт)тестовой нагрузки задача непростая и дорогая. Обычно все забивают на это;) Вот что вы такое рассказываете. Снимаете скрипты с существующей прод базы, поднимаете бекап. Оборачаваете скрипты в цикл, если имеется такая возможность. И долбите ими клон поднятый из бекапа параллельными потоками. Оцениваете что там твориться. Какие-то суперпланы непонятно чего. Взяли скрипты и пошли долбить пока серваку не поплохеет. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 17:35 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
a_voronin, а смысл его долбать, если на тестовом 4 ядра вместо 40. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 17:44 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
a_voronin, Да, ладно. Воспроизводить например на 1с не пробовали? Не говоря что снятие подразумевает нагрузку на продакшн. Это все красиво в теории. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.03.2020, 18:50 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу a_voronin, Да, ладно. Воспроизводить например на 1с не пробовали? Не говоря что снятие подразумевает нагрузку на продакшн. Это все красиво в теории. Я такие операции проводил неоднократно. В том числе у стороннего заказчика. И что за запросы пускает 1С мне известно. Про нагрузку на продакш -- это сказки, в которые верят те, кто никогда не трассировали боевой сервер и бояться запустить на нем профайлер или Extened Events. А ваше "Да, ладно" говорит о том, что с какой стороны подходить к оптимизации производительности вы не знаете или боитесь, что заказчик скажет "ой" и с таким подходом вы никуда не продвинетесь. Иначе вы давно бы собрали трассировку запросов и уже давно ответили бы на вопрос, что тормозит. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 07:52 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
Ну даже не знаю чего сказать. Не хотел но скину ссылку. Там можете о компании потом почитать про мониторинги и тп продукты по этой тематике. http://softpoint.ru/news/softpoint-pobeditel-konkursa-microsoft-partner-goda-2016-v-rossii/ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:19 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
Впрочем я готов конструктивно поспорить на тему воспроизводимости, многопоточных операций,заполнения темповых таблиц и затем их использования, создания курсоров и использование их через 20 мин, и многое другое. К тому же когда мы говорим про продакшн, то тут бывают системы с десятками тысяч запросов в секунду(по соглашениям конфиденциальности мне их называть нельзя) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:24 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
А вот конкретно по тематике продукт который к сожалению не стал коробочным в силу многочисленных технологических проблем. http://softpoint.ru/solutions/traffic-simulator/ ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:32 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу Ну даже не знаю чего сказать. Не хотел но скину ссылку. Там можете о компании потом почитать про мониторинги и тп продукты по этой тематике. http://softpoint.ru/news/softpoint-pobeditel-konkursa-microsoft-partner-goda-2016-v-rossii/ Прочитал. Пускание пили в глаза. Попытка отправить часть запросов на реплику. Немного поможет, но при БД с кривой архитектурой -- деньги на ветер. Есть решения типа ничего не переписываем, суем на мощное железо, в облако и т.п. Помогают но не на долго. Зато позволяют освоить бабки. При этом не задумываемся, что у нас первичные ключи типа NVARCHAR(20), огромные блобы в одной таблице с часто обновляемыми данными, никакого партиционирования, таблицы обвешаны 10-20 индексами в попытках написать поисковик, внешние ключи указывают на таблицы со скоростной вставкой и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:32 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
Я на тему аудитов производительности и средств мониторинга даже спорить с вами не хочу. Было утверждение что воспроизвести нагрузку многопоточной системы можно на раз-два? Я таки готов вам предложить выгодные финансовые условия(для подобных работ), раз вы такой молодец;) Только аргументация для клиента должна быть посерьезней. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:39 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 10:51 |
|
Оценка сумарного времени выполнения запросов на изменение
|
|||
---|---|---|---|
#18+
МуМу Я на тему аудитов производительности и средств мониторинга даже спорить с вами не хочу. Было утверждение что воспроизвести нагрузку многопоточной системы можно на раз-два? Я таки готов вам предложить выгодные финансовые условия(для подобных работ), раз вы такой молодец;) Только аргументация для клиента должна быть посерьезней. Я прямо сейчас уже занят такого рода переделкой на хороших финансовых условиях. Переделываю творение умников, которые делали хранилище не имея представления о суррогатных ключах, где JOIN и DISTINCT COUNT считаются от NVARCHAR(20-50), а группировки делаются по 20 полям. И перепроигрыванием запросов я занимался буквально недавно, правда речь идет об MDX на OLAP кубах. Накидал многопоточную утилиту на C# сам за 2 часа. И помимо MS SQL я активно работаю ещё с VERTICA. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2020, 11:09 |
|
|
start [/forum/topic.php?fid=46&msg=39934476&tid=1686374]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
36ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 320ms |
total: | 458ms |
0 / 0 |