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

Откуда:
Сообщений: 122
Доброго времени суток

Имею следующий запрос
DELETE sd 
FROM StandardizedData sd
	JOIN #DataItems d
		ON sd.DataItemID = d.ID
	JOIN #Objects o 
		ON o.AssetID = sd.AssetID 
	LEFT JOIN #Standard s
		ON s.AssetID = sd.AssetID
		AND s.OwnerID = sd.OwnerID
		AND s.DetailID = sd.DetailID
		AND s.DataItemID = sd.DataItemID
		AND s.ScenarioID = sd.ScenarioID
		AND s.PeriodTypeID = sd.PeriodTypeID
		AND s.PeriodEnd = sd.PeriodEnd
		AND s.AsOf = sd.AsOf
WHERE
	sd.PeriodEnd >= o.PeriodEnd
	AND o.AssetID != 0
	AND sd.CalculationTypeID = 1
	AND s.AssetID IS NULL


Если в рамках одной сессии с одними и теме же значениями во временных таблицах вызвать его несколько раз - то получаю время выполнения от милисекунд до 15 секунд.

автор
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 14145 ms.
или
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 1978 ms.
или
SQL Server Execution Times:
CPU time = 16 ms, elapsed time = 279 ms.


IO:
автор
Table 'StandardizedData'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Worktable'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'Worktable'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table '#Objects____________________________________________________________________________________________________________000000F8394F'. Scan count 1, logical reads 2, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.
Table 'StandardizedDataDeleted'. Scan count 0, logical reads 0, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.


План выполнения в атаче.

В результате ничего не удаляется. Даже не всегда проходит условие из WHERE, но система упорно тупит.

Буду благодарен за наводку на способ решения.

К сообщению приложен файл. Размер - 28Kb
10 июн 14, 20:43    [16151343]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37228
Компиляция? Блокировки?
11 июн 14, 00:30    [16151993]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
aleks2
Guest
PavM
Если в рамках одной сессии с одними и теме же значениями во временных таблицах вызвать его несколько раз - то получаю время выполнения от милисекунд до 15 секунд.


Стисняюся спросить: а пачиму должно быть ОДИНАКОВОЕ?
11 июн 14, 06:04    [16152134]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
Гавриленко Сергей Алексеевич
Компиляция? Блокировки?

блокировок нет. компиляция если и выполнялась бы - то всегда, если я правильно понимаю. но насильственной компиляции нет - план есть в кэше.

