RAM and Sympathy
With the release date for 2016 finally announced Everyone can start gearing up to gaze upon its far shores from the 2008R2 instance they can’t or won’t upgrade for various reasons. I’m excited for a...
View ArticleWhy monitoring SQL Server is more important than ever
Moving parts SQL Server keeps on growing. With every new edition, you get more features, feature enhancements, and uh, “feature enhancements”. As I’m writing this, SQL Server 2005 is less than a week...
View ArticleImplicit vs. Explicit Conversion
Everyone knows Implicit Conversion is bad It can ruin SARGability, defeat index usage, and burn up your CPU like it needs some Valtrex. But what about explicit conversion? Is there any overhead? Turns...
View ArticleExtended Events: Where They Hide The Good Stuff
You can do a lot with Extended Events I’m really looking forward to the stuff in 2016 becoming mainstream in 2020 or so. Raise your hand if you’re using SQL Server 2014 in production. Raise your hand...
View ArticleTemporal Tables, Partitioning, and ColumnStore Indexes
This post is mostly a thought experiment The thought was something along the lines of: I have a table I want to keep temporal history of. I don’t plan on keeping a lot of data in that table, but the...
View ArticleFirst Day Deal Breakers
Starting a new job can be scary If you’re not already established in your field, don’t know the company all that well, or taking on a role with a higher level of responsibility, it’s totally okay if...
View ArticleIs your SAN’s cache killing tempdb?
Let’s start with definitions Many SANs have caching built in. What kind of cache is important, because if you’re dealing with non-SSD storage underneath, you could be waiting for a really long time for...
View ArticleGetting Started With Oracle Week: Generating Test Data
Bake your own cake Pre-cooked example databases are cool for a lot of things. The first being that everyone can have access to them, so they can follow along with your demos without building tables or...
View ArticleGetting Started With Oracle Week: Joins
Oh, THAT relational data Thankfully, most major platforms (mostly) follow the ANSI Standard when it comes to joins. However, not all things are created equal. Oracle didn’t have CROSS and OUTER APPLY...
View ArticleGetting Started With Oracle Week: Aggregating
I probably should have written this one first Most of these are exactly the same as in SQL Server. There are a whole bunch of interesting analytic functions, most of which should look pretty familiar...
View ArticleGetting Started With Oracle Week: NULLs and NULL handling
We’re not so different, you and I In any database platform, you’ll have to deal with NULLs. They’re basically inescapable, even if you own an island. So let’s compare some of the ways they’re handled...
View ArticleGetting Started With Oracle Week: Creating Indexes and Statistics
This is not a deep dive If you’re looking for lots of internals and explanations of what happens behind the scenes, don’t read past here. I almost made a READPAST joke. It’s that kind of day. This is...
View ArticleSQL Interview Question: “How do you respond?”
Brent’s in class this week! So you get me instead. You can just pretend I’m Brent, or that you’re Brent, or that we’re both Brent, or even that we’re all just infinite recursive Brents within Brents. I...
View ArticleSQL Server 2016: Availability Groups, Direct Seeding, and You.
One of my least favorite things about Availability Groups Well, really, this goes for Mirroring and Log Shipping, too. Don’t think you’re special just because you don’t have a half dozen patches and...
View ArticleThe Worst Way to Judge SQL Server’s HA/DR Features
We love to help people plan for disasters We’re not pessimists, we’ve just seen one too many servers go belly up in the middle of the night to think that having only one is a good idea. When people ask...
View ArticleInterview Question Follow-up: How do you respond?
Normally I’d update the original post But I wanted to add a bit more than was appropriate. For my interview question, I asked how you’d respond to a developer showing you progress they’d made on tuning...
View ArticleAvailability Group Direct Seeding: How to fix a database that won’t sync
This post covers two scenarios You either created a database, and the sync failed for some reason, or a database stopped syncing. Our setup focuses on one where sync breaks immediately, because...
View ArticleAvailability Group Direct Seeding: Extended Events and DMVs
As of this writing, this is all undocumented I’m super interested in this feature, so that won’t deter me too much. There have been a number of questions since Availability Groups became a thing about...
View ArticleAvailability Group Direct Seeding: TDE’s Frenemy
From the Mailbag In another post I did on Direct Seeding, reader Bryan Aubuchon asked if it plays nicely with TDE. I’ll be honest with you, TDE is one of the last things I test interoperability with....
View ArticleTDE and Backup Compression: Together At Last
TDE is one of those things! You either need it, and quickly learn how many things it plays the devil with, or you don’t need it, and there but for the grace of God go you. Off you go, with your...
View Article