Dealing with Very Large Tables in SQL Server
summary
Practical runbook for tables >1TB with concrete numbers and fixes: an unindexed filter on 20 billion rows, 4.6 TB, 28 minutes, 72M logical reads shows why early indexing matters; use online/resumable builds or filtered indexes if you can. Statistics sampling causes massive overestimates (examples: 100M rows → 44x, specific query 245 vs 32,000 → ~130x); fix with higher sample rates, persist_sample_percent and NORECOMPUTE, or manual filtered stats and async auto‑update. Also demos include profiler checks, columnstore quirks, range‑seek workarounds and ALTER TABLE SWITCH to remove identity without full copy.
AI-written summary · about
chapters (13)
- 0:00Large tables in SQL Server
- 1:09Defining very large tables
- 3:57Challenges with large tables
- 7:28Missing indexes cost
- 9:57Query writing impact
- 14:10Cardinality estimation issues
- 24:33Fixing cardinality issues
- 28:44Auto update stats async
- 35:38Auto create stats risks
- 39:13Querying log tables
- 42:31Ascending key problem
- 46:18Identity column changes
- 50:33Q&A
related talks
51mDealing with Very Large Tables in SQL Server
51mDealing with Very Large Tables in SQL Server
54mLessons learned from refactoring multi terabyte databases for the last 10 years
53mWhen to stop tuning a query
54mLessons learned from refactoring multi terabyte databases for the last 10 years
53mWhen to stop tuning a query
53mIndexing Internals for Developers & DBAs
01h 00m7 Tips to Performance Tuning, Optimization, and Everything
