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

Откуда:
Сообщений: 681
Добрый день!

Можно ли ускорить запрос глядя на данный план?

К сообщению приложен файл. Размер - 61Kb
28 сен 12, 11:53    [13237585]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
А ха ха. Оптимизация запросов по фотографии.

З.Ы.
План в виде файла выложите.
28 сен 12, 12:14    [13237766]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
AnaceH
Member

Откуда:
Сообщений: 109
И запрос не помешает
28 сен 12, 12:17    [13237796]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
Glory
Member

Откуда:
Сообщений: 104751
beaver06
Можно ли ускорить запрос глядя на данный план?

Bижу ! Вижу !
Запрос ускорится, когда Луна будет в третей части дома Девы
А Марс и Юпитер будут в противостоянии
Причем ускорится на любой версии сервера.
28 сен 12, 12:19    [13237817]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
denis2710,

К сообщению приложен файл (plan.rpt - 2Kb) cкачать
28 сен 12, 13:28    [13238432]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
AnaceH,

SET SHOWPLAN_TEXT ON
go
SELECT s.instance_name,
CAST(pc.collection_time AS SMALLDATETIME) 'collection_time',
pc.performance_object_name,
pc.performance_counter_name,
pc.performance_instance_name,
pc.formatted_value,
pc.raw_value_first,
pc.raw_value_second
FROM [sysutility_mdw].[core].[snapshots] s
JOIN [snapshots].[performance_counters] pc
ON s.snapshot_id = pc.snapshot_id
WHERE s.instance_name = 'server'
AND pc.performance_object_name = 'LogicalDisk'
AND pc.performance_counter_name = 'Avg. Disk Bytes/Read'
AND CAST(pc.collection_time AS SMALLDATETIME) >GETDATE()-2
ORDER BY pc.collection_time desc
28 сен 12, 13:29    [13238440]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
iap
Member

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

это что за хрень?
AND CAST(pc.collection_time AS SMALLDATETIME) >GETDATE()-2
Заменить:
AND pc.collection_time>DATEADD(DAY,DATEDIFF(DAY,0,GETDATE())-2,0)
(на случай, если по pc.collection_time индекс есть)
28 сен 12, 13:38    [13238532]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
iap
beaver06,

это что за хрень?
AND CAST(pc.collection_time AS SMALLDATETIME) >GETDATE()-2
Заменить:
AND pc.collection_time>DATEADD(DAY,DATEDIFF(DAY,0,GETDATE())-2,0)
(на случай, если по pc.collection_time индекс есть)
Хотя, может, Вам и время надо?
AND pc.collection_time>DATEADD(DAY,-2,GETDATE())
Или pc.collection_time вовсе и не типа даты-времени???
28 сен 12, 13:41    [13238552]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
iap,
тип поля pc.collection_time - datetimeoffset(7).
28 сен 12, 13:53    [13238632]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
_djХомяГ
Guest
А план в rpt не совпадает с первоначально опубликованным HASH vs NESTED LOOPS
28 сен 12, 13:54    [13238641]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
_djХомяГ,

да, не сопадает
28 сен 12, 13:55    [13238648]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
beaver06
iap,
тип поля pc.collection_time - datetimeoffset(7).
Тогда не надо никаких CASTов!
28 сен 12, 14:42    [13239025]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
iap,

быстрее от этого не стало.

Дело вот в чем: строю отчет в Reporting Service. В SSMS запрос выполняется около 2 сек., около 80000 строк данных.
При этом на основе этих данных строится график Line в RS около 1 минуты.
Это нормально? Для RS это много данных?
28 сен 12, 16:35    [13239871]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
parteigenosse
Member

Откуда: Киев
Сообщений: 281
beaver06,

на таком объеме вы ускорения не заметите, а тормозит РС, ему то надо отрендерить страницу в хтмл, это долго. а еще и график отрисовать. это отдать данные на отрисовку, отрисовка их как то валидирует наверняка, масштабы там считает какие нибудь, еще непонятно чем занимается. 80К записей, это 80К точек для отрисовки, правильно? постройте хотя бы в экселе аналогичный график, посмотрите, сколько времени это займет.

а 2 сек на запрос может быть и немного, у меня 150 записей выбираются больше минуты, потому что в таблице 150КК записей.
28 сен 12, 17:56    [13240495]     Ответить | Цитировать Сообщить модератору
 Re: Ускорить select  [new]
beaver06
Member

Откуда:
Сообщений: 681
parteigenosse,

т.е. для ускорения построения отчета в RS один путь - уменьшить кол-во данных?
1 окт 12, 10:34    [13247831]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить