Large Tables, Big Problems: Indexing, Partitioning, and Archiving at Scale
Proposed session for SQLBits 2026TL; DR
Managing massive tables isn't just about storage, it's about keeping performance sharp and maintenance practical. In this session, you'll learn proven strategies for optimizing queries, indexing, and partitioning on large tables, along with scalable data archival approaches to reduce bloat, control cost, and stay compliant. Ideal for DBAs and data engineers working at scale
Session Details
When your tables reach tens or hundreds of millions of rows, traditional performance strategies start to break down. In this session, we’ll tackle the challenges of working with large and ever-growing tables, with a focus on both query performance and data retention.
You’ll learn:
• How to tune queries and indexes for large-rowset access patterns
• Using partitioning for both performance and maintenance
• Choosing between compression, filtered indexes, and columnstore
• Archival strategies: hot/warm/cold data separation, table splitting, and offloading
• Real-world examples of archiving with automation, partition switching, and hybrid storage models
Whether you're managing operational workloads or analytical systems, this session will give you practical techniques to keep your largest tables efficient, scalable, and under control.
You’ll learn:
• How to tune queries and indexes for large-rowset access patterns
• Using partitioning for both performance and maintenance
• Choosing between compression, filtered indexes, and columnstore
• Archival strategies: hot/warm/cold data separation, table splitting, and offloading
• Real-world examples of archiving with automation, partition switching, and hybrid storage models
Whether you're managing operational workloads or analytical systems, this session will give you practical techniques to keep your largest tables efficient, scalable, and under control.
3 things you'll get out of this session
You’ll learn:
• How to tune queries and indexes for large-rowset access patterns
• Using partitioning for both performance and maintenance
• Choosing between compression, filtered indexes, and columnstore
• Archival strategies: hot/warm/cold data separation, table splitting, and offloading
• Real-world examples of archiving with automation, partition switching, and hybrid storage models
Speakers
Margarita Naumova's previous sessions
Keeping historical data in tables forever – mission (im)possible!
Let’s discover some solutions for keeping historical data in the database when you receive near to impossible requirements like storing data in same tables forever and being able to edit and query them at the same time, of course keeping the response at its best. Based on a real project case the session walks you through the design process from the start to the reaching of the final solution and making the client (and developers) happy.
Modern database design (anti)patterns
We must realize that patterns which were valid 10 years ago are less likely to work now, like cursor logic, xml usage, or storing all in db v/s using NoSQL. From global industry trends to specific database patterns, this session is a combination of best practices, good and bad patterns, tips, and tricks which I give to customers in my work as a consultant.
SQL Server Table partitioning – DOs and DON’Ts
When do we get improvement in the performance, and when should we better not choosing partitioning but some other optimization techniques instead? Shall we optimize by using partitioning or yet another index?
Identify opportunities for In-Memory OLTP
The session will uncover the In-Memory OLTP architecture, the concerns about data durability and database startup and recovery as well as some important consideration on Management of in-memory objects.