[quot Стисняюся спросить: а пачиму должно быть ОДИНАКОВОЕ? [/quot]
собственно почему нет? один запрос, один план
11 июн 14, 10:54    [16152964]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
ради хохмы поставил OPTION (RECOMPILE) - та же картина. от миллисекунд до десятка секунд.
11 июн 14, 10:57    [16152985]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
Glory
Member

Откуда:
Сообщений: 104751
А что за таблица StandardizedDataDeleted в статистике чтений, которой нет в ни в тексте нт в плане ?

PavM
План выполнения в атаче.

Реальный план в виде xml лучше картинки
11 июн 14, 11:01    [16153026]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
iap
Member

Откуда: Москва
Сообщений: 47085
PavM
В результате ничего не удаляется
Что возвращает запрос
SELECT sd.*
FROM StandardizedData sd
	JOIN #DataItems d
		ON sd.DataItemID = d.ID
	JOIN #Objects o 
		ON o.AssetID = sd.AssetID 
	LEFT JOIN #Standard s
		ON s.AssetID = sd.AssetID
		AND s.OwnerID = sd.OwnerID
		AND s.DetailID = sd.DetailID
		AND s.DataItemID = sd.DataItemID
		AND s.ScenarioID = sd.ScenarioID
		AND s.PeriodTypeID = sd.PeriodTypeID
		AND s.PeriodEnd = sd.PeriodEnd
		AND s.AsOf = sd.AsOf
WHERE
	sd.PeriodEnd >= o.PeriodEnd
	AND o.AssetID != 0
	AND sd.CalculationTypeID = 1
	AND s.AssetID IS NULL;
?
11 июн 14, 11:02    [16153027]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
aleks2
Guest
PavM

Стисняюся спросить: а пачиму должно быть ОДИНАКОВОЕ?

собственно почему нет? один запрос, один план


У вас сферический MS SQL сервер в вакууме?

У сервера есть и другие дела, которые его отвлекают... от вашего запроса.
11 июн 14, 11:03    [16153043]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
XML план:
+
<ShowPlanXML xmlns="http://schemas.microsoft.com/sqlserver/2004/07/showplan" Version="1.2" Build="11.0.3128.0"><BatchSequence><Batch><Statements><StmtSimple StatementText="DELETE sd 
FROM StandardizedData sd
	JOIN #DataItems d
		ON sd.DataItemID = d.ID
	JOIN #Objects o 
		ON o.AssetID = sd.AssetID 
	LEFT JOIN #Standard s
		ON s.AssetID = sd.AssetID
		AND s.OwnerID = sd.OwnerID
		AND s.DetailID = sd.DetailID
		AND s.DataItemID = sd.DataItemID
		AND s.ScenarioID = sd.ScenarioID
		AND s.PeriodTypeID = sd.PeriodTypeID
		AND s.PeriodEnd = sd.PeriodEnd
		AND s.AsOf = sd.AsOf
WHERE
	sd.PeriodEnd >= o.PeriodEnd
	AND o.AssetID != 0
	AND sd.CalculationTypeID = 1
	AND s.AssetID IS NULL" StatementId="1" StatementCompId="1" StatementType="DELETE" RetrievedFromCache="false" StatementSubTreeCost="0.0946559" StatementEstRows="1" StatementOptmLevel="FULL" QueryHash="0x9279AAC3FF2C65E1" QueryPlanHash="0x6F2B0FFB05805734" StatementOptmEarlyAbortReason="GoodEnoughPlanFound"><StatementSetOptions QUOTED_IDENTIFIER="true" ARITHABORT="true" CONCAT_NULL_YIELDS_NULL="true" ANSI_NULLS="true" ANSI_PADDING="true" ANSI_WARNINGS="true" NUMERIC_ROUNDABORT="false"/><QueryPlan CachedPlanSize="72" CompileTime="15" CompileCPU="15" CompileMemory="912"><MemoryGrantInfo SerialRequiredMemory="1024" SerialDesiredMemory="1088"/><OptimizerHardwareDependentProperties EstimatedAvailableMemoryGrant="419425" EstimatedPagesCached="209712" EstimatedAvailableDegreeOfParallelism="4"/><RelOp NodeId="0" PhysicalOp="Clustered Index Delete" LogicalOp="Delete" EstimateRows="1" EstimateIO="0.07" EstimateCPU="7e-006" AvgRowSize="9" EstimatedTotalSubtreeCost="0.0946559" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList/><Update DMLRequestSort="0"><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[PK_StandardizedData]" Alias="[sd]" IndexKind="Clustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_Currency]" Alias="[sd]" IndexKind="NonClustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_DataItemID_AssetID]" Alias="[sd]" IndexKind="NonClustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_DataItemID_ScenarioID]" Alias="[sd]" IndexKind="NonClustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_ModifiedDate]" Alias="[sd]" IndexKind="NonClustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_RawDataID]" Alias="[sd]" IndexKind="NonClustered"/><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[UQ_StandardizedData]" Alias="[sd]" IndexKind="NonClustered"/><RelOp NodeId="1" PhysicalOp="Stream Aggregate" LogicalOp="Aggregate" EstimateRows="1" EstimateIO="0" EstimateCPU="1e-006" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0246489" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/></OutputList><StreamAggregate><DefinedValues/><GroupBy><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/></GroupBy><RelOp NodeId="2" PhysicalOp="Filter" LogicalOp="Filter" EstimateRows="1" EstimateIO="0" EstimateCPU="4.8e-007" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0246479" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/></OutputList><Filter StartupExpression="0"><RelOp NodeId="3" PhysicalOp="Nested Loops" LogicalOp="Left Outer Join" EstimateRows="1" EstimateIO="0" EstimateCPU="4.18e-006" AvgRowSize="15" EstimatedTotalSubtreeCost="0.0246474" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/></OutputList><NestedLoops Optimized="0"><OuterReferences><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></OuterReferences><RelOp NodeId="4" PhysicalOp="Nested Loops" LogicalOp="Inner Join" EstimateRows="1" EstimateIO="0" EstimateCPU="0.00010868" AvgRowSize="36" EstimatedTotalSubtreeCost="0.0213601" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></OutputList><NestedLoops Optimized="0"><Predicate><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DataItemID] as [sd].[DataItemID]=[tempdb].[dbo].[#DataItems].[ID] as [d].[ID]"><Compare CompareOp="EQ"><ScalarOperator><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/></Identifier></ScalarOperator><ScalarOperator><Identifier><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/></Identifier></ScalarOperator></Compare></ScalarOperator></Predicate><RelOp NodeId="5" PhysicalOp="Sort" LogicalOp="Sort" EstimateRows="1" EstimateIO="0.0112613" EstimateCPU="0.000100036" AvgRowSize="36" EstimatedTotalSubtreeCost="0.017933" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></OutputList><MemoryFractions Input="0.5" Output="1"/><Sort Distinct="0"><OrderBy><OrderByColumn Ascending="1"><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/></OrderByColumn></OrderBy><RelOp NodeId="6" PhysicalOp="Nested Loops" LogicalOp="Inner Join" EstimateRows="1" EstimateIO="0" EstimateCPU="4.18e-006" AvgRowSize="36" EstimatedTotalSubtreeCost="0.00657174" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></OutputList><NestedLoops Optimized="1"><OuterReferences><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/></OuterReferences><RelOp NodeId="8" PhysicalOp="Clustered Index Scan" LogicalOp="Clustered Index Scan" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="14" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="1" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/></OutputList><IndexScan Ordered="0" ForcedIndex="0" ForceScan="0" NoExpandHint="0"><DefinedValues><DefinedValue><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/></DefinedValue><DefinedValue><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/></DefinedValue></DefinedValues><Object Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Index="[IX_Objects]" Alias="[o]" IndexKind="Clustered"/><Predicate><ScalarOperator ScalarString="[tempdb].[dbo].[#Objects].[AssetID] as [o].[AssetID]<>(0)"><Compare CompareOp="NE"><ScalarOperator><Identifier><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/></Identifier></ScalarOperator><ScalarOperator><Const ConstValue="(0)"/></ScalarOperator></Compare></ScalarOperator></Predicate></IndexScan></RelOp><RelOp NodeId="9" PhysicalOp="Index Seek" LogicalOp="Index Seek" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="37" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="6.59955e+007" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></OutputList><IndexScan Ordered="1" ScanDirection="FORWARD" ForcedIndex="0" ForceSeek="0" ForceScan="0" NoExpandHint="0" Storage="RowStore"><DefinedValues><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/></DefinedValue><DefinedValue><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></DefinedValue></DefinedValues><Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[UQ_StandardizedData]" Alias="[sd]" IndexKind="NonClustered"/><SeekPredicates><SeekPredicateNew><SeekKeys><Prefix ScanType="EQ"><RangeColumns><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/></RangeColumns><RangeExpressions><ScalarOperator ScalarString="[tempdb].[dbo].[#Objects].[AssetID] as [o].[AssetID]"><Identifier><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/></Identifier></ScalarOperator></RangeExpressions></Prefix></SeekKeys></SeekPredicateNew></SeekPredicates><Predicate><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodEnd] as [sd].[PeriodEnd]>=[tempdb].[dbo].[#Objects].[PeriodEnd] as [o].[PeriodEnd] AND [Client_TestPerf13_LP].[dbo].[StandardizedData].[CalculationTypeID] as [sd].[CalculationTypeID]=(1)"><Logical Operation="AND"><ScalarOperator><Compare CompareOp="GE"><ScalarOperator><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/></Identifier></ScalarOperator><ScalarOperator><Identifier><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/></Identifier></ScalarOperator></Compare></ScalarOperator><ScalarOperator><Compare CompareOp="EQ"><ScalarOperator><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="CalculationTypeID"/></Identifier></ScalarOperator><ScalarOperator><Const ConstValue="(1)"/></ScalarOperator></Compare></ScalarOperator></Logical></ScalarOperator></Predicate></IndexScan></RelOp></NestedLoops></RelOp></Sort></RelOp><RelOp NodeId="10" PhysicalOp="Table Scan" LogicalOp="Table Scan" EstimateRows="26" EstimateIO="0.003125" EstimateCPU="0.0001856" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0033106" TableCardinality="26" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/></OutputList><TableScan Ordered="0" ForcedIndex="0" ForceScan="0" NoExpandHint="0"><DefinedValues><DefinedValue><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/></DefinedValue></DefinedValues><Object Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" IndexKind="Heap"/></TableScan></RelOp></NestedLoops></RelOp><RelOp NodeId="12" PhysicalOp="Clustered Index Seek" LogicalOp="Clustered Index Seek" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="1754" Parallel="0" EstimateRebinds="0" EstimateRewinds="3.72529e-008" EstimatedExecutionMode="Row"><OutputList><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/></OutputList><IndexScan Ordered="1" ScanDirection="FORWARD" ForcedIndex="0" ForceSeek="0" ForceScan="0" NoExpandHint="0" Storage="RowStore"><DefinedValues><DefinedValue><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/></DefinedValue></DefinedValues><Object Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Index="[IX_Standard]" Alias="[s]" IndexKind="Clustered"/><SeekPredicates><SeekPredicateNew><SeekKeys><Prefix ScanType="EQ"><RangeColumns><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="OwnerID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="DetailID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="PeriodTypeID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="PeriodEnd"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AsOf"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="DataItemID"/><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="ScenarioID"/></RangeColumns><RangeExpressions><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[AssetID] as [sd].[AssetID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[OwnerID] as [sd].[OwnerID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DetailID] as [sd].[DetailID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodTypeID] as [sd].[PeriodTypeID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodEnd] as [sd].[PeriodEnd]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[AsOf] as [sd].[AsOf]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DataItemID] as [sd].[DataItemID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/></Identifier></ScalarOperator><ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[ScenarioID] as [sd].[ScenarioID]"><Identifier><ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/></Identifier></ScalarOperator></RangeExpressions></Prefix></SeekKeys></SeekPredicateNew></SeekPredicates></IndexScan></RelOp></NestedLoops></RelOp><Predicate><ScalarOperator ScalarString="[tempdb].[dbo].[#Standard].[AssetID] as [s].[AssetID] IS NULL"><Compare CompareOp="IS"><ScalarOperator><Identifier><ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/></Identifier></ScalarOperator><ScalarOperator><Const ConstValue="NULL"/></ScalarOperator></Compare></ScalarOperator></Predicate></Filter></RelOp></StreamAggregate></RelOp></Update></RelOp></QueryPlan></StmtSimple></Statements></Batch></BatchSequence></ShowPlanXML>


При селеккте стабильно 0 ms, 0 rows
11 июн 14, 12:09    [16153654]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
отформатировал XML
+
<ShowPlanXML xmlns="http://schemas.microsoft.com/sqlserver/2004/07/showplan" Version="1.2" Build="11.0.3128.0">
<BatchSequence>
<Batch>
<Statements>
<StmtSimple StatementText="DELETE sd &#xd;&#xa;FROM StandardizedData sd&#xd;&#xa;&#x9;JOIN #DataItems d&#xd;&#xa;&#x9;&#x9;ON sd.DataItemID = d.ID&#xd;&#xa;&#x9;JOIN #Objects o &#xd;&#xa;&#x9;&#x9;ON o.AssetID = sd.AssetID &#xd;&#xa;&#x9;LEFT JOIN #Standard s&#xd;&#xa;&#x9;&#x9;ON s.AssetID = sd.AssetID&#xd;&#xa;&#x9;&#x9;AND s.OwnerID = sd.OwnerID&#xd;&#xa;&#x9;&#x9;AND s.DetailID = sd.DetailID&#xd;&#xa;&#x9;&#x9;AND s.DataItemID = sd.DataItemID&#xd;&#xa;&#x9;&#x9;AND s.ScenarioID = sd.ScenarioID&#xd;&#xa;&#x9;&#x9;AND s.PeriodTypeID = sd.PeriodTypeID&#xd;&#xa;&#x9;&#x9;AND s.PeriodEnd = sd.PeriodEnd&#xd;&#xa;&#x9;&#x9;AND s.AsOf = sd.AsOf&#xd;&#xa;WHERE&#xd;&#xa;&#x9;sd.PeriodEnd &gt;= o.PeriodEnd&#xd;&#xa;&#x9;AND o.AssetID != 0&#xd;&#xa;&#x9;AND sd.CalculationTypeID = 1&#xd;&#xa;&#x9;AND s.AssetID IS NULL" StatementId="1" StatementCompId="1" StatementType="DELETE" RetrievedFromCache="false" StatementSubTreeCost="0.0946559" StatementEstRows="1" StatementOptmLevel="FULL" QueryHash="0x9279AAC3FF2C65E1" QueryPlanHash="0x6F2B0FFB05805734" StatementOptmEarlyAbortReason="GoodEnoughPlanFound">
<StatementSetOptions QUOTED_IDENTIFIER="true" ARITHABORT="true" CONCAT_NULL_YIELDS_NULL="true" ANSI_NULLS="true" ANSI_PADDING="true" ANSI_WARNINGS="true" NUMERIC_ROUNDABORT="false"/>
<QueryPlan CachedPlanSize="72" CompileTime="15" CompileCPU="15" CompileMemory="912">
<MemoryGrantInfo SerialRequiredMemory="1024" SerialDesiredMemory="1088"/>
<OptimizerHardwareDependentProperties EstimatedAvailableMemoryGrant="419425" EstimatedPagesCached="209712" EstimatedAvailableDegreeOfParallelism="4"/>
<RelOp NodeId="0" PhysicalOp="Clustered Index Delete" LogicalOp="Delete" EstimateRows="1" EstimateIO="0.07" EstimateCPU="7e-006" AvgRowSize="9" EstimatedTotalSubtreeCost="0.0946559" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList/>
<Update DMLRequestSort="0">
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[PK_StandardizedData]" Alias="[sd]" IndexKind="Clustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_Currency]" Alias="[sd]" IndexKind="NonClustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_DataItemID_AssetID]" Alias="[sd]" IndexKind="NonClustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_DataItemID_ScenarioID]" Alias="[sd]" IndexKind="NonClustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_ModifiedDate]" Alias="[sd]" IndexKind="NonClustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[IX_StandardizedData_RawDataID]" Alias="[sd]" IndexKind="NonClustered"/>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[UQ_StandardizedData]" Alias="[sd]" IndexKind="NonClustered"/>
<RelOp NodeId="1" PhysicalOp="Stream Aggregate" LogicalOp="Aggregate" EstimateRows="1" EstimateIO="0" EstimateCPU="1e-006" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0246489" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
</OutputList>
<StreamAggregate>
<DefinedValues/>
<GroupBy>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
</GroupBy>
<RelOp NodeId="2" PhysicalOp="Filter" LogicalOp="Filter" EstimateRows="1" EstimateIO="0" EstimateCPU="4.8e-007" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0246479" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
</OutputList>
<Filter StartupExpression="0">
<RelOp NodeId="3" PhysicalOp="Nested Loops" LogicalOp="Left Outer Join" EstimateRows="1" EstimateIO="0" EstimateCPU="4.18e-006" AvgRowSize="15" EstimatedTotalSubtreeCost="0.0246474" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/>
</OutputList>
<NestedLoops Optimized="0">
<OuterReferences>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</OuterReferences>
<RelOp NodeId="4" PhysicalOp="Nested Loops" LogicalOp="Inner Join" EstimateRows="1" EstimateIO="0" EstimateCPU="0.00010868" AvgRowSize="36" EstimatedTotalSubtreeCost="0.0213601" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</OutputList>
<NestedLoops Optimized="0">
<Predicate>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DataItemID] as [sd].[DataItemID]=[tempdb].[dbo].[#DataItems].[ID] as [d].[ID]">
<Compare CompareOp="EQ">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Predicate>
<RelOp NodeId="5" PhysicalOp="Sort" LogicalOp="Sort" EstimateRows="1" EstimateIO="0.0112613" EstimateCPU="0.000100036" AvgRowSize="36" EstimatedTotalSubtreeCost="0.017933" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</OutputList>
<MemoryFractions Input="0.5" Output="1"/>
<Sort Distinct="0">
<OrderBy>
<OrderByColumn Ascending="1">
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
</OrderByColumn>
</OrderBy>
<RelOp NodeId="6" PhysicalOp="Nested Loops" LogicalOp="Inner Join" EstimateRows="1" EstimateIO="0" EstimateCPU="4.18e-006" AvgRowSize="36" EstimatedTotalSubtreeCost="0.00657174" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</OutputList>
<NestedLoops Optimized="1">
<OuterReferences>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/>
</OuterReferences>
<RelOp NodeId="8" PhysicalOp="Clustered Index Scan" LogicalOp="Clustered Index Scan" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="14" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="1" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/>
</OutputList>
<IndexScan Ordered="0" ForcedIndex="0" ForceScan="0" NoExpandHint="0">
<DefinedValues>
<DefinedValue>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/>
</DefinedValue>
</DefinedValues>
<Object Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Index="[IX_Objects]" Alias="[o]" IndexKind="Clustered"/>
<Predicate>
<ScalarOperator ScalarString="[tempdb].[dbo].[#Objects].[AssetID] as [o].[AssetID]&lt;&gt;(0)">
<Compare CompareOp="NE">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Const ConstValue="(0)"/>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Predicate>
</IndexScan>
</RelOp>
<RelOp NodeId="9" PhysicalOp="Index Seek" LogicalOp="Index Seek" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="37" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="6.59955e+007" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</OutputList>
<IndexScan Ordered="1" ScanDirection="FORWARD" ForcedIndex="0" ForceSeek="0" ForceScan="0" NoExpandHint="0" Storage="RowStore">
<DefinedValues>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
</DefinedValue>
<DefinedValue>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</DefinedValue>
</DefinedValues>
<Object Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Index="[UQ_StandardizedData]" Alias="[sd]" IndexKind="NonClustered"/>
<SeekPredicates>
<SeekPredicateNew>
<SeekKeys>
<Prefix ScanType="EQ">
<RangeColumns>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
</RangeColumns>
<RangeExpressions>
<ScalarOperator ScalarString="[tempdb].[dbo].[#Objects].[AssetID] as [o].[AssetID]">
<Identifier>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="AssetID"/>
</Identifier>
</ScalarOperator>
</RangeExpressions>
</Prefix>
</SeekKeys>
</SeekPredicateNew>
</SeekPredicates>
<Predicate>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodEnd] as [sd].[PeriodEnd]&gt;=[tempdb].[dbo].[#Objects].[PeriodEnd] as [o].[PeriodEnd] AND [Client_TestPerf13_LP].[dbo].[StandardizedData].[CalculationTypeID] as [sd].[CalculationTypeID]=(1)">
<Logical Operation="AND">
<ScalarOperator>
<Compare CompareOp="GE">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Identifier>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Objects]" Alias="[o]" Column="PeriodEnd"/>
</Identifier>
</ScalarOperator>
</Compare>
</ScalarOperator>
<ScalarOperator>
<Compare CompareOp="EQ">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="CalculationTypeID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Const ConstValue="(1)"/>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Logical>
</ScalarOperator>
</Predicate>
</IndexScan>
</RelOp>
</NestedLoops>
</RelOp>
</Sort>
</RelOp>
<RelOp NodeId="10" PhysicalOp="Table Scan" LogicalOp="Table Scan" EstimateRows="26" EstimateIO="0.003125" EstimateCPU="0.0001856" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0033106" TableCardinality="26" Parallel="0" EstimateRebinds="0" EstimateRewinds="0" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/>
</OutputList>
<TableScan Ordered="0" ForcedIndex="0" ForceScan="0" NoExpandHint="0">
<DefinedValues>
<DefinedValue>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" Column="ID"/>
</DefinedValue>
</DefinedValues>
<Object Database="[tempdb]" Schema="[dbo]" Table="[#DataItems]" Alias="[d]" IndexKind="Heap"/>
</TableScan>
</RelOp>
</NestedLoops>
</RelOp>
<RelOp NodeId="12" PhysicalOp="Clustered Index Seek" LogicalOp="Clustered Index Seek" EstimateRows="1" EstimateIO="0.003125" EstimateCPU="0.0001581" AvgRowSize="11" EstimatedTotalSubtreeCost="0.0032831" TableCardinality="1754" Parallel="0" EstimateRebinds="0" EstimateRewinds="3.72529e-008" EstimatedExecutionMode="Row">
<OutputList>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/>
</OutputList>
<IndexScan Ordered="1" ScanDirection="FORWARD" ForcedIndex="0" ForceSeek="0" ForceScan="0" NoExpandHint="0" Storage="RowStore">
<DefinedValues>
<DefinedValue>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/>
</DefinedValue>
</DefinedValues>
<Object Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Index="[IX_Standard]" Alias="[s]" IndexKind="Clustered"/>
<SeekPredicates>
<SeekPredicateNew>
<SeekKeys>
<Prefix ScanType="EQ">
<RangeColumns>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="OwnerID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="DetailID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="PeriodTypeID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="PeriodEnd"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AsOf"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="DataItemID"/>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="ScenarioID"/>
</RangeColumns>
<RangeExpressions>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[AssetID] as [sd].[AssetID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AssetID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[OwnerID] as [sd].[OwnerID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="OwnerID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DetailID] as [sd].[DetailID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DetailID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodTypeID] as [sd].[PeriodTypeID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodTypeID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[PeriodEnd] as [sd].[PeriodEnd]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="PeriodEnd"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[AsOf] as [sd].[AsOf]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="AsOf"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[DataItemID] as [sd].[DataItemID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="DataItemID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator ScalarString="[Client_TestPerf13_LP].[dbo].[StandardizedData].[ScenarioID] as [sd].[ScenarioID]">
<Identifier>
<ColumnReference Database="[Client_TestPerf13_LP]" Schema="[dbo]" Table="[StandardizedData]" Alias="[sd]" Column="ScenarioID"/>
</Identifier>
</ScalarOperator>
</RangeExpressions>
</Prefix>
</SeekKeys>
</SeekPredicateNew>
</SeekPredicates>
</IndexScan>
</RelOp>
</NestedLoops>
</RelOp>
<Predicate>
<ScalarOperator ScalarString="[tempdb].[dbo].[#Standard].[AssetID] as [s].[AssetID] IS NULL">
<Compare CompareOp="IS">
<ScalarOperator>
<Identifier>
<ColumnReference Database="[tempdb]" Schema="[dbo]" Table="[#Standard]" Alias="[s]" Column="AssetID"/>
</Identifier>
</ScalarOperator>
<ScalarOperator>
<Const ConstValue="NULL"/>
</ScalarOperator>
</Compare>
</ScalarOperator>
</Predicate>
</Filter>
</RelOp>
</StreamAggregate>
</RelOp>
</Update>
</RelOp>
</QueryPlan>
</StmtSimple>
</Statements>
</Batch>
</BatchSequence>
</ShowPlanXML>
11 июн 14, 12:12    [16153673]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
iap
Member

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

SELECT-то что вернул, бедолага?
11 июн 14, 12:13    [16153690]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
Glory
А что за таблица StandardizedDataDeleted в статистике чтений, которой нет в ни в тексте нт в плане ?


Таблица для хранения удаленных строк. TRIGGER ON DELETE.
11 июн 14, 12:13    [16153691]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

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

SELECT-то что вернул, бедолага?


PavM
При селеккте стабильно 0 ms, 0 rows
11 июн 14, 12:14    [16153702]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavM
Таблица для хранения удаленных строк. TRIGGER ON DELETE.

И как вы проверяете/замеряете скорость работы этого триггера ?
11 июн 14, 12:15    [16153704]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
Glory
PavM
Таблица для хранения удаленных строк. TRIGGER ON DELETE.

И как вы проверяете/замеряете скорость работы этого триггера ?


ну во первых удаления не происходит - поэтому с чего бы тригеру что-то делать
во вторых пробовали и отключать - было тоже самое.
11 июн 14, 12:20    [16153741]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
iap
Member

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

SELECT-то что вернул, бедолага?


PavM
При селеккте стабильно 0 ms, 0 rows
Значит, записей для удаления нет.
Что обсуждаем?
А в триггере проверяете наличие удалённых записей?
Например, для 0 триггер не выполнять вообще...
11 июн 14, 12:21    [16153746]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
iap
Member

Откуда: Москва
Сообщений: 47085
PavM
Glory
пропущено...

И как вы проверяете/замеряете скорость работы этого триггера ?


ну во первых удаления не происходит - поэтому с чего бы тригеру что-то делать
во вторых пробовали и отключать - было тоже самое.
Удаление происходит. 0 записей. Триггер вызывается и выполняется.
11 июн 14, 12:22    [16153753]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavM
ну во первых удаления не происходит - поэтому с чего бы тригеру что-то делать

Потому что триггер срабатывает независимо от числа затронутых командой записей.
11 июн 14, 12:22    [16153756]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
msLex
Member

Откуда:
Сообщений: 8927
PavM
ну во первых удаления не происходит - поэтому с чего бы тригеру что-то делать

триггер срабатывает на инструкцию (delete в вашем случае) независимо от количества строк ею затронутой.
11 июн 14, 12:22    [16153761]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
PavM
Member

Откуда:
Сообщений: 122
ок, но всё же, отчего вот такая разница?
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 14145 ms.
или
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 1978 ms.
или
SQL Server Execution Times:
CPU time = 16 ms, elapsed time = 279 ms.
11 июн 14, 12:26    [16153795]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
Glory
Member

Откуда:
Сообщений: 104751
PavM
ок, но всё же, отчего вот такая разница?

Потому что это выполнение не одного запроса, а нескольких
11 июн 14, 12:43    [16153922]     Ответить | Цитировать Сообщить модератору
 Re: DELETE: разное время выполнения на одних параметрах  [new]
iap
Member

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

как минимум, в этих тестах Вы не чистите кэш перед каждым DELETE.
11 июн 14, 12:54    [16154017]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить