Andy shows how to use the data flow task, configure an OLE DB destination, and starts calculating throughput to show which design patterns load data faster than others. He discusses data flow internals, buffering, using the data flow Expressions property collection, and benefits of configuring the Data Flow BlobTempStoragePath property.
Archive 1.03 – Whack n’ Load Part 2 (41m)
Andy shows how to use the data flow task, configure an OLE DB destination, and starts calculating throughput to show which design patterns load data faster than others. He discusses data flow internals, buffering, using the data flow Expressions property collection, and benefits of configuring the Data Flow BlobTempStoragePath property.
You'll need a membership to access this course. Check out my training classes.
- 1.1 Day 1 Module 1 (44m)
- 1.2 Day 1 Module 2 (45m)
- 1.3 Day 1 Module 3 (47m)
- 1.4 Day 1 Module 4 (53m)
- 1.5 Day 1 Module 5 (55m)
- 1.6 Day 1 Module 6 (62m)
- 2.1 Day 2 Module 1 (46m)
- 2.2 Day 2 Module 2 (44m)
- 2.3 Day 2 Module 3 (18m)
- 2.4 Day 2 Module 4 (21m)
- 2.5 Day 2 Module 5 (34m)
- 2.6 Day 2 Module 6 (59m)
- 2.7 Day 2 Module 7 (48m)
- 2017 PASS Summit Pre-Con: Expert Performance Tuning for SQL Server 2016 & 2017
- 0.1 Dec 27-29 Class Resources
- 1.1 Indexes: How to Think Like the Engine (110m)
- 1.2 Queries: How SQL Server Builds Plans and Cardinality Estimates (47m)
- 1.3 Indexes: How to Performance Tune Nonclustered Indexes with sp_BlitzIndex (70m)
- 1.4 Waits: LCK: Find and Fight Blocking (49m)
- 2.1 Queries: How to Identify and Fix Parameter Sniffing (84m)
- 2.2 Queries: Watch Brent Tune Queries with SQL Server 2017 (106m)
- 2.3 Waits: CXPACKET – Parallelism Gone Wild (34m)
- 2.4 Waits: PAGEIOLATCH – Slow Storage (77m)
- 3.1 Processes: How to Triage Performance Emergencies (84m)
- 3.2 Waits: ASYNC_NETWORK_IO, RESOURCE_SEMAPHORE, and WRITELOG (40m)
- 3.3 DBA: Corruption 201 – Optimizing CHECKDB Performance (43m)
- 3.1 Day 3 Module 1 (48m)
- 3.2 Day 3 Module 2 (41m)
- 3.3 Day 3 Module 3 (45m)
- 3.4 Day 3 Module 4 (54m)
- 3.5 Day 3 Module 5 (46m)
- Archive 1.05 – Sort Transformations (60m)
- Archive 1.06 – Change Detection Part 1: Brute Force (21m)
- Archive 1.07 – Change Detection Part 2 (31m)
- Archive 1.09 – Performance Tuning for Change Detection (33m)
- Archive 1.10 – Performance Tuning Connections (13m)
- Archive 1.11 – Extract, Load and Transform (33m)
- Archive 2.02 – Execution Part 1 (16m)
- Archive 2.03 – Execution Part 2 & Creating a Catalog (25m)
- Archive 2.04 – Creating Catalogs and Deploying Projects (36m)
- Archive 2.05 – Catalog Monitoring Part 1 (12m)
- Archive 2.06 – Catalog Monitoring Part 2 (28m)
- Archive 2.07 – References, Environment Variables, and Parameters (41m)
- Archive 3.02 – BIML (72m)
- Consultant Toolkit
- Download the Consultant Toolkit
- Frequently Asked Questions
- How to Analyze the Results
- How to Run It
- How to Share the App with Your Clients
- Uploading to Amazon S3
- Data Science Fundamentals with a Real Project (Instant Replay)
- 1.1 Module 1 (1 hour, 34 minutes)
- 1.2 Module 2 (2 hours, 55 minutes)
- 1.3 Module 3 (2 hours, 3 minutes)
- 2.1 Module 1 (1 hours, 36 minutes)
- 2.2 Module 2 (1 hours, 55 minutes)
- 2.3 Module 3 (55 minutes)
- 2.4 Module 4 (1 hour 39 minutes)
- Data Science Fundamentals with R (Live, 2 Days, Recording)
- 1.01 Day 1 Module 1 (34m)
- 1.02 Day 1 Module 2 (34m)
- 1.03 Day 1 Module 3 (10m)
- 1.04 Day 1 Module 4 (5m)
- 1.05 Day 1 Module 5 (37m)
- 1.06 Day 1 Module 6 (35m)
- 1.07 Day 1 Module 7 (9m)
- 1.08 Day 1 Module 8 (5m)
- 1.09 Day 1 Module 9 (42m)
- 1.10 Day 1 Module 10 (23m)
- 1.11 Day 1 Module 11 (36m)
- 1.12 Day 1 Module 12 (31m)
- 1.13 Day 1 Module 13 (20m)
- 2.01 Day 2 Module 1 (12m)
- 2.02 Day 2 Module 2 (19m)
- 2.03 Day 2 Module 3 (30m)
- 2.04 Day 2 Module 4 (6m)
- 2.05 Day 2 Module 5 (8m)
- 2.06 Day 2 Module 6 (13m)
- 2.07 Day 2 Module 7 (13m)
- 2.08 Day 2 Module 8 (18m)
- 2.09 Day 2 Module 9 (7m)
- 2.10 Day 2 Module 10 (16m)
- 2.11 Day 2 Module 11 (4m)
- 2.12 Day 2 Module 12 (13m)
- 2.13 Day 2 Module 13 (14m)
- 2.14 Day 2 Module 14 (14m)
- 2.15 Day 2 Module 15 (9m)
- 2.16 Day 2 Module 16 (20m)
- 2.17 Day 2 Module 17 (7m)
- 2.18 Day 2 Module 18 (11m)
- 2.19 Day 2 Module 19 (25m)
- 2.20 Day 2 Module 20 (12m)
- 2.21 Day 2 Module 21 (14m)
- 2.22 Day 2 Module 22 (7m)
- 2.23 Day 2 Module 23 (6m)
- 2.24 Day 2 Module 24 (13m)
- DBA Job Interview Questions & Answers Kit
- 1. Core DBA Questions (38m)
- 2. Infrastructure Questions (19m)
- 3. Development DBA Questions (20m)
- 4. Screenshot Questions (13m)
- 5. Open-Ended Questions (10m)
- 6. Bad DBA Job Detector Test (19m)
- 7. Questions For YOU to Ask
- Fundamentals of Azure Networking for Data Professionals
- 1.1 Welcome and Class Roadmap
- 1.2 Networking 101
- 1.3 Demo: Creating a Virtual Network
- 2.1 Security, Limiting Access, Private Links
- 2.2 Demo: Using Virtual Networks for Data Services
- 2.3 Demo: Private Networks Without Public Access
- 2.4 Demo: Multiple Private Networks
- 2.5 Demo: Network Security Groups
- 3.1 Extending Networks to Azure with VPNs
- 3.2 Working With a VPN
- 4.1 Networking Topologies: Hub and Spoke vs Mesh
- 5.1 Microsoft-Managed Virtual Networks
- 5.2 Demo: Azure Data Factory Networking
- 6.1 What’s Next: Recap and Resources
- Fundamentals of Columnstore Indexes Instant Replay
- 0.1 Prerequisites Before the Class
- 0.2 How to Set Up Your Own Lab Server
- 01 How Columnstore Data is Stored
- 02 How Columnstore Data is Deleted, Updated, and Inserted
- 03 How Columnstore Data Is Selected
- 04 How Columnstore Data is Rebuilt
- 05 Clustered Columnstore Quiz: Is Your Table a Good Fit?
- 06 Nonclustered Columnstore Advantages
- 07 A Better Clustered Columnstore Candidate
- 08 Partitioning Is a Great Partner for Columnstore
- 09 Recap
- Fundamentals of Database Administration
- Backups 1: 3 Common Strategies
- Backups 2: Restores
- Backups 3: Setting Up Maintenance Plans
- Backups 4: Setting Up Ola Hallengren’s Maintenance Scripts
- Backups: Reading from Databases During Restores
- Configuration: Anti-Virus
- Configuration: Instant File Initialization
- Configuration: Lock Pages in Memory (LPIM)
- Configuration: Prepare for Emergencies with the Remote DAC
- Configuration: Sending Emails with Database Mail
- Configuration: sp_configure Settings
- Configuration: TempDB Files and Sizes
- Corruption 1: How it Happens, and How to Detect It
- Corruption 2: DBCC CHECKDB for VLDBs
- Maintenance: Agent Jobs
- Maintenance: Patches: Which Ones to Apply, When, and How
- Maintenance: Shrinking Files
- Fundamentals of Index Tuning (Instant Replay)
- 0 Prerequisites Before the Class
- 1 Designing Indexes for the WHERE Clause
- 2 Lab: Indexing for WHERE
- 3 Designing Indexes for ORDER BY
- 4 Lab: Indexing for WHERE + ORDER BY
- 5 Designing Indexes for JOINs
- 6 Lab – Indexing for Joins
- 7 SQL Server’s Built-In Index Recommendations
- 8 Recap and Next Steps
- Bonus Lab – Getting Index Recommendations and Tuning Them
- Fundamentals of Parameter Sniffing
- 0.1 Prerequisites Before the Class
- 01. What Parameter Sniffing Is
- 02. The Kinds of Queries That Are Susceptible to Parameter Sniffing
- 03. Mo Choices, Mo Problems
- 04. Lab: Write a Query that’s Susceptible to Parameter Sniffing
- 05. What Triggers Parameter Sniffing Emergencies, Part 1
- 06. What Triggers Parameter Sniffing Emergencies, Part 2
- 07. How to React to Parameter Sniffing Emergencies
- 08. Lab: Tackle a Parameter Sniffing Emergency
- 09. What Parameter Sniffing ISN’T
- 10. How SQL Server 2022 Tries Fixing Parameter Sniffing
- 11. Class Recap
- Bonus: Storytelling Time
- Fundamentals of PowerShell for DBAs
- 1.1 Welcome and Class Roadmap
- 1.2 How Drew Sets Up His Workstation
- 1.3 Setting Up Your Computer
- 2.1 What’s PowerShell?
- 2.2 Using Variables and Lab 1 Assignment
- 2.3 Using CMDLETs and the Pipeline
- 2.4 CMDLETs: Aliasing and the Pipeline
- 2.5 Lab 2 Assignment
- 3.1 Working with Objects
- 3.2 Object Properties and the Pipeline
- 3.3 Object Methods
- 3.4 Making Your Own Objects
- 3.5 Lab 3 Assignment
- 4.1 Logical Operators and Loops
- 4.2 Filtering with WHERE
- 4.3 WHILE Loops
- 4.4 IF – THEN – ELSE
- 4.5 Lab 4 Assignment
- 5.1 Functions and Parameters
- 5.2 Parameters and Error Handling
- 5.3 Lab 5 Assignment
- 6.1 The SQL Server PowerShell Module
- 6.2 The SQLSERVER:\ Drive
- 6.3 Working with SQLSERVER:\ Objects
- 6.4 Lab 6 Assignment
- 7.1 Scripting SQL Server Objects with PowerShell
- 7.2 Objects and Namespaces
- 7.3 Lab 7 Assignment
- 8.1 PowerShell and the SQL Server Agent
- 8.2 Creating Agent Jobs with PowerShell
- 8.3 Scheduling PowerShell Job Steps
- 8.4 Lab 8 Assignment
- 9.1 Auditing Permissions with PowerShell
- 9.2 Exporting Permissions to CSV
- 9.3 Lab 9 Assignment
- 9.4 What’s Next for You
- Fundamentals of Query Tuning
- 1 Prerequisites Before the Class
- 2 Building a Query Plan
- 3 How Parameters Influence Cached Plans
- 4 Improving Cardinality Estimation Accuracy
- 5 Common T-SQL Anti-Patterns
- 6 Execution Plans are Lying Liars
- 7 Recap and Next Steps
- Bonus: How to Find the Right Queries to Tune
- Bonus: Storytelling Time
- Fundamentals of Server Tuning with Wait Stats
- 01. How to Measure and Change Your SQL Server – 3 Metrics to Gather (23 minutes)
- 02. Measuring Your SQL Server with sp_BlitzFirst and Monitoring Software (24 minutes)
- 03. How to Measure and Change Your SQL Server – The Parts Catalog (7 minutes)
- Wait Types – ASYNC_NETWORK_IO (7 minutes)
- Wait Types – CXPACKET (54 minutes)
- Wait Types – LCK% – Locking Snapshot RCSI Part 1 (39 minutes)
- Wait Types – LCK% – Locking Snapshot RCSI Part 2 (29 minutes)
- Wait Types – PAGEIOLATCH Part 1 – Slow Reads from Storage (7 minutes)
- Wait Types – PAGEIOLATCH Part 2 – Ways to Mitigate It (9 minutes)
- Wait Types – RESOURCE_SEMAPHORE (33m)
- Wait Types – SOS_SCHEDULER_YIELD (44m)
- Wait Types – THREADPOOL (27m)
- Wait Types – WRITELOG (12m)
- Fundamentals of Stored Procedures
- 00 Prerequisites Before the Class
- 01 How to Catch and Roll Back Errors
- 02 How to Debug Without the Debugger
- 03 How to Pass In Multiple Values
- 04 How to Pass In Multiple Rows
- 11 Using Triggers on One Table
- Fundamentals of TempDB
- 0 – Prerequisites Before the Class
- 1 – How the Version Store Affects TempDB
- 2 – How Temp Tables Affect TempDB
- 3 – How Table Variables Affect TempDB
- 4 – Temp Tables and Table Variables at Scale: PFS/GAM/SGAM Contention
- 5 – Memory-Optimized Table Variables
- 6 – How Execution Plans Use TempDB
- 7 – Other TempDB Consumers: Cursors, Index Builds, AG Stats
- 8 – How to Provision and Monitor TempDB
- Hardware, Storage, and Virtualization
- 01. Architecture Design: Building a Strategy for RPO and RTO (18m)
- 02. Architecture Design: Tactics – Clustering, Always On, Mirroring, and More (29m)
- 03. Architecture Design: Are Always On Availability Groups Right for You? (40m)
- 04. Hardware: How to Build Fast SQL Servers (30m)
- 05. Hardware: Server Sizing (23m)
- 06. Hardware: Find the Old Server’s Bottleneck with Wait Stats (28m)
- 07. Virtualization: How VMware and Hyper-V Manage Resources (20m)
- 08. Virtualization: Planning for Consolidation and Virtualization (32m)
- 09. Virtualization: Configuring SQL Server for Virtualization (47m)
- 10. Virtualization: Backup Mistakes with Virtual SQL Servers (11m)
- 11. Storage: How to Test and Compare Your Storage (34m)
- 12. Storage: SAN Pathing (21m)
- 13. Storage: How to Set Up Your SAN for SQL Server (22m)
- 14. Storage: Using Solid State Drives with SQL (30m)
- 15. Storage Advanced Features: Tiering (12m)
- 16. Storage Advanced Features: Snapshots, Replication, Migrations (22m)
- 17. Go-Live Checklists and Testing (22m)
- High Availability and Disaster Recovery
- 01. Choosing the Right HA/DR Features: Defining Your RPO and RTO (17m)
- 02. Choosing the Right HA/DR Features: Why Some Options Look So Expensive (12m)
- 03. Choosing the Right HA/DR Features: HA/DR Features Explained (23m)
- 04. Transaction Log Shipping: Log Shipping Overview (17m)
- 05. Transaction Log Shipping: Unplanned Failovers (16m)
- 06. Transaction Log Shipping: Planned Failovers (18m)
- 07. Transaction Log Shipping: Fixing a Lagging Log Shipping Secondary (9m)
- 08. Transaction Log Shipping: Log Shipping Gotchas and Tools (10m)
- 09. Transaction Log Shipping: “Extreme” Log Shipping and Hidden Costs (10m)
- 10. Database Mirroring: Why Database Mirroring is Still Your Friend (13m)
- 11. Database Mirroring: Database Mirroring Rescue Scenarios (12m)
- 12. Database Mirroring: Demo: Failing over a Mirror; Automatic Page Repair (20m)
- 13. Database Mirroring: Monitoring Database Mirroring (8m)
- 14. Database Mirroring: Learning Plan (5m)
- 15. Quorum for Clusters and AGs: What Quorum Is, Why it Matters, and How to Configure It (21m)
- 16. Quorum for Clusters and AGs: Dynamic Quorum and Dynamic Witness (23m)
- 17. Cluster Validation for Clusters and AGs: Demo (11m)
- 18. Failover Clustered Instances: Features, Requirements, and Licensing (20m)
- 19. Failover Clustered Instances: Demo – Failing Over (18m)
- 20. Failover Clustered Instances: Links to Free Online Labs, Install Instructions, Articles
- 21. Always On Availability Groups Planning: Introduction and Sample Deployments (16m)
- 22. AlwaysOn Availability Groups Planning: Horror Stories and Successes (19m)
- 23. AG Failure Triage: Welcome to Triaging AGs (5m)
- 24. AG Failure Triage: Demo: Tour the AG Before It Breaks (7m)
- 25. AG Failure Triage: Demo: Triaging the Broken AG (34m)
- 26. AG Failure Triage: Recap: Why Did Quorum Fail? (5m)
- 27. AG Failure Triage: How You Can Triage Failures in AGs (14m)
- 28. Real-Life Lessons Learned: Brent’s Bug-Out Bag (5m)
- 29. Real-Life Lessons Learned: Role Swap Lessons Learned (9m)
- How I Use the First Responder Kit
- 00 Prerequisites Before the Class
- 01 Doing a Server-Wide Health Check with sp_Blitz
- 02 Doing a Server-Wide Performance Check with sp_BlitzFirst
- 03 Using sp_BlitzCache to Find the Queries Causing Your Top Waits
- 04 Using sp_BlitzIndex to Diagnose the Most Urgent Index Issues
- 05 Analyzing Deadlocks with sp_BlitzLock
- 06 Check Which Queries Are Running with sp_BlitzWho and sp_WhoIsActive
- 07 Check Your Data Risks with sp_BlitzBackup
- 08 Automate the Data-Gathering Process with the Consultant Toolkit
- 09 Recap and Writing Up Your Findings
- How To Set Up Your SQL Server Training Class Lab VM
- How to Think Like the SQL Server Engine
- 1. The Clustered Index (50 minutes)
- 2. Adding Non-Clustered Indexes (30 min)
- 3. Key Lookups and Cardinality Estimation (41 min)
- 4. Next Steps for Learning
- Live Class Logistics
- Mastering Index Tuning
- 0.1 Prerequisites Before the Class (~4 hours)
- 0.2 Download the Slides
- 1.2 The D.E.A.T.H. Method: Dedupe and Eliminate
- 1.3 Why Index Read & Write Numbers Are Wrong
- 1.4 Lab 1 Setup: Dedupe and Eliminate
- 1.4b Lab 1: Dedupe and Eliminate – Brent Does It
- 1.5 The D.E.A.T.H. Method: Tuning Indexes for Specific Queries
- 1.6 Foreign Key and Check Constraints
- 1.7 Lab 2 Setup: Tuning Indexes for Specific Queries
- 1.8 Lab 2: Tuning Indexes for Specific Queries – Brent Does It
- 2.1 Adding Indexes with the DMVs
- 2.2 Tuning to Avoid Key Lookups and Residual Predicates
- 2.3 Lab 3 Setup: Adding Indexes with Clippy and the DMVs
- 2.3b Lab 3: Adding Indexes with Clippy and the DMVs – Brent Does It
- 2.4 The D.E.A.T.H. Method – Heaps and Clustered Indexes
- 2.5 Tuning Indexes to Avoid Blocking
- 2.6 Lab 4 Setup: Solving Blocking with Indexes
- 2.6 Lab 4: Solving Blocking with Indexes – Brent Does It
- 3.1 Filtered Indexes, Indexed Views, and Computed Columns
- 3.2 Lab 5 Setup: Leveraging Artisanal Indexes
- 3.2b Lab 5: Leveraging Artisanal Indexes – Brent Does It
- 3.3 Lab 6 Setup and Final Lessons
- 3.4 Lab 6: Doing the D.E.A.
- 3.5 Lab 6: Doing the D.E.A.T.
- About the Lab Exercises
- Bonus: Storytelling Time
- Bonus: Tips from the Index Sommelier
- Mastering Parameter Sniffing
- 0.1 Prerequisites Before the Class
- 0.2 Download the Slides and Scripts
- 1.1 How Index Tuning Reduces the Stench
- 1.2 How Query Hints Reduce the Stench
- 1.3 The Drawbacks of Using Recompile Hints
- 1.4 Lab 1: Get One Plan to Work Well Enough for Most
- 1.5 Bad Branching Causes Sniffing, Good Branching Reduces It
- 1.6 Lab 2: Reducing Sniffing by Caching Multiple Plans
- 2.1 Spotting Wild Variations in the Plan Cache
- 2.2 How Freeing the Plan Cache Reduces the Blast Radius: usp_PlanCacheAutopilot
- 2.3 Tracking Even More Plan Cache Details with Query Store
- 2.4 Lab 3: Track Down Plans & Parameters
- 3.1 How Memory Grant Feedback Multiplies Parameter Sniffing
- 3.2 How Adaptive Joins Help, and How to Get Them
- 3.3 How Automatic Tuning Mitigates Parameter Sniffing
- 4.1 Lab 4 Setup: Fixing the Problems You’ve Been Tracking Down
- 4.2 Tuning usp_SearchPostsByPostType
- 4.3 Tuning usp_RptFastestAnswers
- 4.4 Tuning usp_SearchPostsByLocation
- 4.5 Tuning usp_RptQuestionsAnsweredForUser
- 4.6 Tuning usp_SearchUsers
- 4.7 Tuning usp_RptPostLeaderboard
- 4.8 Tuning usp_RptAvgAnswerTimeByTag
- 4.9 Tuning usp_GetTagsForUser
- Bonus Lab: Seeing the Effects of SQL Server 2019 Compat Mode
- Bonus: Storytelling Time
- Mastering Query Tuning
- 0.1 Prerequisites Before the Class (59 min)
- 0.2 Download the Slides and Scripts
- 1.1 How SQL Server Builds Query Plans
- 1.2 When the Architect Gets an Early Estimate Wrong
- 1.3 When the Architect Gets a Late Estimate Wrong
- 1.4 Lab 1 Setup: Improving Estimates
- 1.5 The Tuning Robots in SQL Server 2017, 2019, and 2022
- 1.6 Lab 2 Setup: Analyzing a Running Workload
- 2.1 Tuning for SELECT * and Lots of Rows
- 2.2 User-Defined Functions
- 2.3 Lab 3 Setup: Changing Results and Parameters
- 2.4 Dynamic SQL Pro Tips
- 2.5 Lab 4 Setup: Advanced Rewrites
- 3.1 How Parallelism Balances Work Across Threads
- 3.2 Avoiding Deadlocks
- 3.3 Using Batches to Do a Lot of Work Without Blocking
- 4.1 Lab 5 Setup: The Final Lab
- 4.2 Final Lab: Index Tuning
- 4.3a Final Lab: usp_Q1080
- 4.3a Final Lab: usp_Q6627
- 4.3a Final Lab: usp_Q8116
- 4.3a Final Lab: usp_Report3
- 4.3b Final Lab: Logging sp_BlitzCache to a Table
- 4.3c Final Lab: usp_Q7521
- 4.3e Final Lab: usp_FindRelatedPosts
- 4.3f Final Lab: usp_Q6627, Take 2
- Bonus: Storytelling Time
- Mastering Server Tuning with Wait Stats
- 0.1 Prerequisites Before the Class
- 0.2 Download the Slides and Scripts
- 1.1 How to Measure Your SQL Server
- 1.2 How to Fix PAGEIOLATCH Waits
- 1.3 Lab 1: Fixing PAGEIOLATCH Waits
- 1.4 How to Fix CPU Waits (SOS_SCHEDULER_YIELD)
- 1.5 Lab 2: CPU-Intensive Workload
- 2.1 How to Fix Parallelism Waits (CXPACKET, CXCONSUMER, and LATCH_EX)
- 2.2 Plan Caching and Parameterization
- 2.3 Lab 3: Mixed Workload
- 2.4 How to Fix Blocking Waits (LCK%)
- 2.5 Lab 4 Setup: Planning the Work
- 3.1 How to Fix Worker Thread Waits (THREADPOOL)
- 3.2 How to Fix Query Memory Waits (RESOURCE_SEMAPHORE)
- 3.3 How to Fix Hardware-Sounding Waits (WRITELOG, HADR_SYNC_COMMIT, ASYNC_NETWORK_IO)
- 3.4 Lab 5 Setup: Architecture Changes
- 3.5 How to Triage Performance Emergencies
- 3.6 Lab 6 Setup: Emergency Triage
- Bonus: Abnormal Parallelism
- Bonus: Storytelling Time
- Module 01 Intros (21m)
- Module 02 (25m)
- Module 03 (19m)
- Module 04 (40m)
- Module 05 (57m)
- Module 06 (30m)
- Module 07 (48m)
- Module 08 (36m)
- Module 09 (12m)
- Module 10 (18m)
- My Videos & Downloads
- Performance Tuning By Example
- 1.1 Introduction to Your Lab Server and Lab #1 (37m)
- 1.2 Lab 1 Solution: What We’re Looking For (3m)
- 1.3 Lab 1 Solution: Watch Brent Work Through It (51m)
- 1.4 Lab 2 Introduction: Fix It with Indexes (3m)
- 1.5 Lab 2 Solution: What We’re Looking For (8m)
- 1.6 Lab 2 Solution: Watch Brent Work Through It (60m)
- 2.1 Lab 3 Introduction: Fix It with Code Changes (11m)
- 2.2 Lab 3 Solution: Watch Brent Work Through It (55m)
- 2.3 Lab 3 Recap: Slides (7m)
- 2.4 Lab 4 Introduction: Fix Everything! (5m)
- 2.5 Lab 4 Solution: Watch Brent Work Through It (84m)
- 2.6 Lab 4 Recap: Slides (9m)
- Performance Tuning Class (Live, 4 Days, Recording)
- 1.1 Skills Quiz – What’s Your Real Job Title (28m)
- 1.2 How to Think Like the Engine Part 1 (23m)
- 1.2 How to Think Like the Engine Part 2 (48m)
- 1.3 How to Think Like the Engine – Part 3 (46m)
- 1.4 Heaps and Clustered Indexes (41m)
- 1.5 Tuning Indexes with sp_BlitzIndex Part 1 (47m)
- 1.5 Tuning Indexes with sp_BlitzIndex Part 2 (9m)
- 1.6 Homework: Index Tuning Workshop Part 1 (12m)
- 1.7 Homework: Index Tuning Workshop Part 2 – Answers (60m)
- 2.1 Building Execution Plans Part 1 (25m)
- 2.1 Building Execution Plans Part 2 (22m)
- 2.2 Parameter Sniffing Part 1 (20m)
- 2.2 Parameter Sniffing Part 2 (34m)
- 2.3 Watch Brent Tune Queries Part 1 (56m)
- 2.3 Watch Brent Tune Queries Part 2 (8m)
- 2.4 Common Problems in Query Plans (16m)
- 2.5 Functions (17m)
- 2.6 Designing Indexes for Queries Part 1 (21m)
- 2.6 Designing Indexes for Queries Part 2 (26m)
- 2.6 Designing Indexes for Queries Part 3 (14m)
- 2.7 Homework – Query Design Challenge (6m)
- 2.7 Homework – Query Design Challenge Answers (46m)
- 3.1 How to Measure Your Server – Part 1 (24m)
- 3.1 How to Measure Your Server – Part 2: Wait Stats (17m)
- 3.1 How to Measure Your Server – Part 3: sp_BlitzFirst and Monitoring Software (24m)
- 3.1 How to Measure Your Server – Part 4: Wait Stats Q&A (10m)
- 3.2 CXPACKET (41m)
- 3.3 PAGEIOLATCH: Slow Reads from the Data File (57m)
- 3.4 LCK – Locking Snapshot RCSI Part 1 (39m)
- 3.4 LCK – Locking Snapshot RCSI Part 2 (29m)
- 3.5 – CPU Waits – SOS_SCHEDULER_YIELD and THREADPOOL (44m)
- 3.6 – Hardware Waits – ASYNC_NETWORK_IO, RESOURCE_SEMAPHORE, and WRITELOG (25m)
- 4.1 Solving Waits with AlwaysOn Availability Groups (26m)
- 4.2 Solving Waits with Artisanal Indexes – Filters Views Computed Columns (32m)
- 4.3 Solving Waits with In-Memory OLTP (Hekaton) (43m)
- 4.4 VLDB Terabyteasaurus – Splitting Up Databases (33m)
- 4.5 How to Triage SQL Server Emergencies Part 1 (16m)
- 4.5 How to Triage SQL Server Emergencies Part 2 (44m)
- 4.5 How to Triage SQL Server Emergencies Part 3 (43m)
- 4.6 How to Write a Prescription (24m)
- 4.7 Recap and Q&A (58m)
- Performance Tuning in 21 Demos
- 01 – How NOLOCK Can Show Incorrect Results (10m)
- 02 – Locking and Blocking (29m)
- 03 – Deadlocks (18m)
- 04 – Trivial Plans (17m)
- 05 – Picking Index Key Order (34m)
- 06 – Missing Index Column Order (21m)
- 07 – Execution Plans are Lying Liars (24m)
- 08 – Estimates vs Actuals (48m)
- 09 – Table Variables vs Temp Tables: The 2019 Rematch (10m)
- 10 – How Plans Are Cached (10m)
- 11 – Parameter Sniffing (19m)
- 12 – The Problem with Multi-Parameter Stored Procedures (21m)
- 13 – Dynamic SQL Pro Tips (34m)
- 14 – Parallelism (38m)
- 15 – Simplification (14m)
- 16 – Filtered Indexes (23m)
- 17 – Indexed Views (22m)
- 18 – Computed Columns (14m)
- 19 – Heaps of Sadness (11m)
- 20 – Index Usage DMVs are Lying Liars (26m)
- 21 – Resource Semaphore (37m)
- 22 – Questions (17m)
- Bonus – Building a Fork Bomb in T-SQL (11m)
- Bonus – Managed Instance DTUs (4m)
- Bonus – Memory Usage by Different Operators (15m)
- Bonus: Numbers Tables (18m)
- Private Corporate Training
- Recorded Conference Sessions
- Register for Free Live SQL Server Training
- Running SQL Server in AWS & Azure
- 0 – Prerequisites Before the Class
- 1 – How to Assess Your Workloads
- 2 – Cloud Deployment Options
- 3 – Cloud Performance
- 4 – Designing Backups in the Cloud
- 5 – Measuring Performance and Adjusting Instance Sizes
- 6 – Cloud Products Related to SQL Server
- 7 – Recap
- Statistics: SQL Server’s Guessing Game
- 01. A Tale of Two Plans (7m)
- 02. Getting to Know Statistics (15m)
- 03. Combining Multiple Single-Column Statistics (8m)
- 04. Multi-Column Statistics and the Cardinality Estimators (14m)
- 05. What Is the Cardinality Estimator? (5m)
- 06. Filtered Statistics: ENHANCE! (15m)
- 07. The Ascending Key Problem (11m)
- 08. 10 Rules for Managing Statistics (12m)
- 09. Seeks, Scans, and Sargability (9m)
- 10. How Execution Plans are Made (10m)
- T-SQL Level Up
- 01. Prologue and Script Files
- 02. Thinking in Sets (5m)
- 03. Number and Date Tables (10m)
- 04. Case Expressions (17m)
- 05. Computed Columns (10m)
- 06. Windowing Functions – Design (21m)
- 07. Windowing Functions – Performance (8m)
- 08. Replacing Cursors, Part 1 (6m)
- 09. Replacing Cursors, Part 2 (5m)
- 10. Replacing Cursors, Part 3 (7m)
- 11. Let the Adventure Begin! (9m)
- 12. About Doug (2m)
- Terms and Conditions
- The Senior DBA Class
- 1.1 Intro and DBA Skills Quiz (33m)
- 1.2 Building and Testing Reliable SQL Servers Part 1 (25m)
- 1.2 Building and Testing Reliable SQL Servers Part 2 (21m)
- 1.3 Architecture for HA and DR Part 1
- 1.3 Architecture for HA and DR Part 2
- 1.4 Design Quorum for Failover Clusters (23m)
- 1.5 Triaging Failure in Availability Groups (32m)
- 1.6 Recovering from Failover Part 1 (40m)
- 1.6 Recovering from Failover Part 2 (12m)
- 1.7 Building an Inventory and a Support Matrix (39m)
- 2.1 Database Mirroring Field Medic Guide (40m)
- 2.2 Transaction Log Shipping Tips and Tricks (45m)
- 2.3 Troubleshooting Backup and Restore Problems (35m)
- 2.4 Optimizing DBCC CHECKDB (53m)
- 2.5 Availability Group Backup and CHECKDB Part 1 (8m)
- 2.5 Availability Group Backup and CHECKDB Part 2 (32m)
- 2.6 Cloud for the Senior DBA (38m)
- 2.7 Homework: Deciding Between Availability Solutions Part 1 (11m)
- 2.7 Homework: Deciding Between Availability Solutions Part 2 (27m)
- 3.1 Shared Storage Part 1 (28m)
- 3.1 Shared Storage Part 2 (32m)
- 3.2 Advanced SAN Features – Storage Tiering and Snapshots (31m)
- 3.3 Virtualization Management and Troubleshooting (61m)
- 3.4 Server Hardware Sizing (36m)
- 3.5 Homework Part 1 (11m)
- 3.5 Homework Part 2: Answers (28m)
- 3.6 Index Maintenance for Enterprise Environments (43m)
- 3.7 Recap and Q&A (28m)
- Training FAQ
- Training Plans
- Virtual Machine Setup
- Watch Brent Ozar Streaming Live