Over the next month, I’ll be presenting a free workshop in seven cities in the U.S. The workshop will include hands-on labs that allow you to explore new features of the relational engine for both SQL Server 2016 and SQL Server 2017. For more details, and to register, check the links below. Remember, the workshops are FREE and include both breakfast and lunch!
Talks on Managing Data and Applications Anywhere
Last week I had a terrific opportunity to give a few SQL Server presentations in the Washington, DC area. I stayed in Reston, Virginia, and spoke at the Microsoft office in Chevy Chase, Maryland. On Tuesday evening I was able to take the metro into DC itself and spend several beautiful hours walking around the National Mall.
As I promised a couple of weeks ago, this post will show you how to look inside a page to see what is actually stored there. I’ll just be looking at data pages, and only a very basic example, just so you get the idea. But once you get familiar with looking inside pages, there are many mysteries about SQL Server data storage that you can solve on your own. I’ll mention a few of them at the end of […]
I’ve been heads-down updating Microsoft’s Hands-on Labs, originally written for SQL Server 2016 CTP3, into something that showcases not only the SP1 release of SQL Server 2016, but also some of the new SQL Server 2017 features. One of the most exciting new features is Adaptive Query Processing, not to be confused with another awesome new feature called Automatic Query Tuning! So I will not be able to continue my blog series on Clustered Indexes this week. (Don’t worry, it’s […]
In a post from two weeks ago, I told you that this week I would show you how to look inside pages to see the NEXTPAGE and PREVPAGE pointers. When I started to write this, I realized that before I can show you how to look inside the pages, I need to show you how to find out what pages to look at. So I’m going to juggle this blog schedule a bit, and this week I’ll show you how […]
In my previous post, I told you about what it meant for an index in SQL Server to be ‘clustered’. Usually, when we talk about SQL Server indexes, we are talking about indexes organized as B-trees (or technically, B+-trees, but we won’t go into the difference here.) For these indexes there are two basic properties that set clustered indexes apart from nonclustered. First, the index leaf level IS the data. It is not a copy of the data or pointers […]
When you tell SQL Server to create a regular clustered index on a table, it will completely rebuild your table. SQL Server will take your data rows and rearrange them on new pages. Your table’s pages become the leaf level of the clustered index, so sometimes we call the table a clustered table. People usually think of clustered as meaning ‘sorted’, and for the most part I’ll go along with this. But sorting can be logical or physical, and there […]
What makes a feature useless? I might agree that if absolutely NO ONE uses it, or has ever used it, then it is useless, by obvious definition. But if some people use it, but not everyone, is that useless? What if only 1% of product users employ a feature in production? Is that useless? What if those 1% base their entire production system around the feature? Is that more or less useless than another feature used by 80% of the […]
Amazon SQL Server in the Cloud Over the last year or so, I’ve had several opportunities to get my hands dirty with Microsoft’s SQL Server cloud offerings, including taking a Train-the-Trainer class with Dandy Weyn. Now working with DB Best, I realized I needed to broaden my horizons a bit, so I was grateful that I had a chance this week to attend an online webinar called Introduction to Microsoft SQL Server in AWS. Amazon Web Services (AWS) provides two […]
When listening to an online presentation a few days ago, the speaker suggested using one of my favorite, underused query hints: FAST N. This replaces an older table hint called FASTFIRSTROW, which is one of the few deprecated features to actually be removed from SQL Server. The speaker suggested using the FAST 1 hint, because ‘sometimes it improves the query’, but didn’t say any more about how or why it would improve the query, and why you might NOT want […]