powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Тестирование Select Insert
25 сообщений из 41, страница 1 из 2
Тестирование Select Insert
    #40117674
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

Имею 2 одинаковых сервера MS SQL(проц, оператива, жесткие диски).
Имею 2 одинаковые базы на двух серверах.
Одни и те же запросы Select Insert Выполняются по разному. Разница во времени примерно отличается в 100 раз.
на одном Select выполняется 0,15 с. на другом 0,00001 с.
На одном Insert выполняется 1,5с на другом 0,015

Поможете найти причину ?
Может есть какие-нибудь тестовые скрипты на селект и инсерт для базы данных MS sql ?
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117681
Фотография SQL2008
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx, попробуйте обновить сатиcтику на втором сервере
Код: sql
1.
exec sp_updatestats
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117682
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

сравните нагрузки, выясните - select медленно работает или insert, начините со сверки фактических планов запроса.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117685
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SQL2008
mariarx, попробуйте обновить сатиcтику на втором сервере
Код: sql
1.
exec sp_updatestats



Обслуживание БД происходит в штатном режиме каждую ночь.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117686
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
mariarx,

сравните нагрузки, выясните - select медленно работает или insert, начините со сверки фактических планов запроса.



Владислав, как раз таки так и выяснил, что обе операции происходят медленнее. А вот планы запроса надо будет сравнить. Займусь пожалуй этим сейчас.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117690
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx
Владислав Колосов
mariarx,

сравните нагрузки, выясните - select медленно работает или insert, начините со сверки фактических планов запроса.



Владислав, как раз таки так и выяснил, что обе операции происходят медленнее. А вот планы запроса надо будет сравнить. Займусь пожалуй этим сейчас.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117699
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

Если select работает медленно, то select - insert также будет работать медленно.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117720
ozhnw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117735
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mariarx
Владислав Колосов
mariarx,

сравните нагрузки, выясните - select медленно работает или insert, начините со сверки фактических планов запроса.



Владислав, как раз таки так и выяснил, что обе операции происходят медленнее. А вот планы запроса надо будет сравнить. Займусь пожалуй этим сейчас.


структура, процент выполнения плана запросов везде одинаковая.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117758
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
выполнил тесты по Insert случайных данных в таблицу на обоих SQL серверах. Результат оказалась противоположной. В 2 раза быстрее выполнился Insert в той базе данных, которая при работе с приложением выдавала более медленные результаты.

Сервера идентичны. СОфт идентичен. настройки индентичны.

Совсем крыша поехала.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117772
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx
Сервера идентичны. СОфт идентичен. настройки индентичны.
Если все идентично, то и результаты должны быть сравнимы. Чудес не бывает.

В корневом элементе актуального плана есть тайминги по выполнению и ожиданиям. Сравните их.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117786
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm
mariarx
Сервера идентичны. СОфт идентичен. настройки индентичны.
Если все идентично, то и результаты должны быть сравнимы. Чудес не бывает.

В корневом элементе актуального плана есть тайминги по выполнению и ожиданиям. Сравните их.


Актуальный план в каком-то другом месте лежит ?
то, что я вижу в sql profiler
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117787
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mariarx
invm
пропущено...
Если все идентично, то и результаты должны быть сравнимы. Чудес не бывает.

В корневом элементе актуального плана есть тайминги по выполнению и ожиданиям. Сравните их.


Актуальный план в каком-то другом месте лежит ?
то, что я вижу в sql profiler


https://ibb.co/PGYL4jY
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117790
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mariarx
mariarx
пропущено...


Актуальный план в каком-то другом месте лежит ?
то, что я вижу в sql profiler


https://ibb.co/PGYL4jY
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117810
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

Можно и из профайлера брать.
Версия сервера?
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117814
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
invm,

2012
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117817
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

Select @@version

Там и та
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117824
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Критик
mariarx,

Select @@version

Там и та


Microsoft SQL Server 2012 (SP4-GDR) (KB4057116) - 11.0.7462.6 (X64)
Jan 5 2018 22:11:56
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.3 <X64> (Build 9600: )


Microsoft SQL Server 2012 (SP4-GDR) (KB4583465) - 11.0.7507.2 (X64)
Nov 1 2020 00:48:37
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.3 <X64> (Build 14393: )
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40117983
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx
mariarx
пропущено...


