同資料列資料(In-Row Data)Part 2

同資料列資料(In-Row Data)Part 2

ROCK在之前有寫到關於同資料列資料(In-Row Data)Part 1 這個設定

但只是紙上談兵,今日就將該功能設定做一個小LAB吧。

 

下圖中我們先建裡兩個資料表InRowTable及OutRowTable,我們將OutRowTable開啟

large value types out of row這一個功能(預設是關閉)。同時將兩個資料表塞入大量資料。

1

 

 

完成資料表建立跟塞入大量資料後,我們用 Select * 去Query兩個資料表。如下圖,我們可以看見

兩個一樣Schema的資料表(資料筆數及內容也一樣)。在邏輯讀取上InRowTable資料表比OutRowTable

的IO高 338 : 134 ,但是OutRowTable的LOB邏輯讀取數高達65870。

2

 

 

下圖是我們在Select時避開LOB欄位,因此我們只Select id而已,此時我們可以看見OutRowTable資料

表的IO就佔上風了。

3

 

結論 : 當我們資料表有Nvarchar(max)或Varchar(max)等大型欄位時,該開啟large value types out of row在IO上會比較好,還是關閉large value types out of row(預設)會較佳呢?應該還是得視您的AP商業邏輯來決定。

我是ROCK

rockchang@mails.fju.edu.tw