Home > Articles > Data > SQL Server

SQL Server Reference Guide

Hosted by

SQL Server 2008 R2 Overview

Last updated Mar 28, 2003.

I normally wait until a product is already shipping to write about it here on InformIT. I’m a strong proponent of downloading the beta and Customer Technical Preview (CTP) versions of the product, including (and especially) Books Online, so that you can find out what is in a new release and how it can help you solve problems. But I don’t write about them until they are “live” because this site is intended to be a practical, real-world reflection of your shop, and what you can use for production systems.

It seems SQL Server 2008 just came out — but it was actually more than a couple of years ago (as of this writing). Microsoft has announced that they plan for a roughly three-year cycle of releases, so this one is a bit “out of phase," if you will. Not only that, it’s not named “SQL Server 2010," the date it was released. Consider also that this is an “R2” release — something that Microsoft has never done with SQL Server — and this adds up to an interesting release choice altogether. What precipitated this release, and does it change enough to warrant an upgrade? In this overview I’ll explain the new features and you can decide what works for you.

Background on the Release

You might think that with the name “R2” that this release is sort of a big Service Pack or feature add-on, but that’s incorrect. While fixes from SQL Server 2008 that you’ll find in a subsequent Service Pack for SQL Server 2008 are most likely in SQL Server 2008 R2, it’s not meant as a “fix” for things in SQL Server 2008. And it also isn’t a release that has things that just didn’t make it under the scheduling wire in SQL Server 2008.

No, the truth is a bit less sinister than that. SQL Server 2008 R2 represents a huge feature change and feature addition set based on the new Business Intelligence features in Microsoft Office 2010, and the release of SharePoint that came out at the same time. SQL Server 2008 R2 contains enhanced BI features, as well as other new features, that integrate into those products. But it isn’t a complete re-write of the database engine or other features, so that’s why it was a) released in 2010 and b) has an “R2” after the name.

While the BI features in SQL Server 2008 R2 are the primary reason for its release, there are other features in the product that warrant a look even if BI isn’t on your radar. I’ll cover a few of those below.

One thing that is important to note is that there is a new database “SKU” or Edition – it’s called “Datacenter”. This is the highest-level of database server that Microsoft offers, and it contains features (such as unlimited Virtual Machine licenses) that were previously offered in the Enterprise Edition of earlier versions. I don’t cover licensing on this site, but it probably makes sense to take a look at the matrix of features and licensing at the end of this article to make sure you understand what restrictions and benefits each Edition offers, so that you can make the right choice for your organization.

On the subject of Editions, SQL Server 2008 R2 Express has an increased database size, from 10GB to 50GB, reflecting today’s larger data sizes.

Changed Features in SQL Server 2008 R2

I’ll start by separating out features that are introduced in the new version rom the changes to the existing features and functionalities already in the product. In SQL Server 2008 R2 there are no major changes to the features found in SQL Server 2008. There is a slight difference in the locking mechanism for the database engine, but there are no new hints, settings or switches to take advantage of it — for most things, they just run with the enhancements. I’ll mention some of these “under the covers” changes throughout this article.

What has changed from the previous release is the way that SQL Server is licensed, which of course means how you pay for it. Licensing is never an easy discussion, since the answers always come back to “it depends," but one of the major changes that you’ll see is that the Enterprise Edition is no longer the “highest” end edition. The Datacenter edition I mentioned a moment ago has unlimited amounts of memory, CPU and other specifications, and it is also licensed by processor. Without going into too much detail of the licensing world, it’s important for the data professional to know that there are two basic models for licensing SQL Server (as of this writing): Server/CAL, and Processor.

In Server/CAL, you pay for a copy of SQL Server to run on your server. At that point, no one is legally able to log in. Then you purchase a “Client Access License” or CAL, for each “seat” or user you want to log in. This is useful in the case where you have a single user that will hit multiple SQL Server systems. You can just license the servers, and then give a CAL to the user, and that same user can hit both servers. That can work out to a relatively inexpensive way to buy the product.

In “Per Processor” licensing, you buy a license for each processor you want to use on a server for SQL Server. It’s way more expensive, but gets cheaper when you have lots of users hitting that one server. You don’t have to license those users at all; since essentially the server is licensed.

So the licensing kind of boils down to this: multiple servers, one user needs access to them all: start with Server/CAL. One server, lots of users, start with Per-Processor. That’s just a rule of thumb — it’s always best to get your local Microsoft team to help you sort all that out. The point here is that starting with SQL Server 2008 R2, the highest version isn’t available in Server/CAL.

New Features in SQL Server 2008 R2

