-
-
Save daisukenishino2/5402109ba92be11f26058e163a1a770a to your computer and use it in GitHub Desktop.
USE [Northwind] | |
GO | |
/****** Object: Table [dbo].[Orders2] Script Date: 09/18/2012 20:02:26 ******/ | |
SET ANSI_NULLS ON | |
GO | |
SET QUOTED_IDENTIFIER ON | |
GO | |
CREATE TABLE [dbo].[Orders2]( | |
[OrderID] [int] NOT NULL, | |
[CustomerID] [nchar](5) NULL, | |
[EmployeeID] [int] NULL, | |
[OrderDate] [datetime] NULL, | |
[RequiredDate] [datetime] NULL, | |
[ShippedDate] [datetime] NULL, | |
[ShipVia] [int] NULL, | |
[Freight] [money] NULL, | |
[ShipName] [nvarchar](40) NULL, | |
[ShipAddress] [nvarchar](60) NULL, | |
[ShipCity] [nvarchar](15) NULL, | |
[ShipRegion] [nvarchar](15) NULL, | |
[ShipPostalCode] [nvarchar](10) NULL, | |
[ShipCountry] [nvarchar](15) NULL, | |
CONSTRAINT [PK_Orders2] PRIMARY KEY CLUSTERED | |
( | |
[OrderID] ASC | |
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] | |
) ON [PRIMARY] | |
GO | |
<?xml version="1.0" encoding="utf-8" ?> | |
<ROOT> | |
-- DaoOrders2_D1_Insert | |
-- 2014/2/9 日立 太郎 | |
INSERT INTO | |
[Orders2] | |
( | |
<DELCMA> | |
<INSCOL name="OrderID">[OrderID],</INSCOL> | |
<INSCOL name="CustomerID">[CustomerID],</INSCOL> | |
<INSCOL name="EmployeeID">[EmployeeID],</INSCOL> | |
<INSCOL name="OrderDate">[OrderDate],</INSCOL> | |
<INSCOL name="RequiredDate">[RequiredDate],</INSCOL> | |
<INSCOL name="ShippedDate">[ShippedDate],</INSCOL> | |
<INSCOL name="ShipVia">[ShipVia],</INSCOL> | |
<INSCOL name="Freight">[Freight],</INSCOL> | |
<INSCOL name="ShipName">[ShipName],</INSCOL> | |
<INSCOL name="ShipAddress">[ShipAddress],</INSCOL> | |
<INSCOL name="ShipCity">[ShipCity],</INSCOL> | |
<INSCOL name="ShipRegion">[ShipRegion],</INSCOL> | |
<INSCOL name="ShipPostalCode">[ShipPostalCode],</INSCOL> | |
<INSCOL name="ShipCountry">[ShipCountry],</INSCOL> | |
</DELCMA> | |
) | |
VALUES | |
( | |
<DELCMA> | |
<IF>@OrderID,</IF> | |
<IF>@CustomerID,</IF> | |
<IF>@EmployeeID,</IF> | |
<IF>@OrderDate,</IF> | |
<IF>@RequiredDate,</IF> | |
<IF>@ShippedDate,</IF> | |
<IF>@ShipVia,</IF> | |
<IF>@Freight,</IF> | |
<IF>@ShipName,</IF> | |
<IF>@ShipAddress,</IF> | |
<IF>@ShipCity,</IF> | |
<IF>@ShipRegion,</IF> | |
<IF>@ShipPostalCode,</IF> | |
<IF>@ShipCountry,</IF> | |
</DELCMA> | |
) | |
</ROOT> |
-- DaoOrders2_S1_Insert | |
-- 2014/2/9 日立 太郎 | |
INSERT INTO | |
[Orders2] | |
( | |
[OrderID], | |
[CustomerID], | |
[EmployeeID], | |
[OrderDate], | |
[RequiredDate], | |
[ShippedDate], | |
[ShipVia], | |
[Freight], | |
[ShipName], | |
[ShipAddress], | |
[ShipCity], | |
[ShipRegion], | |
[ShipPostalCode], | |
[ShipCountry] | |
) | |
VALUES | |
( | |
@OrderID, | |
@CustomerID, | |
@EmployeeID, | |
@OrderDate, | |
@RequiredDate, | |
@ShippedDate, | |
@ShipVia, | |
@Freight, | |
@ShipName, | |
@ShipAddress, | |
@ShipCity, | |
@ShipRegion, | |
@ShipPostalCode, | |
@ShipCountry | |
) |
<?xml version="1.0" encoding="UTF-8" ?> | |
<ROOT> | |
SELECT | |
OrderID | |
FROM | |
Orders | |
ORDER BY | |
OrderID | |
</ROOT> |
<?xml version="1.0" encoding="UTF-8" ?> | |
<ROOT> | |
SELECT | |
[OrderID], | |
[CustomerID], | |
[EmployeeID], | |
[OrderDate], | |
[RequiredDate], | |
[ShippedDate], | |
[ShipVia], | |
[Freight], | |
[ShipName], | |
[ShipAddress], | |
[ShipCity], | |
[ShipRegion], | |
[ShipPostalCode], | |
[ShipCountry] | |
FROM | |
[Orders] | |
WITH (UPDLOCK) | |
<WHERE> | |
WHERE | |
<LIST>AND [OrderID] IN(@OrderID)</LIST> | |
</WHERE> | |
</ROOT> |
USE [Northwind] | |
GO | |
DECLARE @Counter INT | |
SET @Counter = 1 | |
WHILE @Counter <= 2 | |
BEGIN | |
INSERT INTO [dbo].[Orders] | |
([CustomerID] | |
,[EmployeeID] | |
,[OrderDate] | |
,[RequiredDate] | |
,[ShippedDate] | |
,[ShipVia] | |
,[Freight] | |
,[ShipName] | |
,[ShipAddress] | |
,[ShipCity] | |
,[ShipRegion] | |
,[ShipPostalCode] | |
,[ShipCountry]) | |
VALUES | |
('VINET' | |
,5 | |
,GETDATE() | |
,GETDATE() | |
,GETDATE() | |
,3 | |
,32.38 | |
,'Vins et alcools Chevalier' | |
,'59 rue de l''Abbaye' | |
,'Reims' | |
,'RJ' | |
,51100 | |
,'France') | |
SET @Counter = @Counter + 1 | |
END | |
GO |
DECLARE cursorOrders cursor FOR SELECT * FROM [Northwind].[dbo].[Orders]; | |
DECLARE @OrderID [int]; | |
DECLARE @CustomerID [nchar](5); | |
DECLARE @EmployeeID [int]; | |
DECLARE @OrderDate [datetime]; | |
DECLARE @RequiredDate [datetime]; | |
DECLARE @ShippedDate [datetime]; | |
DECLARE @ShipVia [int]; | |
DECLARE @Freight [money]; | |
DECLARE @ShipName [nvarchar](40); | |
DECLARE @ShipAddress [nvarchar](60); | |
DECLARE @ShipCity [nvarchar](15); | |
DECLARE @ShipRegion [nvarchar](15); | |
DECLARE @ShipPostalCode [nvarchar](10); | |
DECLARE @ShipCountry [nvarchar](15); | |
-- カーソルオープン | |
OPEN cursorOrders | |
-- データを格納 | |
FETCH NEXT FROM cursorOrders | |
INTO @OrderID, @CustomerID, @EmployeeID ,@OrderDate ,@RequiredDate ,@ShippedDate ,@ShipVia ,@Freight ,@ShipName ,@ShipAddress ,@ShipCity ,@ShipRegion ,@ShipPostalCode ,@ShipCountry | |
-- カーソルのデータが終わるまで繰り返す | |
WHILE @@FETCH_STATUS = 0 | |
BEGIN | |
-- 繰り返し処理 | |
INSERT INTO [Northwind].[dbo].[Orders2] VALUES | |
(@OrderID, @CustomerID, @EmployeeID ,@OrderDate ,@RequiredDate ,@ShippedDate ,@ShipVia ,@Freight ,@ShipName ,@ShipAddress ,@ShipCity ,@ShipRegion ,@ShipPostalCode ,@ShipCountry); | |
-- データを格納 | |
FETCH NEXT FROM cursorOrders | |
INTO @OrderID, @CustomerID, @EmployeeID ,@OrderDate ,@RequiredDate ,@ShippedDate ,@ShipVia ,@Freight ,@ShipName ,@ShipAddress ,@ShipCity ,@ShipRegion ,@ShipPostalCode ,@ShipCountry | |
END | |
-- カーソル終了処理 | |
CLOSE cursorOrders | |
DEALLOCATE cursorOrders |
INSERT INTO [Orders2] | |
SELECT * FROM [Orders] |
測定結果1
RerunnableBatch_sample
静的
平均 ExT:955[msec], CT:480[msec], KT:175[msec], UT:305[msec]
- ExT:1037[msec], CT:547[msec], KT:172[msec], UT:375[msec]
- ExT:1010[msec], CT:453[msec], KT:172[msec], UT:281[msec]
- ExT:994[msec], CT:438[msec], KT:188[msec], UT:250[msec]
- ExT:1088[msec], CT:578[msec], KT:281[msec], UT:297[msec]
- ExT:903[msec], CT:438[msec], KT:156[msec], UT:281[msec]
- ExT:887[msec], CT:391[msec], KT:172[msec], UT:219[msec]
- ExT:949[msec], CT:406[msec], KT:125[msec], UT:281[msec]
- ExT:958[msec], CT:547[msec], KT:203[msec], UT:344[msec]
- ExT:851[msec], CT:500[msec], KT:156[msec], UT:344[msec]
- ExT:876[msec], CT:500[msec], KT:125[msec], UT:375[msec]
動的
平均 ExT:1193[msec], CT:722[msec], KT:158[msec], UT:564[msec],
- ExT:1162[msec], CT:719[msec], KT:141[msec], UT:578[msec]
- ExT:1167[msec], CT:734[msec], KT:141[msec], UT:594[msec]
- ExT:1223[msec], CT:688[msec], KT:94[msec], UT:594[msec]
- ExT:1104[msec], CT:609[msec], KT:78[msec], UT:531[msec]
- ExT:1241[msec], CT:750[msec], KT:156[msec], UT:594[msec]
- ExT:1170[msec], CT:719[msec], KT:219[msec], UT:500[msec]
- ExT:1205[msec], CT:750[msec], KT:219[msec], UT:531[msec]
- ExT:1117[msec], CT:750[msec], KT:188[msec], UT:563[msec]
- ExT:1206[msec], CT:656[msec], KT:156[msec], UT:500[msec]
- ExT:1336[msec], CT:844[msec], KT:188[msec], UT:656[msec]
RerunnableBatch_sample2
静的
平均 ExT:767[msec], CT:381[msec], KT:116[msec], UT:266[msec]
- ExT:874[msec], CT:422[msec], KT:94[msec], UT:328[msec]
- ExT:646[msec], CT:328[msec], KT:63[msec], UT:266[msec]
- ExT:758[msec], CT:406[msec], KT:125[msec], UT:281[msec]
- ExT:818[msec], CT:375[msec], KT:156[msec], UT:219[msec]
- ExT:647[msec], CT:297[msec], KT:78[msec], UT:219[msec]
- ExT:715[msec], CT:422[msec], KT:125[msec], UT:297[msec]
- ExT:797[msec], CT:422[msec], KT:141[msec], UT:281[msec]
- ExT:833[msec], CT:406[msec], KT:172[msec], UT:234[msec]
- ExT:729[msec], CT:328[msec], KT:94[msec], UT:234[msec]
- ExT:855[msec], CT:406[msec], KT:109[msec], UT:297[msec]
動的
平均 ExT:1036[msec], CT:631[msec], KT:116[msec], UT:516[msec]
- ExT:1109[msec], CT:641[msec], KT:94[msec], UT:547[msec]
- ExT:1063[msec], CT:656[msec], KT:63[msec], UT:594[msec]
- ExT:1081[msec], CT:672[msec], KT:172[msec], UT:500[msec]
- ExT:1080[msec], CT:688[msec], KT:188[msec], UT:500[msec]
- ExT:889[msec], CT:609[msec], KT:141[msec], UT:469[msec]
- ExT:1018[msec], CT:594[msec], KT:31[msec], UT:563[msec]
- ExT:945[msec], CT:563[msec], KT:141[msec], UT:422[msec]
- ExT:892[msec], CT:531[msec], KT:125[msec], UT:406[msec]
- ExT:1150[msec], CT:688[msec], KT:109[msec], UT:578[msec]
- ExT:1133[msec], CT:672[msec], KT:94[msec], UT:578[msec]
RerunnableBatch_sample3
平均 ExT:522[msec], CT:88[msec], KT:17[msec], UT:71[msec]
- ExT:430[msec], CT:94[msec], KT:31[msec], UT:63[msec]
- ExT:574[msec], CT:78[msec], KT:0[msec], UT:78[msec]
- ExT:589[msec], CT:94[msec], KT:16[msec], UT:78[msec]
- ExT:484[msec], CT:94[msec], KT:31[msec], UT:63[msec]
- ExT:629[msec], CT:109[msec], KT:47[msec], UT:63[msec]
- ExT:597[msec], CT:141[msec], KT:31[msec], UT:109[msec]
- ExT:481[msec], CT:78[msec], KT:16[msec], UT:63[msec]
- ExT:470[msec], CT:63[msec], KT:0[msec], UT:63[msec]
- ExT:415[msec], CT:47[msec], KT:0[msec], UT:47[msec]
- ExT:548[msec], CT:78[msec], KT:0[msec], UT:78[msec]
Transact-SQL
Cursor
平均 ExT:582[msec], CT: - [msec], KT: - [msec], UT: - [msec]
SELECT > INSERT
平均 ExT:11[msec], CT: - [msec], KT: - [msec], UT: - [msec]
結果の分析1
# | 測定モデル | 処理時間(msec) | |
---|---|---|---|
1-1 | RerunnableBatch_sample | 静的 | 955 |
1-2 | 動的 | 1,193 | |
2-1 | RerunnableBatch_sample2 | 静的 | 767 |
2-2 | 動的 | 1,036 | |
3 | RerunnableBatch_sample3 | 静的 | 522 |
4 | Transact-SQL > Cursor | 582 | |
5 | Transact-SQL > SELECT > INSERT | 11 |
ラウンド・トリップ軽減の比較分析
RerunnableBatch_sampleとRerunnableBatch_sample2でラウンド・トリップ軽減したが、1筐体内でループバック・インターフェースで通信しているため、大きな性能差が出なかった(830回を9回に減らして200msec程度の差)。これがクライアント-サーバ間の通信となると、ラウンド・トリップのオーバーヘッドが大きくなり性能差が大きくなる。
静的SQLと動的SQLの比較分析
静的パラメタライズド・クエリと動的パラメタライズド・クエリの比較の際は、
CTを比較し、1件あたり 250msec / 830件 = 0.3msec / 件 程度と動的処理も高速。
※ XMLタグ数によるオーバヘッドについては、コチラを参照。
EXEとT-SQLの比較分析
-
EXE : RerunnableBatch_sample3 はバッチ専用の処理方式であり、CTを見ると、AP側の処理時間は、100msec以下と高速。
因みに、ExTは500msec程度、掛っているので、DB側の処理の方が時間が掛っていることが解る。 -
EXE : RerunnableBatch_sample3(DB→AP→DB) は、
比較対象の、 T-SQL : Cursor (DB→DB)と比べても十分速い事が解る。 -
T-SQL : Select > Insert は、非常に高速だが、間に処理を含めることができない。
測定結果2
RerunnableBatch_sample(静的
1万件
- ExT:9188[msec], CT:5453[msec], KT:1984[msec], UT:3469[msec]
- ExT:8058[msec], CT:5531[msec], KT:2047[msec], UT:3484[msec]
- ExT:7042[msec], CT:5172[msec], KT:1828[msec], UT:3344[msec]
- ExT:8149[msec], CT:5766[msec], KT:2156[msec], UT:3609[msec]
- ExT:7883[msec], CT:5734[msec], KT:1938[msec], UT:3797[msec]
- ExT:9375[msec], CT:5453[msec], KT:2016[msec], UT:3438[msec]
- ExT:7775[msec], CT:5281[msec], KT:1906[msec], UT:3375[msec]
- ExT:8977[msec], CT:5859[msec], KT:2172[msec], UT:3688[msec]
- ExT:7967[msec], CT:5172[msec], KT:1750[msec], UT:3422[msec]
- ExT:9161[msec], CT:5469[msec], KT:1797[msec], UT:3672[msec]
10万件
- ExT:76111[msec], CT:52734[msec], KT:18016[msec], UT:34719[msec]
- ExT:75945[msec], CT:53578[msec], KT:18172[msec], UT:35406[msec]
- ExT:74696[msec], CT:53484[msec], KT:17625[msec], UT:35859[msec]
- ExT:72110[msec], CT:51531[msec], KT:19391[msec], UT:32141[msec]
- ExT:69156[msec], CT:50297[msec], KT:17156[msec], UT:33141[msec]
20万件
- ExT:155149[msec], CT:109547[msec], KT:37078[msec], UT:72469[msec]
- ExT:149833[msec], CT:105828[msec], KT:35516[msec], UT:70313[msec]
100万件
N/A
RerunnableBatch_sample2(静的
1万件
- ExT:5639[msec], CT:4234[msec], KT:1234[msec], UT:3000[msec]
- ExT:5480[msec], CT:4016[msec], KT:1156[msec], UT:2859[msec]
- ExT:5625[msec], CT:4094[msec], KT:1266[msec], UT:2828[msec]
- ExT:5701[msec], CT:4203[msec], KT:1375[msec], UT:2828[msec]
- ExT:5602[msec], CT:4063[msec], KT:1141[msec], UT:2922[msec]
- ExT:5742[msec], CT:4031[msec], KT:1172[msec], UT:2859[msec]
- ExT:5770[msec], CT:4109[msec], KT:1188[msec], UT:2922[msec]
- ExT:5594[msec], CT:3984[msec], KT:1250[msec], UT:2734[msec]
- ExT:5560[msec], CT:4094[msec], KT:1141[msec], UT:2953[msec]
- ExT:5561[msec], CT:4078[msec], KT:1266[msec], UT:2813[msec]
10万件
- ExT:51188[msec], CT:39547[msec], KT:10969[msec], UT:28578[msec]
- ExT:51467[msec], CT:39531[msec], KT:11031[msec], UT:28500[msec]
- ExT:54153[msec], CT:41031[msec], KT:11047[msec], UT:29984[msec]
- ExT:53608[msec], CT:41188[msec], KT:11953[msec], UT:29234[msec]
- ExT:53042[msec], CT:40953[msec], KT:11625[msec], UT:29328[msec]
20万件
- ExT:105219[msec], CT:79844[msec], KT:22031[msec], UT:57813[msec]
- ExT:113258[msec], CT:85344[msec], KT:24094[msec], UT:61250[msec]
100万件
N/A
RerunnableBatch_sample3(静的
1万件
- ExT:2230[msec], CT:797[msec], KT:141[msec], UT:656[msec]
- ExT:2188[msec], CT:719[msec], KT:47[msec], UT:672[msec]
- ExT:2481[msec], CT:703[msec], KT:94[msec], UT:609[msec]
- ExT:2174[msec], CT:719[msec], KT:141[msec], UT:578[msec]
- ExT:2293[msec], CT:891[msec], KT:109[msec], UT:781[msec]
- ExT:2261[msec], CT:766[msec], KT:47[msec], UT:719[msec]
- ExT:2243[msec], CT:750[msec], KT:141[msec], UT:609[msec]
- ExT:2284[msec], CT:672[msec], KT:109[msec], UT:563[msec]
- ExT:2247[msec], CT:719[msec], KT:141[msec], UT:578[msec]
- ExT:2245[msec], CT:703[msec], KT:78[msec], UT:625[msec]
10万件
- ExT:20703[msec], CT:7328[msec], KT:1016[msec], UT:6313[msec]
- ExT:18764[msec], CT:7172[msec], KT:1359[msec], UT:5813[msec]
- ExT:18827[msec], CT:6641[msec], KT:1078[msec], UT:5563[msec]
- ExT:18790[msec], CT:6922[msec], KT:1281[msec], UT:5641[msec]
- ExT:18796[msec], CT:7172[msec], KT:1344[msec], UT:5828[msec]
- ExT:18718[msec], CT:7203[msec], KT:1391[msec], UT:5813[msec]
- ExT:18658[msec], CT:6969[msec], KT:1234[msec], UT:5734[msec]
- ExT:19024[msec], CT:6891[msec], KT:1281[msec], UT:5609[msec]
- ExT:19119[msec], CT:7016[msec], KT:1391[msec], UT:5625[msec]
- ExT:19109[msec], CT:6844[msec], KT:1203[msec], UT:5641[msec]
20万件
- ExT:38376[msec], CT:14375[msec], KT:1969[msec], UT:12406[msec]
- ExT:38908[msec], CT:14359[msec], KT:2203[msec], UT:12156[msec]
- ExT:38408[msec], CT:13922[msec], KT:1953[msec], UT:11969[msec]
- ExT:42259[msec], CT:16328[msec], KT:2313[msec], UT:14016[msec]
- ExT:41773[msec], CT:16047[msec], KT:2063[msec], UT:13984[msec]
100万件
- ExT:198943[msec], CT:74766[msec], KT:10641[msec], UT:64125[msec]
- ExT:187223[msec], CT:69531[msec], KT:11063[msec], UT:58469[msec]
Transact-SQL > Cursor
1万件
10万件
20万件
100万件
Transact-SQL > SELECT > INSERT
1万件
10万件
20万件
100万件
結果の分析2
単位は、msec
測定モデル\データ件数 | 830件 | 1万件 | 10万件 | 20万件 | 100万件 |
---|---|---|---|---|---|
RerunnableBatch_sample(静的 | 955 | 8,356 | 73,604 | 152,491 | N/A |
RerunnableBatch_sample2(静的 | 767 | 5,627 | 52,692 | 109,239 | N/A |
RerunnableBatch_sample3(静的 | 522 | 2,265 | 19,051 | 39,945 | 193,083 |
Transact-SQL > Cursor | 582 | 2,419 | 17,949 | 42,744 | 176,551 |
Transact-SQL > SELECT > INSERT | 11 | 35 | 244 | 467 | 2,172 |
※ Transact-SQL > SELECT > INSERTは、単純なInsert処理より高速なので、
ヒープを直接処理しているため高速な模様(比較対象として不適切)。
※ データを見ると、性能はデータ件数に比例することを確認できる。
- 疑似フェッチ方式なので、データ件数が増えてもメモリ・リークなどは起こさない。
- また、EXE : RerunnableBatch_sample3(DB → AP → DB) は、比較対象の、T-SQL : Cursor (DB → DB)と比べて同等程度の性能だが、1筐体内でループバック・インターフェースで通信しているため、大きな性能差が出ていないものと思われる。従って、ネットワーク経由となると、コミット・インターバルのラウンド・トリップ分、クライアント-サーバ間の通信オーバーヘッドが増えて遅くなると考えられる。
追加の調査と結果
RerunnableBatch_sample2(動的)の100万件の処理時間
処理時間の計測
結果
静的 : 546,195(推定値)---> 動的 : 778,368
- ExT:783472[msec], CT:653578[msec], KT:117828[msec], UT:535750[msec]
- ExT:773263[msec], CT:652172[msec], KT:117594[msec], UT:534578[msec]
RerunnableBatch_sample3でローカルIPアドレスを使用した際の100万件の処理時間
処理時間の計測
- ローカル・ループバック・アドレスから、ローカルIPアドレスに変更して計測。
その際、ルーティング・テーブルを変更してデフォルト・ゲートウェイ経由にする。- Windowsでルーティングテーブルを操作する:Tech TIPS - @IT
http://www.atmarkit.co.jp/ait/articles/0301/11/news003.html - 例
- ローカルIPアドレス : 192.168.179.3
- デフォルト・ゲートウェイ : 192.168.179.1
- Windowsでルーティングテーブルを操作する:Tech TIPS - @IT
>route ADD 192.168.179.3 MASK 255.255.255.255 192.168.179.1 METRIC 3
- また、コミット・インターバル(上限2,100)をチューニングして性能に与える影響を調査する。
(疑似フェッチでパラメタを使用しており、SQL Serverのパラメタ上限が2,100迄のため)
結果
コミット・インターバル = 100
ローカル・ループバック・アドレス : 193,083 ---> ローカルIPアドレス : 1053,107
- ExT:1039615[msec], CT:87141[msec], KT:22859[msec], UT:64281[msec]
- ExT:1066599[msec], CT:89047[msec], KT:24016[msec], UT:65031[msec]
コミット・インターバル = 2,000
ローカル・ループバック・アドレス : 290,963 ---> ローカルIPアドレス : 781,757
- ローカル・ループバック・アドレス
- ExT:283370[msec], CT:66094[msec], KT:6172[msec], UT:59922[msec]
- ExT:298555[msec], CT:69563[msec], KT:5828[msec], UT:63734[msec]
- ローカルIPアドレス
- ExT:780203[msec], CT:76813[msec], KT:12359[msec], UT:64453[msec]
- ExT:783311[msec], CT:80953[msec], KT:13844[msec], UT:67109[msec]
前提条件
データ
Northwindデーターベース
測定方法
EXE
高分解能パフォーマンス・カウンタを使用
(QueryPerformanceCounter関数)
T-SQL
SQL Server Management Studioのクライアント統計を使用
システム情報
DBMS
SQL Server 2016 Express Edition
systeminfo
[01]: Intel64 Family 6 Model 78 Stepping 3 GenuineIntel ~2300 Mhz
測定モデル(EXE)
概要
Ordersテーブルのデータを、
同じスキーマのOrders2テーブルに移す。
コミット・インターバル
着信要求のパラメーターが多すぎます。
サーバーがサポートするパラメーターは最大 2,100 個です。
パラメーターの数を減らしてから、要求を再送信してください。
疑似フェッチ方式
疑似フェッチ方式を採用。
測定対象
測定対象の特徴については以下のリンクを参照下さい。
EXE
RerunnableBatch_sample
RerunnableBatch_sample2
RerunnableBatch_sample3
Transact-SQL
Cursor
SELECT > INSERT