SlideShare a Scribd company logo
SQL Server Deep Dive
IT Talk
Denis Reznik
Data Architect at Intapp, Inc.
Microsoft Data Platform MVP
About Me
• Kyiv, Ukraine
• Data Architect at Intapp, Inc.
• Microsoft Data Platform MVP
• PASS Regional Mentor, CEE
• Ukrainian Data Community Kyiv Co-Founder
• Co-author of “SQL Server MVP Deep Dives vol. 2”
How We See SQL Server
3 |
Some Magic
Query Result Set
SQL Server Deep Drive
SQL Server Network Interface
SQL Server Protocols
• Shared Memory
• TCP/IP
• Named Pipes
• VIA (Deprecated)
TDS Endpoints
TCP/IP
Shared Memory
Named Pipes
VIA
DAC
TCP/IP
Note: TDS – Tabular Data Stream
Connection
• Connection can be Succeed or Not
• https://www.connectionstrings.com/
• Connection string contains settings for Connection Timeout (or Timeout)
• Connection Timeout just limit the time for establishing a connection
• Does not limit the query execution time
• sys.dm_exec_connections
• sys.dm_exec_sessions
• sys.dm_exec_requests
• sys.dm_os_tasks
• … down to the bottom of SQLOS
8 |
Query Processor
Parser Algebraizer Optimizer Executor
Query Processing
Plan Cache
Algebraizing
• Define types for every node in ParseTree
• Check that objects are exist and available in current execution context
• Extract literals from the query
• e.g. WHERE User_Id = 1, 1 is a literal
• Returns BoundTree (QueryTree)
• Logical representation of the query
• Goal – get the optimal execution plan
• “Optimal” = Plan with the smallest cost
• Cost = sum_of_all_operators_costs(I/O + CPU +
memory_consumption)
Optimizer
Query Tree
Pre-Optimization
Search for trivial plan
Load statistics (simple)
Simplification – syntax transformation
Optimization
Heap
1 .. 100
100 .. 1k
5K .. 6K
1K .. 5K
6K .. 7K
15K .. 21K
12K .. 15K
10K .. 11K
21K .. 22K
22K .. 41K
9K .. 10K
41K .. 51K
7K .. 8K
8K .. 9K
71K .. 1M
51K .. 71K
1M .. 2M
2M .. 3M
Clustered Index
…
…
1 .. 1M
1 .. 2K 2K+1 .. 4K 1M-2K .. 1M
1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K
Index Seek
…
…
1 .. 1M
1 .. 2K 2K+1 .. 4K 1M-2K .. 1M
1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K
SELECT * FROM Users
WHERE Id = 523
Index Scan
…
…
1 .. 1M
1 .. 2K 2K+1 .. 4K 1M-2K .. 1M
1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K
SELECT * FROM Users
Index Range Scan
…
…
1 .. 1M
1 .. 2K 2K+1 .. 4K 1M-2K .. 1M
1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K
SELECT * FROM Users
WHERE Id BETWEEN 700
AND 1700
Non-Clustered Index
…
A .. Z
A .. C C .. K X .. Z
…
1 .. 1M
1 .. 2K 2K+1 .. 4K 1M-2K .. 1M
SELECT * FROM Users
WHERE Name = 'Donald Trump'
1 .. 2K 2K .. 4K 1M-2K .. 1M
Clustered Index
(Id)
Non-Clustered Index
(Name)
Heap
Optimizer Phase 0
Load Statistics
Exploration – Plan Alternatives
Estimated cost < 0.2
Return Transaction Processing Plan
Optimization
Statistics
500
1000
10
1200
800
1 800 2000 2800 4500 5400
SELECT * FROM Users
WHERE Id BETWEEN 2100 AND 2500
SELECT * FROM Users
WHERE Id BETWEEN 200 AND 5000
Query Plan Alternatives SELECT * FROM Users u
INNER JOIN Posts p
ON u.Id = p.OwnerUserId
WHERE u.DisplayName = 'John Snow'
Users
Posts
Posts
Users
Query Plan Alternatives
• 1 Table – 1 option
• 2 Tables – 2 options
• 3 Tables – 6 options
• 4 Tables – 24 options
• …
• 10 Tables – 3628800 options
• 1 Table – 1!
• 2 Tables – 2!
• 3 Tables – 3!
• 4 Tables – 4!
• …
• 10 Tables – 10!
Optimizer Phase 1
Next set of query rules
Estimate parallel plan (estimation processed twice)
• Max Degree of Parallelism
• Cost Threshold for Parallelism
Estimated cost < 1.0
Returns Quick Plan
Optimization
Parallel Query Execution
• Amdal’s Law
Thread 1
Thread 2
Thread 3
Thread 4
1s2s
Optimizer Phase 2
Full Set of Optimization Rules
Indexed views
Returns Full Query Plan
• All planned checks were done
• Good Enough Plan was Found
• Timeout
• Memory Limit Exceeded
Optimization
Executing
• Execute query using its Query Plan
• Request data from the Storage Engine
Parameter Sniffing
Exec SomeProc @p
Optimizer
SQL Server Cache
Procedure cache@p
Plan is cached for the
first value of
Procedure cache
DEMO
Parameter Sniffing
Storage Engine
Buffer Pool
Data Cache
Database File
Access Methods
Buffer Manager
Data Selection
?
What if I load 2GB value from the
disk and read this data using
NOLOCK?
Data Modification
Buffer Pool
Data Cache
Database File
Access Methods Buffer Manager
Transaction Log
Log Manager
Log Buffer
?
?
Background
ProcessesLock Manager
? 3 cases
Transaction Log
Autogrow
Log Backup or CHECKPOINT
FULL Recovery Model
• Log all transactions
• Database can be restored to any point of time
• Highly recommended for critical data
• Transaction truncation occurs after log backup
BULK-LOGGED Model
• Log all transactions
• Minimally-Logged operations are logged in another way
• Database can’t be restored to any point of time
• Can be temporary interchanged with FULL recovery model to do
Minimally-Logged operations more effectively
• Transaction truncation occurs after log backup
SIMPLE Recovery Model
• Log all transactions like in BULK-LOGGED recovery model
• Transaction truncation occurs after CHECKPOINT
DEMO
Log Shrink
Lock Types - Shared
S S
X
Lock Types - Exclusive
X
X
S
Lock Types - Update
U
U
S
SX
Lock Types – Intent locks
S
ISIS
ID City
1 Kyiv
2 Kharkiv
3 Dnipropetrovsk
BEGIN TRAN
UPDATE Users
SET CityId = 2
WHERE Id = 4
UPDATE City
SET Name = 'Dnipro'
WHERE Id = 3
ID User City_Id
1 Tony Stark 2
2 John Smith 2
3 Clark Kent 2
4 Ivan Vanko 3
Classic Deadlock
X
BEGIN TRAN
UPDATE City
SET Name = 'Dnipro'
WHERE Id = 3
UPDATE Users
SET CityId = 2
WHERE Id = 4
X
DEADLOCK!
DEMO
Deadlock
SQLOS
CPU – Cooperative Multitasking
0
CPUsQueries
1
2
3
Time Quantum Length for each Scheduler is 4 ms
Windows Memory Management
0001 0010 0101
0000 1001 0101
0011 1010 1001
1110 0010 0110
0001 0010 0101
0000 1001 0101
0011 1010 1001
Physical Memory (RAM)
Page File
VirtualMemory
Virtual Memory
Manager
SQL Server
Browser
Word
Data Cache Query Cache
Locks Memory Memory Grants
Some Small Caches
External Memory
Buffer Pool
SQL Server Memory Consumers
Network
Bandwidth
TCP Packages
TCP Packages
TCP Packages
Bandwidth
TCP Packages
Query Execution
Thread Pool
Running
Suspended
Runnable
Sleeping
Scheduler
Logical CPU
Worker (Thread)
Connection
DEMO
Thread Pool Starvation
Summary
50 |
Thank You!
IT Talk
Denis Reznik
Twitter: @denisreznik
Email: denisreznik@gmail.com
Blog: http://reznik.uneta.com.ua
Facebook: https://www.facebook.com/denis.reznik.5
LinkedIn: http://ua.linkedin.com/pub/denis-reznik/3/502/234

More Related Content

Similar to SQL Server Deep Drive (20)

PPTX
Se2017 query-optimizer
Mary Prokhorova
 
PPTX
SQL Server 2014 Extreme Transaction Processing (Hekaton) - Basics
Tony Rogerson
 
PPTX
Database Performance Tuning
Arno Huetter
 
PDF
Practical SQL query monitoring and optimization
Ivo Andreev
 
PPTX
Column store indexes and batch processing mode (nx power lite)
Chris Adkin
 
PDF
Oracle Query Tuning Tips - Get it Right the First Time
Dean Richards
 
PPT
Ms sql server architecture
Ajeet Singh
 
PPTX
SQL Server 2012 Best Practices
Microsoft TechNet - Belgium and Luxembourg
 
PPTX
Sql Server
SandyShin
 
PPTX
It Depends
Maggie Pint
 
PPTX
It Depends - Database admin for developers - Rev 20151205
Maggie Pint
 
PDF
4 execution plans
Ram Kedem
 
PPTX
Denis Reznik "True SQL Server Detective"
Fwdays
 
PDF
SqlDay 2018 - Brief introduction into SQL Server Execution Plans
Marek Maśko
 
PPTX
JSSUG: SQL Sever Index Tuning
Kenichiro Nakamura
 
PPTX
How to Think Like the SQL Server Engine
Brent Ozar
 
PDF
SQL Server Tuning to Improve Database Performance
Mark Ginnebaugh
 
PPTX
Databases 101
David Caughill
 
PDF
Sql server 2016 new features
Ajeet Singh
 
Se2017 query-optimizer
Mary Prokhorova
 
SQL Server 2014 Extreme Transaction Processing (Hekaton) - Basics
Tony Rogerson
 
Database Performance Tuning
Arno Huetter
 
Practical SQL query monitoring and optimization
Ivo Andreev
 
Column store indexes and batch processing mode (nx power lite)
Chris Adkin
 
Oracle Query Tuning Tips - Get it Right the First Time
Dean Richards
 
Ms sql server architecture
Ajeet Singh
 
SQL Server 2012 Best Practices
Microsoft TechNet - Belgium and Luxembourg
 
Sql Server
SandyShin
 
It Depends
Maggie Pint
 
It Depends - Database admin for developers - Rev 20151205
Maggie Pint
 
4 execution plans
Ram Kedem
 
Denis Reznik "True SQL Server Detective"
Fwdays
 
SqlDay 2018 - Brief introduction into SQL Server Execution Plans
Marek Maśko
 
JSSUG: SQL Sever Index Tuning
Kenichiro Nakamura
 
How to Think Like the SQL Server Engine
Brent Ozar
 
SQL Server Tuning to Improve Database Performance
Mark Ginnebaugh
 
Databases 101
David Caughill
 
Sql server 2016 new features
Ajeet Singh
 

More from DataArt (20)

PDF
DataArt Custom Software Engineering with a Human Approach
DataArt
 
PDF
DataArt Healthcare & Life Sciences
DataArt
 
PDF
DataArt Financial Services and Capital Markets
DataArt
 
PDF
About DataArt HR Partners
DataArt
 
PDF
Event management в IT
DataArt
 
PDF
Digital Marketing from inside
DataArt
 
PPTX
What's new in Android, Igor Malytsky ( Google Post I|O Tour)
DataArt
 
PDF
DevOps Workshop:Что бывает, когда DevOps приходит на проект
DataArt
 
PDF
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
DataArt
 
PDF
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
DataArt
 
PDF
Communication in QA's life
DataArt
 
PDF
Нельзя просто так взять и договориться, или как мы работали со сложными людьми
DataArt
 
PDF
Знакомьтесь, DevOps
DataArt
 
PDF
DevOps in real life
DataArt
 
PDF
Codeless: автоматизация тестирования
DataArt
 
PDF
Selenoid
DataArt
 
PDF
Selenide
DataArt
 
PDF
A. Sirota "Building an Automation Solution based on Appium"
DataArt
 
PDF
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
DataArt
 
PPTX
IT talk: Как я перестал бояться и полюбил TestNG
DataArt
 
DataArt Custom Software Engineering with a Human Approach
DataArt
 
DataArt Healthcare & Life Sciences
DataArt
 
DataArt Financial Services and Capital Markets
DataArt
 
About DataArt HR Partners
DataArt
 
Event management в IT
DataArt
 
Digital Marketing from inside
DataArt
 
What's new in Android, Igor Malytsky ( Google Post I|O Tour)
DataArt
 
DevOps Workshop:Что бывает, когда DevOps приходит на проект
DataArt
 
IT Talk Kharkiv: «‎Soft skills в IT. Польза или вред? Максим Бастион, DataArt
DataArt
 
«Ноль копеек. Спастись от выгорания» — Сергей Чеботарев (Head of Design, Han...
DataArt
 
Communication in QA's life
DataArt
 
Нельзя просто так взять и договориться, или как мы работали со сложными людьми
DataArt
 
Знакомьтесь, DevOps
DataArt
 
DevOps in real life
DataArt
 
Codeless: автоматизация тестирования
DataArt
 
Selenoid
DataArt
 
Selenide
DataArt
 
A. Sirota "Building an Automation Solution based on Appium"
DataArt
 
Эмоциональный интеллект или как не сойти с ума в условиях сложного и динамичн...
DataArt
 
IT talk: Как я перестал бояться и полюбил TestNG
DataArt
 
Ad

Recently uploaded (20)

PPTX
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
PDF
The Future of Artificial Intelligence (AI)
Mukul
 
PDF
Per Axbom: The spectacular lies of maps
Nexer Digital
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PPTX
Simple and concise overview about Quantum computing..pptx
mughal641
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PPTX
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PDF
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PDF
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
The Future of Artificial Intelligence (AI)
Mukul
 
Per Axbom: The spectacular lies of maps
Nexer Digital
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
Simple and concise overview about Quantum computing..pptx
mughal641
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Applied-Statistics-Mastering-Data-Driven-Decisions.pptx
parmaryashparmaryash
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
Researching The Best Chat SDK Providers in 2025
Ray Fields
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
AVL ( audio, visuals or led ), technology.
Rajeshwri Panchal
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Ad

SQL Server Deep Drive

  • 1. SQL Server Deep Dive IT Talk Denis Reznik Data Architect at Intapp, Inc. Microsoft Data Platform MVP
  • 2. About Me • Kyiv, Ukraine • Data Architect at Intapp, Inc. • Microsoft Data Platform MVP • PASS Regional Mentor, CEE • Ukrainian Data Community Kyiv Co-Founder • Co-author of “SQL Server MVP Deep Dives vol. 2”
  • 3. How We See SQL Server 3 | Some Magic Query Result Set
  • 5. SQL Server Network Interface
  • 6. SQL Server Protocols • Shared Memory • TCP/IP • Named Pipes • VIA (Deprecated)
  • 7. TDS Endpoints TCP/IP Shared Memory Named Pipes VIA DAC TCP/IP Note: TDS – Tabular Data Stream
  • 8. Connection • Connection can be Succeed or Not • https://www.connectionstrings.com/ • Connection string contains settings for Connection Timeout (or Timeout) • Connection Timeout just limit the time for establishing a connection • Does not limit the query execution time • sys.dm_exec_connections • sys.dm_exec_sessions • sys.dm_exec_requests • sys.dm_os_tasks • … down to the bottom of SQLOS 8 |
  • 10. Parser Algebraizer Optimizer Executor Query Processing Plan Cache
  • 11. Algebraizing • Define types for every node in ParseTree • Check that objects are exist and available in current execution context • Extract literals from the query • e.g. WHERE User_Id = 1, 1 is a literal • Returns BoundTree (QueryTree) • Logical representation of the query
  • 12. • Goal – get the optimal execution plan • “Optimal” = Plan with the smallest cost • Cost = sum_of_all_operators_costs(I/O + CPU + memory_consumption) Optimizer Query Tree Pre-Optimization Search for trivial plan Load statistics (simple) Simplification – syntax transformation Optimization
  • 13. Heap 1 .. 100 100 .. 1k 5K .. 6K 1K .. 5K 6K .. 7K 15K .. 21K 12K .. 15K 10K .. 11K 21K .. 22K 22K .. 41K 9K .. 10K 41K .. 51K 7K .. 8K 8K .. 9K 71K .. 1M 51K .. 71K 1M .. 2M 2M .. 3M
  • 14. Clustered Index … … 1 .. 1M 1 .. 2K 2K+1 .. 4K 1M-2K .. 1M 1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K
  • 15. Index Seek … … 1 .. 1M 1 .. 2K 2K+1 .. 4K 1M-2K .. 1M 1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K SELECT * FROM Users WHERE Id = 523
  • 16. Index Scan … … 1 .. 1M 1 .. 2K 2K+1 .. 4K 1M-2K .. 1M 1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K SELECT * FROM Users
  • 17. Index Range Scan … … 1 .. 1M 1 .. 2K 2K+1 .. 4K 1M-2K .. 1M 1 .. 300 301 .. 800 801 .. 1,5K 1,5K+1 .. 2K SELECT * FROM Users WHERE Id BETWEEN 700 AND 1700
  • 18. Non-Clustered Index … A .. Z A .. C C .. K X .. Z … 1 .. 1M 1 .. 2K 2K+1 .. 4K 1M-2K .. 1M SELECT * FROM Users WHERE Name = 'Donald Trump' 1 .. 2K 2K .. 4K 1M-2K .. 1M Clustered Index (Id) Non-Clustered Index (Name) Heap
  • 19. Optimizer Phase 0 Load Statistics Exploration – Plan Alternatives Estimated cost < 0.2 Return Transaction Processing Plan Optimization
  • 20. Statistics 500 1000 10 1200 800 1 800 2000 2800 4500 5400 SELECT * FROM Users WHERE Id BETWEEN 2100 AND 2500 SELECT * FROM Users WHERE Id BETWEEN 200 AND 5000
  • 21. Query Plan Alternatives SELECT * FROM Users u INNER JOIN Posts p ON u.Id = p.OwnerUserId WHERE u.DisplayName = 'John Snow' Users Posts Posts Users
  • 22. Query Plan Alternatives • 1 Table – 1 option • 2 Tables – 2 options • 3 Tables – 6 options • 4 Tables – 24 options • … • 10 Tables – 3628800 options • 1 Table – 1! • 2 Tables – 2! • 3 Tables – 3! • 4 Tables – 4! • … • 10 Tables – 10!
  • 23. Optimizer Phase 1 Next set of query rules Estimate parallel plan (estimation processed twice) • Max Degree of Parallelism • Cost Threshold for Parallelism Estimated cost < 1.0 Returns Quick Plan Optimization
  • 24. Parallel Query Execution • Amdal’s Law Thread 1 Thread 2 Thread 3 Thread 4 1s2s
  • 25. Optimizer Phase 2 Full Set of Optimization Rules Indexed views Returns Full Query Plan • All planned checks were done • Good Enough Plan was Found • Timeout • Memory Limit Exceeded Optimization
  • 26. Executing • Execute query using its Query Plan • Request data from the Storage Engine
  • 27. Parameter Sniffing Exec SomeProc @p Optimizer SQL Server Cache Procedure cache@p Plan is cached for the first value of Procedure cache
  • 30. Buffer Pool Data Cache Database File Access Methods Buffer Manager Data Selection ? What if I load 2GB value from the disk and read this data using NOLOCK?
  • 31. Data Modification Buffer Pool Data Cache Database File Access Methods Buffer Manager Transaction Log Log Manager Log Buffer ? ? Background ProcessesLock Manager ? 3 cases
  • 33. FULL Recovery Model • Log all transactions • Database can be restored to any point of time • Highly recommended for critical data • Transaction truncation occurs after log backup
  • 34. BULK-LOGGED Model • Log all transactions • Minimally-Logged operations are logged in another way • Database can’t be restored to any point of time • Can be temporary interchanged with FULL recovery model to do Minimally-Logged operations more effectively • Transaction truncation occurs after log backup
  • 35. SIMPLE Recovery Model • Log all transactions like in BULK-LOGGED recovery model • Transaction truncation occurs after CHECKPOINT
  • 37. Lock Types - Shared S S X
  • 38. Lock Types - Exclusive X X S
  • 39. Lock Types - Update U U S SX
  • 40. Lock Types – Intent locks S ISIS
  • 41. ID City 1 Kyiv 2 Kharkiv 3 Dnipropetrovsk BEGIN TRAN UPDATE Users SET CityId = 2 WHERE Id = 4 UPDATE City SET Name = 'Dnipro' WHERE Id = 3 ID User City_Id 1 Tony Stark 2 2 John Smith 2 3 Clark Kent 2 4 Ivan Vanko 3 Classic Deadlock X BEGIN TRAN UPDATE City SET Name = 'Dnipro' WHERE Id = 3 UPDATE Users SET CityId = 2 WHERE Id = 4 X DEADLOCK!
  • 43. SQLOS
  • 44. CPU – Cooperative Multitasking 0 CPUsQueries 1 2 3 Time Quantum Length for each Scheduler is 4 ms
  • 45. Windows Memory Management 0001 0010 0101 0000 1001 0101 0011 1010 1001 1110 0010 0110 0001 0010 0101 0000 1001 0101 0011 1010 1001 Physical Memory (RAM) Page File VirtualMemory Virtual Memory Manager SQL Server Browser Word
  • 46. Data Cache Query Cache Locks Memory Memory Grants Some Small Caches External Memory Buffer Pool SQL Server Memory Consumers
  • 47. Network Bandwidth TCP Packages TCP Packages TCP Packages Bandwidth TCP Packages
  • 51. Thank You! IT Talk Denis Reznik Twitter: @denisreznik Email: [email protected] Blog: http://reznik.uneta.com.ua Facebook: https://www.facebook.com/denis.reznik.5 LinkedIn: http://ua.linkedin.com/pub/denis-reznik/3/502/234