Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Разное время выполнения запроса  [new]
marusik
Member

Откуда:
Сообщений: 1
Добрый день!
Ест sql server. Версия 2000 enterprise OS windows 2000 edvanced server (service pack 4) . Есть 2 компа. На первом - OS windows 20003 enterprise. На другом Windows 2000 professional. Выполняем запрос с помощью Query Analyzera к таблице из 30000 записей. Таблица проиндексирована. Проблем с сетевым транспортом между всеми компами нет. На первом - запрос выполняется 38 сек. На втором – 4 сек. С чем это может быть связано?
1 ноя 09, 11:00    [7867480]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
marusik,

Варианты
1. Фаза Луны.
2. Мож у тя один комп многоголовый суперкомпутер, а второй Intel 80286 c базой на дискетке?
3. Если кофейной гущи и стеклянного шара нету - лучше всего погадать на планах выполнения...
1 ноя 09, 12:06    [7867520]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
РАндрей из дома
Guest
aleks2,

могет быть еще разная нагруженность сервера если разные моменты запуска на этих компах
1 ноя 09, 22:58    [7868619]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Влом регистрироваться
Guest
aleks2,

включите план запроса и статистику, там и смотрите.
2 ноя 09, 07:12    [7868907]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
Влом регистрироваться
aleks2,

включите план запроса и статистику, там и смотрите.

Шо вы говОрите?
2 ноя 09, 07:14    [7868908]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
Можно я встряну с дополнительной конкретикой :) ?

aleks2
marusik,
Варианты
1. Фаза Луны.

Самый вероятный пока вариант...

2. Мож у тя один комп многоголовый суперкомпутер, а второй Intel 80286 c базой на дискетке?

Тупящий - с двумя двухъядерными ксеонами 3GHz
Летающий - просто пень 2,4GHz.

РАндрей из дома

могет быть еще разная нагруженность сервера если разные моменты запуска на этих компах

Нет, загруженность примерно одинаковая и не превышает 15% по все ядрам (там такой же кейс, как у тупящего, с двумя двухъядерными ксеонами 3GHz. Это 2 сервера Dell PE2850).

aleks2

3. Если кофейной гущи и стеклянного шара нету - лучше всего погадать на планах выполнения...

Мы б погадали. Да только не на чем там особо гадать-то. SELECT a,b,c,d FROM sometable. Причем построен индекс по a&b&c&d. Какой там к лешему план...
Пробовали и с других рабочих станций, где установлен Query Analyzer, в том числе и с самого сервера БД. Отовсюду все летает, вне зависимости от мощности компов.
Версии QueryAnalyzer'ов на БД и на тупящем одинаковые 8.00.2039, на остальных рабочих станциях 8.00.194. Настройки QueryAnalyzer'ов идентичные, везде по дефолту. Настройки транспорта (Client Network Utility) на всех хостах одинаковые. Все хосты в одной IP-подсети, БД и тупящий вообще в соседних портах одного свитча, на гигабите. Ошибок на портах нет, файлообмен на тупящем хосте в FARe показывает за 40мегабайт/сек в обе стороны, так что на сеть вроде особо не погрешишь...
Единственное отличие (ну, кроме времени :)) - в статистике выполнения запроса.
На тупящем хосте Number of user transactions всегда равно 5, на остальных всегда 1.

Есть мысли?
----------------
WBR, SerhioGo
2 ноя 09, 14:48    [7871381]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31204
SerhioGo
Есть мысли?
----------------
WBR, SerhioGo
первое - профайлером посмотреть выполнение этого запроса на обоих серверах. Сравнить все 4 цифры (cpu, durations, read, writes) и планы.
2 ноя 09, 15:22    [7871661]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
alexeyvg

первое - профайлером посмотреть выполнение этого запроса на обоих серверах. Сравнить все 4 цифры (cpu, durations, read, writes) и планы.

Согласно данным из QueryAnalyzer'ов (Trace),
на тупящем хосте
Duration=252, CPU=63, Reads=44, Writes=0
на нормальном хосте
Duration=135, CPU=94, Reads=54, Writes=0
Цифры плавают с некоторым разбросом, в пределах порядка по duration и CPU.

Планы одинаковые. Select, Cost 0% <---- Table scan, Cost 100%

----------------
WBR, SerhioGo
2 ноя 09, 17:33    [7872863]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
>>Тупящий - с двумя двухъядерными ксеонами 3GHz
>>Есть мысли?

OPTION(MAXDOP 1)


>>Какой там к лешему план...
Лицезрение планов выполнения, как минимум, благотворно сказывается на психике... лицезреющего.
2 ноя 09, 17:48    [7873006]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
aleks2
>>Тупящий - с двумя двухъядерными ксеонами 3GHz
>>Есть мысли?

OPTION(MAXDOP 1)

"... но они плохо тянутся" (с)

