Size: a a a

SqlCom.ru - Стиль жизни SQL

2020 October 13

Д

Денис Лёвкин... in SqlCom.ru - Стиль жизни SQL
Проверяйте и на холодный запуск и на прогретый, на предмет логического/физического чтения записи, под нагрузкой и без. Где-то возможно просядет, а где-то будет лучше, факторов очень много
источник

AB

Aleksandra Bogdanova in SqlCom.ru - Стиль жизни SQL
Андрей Агеев
А на 2016 виртуалках таких колебаний нет?
Да тоже есть
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Сравнить, есть регрессия или нет. У заказчика счёт идёт на милисекунды
Такого быть не может. Если так -- ему СУБД использовать вообще нельзя было.
источник

АА

Андрей Агеев... in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Да тоже есть
А как вы замеряете влияние на результат нагрузки на другие виртуальные машины в вашем окружении тогда?
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Мне нужно аргументировать, почему так. То, что я нашла на stackoverflow как раз очищают кэш и буфер, все проверяют по разному.
Почему так что?
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Мне нужно аргументировать, почему так. То, что я нашла на stackoverflow как раз очищают кэш и буфер, все проверяют по разному.
Да это ж идиоты только очищают...
источник

AB

Aleksandra Bogdanova in SqlCom.ru - Стиль жизни SQL
Андрей Агеев
А как вы замеряете влияние на результат нагрузки на другие виртуальные машины в вашем окружении тогда?
Вот никак. Что-то упускаем?
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Мне нужно аргументировать, почему так. То, что я нашла на stackoverflow как раз очищают кэш и буфер, все проверяют по разному.
Александра, вы ещё можете СУБД погасить с виртуалкой вместе, и на каждый запрос их поднимать, потом опускать.
Не забудьте это включить в суммарное время выполнения запроса!
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Вот никак. Что-то упускаем?
Да нет, это не надо замерять, это не надо брать в расчёт.
источник

k

karb0f0s in SqlCom.ru - Стиль жизни SQL
время компиляции запроса как метрика для миграции так себе показатель. по идее должен быть бизнес-кейс и в режиме end-to-end он должен попадать под определенные временные рамки. как часто этот бизнес-кейс в продуктовой среде будет выполняться после холодного старта?
источник

T

Timus in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Сравнить, есть регрессия или нет. У заказчика счёт идёт на милисекунды
есть.
источник

KT

Konstantin Taranov in SqlCom.ru - Стиль жизни SQL
Ilia Zviagin
Александра, вы ещё можете СУБД погасить с виртуалкой вместе, и на каждый запрос их поднимать, потом опускать.
Не забудьте это включить в суммарное время выполнения запроса!
не будь токсичным, предложи развернутый ответ как бы ты тестировал время выполнения данного запроса, а не дергай человека короткими фразами
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Вот никак. Что-то упускаем?
Александра, все перфтесты БД всегда ПРОГРЕВАЮТ БД перед замерами, никогда кэши не очищают.
Это норма вообще именно так делать.
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Konstantin Taranov
не будь токсичным, предложи развернутый ответ как бы ты тестировал время выполнения данного запроса, а не дергай человека короткими фразами
Так я ж предложил, выше, уже два раза.
источник

AB

Aleksandra Bogdanova in SqlCom.ru - Стиль жизни SQL
Есть старое приложение, есть 13000 запросов(которые, возможно, даже никогда не выполняются). Возможно, они действительно выполняются 1 раз, возможно 10000
источник

KT

Konstantin Taranov in SqlCom.ru - Стиль жизни SQL
Ilia Zviagin
Александра, все перфтесты БД всегда ПРОГРЕВАЮТ БД перед замерами, никогда кэши не очищают.
Это норма вообще именно так делать.
в 90% случаях да, но есть предельные случаи когда кэш надо сбрасывать перед тестом - и это нормальное функционирование системы. например, когда оперативной памяти не хватает (либо слишком часто кэш обновляется на высоконагруженных системах), тогда тестировать надо со сбросом кэша
источник

АА

Андрей Агеев... in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Да тоже есть
Тогда вероятнее всего влияет разделение ресурсов среды с другими вирутальными машинами. Может стоит CPU Steal Time например померить. СХД опять же тоже разделяют свой ресурс между машинами.
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Вот никак. Что-то упускаем?
Можете изучить методики тестирования TPC или скажем BSBM, они открытые.
источник

AB

Aleksandra Bogdanova in SqlCom.ru - Стиль жизни SQL
Timus
есть.
Интересно то, что при реальном нагрузочном тестировании в 4.5 часа, статистика ожиданий в query store в разы меньше для 2016 чем для 2019(тоже все на виртуалках)
источник

KT

Konstantin Taranov in SqlCom.ru - Стиль жизни SQL
Aleksandra Bogdanova
Есть старое приложение, есть 13000 запросов(которые, возможно, даже никогда не выполняются). Возможно, они действительно выполняются 1 раз, возможно 10000
возможно вам поможет моя хранимая процедура, с ней удобнее тестировать https://github.com/ktaranov/sqlserver-kit/blob/master/Stored_Procedure/dbo.sp_BenchmarkTSQL.sql (по всем вопросам ее использования можете писать мне в личку)
если вам нужно тестировать нагрузочно, то посмотрите в сторону следующих статей http://sqlserver-kit.org/en/articles?queries[search]=[BENCH]&sorts[modified]=-1
источник