স্ট্যাটিসটিকস আইও আউটপুটে সংস্করণ স্টোরের পাঠগুলি অন্তর্ভুক্ত রয়েছে?


9

এসকিউএল সার্ভারের একটি বিকল্প রয়েছে SET STATISTICS IO ONযা কোয়েরির জন্য পড়া লজিক্যাল এবং শারীরিক পৃষ্ঠার সংখ্যা দেখায়। এই পরিসংখ্যানগুলিতে কি এসএনএপশট এবং আরসিএসআই ক্যোয়ারীগুলির জন্য সংস্করণ স্টোরের পাঠগুলি অন্তর্ভুক্ত রয়েছে?

উত্তর:


10

STATISTICS IO কমপক্ষে টেম্পডিবিতে সংস্করণ স্টোরের জন্য সংস্করণ স্টোরের পাঠগুলি অন্তর্ভুক্ত করে না।

প্রমাণের জন্য এখানে একটি ডেমো রয়েছে:

--setup script
USE master
GO

CREATE DATABASE TestDB
GO

ALTER DATABASE TestDB
SET ALLOW_SNAPSHOT_ISOLATION ON
GO

USE TestDB
GO

DROP TABLE IF EXISTS dbo.Test
GO

CREATE TABLE dbo.Test (ID int identity PRIMARY KEY, junk int)

INSERT dbo.Test
SELECT TOP (100000) 1
FROM master.dbo.spt_values a
CROSS JOIN master.dbo.spt_values b

একটি এসএসএমএস ট্যাবে 30 এর আপডেট লুপটি শুরু করুন

--UPDATE loop
SET NOCOUNT ON
DECLARE @stop datetime = DATEADD(SECOND, 30, GETDATE())

WHILE GETDATE() < @stop
BEGIN
    BEGIN TRAN

    UPDATE dbo.Test
    SET junk += 1

    COMMIT
END

UPDATE dbo.Test
SET junk = 1

এবং যখন লুপ যাচ্ছে, দুটি অভিন্ন প্রশ্নের চালানোর SNAPSHOTসঙ্গে STATISTICS IO ON, -15 দ্বারা পৃথক স্তূপাকার সংস্করণ অনুমতি দেয়।

USE TestDB
SET STATISTICS IO ON
GO

SET TRANSACTION ISOLATION LEVEL SNAPSHOT

BEGIN TRAN

SELECT MAX(junk)
FROM dbo.Test

WAITFOR DELAY '00:00:15'

SELECT MAX(junk)
FROM dbo.Test

COMMIT

আইও পরিসংখ্যানগুলি অভিন্ন পাঠ দেখায়: পরিসংখ্যান IO

সংস্করণ স্টোরটি পড়ার কারণে প্রকৃত বাস্তবায়ন পরিকল্পনায় দ্বিতীয় ক্যোয়ারির জন্য অনেক বেশি সময় নিয়ে স্ক্যানটি দেখানো হয়েছে। আসল পরিকল্পনা

নিজেকে প্রমাণ করার জন্য যে এই ক্যোয়ারির ফলস্বরূপ টেম্পডিবির পাঠ ঘটে, আপনি এই প্রসারিত ইভেন্টস সেশনটি ব্যবহার করতে পারেন (যা প্রকৃতপক্ষে প্রোফাইলারের চেয়ে ভাল), যে সেশনটিতে পড়ার প্রশ্নগুলি চলছে তা ফিল্টার করে:

CREATE EVENT SESSION [file_reads] ON SERVER 
ADD EVENT sqlserver.file_read_completed(
    ACTION(sqlserver.session_id,sqlserver.sql_text)
    WHERE ([sqlserver].[session_id]=(52)))
ADD TARGET package0.event_file(SET filename=N'file_reads')
GO

ডেমো চলাকালীন সেই XE সেশনের জন্য "লাইভ ডেটা" দেখে আপনি দেখতে পাবেন ডাটাবেস আইডি 2 (টেম্পডিবি) এর বিপরীতে, এবং এটি আমাদের পঠিত ক্যোয়ারির ক্যোয়ারী পাঠ্যটিকেও ধারণ করে:

টেম্পিডবি রিড দেখানো এক্সই সেশনের স্ক্রিনশট

পল হোয়াইটকে এই বিষয়টি স্ট্যাটিস্টিকস আইও-র সাথে আনার জন্য বিশেষ ধন্যবাদ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.