Tag perfmon

PASS App Dev SIG Live Meeting – May 19th, 1:00 PM

Rolling Your Own Replication

Presenter: Brent Ozar

SQL Server’s built-in replication has made great strides in the last couple of versions, but what if it’s still not enough? One team needed more flexibility, easier administration and higher scalability, so they built their own solution instead. Brent Ozar will discuss how the system was architected, the pros and cons, and how you can build a similar solution for your own needs. He’ll explain some of the lessons learned in scaling this out to thousands of remote SQL Servers

How Do I View the Presentation?

Follow the link and join the LiveMeeting.

Audio is provided through a conference bridge:
Toll-free: +1 (866) 379-8990
Participant code: 6489756

If this is your first time using LiveMeeting, please make sure to check your system for compatability issues.

Production Problems, Community, and You

How many of you out there have had production issues? You, the liar in the back, put your hand up. Well, we experienced a major performance issue in production last week.

For those that don’t know, I’m not a production DBA. I’m what they call a “development DBA.” I write stored procedures, tune the SQL, write indexes, and work with developers to ensure speedy data access. As someone who comes from the software development world, it’s a logical place to be. But, history aside, I don’t possess the knowledge of the SQL Server internals like many of my production DBA brethren.

Back to the problem at hand. On Wednesday, the users started noticing exceptional slow downs in the application. These weren’t the usual slow downs where things took a little bit longer than expected, queries that normally took 2 seconds were taking minutes to come back. Since our ASP.NET application is, largely, a passthrough that calls stored procedures and loads the results into a datagrid, we quickly ruled out application performance. Plus, I tested some stored procedures on the production database and they ran slowly. (I say our application is largely a passthrough, but I don’t mean to do a disservice to the developers. It is quite a sophisticated piece of software, it just doesn’t do a lot of heavy lifting.)

Luckily, I was able to leverage a few resources to resolve this issue.

1) Blogs

I subscribe to a lot of blogs. A LOT of blogs. From reading Brent Ozar’s blog, I remembered that he has a section at the top of his website on using perfmon and another on performance tuning. It also helps that he recently presented at the CBusPASS user group on using perfmon. I fired up my browser, went to Brent’s blogs, and started working with the monitoring set up that he outlined. This got me going pretty quickly and gave me a great deal of information.

In addition to checking up on Brent’s step by step instructions, I remembered that another SQL Server blogger had posted a SQL script to find the top 10 slowest running queries and their execution plans. I couldn’t (and still can’t) remember who wrote it. Which leads to:

2) Social Networks

In this case, Twitter. I opened up TweetDeck and sent out a tweet with a question asking if anyone had seen that blog post. Someone remembered what I was talking about and sent me a link. Since I’m not much of a production DBA, yet, I kept raising questions on twitter which were rapidly answered by many different people. I was able to work with them to figure out the best solution to my specific questions and move forward quickly.

Within 15 minutes, I was armed with a methodology to track down root cause of the problem as well as a query that would help me pinpoint any specific query problems. Without the collective knowledge of the SQL Server DBA community, it would have taken me a lot longer to understand and solve the problem.

It turns out that the problem was a missing column in an index that caused a full table scan on one of the largest tables in the database which, in turn, caused locking issues.

CBusPASS Meeting 2009.02.12

We had our second user group meeting tonight, and I would like to send a special thanks to Brent Ozar for being willing to present. We had around twenty people in attendance physically and another dozen or so in attendance virtually via Live Meeting.

The resources from Brent’s presentation on Perfmon and Profiler are available online at the CBusPASS Meeting Archive.

Brent’s posts about Perfmon and analytics are available online:
http://www.BrentOzar.com/perfmon
http://www.BrentOzar.com/perfmoncloud

In addition, Brent mentioned Excel Table Analysis Tools for the Cloud:
http://www.SQLServerDataMining.com/cloud

In addition, Brent is the Editor-in-Chief for SQL Server Pedia (where this blog is also syndicated).

Thanks again, Brent, for taking your time to present. I’d also be an awful user group leader if I didn’t thank my steering committee for their invaluable help, Battelle For Kids for providing the meeting space, and Quest Software for providing the Live Meeting.

For those who missed out, Brent will be giving this presentation again on February 19 with the West Michigan SQL Server User Group. You can find more info on Brent’s upcoming events page.

This site is protected with Urban Giraffe's plugin 'HTML Purified' and Edward Z. Yang's Powered by HTML Purifier. 219 items have been purified.