With this version you get several new features, most of them aimed as I mentioned at Business Intelligence — but not all. I’ll start with the ones that aren’t BI-related, and then save the BI stuff for the end.

DAC and UCP

There are two new features in SQL Server 2008 R2 that are put into place for the Database Administrator. The first is the Utility Control Point, or UCP. This is a feature that leverages the Management Data Warehouse that was put into place in SQL Server 2008. It tracks the usage, over time, of the systems you monitor with it, and will help show you where servers are “balanced” in their use of the CPU and I/O on the system. This is very helpful for Virtualized Machine (VM) technologies, where it can be difficult to track that sort of information.

The Data Application Component (DAC) complements the UCP, and is a way of “packaging up” an application (at least the database part) and ships it to another server. Once that’s done, you can track and migrate the changes from the source system to the target server. You can then track the use of the resources for the database part of the application. There are some caveats to both of these features, so I’ve detailed these features in this series of articles.

Master Data Services

The Master Data Services (or MDS) introduced in SQL Server 2008 R2 is a feature that allows you to do three things:

  1. Set up a database that tracks where “authoritative” data is
  2. Set up a web application that lets business users define what “authoritative” means
  3. Set up a web service for the developers to write code against that will find the “authoritative” data

This allows everyone to do the job they are good at, takes the data professional away from defining and locating business data, and makes sure that the programs the developers write are hitting the single version of the truth that everyone wants.

You can find out more about this feature here.

StreamInsight

StreamInsight is Microsoft’s entry into Complex Event Processing (CEP) technologies. They aren’t the first or the biggest in this are by far. You can read more about CEP at the end of this article, but the short answer is that it involves Events that occur at data sources like devices and sensors, web sites and even other databases (like a stock ticker) which are routed through SQL Server and then processed to do some work, and potentially on to other targets such as devices and sensors, other databases and so on.

It’s important to note that not only is StreamInsight not available for all editions, it’s fastest in the Datacenter edition. That can have a fairly big impact on how you plan to roll it out.

You can read more about StreamInsight here.

PowerPivot and the Parallel Data Warehouse

And now the BI parts. While this is the biggest part of the release, I won’t devote a ton of space to it in this overview, simply because it is really that big.

The business world loves Excel. They just do. Most BI clients are a separate program, and require the data professionals to write reports, queries and so on to satisfy the analytics that the business wants. So Microsoft decided to combine the two – basically, PowerPivot is an add-in to Microsoft Excel 2010 (not the earlier versions) that has built-in slice-and-dice operations, and formula-like queries for BI data. It also changes the memory model to handle millions of rows — that’s right, millions — in Excel.

This tool can hit almost any data source. But for SQL Server it’s well suited to Analysis Services. Because data is getting larger, Microsoft has released the Parallel Data Warehouse, or PDW. This is really a huge new SKU for SQL Server, with its own hardware and an entire world around it.

Add to all this that both PowerPivot and SQL Server 2008 R2 have been tooled to work with the release of SharePoint 2010. This means that a “power user” could install Excel 2010 with PowerPivot, create BI applications that hit SQL Server 2008 R2, and then “deploy” that spreadsheet to SharePoint 2010. Then users who don’t have Excel 2010 can work with those BI spreadsheets.

To really understand the new BI features, you have to see them. There are tons of demos, whitepapers, videos and more here.

Should You Upgrade to this Release?

Based on what you’ve learned here, you may decide that SQL Server 2008 R2 warrants a further look. If you’re in an earlier release, such as SQL Server 2005 or SQL Server 2000, and you’re looking to upgrade, there’s almost no reason not to upgrade to SQL Server 2008 R2, if the application that uses the database is tested to run against it. Odds are, if the application works against SQL Server 2008 then it will run just fine against R2 — but the only working application (in my book) is one that is tested.

If you’re on SQL Server 2008 already, then you’ll need to evaluate whether the features and benefits you find in R2 are worth the cost and effort for the upgrade. In some cases they are, and in others they are not. It’s important to make sure that you evaluate each case carefully, and develop a plan for the upgrade, whether you plan to do a complete in-place upgrade or a staggered migration. I normally do the latter, replacing any plan for a new application with the latest version, or to add functionality such as Master Data Services or StreamInsight for a particular use-case.

InformIT Articles and Sample Chapters

I have a section on Business Intelligence and SQL Server that you can read in this SQL Server Reference Guide.

Books and eBooks

Complex Event Processing is, well, complex. There’s a good book by David Luckham that explains this area thoroughly, Power of Events, The: An Introduction to Complex Event Processing in Distributed Enterprise Systems.

Online Resources

The entire feature set launch point to understand more about SQL Server 2008 R2 is located here as are some labs and other resources you can use to learn more.