SQL Server and Other Topics


I got my start with SQL Server in 1997 with SQL Server 6.5 at BellSouth Cellular. From that point on I've had the opportunity to work on Versions 6.0 to 2014. I specialize in Performance Tuning, High Availability and SQL Development. Contact me through this site or through my Twitter handle @SQLDiver

Gauntlet Dropped

This is my first time blogging for T-SQL Tuesday and I join in because this topic is one I have passion for. 

Lets start by saying, public speaking is a very scary thing for many people. I know many database professionals who attend every SQL Saturday within 500 miles. You guys know who I'm talking about! These guys have accumulated so much knowledge from all of the sessions they've attended they should put together a session and submit.

Lets talk about me, I really hate talking about me, but, lets talk about me. :-) 

I grew up being that loud mouthed, outgoing and aggressive...oh wait, not me my brother. Starting over, I was the shy guy, no kidding guys stop laughing. I had very little confidence in high school and about the same in college. When I told my guidance counselor that I wanted to study computer science he basically said I was overreaching. My ego was so small I almost believed him. Wish I remembered his name...jerk. 

I started taking classes at Ball State University as a Computer Science major. During my study I decided to take a public speaking class, I can't remember why, I just remember if scared the bejesus out of me. My first talk was short and I could hardly speak from the shacking. I was miserable and a little embarrassed. To add insult to injury the lead cheerleader from high school, you know the really cute one...was in my class. What luck. 

I made it through class, probably passed the class due to sympathy from the instructor and swore I'd never speak in public again. 

Yep, there it is. Never again. Not if you paid me millions of dollars. Nope, no way, no how. You see where this is going right?

I have been a database professional for more than 20 years; do you think there is anything I can teach the newbies? You betcha. I remember back in 1996, when I was converting a Microsoft Access "app" to use SQL Server as the back end. The time I was a manager in the cellular phone fraud department at BellSouth Mobility. The fraud detection software we had was very limited in its capabilities because cell phone fraud was fairly new. Remember 1996 was the Atlanta Olympics. The fraud was a coming and it was going to be big. 

I figured out how to pull the phone calls of all calls logged as fraudulent from the fraud system into MS Access and eventually into SQL Server 4.2 .... argh! I used the data to cross reference common phone numbers called by the fraud phones. From that I was able to create a rule that would allow me to generate a sheet for the Secret Service. Yes, it was pretty cool. There was my start with SQL Server. 

Speaking, back to speaking...so, over the years my confidence in what I was doing grew. I was giving little training sessions to the customer service reps on how to handle the calls from people with fraud on their bills. Yep, public speaking at a smaller level, but still pretty scared when I started. Usually about 15 minutes in my excitement about my subject took over. I forgot that I was frightened of speaking. 

As I progressed through all of my positions I had to talk to bigger groups of people, and still was extremely nervous speaking. 

Years later I started meeting some of my DBA friends at a restaurant/pub called Taco Mac. These guys all were active with SQLSaturdays. I started helping by volunteering and eventually being on the organizing team in Atlanta. I had been to two SQLSaturdays before. At the time Aaron Nelson, Julie Smith, Audrey Hammonds, worked for me and got me involved with PASS. Aaron convinced me to go to SQL Rally in Orlando, then PASS Summit in Seattle the same year, 2011. Work even paid for it (amazing). 

So what does this have to do with speaking? There are several things you have to do to speak: 

  1. Have a presentation. 
  2. Submit to your local user group or any SQLSaturday.
  3. Get picked (usually pretty easy).
  4. Practice.
  5. Present.

The part I left out; usually you need someone to push you over the edge, coax you to pull the trigger. Take that first step. 

That part was played by Aaron Nelson, Geoff Hiten, Rob Volk and Ed Watson. Weekly, Thursday nights, someone would tell me, you have to put together a session. I always came back with, Yeah, I know. Working on it. 

Performance tuning and troubleshooting was something I did a lot and enjoyed doing. It is so much fun taking a developers code that he has improved run times from 15 minutes to 12.5 minutes. This query can't be improved! Let's deploy it to production. Ummmm... let me look at it. A few changes in the query and it is coming back in sub-second times. Its the face of the developer when he sees it that makes my day. 

This is where I would start, showing a few best practice settings, a few ways to use existing free tools to help find the problem query...tada, I have a presentation. I named my session Performance Tuning for Mere Mortals. Why? Because I want to teach the beginners things I didn't know as a beginner. 

I submitted for Jacksonville SQL Saturday since I knew a few of the guys going, but I didn't tell them until I got picked. I GOT PICKED! Wow, suckers, I'm a newbie, with a history of being deathly frightened of speaking. They picked me? Just to be clear, the Jacksonville SQL Saturday team follows the guidelines of give new speakers a chance. That's how we build the army of speakers to teach the masses for free

Why am I doing this? I don't know. I'm not nervous yet...maybe later. 

We loaded up my big blue Durango, with Rob Volk, and Damu Venkatesan. 

Clark Fish House

The day of the event I had the pleasure of meeting several people who gave me some advice before my session...still not nervous...ok..cool... Chris Skorlinski an escalation engineer from Microsoft did a similar session before mine in the same room. So I went early to see his presentation. It had some good stuff in it that maybe I could add to a future presentation. I love going to sessions to learn from the speakers about speaking. I always learn something new. Chris and I talked a lot about presenting and he gave me a load of tips and tricks. 

Now its my turn, not nervous yet. Wow, I had more than 40 people who want to here MY session... so I started. There were a lot of questions which was awesome. Even better one guy in the back of the room asked a few meaningful questions... I think he was a plant. :-) I remember seeing him in the speaker ready room. 

Wait, still not nervous, but running out of time... I get a little worried about running over... yes this is my first session and I had way more questions that I expected... but its all cool. I like to build in extra slides just in case I get waylaid by questions or get no participation at all. Time is up... what? I finished on time and I didn't pass out. 1 down and I'm still buzzing from the adrenaline. I had multiple people come up and thank me for the great session...wow. 

I went back to the speaker ready room and Chad Churchwell, Microsoft PFE (the guy from the back of the room) was in there. Again, I asked for feedback and tips. He gave me some great ones. Here was my start, all of the speakers are willing to help make you better and in a very positive way. I still talk to Chad every once in awhile, and I keep hoping to see Chris at a SQLSaturday...I have to do Charlotte next year.

Today, I've spoken at 20 SQLSaturdays and given 4 precon sessions. I've also presented twice at PASS Summit (the last two years). Not too bad for someone who was afraid of speaking.

The moral of the story is, you have something to tell, period. If you're a data professional that something could improve someone's life (business or personal). It could be the one thing that took them from beginner to senior, the spark needed to achieve great things, or even the one thing that stopped them and others from doing something stupid in production. :-)

You do not have to be an MVP or Microsoft employee to speak. You do not need to be a senior data professional. For that matter, you don't have to be a data professional at all. Just ask Karlyn LeBlanc who is not a data professional but presented Balancing Work and Home to Create a Better You at multiple SQLSaturdays I attended. Great session.

See, there really isn't any excuse for not putting together a presentation. You too could be presenting at PASS Summit next year! Take the first step. Put together a presentation. Ask me @SQLDiver to give you some feedback before submitting it. I'll even help with your abstract!

And for those friends that still aren't speaking... you know who you are...I'm writing this for you! Get your presentation together.

See you all at a SQLSaturday soon!!





For the past several years I've been a speaker at SQLSaturday Oregon and PASS Summit. SQLSaturday Oregon is historically the weekend before Summit which makes it convenient to fly into Oregon, take the #SQLTrain up to Seattle with a big group of close friends and experience the camaraderie of people I only get to see once a year if I''m lucky.


Because there are so many people coming in from outside the States to SQLSaturday Oregon, because of the timing, its even more special.

Funny thing is for both PASS Summit and SQLSaturday Oregon, my Execution Plans for Mere Mortals was picked. This is my last opportunity to run through my session before I present it on Thursday, October 27th.

I've updated the session and improved much of the content for beginners. I love that this session was picked because it is so near and dear to my heart, performance tuning is some of the most fun activities I do. When I have someone complaining that their critical to life stored procedure is taking 45 minutes and that they've made major improvements to get it to 43 minutes, but still suffers timeouts in production I go to work.

 My work starts with an execution plan. I normally search the procedure cache for a copy of a recent copy of the execution plan, just to see how it compares with a lower environment like DEV or QA. Does it have the same plan? Can I use those environments to track down the problem?

 This is where the fun comes in... using the awesomeness of SentryOne's (new name!) Plan Explorer, I quickly take a look at the plan fro plan cache and see if there are any red flags. Do I see anything that is out of the ordinary? Does this plan really need a hash join? Is that sort warning a major problem or just a red herring? Are there any residual predicate issues?

In my session, I will show the attendees many of these issues and where they will be found. This session is for beginners that are somewhat lost in the graphical execution plan. The session is only 75 minutes for a subject that could fill a day, seriously. That session is in the works.

If you're wanting to get the basic beginner information about execution plans, come see me at either SQLSaturday Oregon #572 or PASS Summit 2016!!

Starting in June, the SQL Saturdays start ramping up. This year in June I did SQLSaturday Chattanooga. Once I got past Chattanooga I got a bit of a breather. Then its Indianapolis August 13, Spartanburg August 20 and Columbus, GA August 27 - 1-2-3, one right after the other. I sadly, but luckily wasn't picked for Louisville. That would have made 4 in a row. 