https://ibb.co/PGYL4jY


а где же эти таинственные селекты и инсерты?
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118006
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ролг Хупин
mariarx
пропущено...


а где же эти таинственные селекты и инсерты?


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
15:29.419048-3,SDBL,4,process=rphost,p:processName=Кис_ЛЗ_Петров_ТЕСТ,OSThread=18492,t:clientID=93593,t:applicationName=1CV8,t:computerName=dh-term-dev,t:connectID=182268,SessionID=7,Usr=Петров,DBMS=DBMSSQL,DataBase=nerl\dhdev01\Кис_ЛЗ_Петров_ТЕСТ,Trans=1,Func=insertRecords,tableName=InfoRg25579,Sdbl='
INSERT InfoRg25579 (Fld25592,Fld25580,Fld25596,Fld28812,Fld28813,Fld28814,Fld25597,Fld28815,Fld28816,Fld28817,Fld28818,Fld28819,Fld28820,Fld28821,Fld28823,Fld28824,Fld28825,Fld28989,Fld28826,Fld28787,Fld28785,Fld31870,Fld28786,Fld28788,Fld28789,Fld28790,Fld28791,Fld28990,Fld29019,Fld29833,Fld30342,Fld31737,Fld31871,Fld33873,SimpleKey)
VALUES(
(24632:AFA100237DE1E64C11E045B0A12856D7,346:A9EA9C8E9926879511E1457DF44B5DF9,1000,153:BC669C8E9926879511E111D29920B7E0,24636:A9EA9C8E9926879511E14592396431BA,215:A9EA9C8E9926879511E14AF0F073D4A0,11,DATETIME(2012,2,4,0,0,0),DATETIME(2012,1,30,0,0,0),TRUE,25202:BE1E5A05110AC3BD4D33EC19D784EA62,DATETIME(2021,12,1,11,15,29),DATETIME(1,1,1,0,0,0),39,343:00000000000000000000000000000000,"",0,123:00000000000000000000000000000000,346:A9EA9C8E9926879511E1457DF44B5DF9,0,0,0,0,0,0,0,0,FALSE,0,0,FALSE,FALSE,DATETIME(1,1,1,0,0,0),FALSE,0x549C3A1786B97948973D36A947137BBB))
',Rows=1,Context='
ОбщийМодуль.КМК_МодульДляДоработокСервер.Модуль : 144 : КМК_МодульПроизводства.ПерерасчетОПП();
	ОбщийМодуль.КМК_МодульПроизводства.Модуль : 1399 : ПерерасчетОППпоЗаводу(тзПремикс,Дата1,чВерсияРасчета);
		ОбщийМодуль.КМК_МодульПроизводства.Модуль : 1437 : ЗафиксироватьСведенияРасчетаОПП(тзСведенияРасчетаОПП);
			ОбщийМодуль.КМК_МодульПроизводства.Модуль : 5896 : ОбновитьДанныеОПП(тзСведенияРасчетаОПП);
				ОбщийМодуль.КМК_МодульПроизводства.Модуль : 2082 : НаборЗаписей.Записать();' 




На "быстрой машине" - выполняется 3 микросекунды.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 45:34.654358-154367,SDBL,4,process=rphost,p:processName=Кис_ЛЗ_Петров_ТЕСТ,OSThread=18492,t:clientID=93593,t:applicationName=1CV8,t:computerName=dh-term-dev,t:connectID=182268,SessionID=7,Usr=Петров,DBMS=DBMSSQL,DataBase=nerl\dhdev01\Кис_ЛЗ_Петров_ТЕСТ,Trans=1,Func=insertRecords,tableName=InfoRg25579,Sdbl='
INSERT InfoRg25579 (Fld25592,Fld25580,Fld25596,Fld28812,Fld28813,Fld28814,Fld25597,Fld28815,Fld28816,Fld28817,Fld28818,Fld28819,Fld28820,Fld28821,Fld28823,Fld28824,Fld28825,Fld28989,Fld28826,Fld28787,Fld28785,Fld31870,Fld28786,Fld28788,Fld28789,Fld28790,Fld28791,Fld28990,Fld29019,Fld29833,Fld30342,Fld31737,Fld31871,Fld33873,SimpleKey)
VALUES(
(24632:AFA100237DE1E64C11E045B0A12856D7,346:A9EA9C8E9926879511E1457DF44B5DF9,1000,153:BC669C8E9926879511E111D29920B7E0,24636:A9EA9C8E9926879511E14592396431BA,215:A9EA9C8E9926879511E14AF0F073D4A0,11,DATETIME(2012,2,4,0,0,0),DATETIME(2012,1,30,0,0,0),TRUE,25202:BE1E5A05110AC3BD4D33EC19D784EA62,DATETIME(2021,12,1,11,15,29),DATETIME(1,1,1,0,0,0),39,343:00000000000000000000000000000000,"",0,123:00000000000000000000000000000000,346:A9EA9C8E9926879511E1457DF44B5DF9,0,0,0,0,0,0,0,0,FALSE,0,0,FALSE,FALSE,DATETIME(1,1,1,0,0,0),FALSE,0x549C3A1786B97948973D36A947137BBB))
',Rows=1,Context='
ОбщийМодуль.КМК_МодульДляДоработокСервер.Модуль : 144 : КМК_МодульПроизводства.ПерерасчетОПП();
	ОбщийМодуль.КМК_МодульПроизводства.Модуль : 1399 : ПерерасчетОППпоЗаводу(тзПремикс,Дата1,чВерсияРасчета);
		ОбщийМодуль.КМК_МодульПроизводства.Модуль : 1437 : ЗафиксироватьСведенияРасчетаОПП(тзСведенияРасчетаОПП);
			ОбщийМодуль.КМК_МодульПроизводства.Модуль : 5896 : ОбновитьДанныеОПП(тзСведенияРасчетаОПП);
				ОбщийМодуль.КМК_МодульПроизводства.Модуль : 2082 : НаборЗаписей.Записать();'



Идентичный инсерт выполняется в 50 раз дольше 154367 микросекунд.


тестовый инсерт

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
 Declare @i int;
Set @i = 1
While @i < 100000
Begin 
Insert Into Table_1 (Field1, Field2)
values (RAND(), RAND())
SET @i = @i+1
END



там где 154367 микросекунд - выполняется за 21 секунду 100 тысяч данных вносит
там где 3 микросекунды - выполняется за 43 секунды 100 тысяч данных вносит


Таких инсертов в минуту выполняется около 2 тысяч. и задержки получаются вместо 70 секунд выполнения - 120секунд. примерно такие задержки происходят.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118042
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

Перед началом теста запретите доступ всех пользователей в базу или к таблице, кроме тестового. Выполните запрос вставки непосредственно на хосте сервера для исключения влияние сети.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118056
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
mariarx,

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


делали. в базе нет никого. тестовые отдельно разворачивали.
Даже снимал показатели производительности :
Page life Expectancy
Page read/write
latches
locks
plan cache
phisical disk
processor
memory

Не было нигде просадок или изменений в нагрузке.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118058
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

запустите на час, какие-то метрики будут отличаться.

Версии приложения могут отличаться, если единичные вставки происходят в общей транзакции, то они могут выполняться быстрее.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118067
mariarx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
mariarx,

запустите на час, какие-то метрики будут отличаться.

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


Метрики снимаются круглые сутки.
в том то и дело, одна и та же команда(расчет очереди Пр-ва), одна и та же база(копия на 1 сервере и на 2ом сервере). Через технологический журнал(ТЖ) событий получаем разницу только в INSERT и SELECT. Далее меняем местоположение базы данных с диска 15к SAS перешел на NVME диски , либо на полку по сети. результаты не меняются. Тестов было сделано вагон и маленькая тележка(2 недели).
когда подключаешь ТЖ или sql profiler, то задержки общее время выполнения увеличивается, но процентное соотношение остается одинаковым( около 200 секунд против 300). Но самое интересное, что обычный инсерт показывает противоположные значения. Может я что-то упускаю из настроек или мониторинга. может что-то включить в мониторинг надо еще.

Разница в ОС 2016 и 2012. и разница в версии sql. но тогда бы и обычный инсерт вставлялся дольше, но он выполняется быстрее.
...
Рейтинг: 0 / 0
Тестирование Select Insert
    #40118085
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mariarx,

вы же метрики снимаете при одновременной работе сеансов, которые выполняют вставку в эту таблицу. Если у вас перекос количества, то получите задержки.
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Тестирование Select Insert
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]