Course Information

Course CodeMS2784 (MOC2784) (M2784)
Fee£895 (Exclusive of VAT)
DurationThree Days
Delivery FormatInstructor-Led
Scheduled Dates:Please Contact Us for Information

Introduction

This three-day instructor-led workshop provides database developers working in enterprise environments using Microsoft SQL Server 2005 the knowledge and skills to evaluate and improve queries and query response times. The workshop focuses on systematic identification and optimization of database factors that impact query performance.

Audience

This course is intended for current professional database developers who have three or more years of on-the-job experience developing SQL Server database solutions in an enterprise environment.

Completion

Design a normalized database.

Optimize a database design by denormalizing.

Manage concurrency by selecting the appropriate transaction isolation level.

Select a locking granularity level.

Prerequisites

In addition, it is recommended, but not required, that students have completed:

Examinations

Exam 70–442: PRO: Designing and Optimizing Data Access by Using Microsoft SQL Server 2005

Materials

The student kit includes a comprehensive workbook and other necessary materials for this class.

Course Outline

Unit 1: Measuring Database Performance

This unit provides students with an opportunity to measure database performance and identify database performance bottlenecks. Students will use a sample script to identify performance and concurrency problems, capture baseline performance, and prioritize identified problems for optimization.

Topics

Lab: Measuring Database Performance

After completing this unit, students will be able to:

Unit 2: Optimizing Physical Database Design

In this unit, students work with strategies for optimizing physical database design. Students will optimize a database schema using normalization, generalization, and denormalization.

Topics

Lab: Optimizing Schemas

After completing this unit, students will be able to:

Unit 3: Optimizing Queries for Performance

In this unit students experience optimizing and tuning queries to improve performance. In the lab, students will optimize stored procedures, views, and non-cursor aggregate queries to improve database performance and user experience.Each query that is optimized improves the overall system because the query will use fewer resources, freeing up those resources for other queries, and reducing the amount of locking done by the query. The domino effect is profound.

Topics

Lab: Optimizing Queries

After completing this unit, students will be able to:

Unit 4: Refactoring Cursors into Queries

In this unit, students will work with strategies for refactoring cursors into queries. In the lab, students will work to optimize a database by replacing slow iterative code with faster set-based code.

Topics

Lab: Refactoring Cursors into Queries

After completing this unit, students will be able to:

Unit 5: Optimizing an Indexing Strategy

In this unit, students will work on optimizing indexing strategies. Students will work with a given database to add and delete indexes, by providing the optimum bridge between the query and the data without any redundancies.

Topics

Lab: Optimizing an Indexing Strategy

After completing this unit, students will be able to:

Unit 6: Managing Concurrency

This unit provides students with the opportunity to work with concurrency management. Students will look for concurrency issues and then solve them by optimizing transactions and adjusting the transaction isolation level.

Topics

Lab: Reducing Blocking

After completing this unit, students will be able to: