Below is a list of presentations and their abstracts that I’ve given over the last few years. If you are looking for a presentation on one of these topics for you user group, conference, or other gathering feel free to contact me at email@example.com to make arrangements. For past presentations of these topics, check out my past presentations page.
Getting To Know Your Indexes
Without proper indexing SQL Server can be hard pressed to create efficient and performant execution plans. Dynamic Management Views (DMV) and system views provide a slew of information about indexes that can be used to analyze indexes within SQL Server. In this session we’ll go under the hood of SQL Server to look at DMVs and system views to know what indexes you have, should have, and how they feel about the way applications are treating them.
- Identify methods to analyze current and potential indexes
- Learn how to alleviate stress found on indexes
- Demonstrate methods for tuning indexes
Using XML to Query Execution Plans
SQL Server stores its execution plans as XML in dynamic management views. The execution plans are a gold mine of information. From the whether or not the execution plan will rely on parallelism to what columns are requiring a key lookup after a non-clustered index seek. Through a the use of XML this information can be available at your finger tips to help determine the value and impact of an index and guide you in improving the performance of your SQL Server databases.
- Discuss information available in an execution plan
- Demonstrate use of XQuery to query execution cache
- Demonstrate methods to performance tune
Solving Business Pains with SQL Server Integration Services
SQL Server Integration Services (SSIS) offers a wide range of features and functionality that can be used to solve business pains within Extract, Transform, and Load (ETL) processes. These pains can be caused by the performance of current ETL process, the maintainability of ETL processes or represent a new pain that SSIS features can resolve. This presentation will provide a demonstration of real world scenarios where features of SSIS were used to solve business pains through modification of existing SSIS packages or through the creation of new SSIS packages. The session will also discuss current best practices in SSIS package design.
- Understand flexibility that SSIS features provide
- Demonstrate application of SSIS functionality to business needs
- Discuss current best practices in SSIS package design
Backups! Don’t Get Caught With Your Pants Down!
Did you hear about the blog site that disappeared when their system failed and they didn’t have a backup to restore from? Or how about the pet supplier that went out of business after a DELETE statement removed everything from their database and there wasn’t a backup on hand. These aren’t urban myths but rather typical stories that make the news every couple months. Is your company one database failure from collapse? In this session, we’ll go over the basis of backups. And also go over the basics and best practices in creating a backup and recovery strategy.
- Define the reasons for database recovery plans
- Understand how to fit database recovery plans to database backup strategies
- Demonstrate methods to ensure a recoverable database
Drive Your Way to the DMV
Dynamic Management Views (DMVs) and Dynamic Management Functions (DMF) have been around since the release of SQL Server 2005. But for many people DMVs and DMFs are still a mystery. Step under the hood and review some of the main DMVs and DMFs in SQL Server. From sessions to caches, this session will provide a walk-through of some of the more useful DMVs and a practical look at how they can be used?
- Provide a definition of key DMVs within SQL Server
- Learn how to use DMVs to discover statistics on the state and performance of the SQL Server
- Demonstrate how to use DMVs to collect and utilize information to manage and performance tune SQL Server
Improving Daily Imports with Partitioned Tables
At some point, everyone struggles with loading data to OLTP systems. The business needs the data loaded so that users can work through the data. But the users can’t afford the downtime to get the data into the production tables. In this session we’ll review this problem and how to use partitioning to alleviate this issue.
- Identify situations where partitioned tables can improve database performance
- Demonstrate partitioned table solution for daily imports
ABCs of CTEs
Common Table Expressions (CTE) aren’t as common as their name implies. CTEs are often seen as a secret part of the dark art of recursion. This session will explore CTEs to show how they can be extremely useful in improving performance and legibility of T-SQL code. And, of course, we will look at their use in returning recursive data.
- Provide an understanding of the purpose and use of CTEs for recursion and derived tables
- Define the pro’s and con’s to using CTEs in recursion and for derived tables
- Demonstrate real-world examples detailing methods for using CTEs to solve coding challenges
Extended Events, Work Smarter Not Harder
There are many ways to performance monitor your SQL Server environment. In this session we’ll review Extended Events, which is one of the newer SQL Server monitoring platforms. Learn the ins and outs of how to get detailed information on the errors and events that occur within SQL Server and how to dig into the information. With a few T-SQL statements, issues that could take weeks to research can be investigated in minutes.
- Define the architecture for Extended Events
- Identify scenarios where Extended Event can be used to troubleshoot performance
- Demonstrate solutions to real-world performance scenarios
A Function By Any Other Name Is A Function, Right? Right?!?
User defined functions provide a means to encapsulate business logic in the database tier. Often the purpose of the encapsulation is to provide standard method access segments of data within the database. Unfortunately, not all methods of creating user defined functions are equal. In this session we’ll review the types of user defined functions and investigate the performance impact in selecting the different types
- Identify purposes for creating user defined functions
- Discuss the types of user-defined functions
- Demonstrate performance impact in selecting different types of functions