
Explore how indices on Microsoft SQL Server boost query performance by reducing execution times, mastering index types, execution plans, and practical cleanup strategies.
Explain what an index is as a presorted, alphabetically ordered subset of data with references to the master dataset, like a lexicon's page numbers.
Explore table structures on the Esco server, including heaps, clustered indexes (primary keys), non-clustered indexes with included columns, and notes on column store and Exham indices.
Learn to explore SQL Server indexing by building clustered and non-clustered indexes, comparing heaps, and evaluating predicates, density, and leftmost column ordering for efficient queries.
Explore how heaps are implemented on the escrowed server, including data pages and the index allocation map, and why table scans on heaps provide poor performance and should be avoided.
Understand how a clustered index stores data in sorted order as the actual table, organized as a B-tree with root, intermediate, and leaf nodes, and how page splits impact storage.
Explore the non-clustered index, which preserves data order in the clustered index, uses a B-tree, and stores index pages with values and pointers to data in the clustered index.
Understand included columns in non-clustered indexes and how they carry payload data. Attached columns are not part of the index and can change without resorting.
Indices improve query performance in SQL Server but require storage and can slow inserts and updates; extend existing indexes when possible, and design a limited index set for each application.
Create a filtered index by adding a column and defining a filter, yielding a significantly smaller index than the full table, and understand the need for expertise to run queries.
Examine how data insertion causes page splits and fragmentation that affect clustered and non-clustered indices, and how reorganize or rebuild via Management Studio mitigates this when fragmentation reaches 10 percent.
See how the Microsoft SQL Server optimizer builds execution plans for queries, uses statistics and cardinality to decide index usage, and stores costed plans in the plan cache.
Explore operators in execution plans, including filter, scan, and sort operators, and join types like merge join, nested loop, and hash match, with notes on missing indexes.
Explore operator properties in execution plans, comparing actual and estimated plans, physical and logical operations, rows and costs, and index usage with seek predicates and constraints.
Learn how statistics power cardinality estimation and affect query plans, and how outdated index statistics mislead the optimizer into suboptimal executions; manual updates with Espey underscore updates are possible.
Apply index optimization to execution plans by indexing the email column and the first name last name set, reducing query cost and improving response times, with guidance on included columns.
Identify and prune over indexed databases by analyzing index usage, deactivating suspicious indices, and rebuilding them to restore performance, while monitoring updates and redundancy in live systems.
Identify queries with long execution times by examining high logical reads in management studio to uncover missing indexes after removing unnecessary indices.
Merge and prune SQL Server indices by checking containment and field order to remove redundant ones. Balance fewer columns with order relevance and included columns to align with query needs.
Analyze a live customer database with a self-written index analyzer to identify duplicates and unnecessary indices, assess usage, and plan reorganization for better query performance.
Apply index knowledge from the course to speed up SQL Server queries and optimize performance. Celebrate your new understanding of indices and aim to impress your boss with measurable results.
Over time, databases continue to grow – and with that, problems begin to emerge. Query response times get slower and slower, and eventually users feel like they’re waiting forever for results.
Indexes can make a significant difference here. They act as accelerators by helping the database engine navigate efficiently through large amounts of data. This allows queries to return results much faster and can dramatically reduce response times. In real-world scenarios, it’s not uncommon for one or two well-designed indexes to reduce query execution time from several hours to just a few minutes.
This improvement doesn’t only affect performance – it also impacts hardware requirements. Systems can often be scaled down, or existing resources can be used far more efficiently.
Despite this enormous potential, solid knowledge of indexes and how to use them effectively is surprisingly rare.
In this course, you will learn what indexes are and how to apply them properly. We will explore the different types of indexes in detail and take a closer look at execution plans to understand how the database engine works internally.
By the end of this course, you will be able to analyze the performance of your SQL Server environment and make well-founded decisions about optimizations.
If you apply what you learn, this knowledge can also give you a strong advantage in your next salary negotiation.