So much, so often
Ah, backups. Why are they so tough to get right?
You start taking them, you find out you’re not taking enough of them, or that they’re not the right kind, or that you’re not using checksums or compression, or that you’re not storing them in the right place, or that the storage isn’t redundant.
It’s just like, why won’t someone make this easy?
Then you read about VSS Snaps, and they look so dead simple. You don’t need your DBA Ph.D to use them.
And look how fast they are! Oh how they blaze.
Hold it there, chieftan
I know it sounds like those Snaps only taking a minute sounds good, but what’s really going on?
If you look at the docs for the VSS backups, there’s a heck of a lot going on in there.
We’re gonna focus on the part where the “freeze” and “thaw” happen.
Why? Because while the data is frozen, no one can read or write data.
Yes, you read that right. All activity in the database is paused.
Or frozen, if you will.
Now, if you’re just taking one VSS Snap after hours when no one’s around, chances are that pause isn’t going to make a noise.
But if you’re relying on VSS Snaps for more frequent backups, or if you’re running a 24×7 shop where users are still doing important stuff, this could be a real performance hit.
Don’t believe me?
Check your error log.
If you notice the times there, and you should because there’s like gigantic rectangles calling your attention to them, you can see that I/O was stuck for a full 61 seconds for the VSS Snap.
Just add 61 seconds to all your queries. Will users be happy?
Why, Erik? Why Do they hurt me so?
It’s not your fault, pal. They’re just built that way.
That’s why smart hosting providers limit the number of databases you can stick on a server.
Take AWS RDS for example. The first limitation they mention is 30 databases per instance.
The cloud geniuses know their hardware capabilities, and put hard limits on them.
Now it’s time for you to hit your error log to see how often, and how long your VSS Snaps are taking.
Thanks for reading!
Brent says: MS KB 943471 is an oldie, but it notes that “We recommend that you create a snapshot backup of fewer than 35 databases at the same time.”