For those that don't speak, this is an opportunity to meet many of the newbies out there looking for help. I'm from a time when our options for help were limited. I bought a bunch of books, Ken Henderson's, Ron Soukup, Patrick Dalton... many people didn't get the benefit of learning from these guys. Ken died in 2008, a great loss for everyone in the SQL Server community.

This is why I speak, to pass on the things that I've learned over the 20 years I've been playing around with SQL Server. I love meeting newbies and mentoring the guys who have been doing this for a few short years. It is why I do what I do.

I'll never forget meeting the guys I followed later in my profession, like Denny Cherry, Kalen Delaney, Paul and Kimberly... the list goes on. Even some of my close friends that I drink a beer with every Thursday are on that list. People on that list are associates I work with through Linchpin People, SolidQ, Intellinet and even Microsoft.

Every SQLSaturday I speak at I build a new relationship with a speaker... Indianapolis was especially true of this where I got to spend a lot of time with Kevin Kline, Ginger Grant, Adam Machanic...not to mention my middle school buddy...Aaron Cutshall.

This is where I get my inspiration to speak!

So readers... its your turn! Put your session together and submit! If you want someone to look at your presentation and give some feedback... send it to me.


Every year SQLSaturday Nashville is the kick off of the year of SQLSaturdays (this year #2 behind SQLSat Atlanta BI). Any way, the event is always one of my favorites.

This year we were on a new campus at Middle Tennessee State University in Murfreesboro, TN. I joined a great group of guys Jan. 16th, most I would call great friends many close acquaintances.

 The best part of speaking this year was my session was picked as an hour and a half session. My session on Execution Plans needs at least 90 minutes to cover the most important information. I have to skip over so much of execution plans it is hard to comprehend some parts.

When I ask the question, who doesn't know what parallelism is in SQL Server, many raise their hands. These guys are beginners who need to full story to understand the operator in the graphical execution plan.

I like to give the analogy of a law office (my law office). And all of the attendees (the threads) in the room are contract legal assistants hired to redact a line in every case. And the Room Monitor is the synchronization thread. But that is another story for another post.

Some of the sessions I enjoyed was Rodney Landrum's session about the 4th dimension. Awesome. Brandon Leaches, Data Pages, Allocation Units, IAM chains... Oh My!

 It was a good time had by all and the feedback I received was awesome. I love when eople come up at the end and tell me how much the session si going to help them.

Ed Watson and I have been presenting a tag team performance tuning session for over a year now at local SQLSaturdays. We've had the pleasure of presenting the subject in multiple formats from 1 hour (rapid fire taste) to 8 hours as a precon session.

You probably already know who I am if you're reading my blog, in short I am a Linchpin People teammate and independent consultant with almost 20 years of SQL Server experience. My forte is performance tuning for large enterprise corporations with serious performance issues.

Ed Watson is a Microsoft MVP, and is a consultant in his day job. Ed has more than 15 years in IT, and has been a senior Production DBA for many years... you probably know him best as @SQLGator and can find him blogging at the SQLSwampland... yes he's a Florida Gator... don't hold it against him (I try not to).

September 25th, 2015, Ed Watson (b|t) and I will be presenting the session, "Getting the New DBA Up to Speed with Performance Tuning" as a full 8 hours class.

This session is for those guys or gals wanting to become a DBA, are an "accidental DBA" or a DBA with a little experience who wants to gain some add knowledge to their performance tuning playbook.

In this session we'll start at the beginning of the process of building the foundation following best practices for a highly tuned or tune-able environment. We will cover how to configure the OS and database server to best take advantage of features built in to the OS and SQL Server for peak performance. We'll dig into some of the database server configurations that effect performance such as "Optimize for Adhoc Workloads", MAXDOP and "Cost Threshold for Parallelism".

We'll talk about TempDb optimizations, and why they make a difference and how to find the correct number of data files. Mike Lawell

We'll cover benchmark basics and how to see that your database performance is suffering compared to historical expectations.

Once you have the foundation needed to build a stable environment we'll look at some of the top performance issues and how to identify them when you've had a complaint about performance. Using some of the free tools that come with SQL Server, such as extended events, we'll teach you how to trap what is causing the slowness in the database for many issues encountered by a DBA.

We'll spend more than an hour going over execution plans from beginning concepts to some advanced topics (don't worry, we'll make sure we don't go too far). We'll make sure you know where to get more information from some of our performance tuning heros!

But wait, there's more... we'll share with you some of our favorite scripts that we've collected over time that will give you a little bit of an edge next time someone calls and says, "everything is slow", help!!

All of this for an extremely low price of $150... that is the sum total of $18.75 per hour!!

 We can't wait to see you at "Getting the New DBA Up to Speed with Performance Tuning"

SQL Server Innovators Guild (ssig)
Friday, September 25, 2015 from 8:30 AM to 5:00 PM (EDT)
Spartanburg, SC

Register Today





Once again, I served on the organizing team. I decided to spread my time across 3 different teams as backup lead, Precons, speaker selection, and swag. I also assisted with the printing team as I had been the lead two years in a row and had two new members to the organizing team running it.

This years theme was Back to the Future, as this was the 30th anniversary of the first back to the future and this year, 2015 was a subject of the sequel.

The Atlanta team always tries to have a theme that will be fun for the attendees, volunteers and speakers. By adding fun to the formula, we feel it is a easier for us to unify the team working on the "project" and also a good marketing ploy to bring new attendees in.

This year, like last year, I designed the event pin. We have gotten into the habit of creating pins for every event for all of the speakers and attendees as a memento of the event. They turned out awesome.


This year we "stole" a great idea from SQLSaturday #363 - Nashville. They created a special name badge for the speakers that was very cool. I designed a badge that was very theme related:

The event was one of our smoothest events, like each of the SQLSaturdays we've hosted, we suffered a little bit from the number of attendees that attended. We might have to move to a new venue next year due to the capacity limits of the venue we've been using. 

 The after party was a huge success as always. Rob Volk, the lead, decided to reenact the prom scene from the first Back to the Future movie, from hiring a band dressed in tuxes to the "Enchantment Under the Sea" banners.

We had many speakers and attendees show up to socialize. I met quite a few new people and met some people I've been friends but have never met in person.

 This year we had a visit from Marty McFly!


SQLSaturday Session

On January 17, 2015, I presented an "Execution Plans for Mere Mortals" session. The session had 49 attendees, more than the number of desks. Although I had PowerPoint issues (it crashed every time I tried to return from SSMS), it was a good session. I had many people come to the front so I could answer questions. All of the Pluralsight free 30 days were gone and many of my business cards were gone. 

The participation was very good.

Thank you for all who attended and participated!

Here are the slides.


Precon Half Day Session

Ed Watson and my precon session was a success. We had a lot of fun with the people in the class. We had 17 attendees for the "Getting the New DBA Up to Speed with Performance Tuning" half day session.

Slides for: Getting the New DBA Up to Speed with Performance Tuning

In 2014, I started off the year struggling with half of January on the bench, looking for my next contract. Being an independent consultant has many huge benefits that I love, but there also comes the part many people struggle with of finding work. 

I'm blessed with many friends in the SQL Server Community with a solid footing for consulting. I jumped into consulting after drowning in the political BS frequently found in an enterprise organization. I had been developing my "side work" contracts planning on jumping into consulting when it was appropriate. One day in 2013, the Director of HR was reminding me why they refuse to pay out vacation banked by employees when they leave. I reminded him of the propensity of the employees to either use up their vacation then give notice, or give notice (less than a week) because they have nothing to stay for (vacation pay). So managers lose the transition period expected with an company that pays out the vacation. I digress. That day, I decided it was time to work for myself, and the day before a good friend of mine Geoff Hiten @SQLCraftsman called be to offer me a 3 month contract through MSC in New York City. It was a tough decision to leave the security of my position, not knowing what the next contract would be... but I felt it was a sign from above.





Robert Pearl @pearlknows did a blog post on SQLSaturday and sharing in November. I've been planning on doing the same for quite some time...

 From a fresh perspective, since this is the end of my first year as a SQLSaturday speaker, I want to give my perspective.

My first event was Jacksonville, FL, where so many existing speakers, Chris Skorlinski, Chad Churchwell, Bradley Balls, Rob Volk, Ed Watson were so helpful and gave such wonderful advice and feedback. This is what the SQL community is, and #SQLFamily is. In January I will be doing my first preconference session with my close buddy Ed Watson.

I've been a volunteer for years at Atlanta SQLSaturdays, serving on the organizing committee 3 years in a row. Through this I've met so many speakers that have continuously nudged me every chance they got to become a speaker as I've been a database professional for so many years that I have a lot of knowledge to share. I've had the pleasure to meet many of the people who's blogs I follow, where I've learned the most,like Denny Cherry, Wes Brown, Adam Machanic, Kalen Delaney, Stacia Misner, Kevin Kline, and many more.

You don't have to have 17 + years of experience in SQL Server to speak at a SQLSaturday, technically experience is not necessary, just the possession of information people want to hear about.I know many speakers who started out with less than a few years of SQL Server experience, but have gained so much knowledge about their topics they've become experts.As a matter of fact, I've dug into my topics and found new morsels I was unaware of during the authoring of my sessions. I like to present to beginners, they're open minded, ready to learn and stand to benefit the most from SQLSaturdays.

If you have been thinking about presenting and want some unbiased help, please don't hesitate to contact me, I'm always happy to help!

 SQLSaturday Atlanta will be coming fast next year, I hope we'll see you there!