Read the New TPC Database Benchmarking Series

Introduction to TPC Database Benchmarks Let's talk about database application benchmarking. This is a skill set which, in my opinion, is one of the major differentiators between a journeyman-level DBA and a true master of the trade. In this article published in my monthly column at Database Trends & Applications magazine, I'll give you a brief introduction to TPC benchmarks and, in future articles, I'll be telling you how to extract specific pieces of valuable information from the published benchmark results. But let's get started with an overview … read … [Read more...]

Squishy Limits in SQL Server Express Edition

It's an old story you've probably heard before.  Provide a free version of your software product with strict limitations on performance or other specific capabilities so that folks can give it a try without risk, while you minimize the chance of cannibalizing sales of your commercial products.  Microsoft has take this strategy with SQL Server Express Edition, not only to increase adoption in the student market but also to counter the threat of open-source (i.e. free) relational databases like MySQL for entry-level applications. One such limitation of SQL Server Express Edition is that it … [Read more...]

SQL Intersection!

The best emotion to describe how I'm feeling is 'astounded'.  I'm astounded that I'm in such august company to be speaking the SQLIntersection (#iSQL) conference.  Read the blog post from my first SQL Server mentor, Kimberly Tripp, which tells you all about SQLintersection. Check out this list of speakers: Aaron Bertrand, Sr. Consultant, SQL Sentry, Inc. [blog | twitter] Andrew J. Kelly, Mentor, SolidQ [blog | twitter] Bob Ward, Principal Architect Escalation Engineer, Microsoft [blog | twitter] Brent Ozar, Brent Ozar Unlimited [blog | twitter] Conor Cunningham, Principal … [Read more...]

Learn More About SQL Server IO and Query Tuning in These Webcasts

I'm doing two new webcasts next week on Wednesday, December 19th, one in the morning and the other after lunch.   SSDs are a Game Changer for SQL Server Storage No, don't let the title mislead you.  This session is not exclusively about SSDs.  But this is my first session on IO and storage tuning that emphasizes SSDs over hard disks.  As Bob Dylan said "Times, they are a'changin'".  This session on Wednesday, December 19th at 11:30 AM EST, sponsored by Astute Networks, takes you through all of the basics of storage and IO tuning, regardless of the underlying storage technology.  I'll … [Read more...]

Let’s Talk Licensing and Virtualization for SQL Server

I have two new articles up on Database Trends & Applications magazine.  I'd love to get your thoughts and feedback! Welcome to the Weird, Wild World of SQL Server Licensing Not long in the past, SQL Server licensing was an easy and straightforward process. You used to take one of a few paths to get your SQL Server licenses. The first and easiest path was to buy your SQL Server license with your hardware. Want to buy a HP Proliant DL380 for a SQL Server application? Why not get your SQL Server Enterprise Edition license with it at the same time? Just pay the hardware vendor for the … [Read more...]

Quick Tip – Speed a Slow Restore from the Transaction Log

Here's a quick tip for you: During some restore operations on Microsoft SQL Server, the transaction log redo step might be taking an unusually long time.  Depending somewhat on the version and edition of SQL Server you've installed, you may be able to increase performance by tinkering with the readahead performance for the redo operations.  To do this, you should use the MAXTRANSFERSIZE parameter of the RESTORE statement.  For example, if you set MAXTRANSFERSIZE=1048576, it'll use 1MB buffers. If you change the MAXTRANSFERSIZE, keep an eye on the PerfMon objects for Buffer Manager and … [Read more...]

PASS Summit 2012, Slide Decks

Ok, I have to admit the painful truth. I'm reliably slow to the finish line. This year, I got my slides into PASS HQ by the skin of my teeth, the weekend before the event was to begin.  Although I could say with a straight face "I uploaded my slides!".  I have to be honest that I wasn't surprised when many of my attendees said that they weren't available for download by the time my session started.  OTOH, I also have to say that I really do prefer for attendees to focus on the presentation while it's being presented and that they should grab the slides afterwards.  But that's just my personal … [Read more...]

The Zombie PerfMon Counter That Never Dies! Quick Tip

The PerfMon Counters That Just Won't Die One of the things that's simultaneously great and horrible about the Internet is that once something gets posted out in the ether, it basically never goes away.  (Some day, politicians will realize this.  We can easily fact check their consistency).  Because of longevity of content posted to the Internet, a lot of performance tuning topics become "zombies".  We shoot 'em in dead, but they keep coming back! In other words, those old recommendations were a suggested best practices for long ago, for a specific version of SQL Server, but are now … [Read more...]

Flexibility When Waiting on Locks

Speaking at a recent SQL Saturday, an attendee in one of my sessions wanted to know how they could more flexibly react to locks on their application than to wait for blocks to occur and then kill the SPID at the head of the blocking chain.  They were also interested in some alternatives to using the  SQL Server syntax like the WITH (NOLOCK) hint, since that might have unintended consequences due to allowing reads on uncommitted data. One alternative I suggested is the SET LOCK_TIMEOUT n statement.  Since most of the attendees hadn't heard of this statement, I figured it'd make a good blog … [Read more...]

New White Paper: SQL Server Extended Events and Notifications

Download the new white paper: How to Use SQL Server’s Extended Events and Notifications to Proactively Resolve Performance Issues SQL Server comes with a wide array of tools for monitoring your environment. There are logs and traces that provide information when errors occur, but these are often used passively to react to events that have already occurred.  There's PerfMon, and Profiler, and loads of Dynamic Management Views to check.  But where to look? As database administrators (DBA), we need to monitor our environments proactively and create solutions as issues arise. In this white … [Read more...]