Не помогает.
Если, конечно, я правильно понял намек добавить этот hint в запрос после селекта.


>>Какой там к лешему план...
Лицезрение планов выполнения, как минимум, благотворно сказывается на психике... лицезреющего.

Я имел в виду, что там особо нечего смотреть. Тупой селект по индексированным полям.
Впрочем, и так смотрел, уже 2 дня как. Ничего нового :)

----------------
WBR, SerhioGo
2 ноя 09, 18:20    [7873246]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36814
Блокировки?
2 ноя 09, 18:21    [7873253]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
Гавриленко Сергей Алексеевич
Блокировки?

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

------------------
WBR, SerhioGo
2 ноя 09, 18:30    [7873310]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
SerhioGo

Единственное отличие (ну, кроме времени :)) - в статистике выполнения запроса.
На тупящем хосте Number of user transactions всегда равно 5, на остальных всегда 1.

Соврамши, сорри. На тупящем тоже сейчас вижу стабильно 1.
Так что различий еще меньше :(

------------------
WBR, SerhioGo
2 ноя 09, 18:44    [7873368]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
SerhioGo

Согласно данным из QueryAnalyzer'ов (Trace),
на тупящем хосте
Duration=252, CPU=63, Reads=44, Writes=0
на нормальном хосте
Duration=135, CPU=94, Reads=54, Writes=0
Цифры плавают с некоторым разбросом, в пределах порядка по duration и CPU.

Планы одинаковые. Select, Cost 0% <---- Table scan, Cost 100%

----------------
WBR, SerhioGo


Знацца все ж сеть.

Локально на тупом через SharedMemory-подключение тоже медленно?
3 ноя 09, 07:12    [7874283]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Влом регистрироваться
Guest
SerhioGo,

Client Statistics-то чего говорят? Client processing time, Total execution time и т.д.?
3 ноя 09, 07:21    [7874289]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
Влом регистрироваться
SerhioGo,

Client Statistics-то чего говорят? Client processing time, Total execution time и т.д.?


Тупящий:

------------------------------------------------------------------
Application Profile Statistics
Timer resolution (milliseconds) 0 0
Number of INSERT, UPDATE, DELETE statements 0 0
Rows effected by INSERT, UPDATE, DELETE statements 0 0
Number of SELECT statements 1 1
Rows effected by SELECT statements 39784 39784
Number of user transactions 1 1
Average fetch time 0 0
Cumulative fetch time 0 0
Number of fetches 0 0
Number of open statement handles 0 0
Max number of opened statement handles 0 0
Cumulative number of statement handles 0 0

Network Statistics
Number of server roundtrips 1 1
Number of TDS packets sent 1 1
Number of TDS packets received 169 169
Number of bytes sent 170 170
Number of bytes received 688743 688743

Time Statistics
Cumulative client processing time 0 0
Cumulative wait time on server replies 8450 8450
------------------------------------------------------------------



Нормальный:

------------------------------------------------------------------
Application Profile Statistics
Timer resolution (milliseconds) 0 0
Number of INSERT, UPDATE, DELETE statements 0 0
Rows effected by INSERT, UPDATE, DELETE statements 0 0
Number of SELECT statements 1 1
Rows effected by SELECT statements 39784 39784
Number of user transactions 1 1
Average fetch time 0 0
Cumulative fetch time 0 0
Number of fetches 0 0
Number of open statement handles 0 0
Max number of opened statement handles 0 0
Cumulative number of statement handles 0 0

Network Statistics
Number of server roundtrips 1 1
Number of TDS packets sent 1 1
Number of TDS packets received 253 253
Number of bytes sent 170 170
Number of bytes received 822667 822667

Time Statistics
Cumulative client processing time 1 1
Cumulative wait time on server replies 8 8
------------------------------------------------------------------

------------------
WBR, SerhioGo
3 ноя 09, 09:59    [7874656]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
aleks2
SerhioGo

Согласно данным из QueryAnalyzer'ов (Trace),
на тупящем хосте
Duration=252, CPU=63, Reads=44, Writes=0
на нормальном хосте
Duration=135, CPU=94, Reads=54, Writes=0
Цифры плавают с некоторым разбросом, в пределах порядка по duration и CPU.

Планы одинаковые. Select, Cost 0% <---- Table scan, Cost 100%

----------------
WBR, SerhioGo


Знацца все ж сеть.

Мне это очевидным не кажется. Поскольку остальные сетевые приложения этого хоста, не связанные с запросами в БД, проблем с сетевым обменом не испытывают.


Локально на тупом через SharedMemory-подключение тоже медленно?

У меня SQL2000, оно там разве есть?
И потом, как это - локально на тупом? База не на тупом, она на другом хосте.

----------------
WBR, SerhioGo
3 ноя 09, 10:07    [7874715]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
SerhioGo

Локально на тупом через SharedMemory-подключение тоже медленно?

У меня SQL2000, оно там разве есть?
И потом, как это - локально на тупом? База не на тупом, она на другом хосте.

----------------
WBR, SerhioGo
Вам akeks2 советует проверить выполнение запроса на локальном подключении, т.е. с того же хоста где и сервер. Чтобы узнать в сетке ли дело или нет.

Свои 5 копеек:
1. Посмотрите счетчики производительности, особенно длину очереди к диску.
2. Попробуйте перестроить индексы.
3 ноя 09, 10:23    [7874825]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
Senya_L
SerhioGo

Локально на тупом через SharedMemory-подключение тоже медленно?

У меня SQL2000, оно там разве есть?
И потом, как это - локально на тупом? База не на тупом, она на другом хосте.

----------------
WBR, SerhioGo
Вам akeks2 советует проверить выполнение запроса на локальном подключении, т.е. с того же хоста где и сервер. Чтобы узнать в сетке ли дело или нет.


См. мой вчерашний пост от 14:48:

Пробовали и с других рабочих станций, где установлен Query Analyzer,
в том числе и с самого сервера БД. Отовсюду все летает,
вне зависимости от мощности компов.


Senya_L

Свои 5 копеек:
1. Посмотрите счетчики производительности, особенно длину очереди к диску.

На тупящем хосте или на сервере?


2. Попробуйте перестроить индексы.

ВСЕ? ВО ВСЕХ ТАБЛИЦАХ %-O ?
Впрочем, в тех, на которых тренируемся - пробовали, не помогает.
----------------
WBR, SerhioGo
3 ноя 09, 11:16    [7875295]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Glory
Member

Откуда:
Сообщений: 104760
Проведем эксперимент
Замените select на select into #x и сравните время выполнения.
Станет ясно, связано проблема производительности с сетью
Кроме того непонятно, как вы сравнивали установки коннектов ? Через DBCC USEROPTIONS ?
3 ноя 09, 12:03    [7875708]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
Senya_L
Member

Откуда: Москва
Сообщений: 5381
SerhioGo,

С фазами луны бороться трудно. :)
Как вариант - различная фрагментация файлов БД. Встречал как-то такое.
3 ноя 09, 12:17    [7875811]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
SerhioGo
И потом, как это - локально на тупом? База не на тупом, она на другом хосте.


Оооо... становится интереснее! Где же база то?

>>на остальных рабочих станциях 8.00.194
Вот ведь любители приключений на собственную задницу...
3 ноя 09, 13:09    [7876320]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31204
SerhioGo
alexeyvg

первое - профайлером посмотреть выполнение этого запроса на обоих серверах. Сравнить все 4 цифры (cpu, durations, read, writes) и планы.

Согласно данным из QueryAnalyzer'ов (Trace),
на тупящем хосте
Duration=252, CPU=63, Reads=44, Writes=0
на нормальном хосте
Duration=135, CPU=94, Reads=54, Writes=0
Цифры плавают с некоторым разбросом, в пределах порядка по duration и CPU.

Планы одинаковые. Select, Cost 0% <---- Table scan, Cost 100%

----------------
WBR, SerhioGo
Что то я не пойму - 135-252 милисекунд общее время?

Откуда у вас 38 сек взялось? Что-то с клиентом, видимо?
3 ноя 09, 13:12    [7876361]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
aleks2
Guest
Разговор слепого с глухими... короче.

Перечитав, тредстартера, понял:

У него тупит ОДИН ИЗ КЛИЕНТОВ. А вовсе не один из двух серверов.

Тото все лечат голову, побаливает прямая кишка...


Причем сервер у него SP3, а клиенты без SP вовсе. В таком гадюшнике и сама MS ничем не помогет.
3 ноя 09, 13:18    [7876410]     Ответить | Цитировать Сообщить модератору
 Re: Разное время выполнения запроса  [new]
SerhioGo
Member

Откуда:
Сообщений: 15
aleks2
Разговор слепого с глухими... короче.

Перечитав, тредстартера, понял:

У него тупит ОДИН ИЗ КЛИЕНТОВ. А вовсе не один из двух серверов.

...через три дня Зоркий Сокол увидел... (с)

:-(((


Причем сервер у него SP3, а клиенты без SP вовсе. В таком гадюшнике и сама MS ничем не помогет.


Йолы-палы... Ну хоть не по диагонали читайте-то, а :-/

Версии QueryAnalyzer'ов на БД и на тупящем одинаковые 8.00.2039,

На тупящем клиенте тоже SP3, как и на хосте с СУБД. Там тоже проинсталлирован SQL2000, но он заглушен и не используется.
На остальных клиентах стоит только клиентская часть. Она, есссно, без SP.
При чем тут гадюшник?

----------------
WBR, SerhioGo
3 ноя 09, 13:49    [7876739]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить