MS Field Engineer’s on Performance Troubleshooting

SQL Server, T-SQL
Do you want to get a glimpse into how the Microsoft Field Engineers would go about troubleshooting performance issues on your server? Then go and read this blog entry by Denzil Ribeiro. Not only is this an excellent how-to on troubleshooting performance problems, but Mr. Ribeiro provides multiple links that describe the concepts he's dealing with further, making it a great piece of documentation. The MS Field Engineer blog is not terribly active, but what gets posted there is worth reading. If you don't have it on your feed list, you should.
Read More

Execution Plan Compile Termination

SQL Server, T-SQL
Recently I've been seeing a lot of people with bad execution plans, desperately trying to tune them, but they were unable to explain why they had such bad plans. More often than no these were larger queries, with a number of derived tables, CTE's, CROSS APPLY, etc. In most cases the statistics appeared to be fine (this is usually checked by comparing estimated & actual rows within the operations in the execution plan) and the plans themselves didn't look crazy, but the execution plans were flat out, not good. If you're looking at a plan and it doesn't make much sense, one option that most people don't check... SQL Server didn't have enough time to complete optimization. The optimizer is a pretty amazing bit of code. The scary volume of…
Read More

More on BALD-D

Misc
The Battle Against Lawless Database Design continues. And thus were the Berserkers born. Or, for the more film-oriented, Skynet becomes self-aware.   Hold the Line. It's been one of those days. A bit of humor and a nice dose of SF are good for the soul.
Read More

Re-evaluating Execution Plans (again)

SQL Server, T-SQL
I keep thinking I've got a handle on the way execution plans are dealt with in SQL Server. I had a pretty simplistic view of things, there's the estimated plan which comes out of the optimizer and there's the actual plan which comes out of the data engine. The one shows the best guess for what will happen based on the query and the underlying statistics. The other shows what actually happened based on the query and the real data, load on the server, available memory, you get the idea. This model is easy to explain and understand. Too bad it's not quite the way things work. If you query the dynamic management function sys.dm_exec_query_plan, you can see a query plan. Once you drill down on the XML, or browse…
Read More

Learning Spatial Data in SQL Server 2008

PASS, Spatial Data
PASS just published a new Top 10 list of mine over at the their web site. This one is the Top 10 Articles on the web if you're trying to learn about spatial data. I'm not trying to say that I know what I'm doing with spatial data. I'm still feeling my way forward. These articles have proved to be the most useful in the learning I've done so far. I wanted to publish a little more information than we put into our Top 10 lists over at PASS. Having the list is good, but I thought it needed a bit of commentary to be complete. All these articles are good and all the web sites hosting the articles have good stuff on them. A few of the web sites stand out. Paul Randal's…
Read More

Object Database Editorial

nHibernate, Object Relational Mapping, SQL Server
I never used to read editorials. Not in emails, magazines, newspapers, whatever. Now, I make it a point of always reading them. You can learn as much from an editorial as you can from the technical articles within, sometimes more. Tony Davis has just posted a guest-editorial over at SQL Server Central. Tony is normally the editor at Simple-Talk, where he also writes interesting editorials. This one is not to be missed. It makes a very clear, and concise case for why object databases have a fundamental flaw for most business needs (not all, not always, but a pretty hefty majority). It's worth a read.
Read More

The Best Thing I learned at PASS

PASS
And if you think keeping this below 250 words was easy... You try it. I've received a lot from the PASS conference. I've attended technical sessions that blew my socks off and made me twitch in my seat, fighting the urge to start writing TSQL code, immediately. I don't think any of that is the best thing I learned at PASS. No, the best thing I learned at PASS is summed up in a single phrase, You Can. My first summit, I ventured out of the hotel room and met people volunteering with PASS. They were having fun. I asked if I could join in. You Can, just volunteer. I volunteered and began to meet people online. The next summit, I met more people, names, people I had learned from. I asked them, can I hang…
Read More