Get the Last Actual Plan With sys.dm_exec_query_plan_stats

SQL Server, T-SQL
I've always felt responsible for making such a big deal about the differences between estimated and actual plans. I implied in the first edition of the execution plans book (get the new, vastly improved, 3rd edition in digital form for free here, or you can pay for the print version) that these things were so radically different that the estimated plan was useless. This is false. All plans are estimated plans. However, actual plans have some added runtime metrics. It's not that we're going to get a completely different execution plan when we look at an actual plan, it's just going to have those very valuable runtime metrics. The problem with getting those metrics is, you have to execute the query. However, this is no longer true in SQL Server…
Read More

Techorama Netherlands 2019

SQL Server
You only have a few more weeks to sign up for one of my favorite events, Techorama. This year is the second time the event will be held in the Netherlands (it started out in Belgium). I'm very honored to get to say that I'll be speaking again this year. The reason I like the event so much is because of how it draws from pure developers, architects, data specialists and analysts almost equally. Techorama succeeds at getting all the people into the room that ought to be in the room. Then, Techorama makes it possible for all these people to share knowledge and understanding about the Microsoft stack. I have several different sessions, but the one I want to talk about at the moment is the one on SQL…
Read More

20 Years of Redgate Software

Redgate Software
Yeah, Redgate is only one year younger than my children. What's really frightening is that I've been using Redgate's products since my kids were a year old. I was a VERY junior DBA twenty years ago having just made the move from full time development. I'll tell you though. I think I had Redgate's SQL Compare open on my desktop non-stop from the moment it was available. I know I personally ensured that four different organizations purchased at least one license. Now here we are, twenty years later. My kids are grown, but I'm still gleefully using Redgate Software. Yeah, I know, now I work for them, but that's just a bonus as far as I'm concerned. I've been praising and promoting Redgate for twenty years and I hope I…
Read More

Certifications are a Bonus, Not A Path to Employment

Professional Development
I've never been terribly shy about my beliefs about IT certifications. I sincerely believe they are largely a waste of time. I do recognize that one thing they do provide is a documented learning path. Having gone through that learning path, you will gain knowledge. Knowledge, I very much believe in. Unfortunately, certifications are not an actual demonstration of knowledge. I also know that for some organizations, having certified individuals gets them partner status and all that entails. Again, this means that the certificate is a bonus, not one of the major qualifications for a given position. If I worked for one of these organizations, I'd go and get certified. Otherwise, why bother? Which Certification Will Get Me a Job in IT? If you've never seen this question before, you…
Read More

DevOps for the DBA, Slide Deck

DevOps
I have an all day seminar I give called "DevOps for the DBA". If you're attending, thinking of attending, or you have attended, you might want to have the slide deck to review. I have published it here at SlideShare.Net. Fair warning. The slides are not the presentation. When you're attending a class that I teach, you're there for the live, in-person, interactive event of the training. The slides are not meant to be documentation. They are simply guideposts to keep me on track and to help illustrate certain points. If they are helpful to you, I'm happy to share. I just want you to know that reading through the slides can in no way be a substitute for actually showing up. If you would like to attend this seminar,…
Read More

How Do You Make DevOps Succeed?

DevOps
I love going to SQLSaturday events because I'm always asked questions that make me think. I was just at SQLSaturday Indianapolis (a great event, if you weren't there, you missed out). I was giving a session called "Extending DevOps to SQL Server" (which I'm giving this Saturday at SQLSaturday Providence). I was talking about the fact that I've been involved in successful DevOps implementations and I've been involved in failed DevOps implementations. The question that came up was, "What were the key differences between the failed and successful organizations?" Great Question. Management Buy-In I've seen attempts to implement DevOps strictly from the IT side of things. A relatively high functioning team recognizes the benefits an agile approach that's oriented towards improved collaboration between people that uses automation in support of…
Read More

Profiler and Trace vs. Extended Events

SQL Server
It's a running joke among the more experienced (read, older) Microsoft Data Platform specialists as to whether you're #teamprofiler or #teamexevents. I'm very much #teamexevents, but I really don't care that you're #teamprofiler. If you want to use the old way of doing things, that's fine. However, I do have a bone to pick. Why on earth would you recommend to new data professionals working on modern systems, let's say at least 2016 or better, who are just getting going on this journey, that they should be using Trace? What are you smoking? Trace vs. Extended Events We're not just talking about where you are comfortable. I get it. You've used Trace/Profiler for 20+ years. Getting it going is all muscle memory. That's fine. As the kids say, you do…
Read More

Announcing a New Book: Query Store for SQL Server 2019

SQL Server
I'm pleased as punch to be able to share with you the fact that I helped Tracy Boggiano write a whole new book on Query Store. It will be available in October. You can pre-order it now. Tracy is a great author and a serious scholar of SQL Server. She's put together an excellent resource on Query Store. I added a couple of chapters just to help her out, but this is truly her book. Query Store is incredibly simple to use. It is however a bear to manage, so getting Tracy's book is a must if you're going to be implementing Query Store on your databases. By the way, you really should be implementing Query Store on your databases. Tracy covers all the topics from reporting with Query Store,…
Read More

All Day Seminar on DevOps in Oslo

DevOps
In just a couple of weeks, I'll be presenting an all day session on DevOps for databases. It takes place on Friday, August 30th. You can click here now to get signed up. I have a very hard time hiding just how excited I get about DevOps. It's not just that the technology is fun. It is. It's not just that it makes for a happier work environment. It does. It's not because by using DevOps you can deliver more quality functionality, faster, for your organization. You can. No, the reason I love DevOps, as a DBA, is because it creates added protections for my production environment and my production data. You can think of the entire DevOps process as another backup, another consistency check, one more enforced referential constraint.…
Read More

Running Containers In a Virtual Machine

Containers
The more you work with containers, the more you just want to work with containers. However, there are still reasons to have a virtual machine for some types of workloads. So, what if you want to work with containers inside a virtual machine. Is that possible? Yes, and shockingly easily. Enable Virtualization In Virtualization I knew from conversations I've had previously that running Docker inside a virtual machine was possible. I just didn't know the details. So, with a complete lack of knowledge, I did the most expedient thing possible: I installed Docker in a VM and started it up. Now, let's talk about my setup for a moment. My laptop is running HyperV as my hypervisor. You have to have some type of hypervisor for Docker to work. I'm…
Read More