Thursday, January 29, 2009

Love/hate

In my day job, I am a software developer working primarily in Microsoft languages and a Database Administrator dealing with Microsoft databases, and I like their stuff on the whole, it's good, it works and it's good to use on the whole. Tonight I had a job to do which involved ensuring that we had a continuously updated copy of our main database on another server which would live in another building so that should the unthinkable happen and our offices be destroyed, we had a working copy of the system elsewhere.

I practised and planned this carefully but of course I still had endless problems, as you tend to do with these things, but got to the end and the last little setting which would mean that the system would run as fast as possible. All of a sudden, I get an error message. Eh? What the hell is going on? This didn't happen on my test system.

I looked into it and it turns out that Microsoft decided, in their wisdom, that in the edition of the database server we're using, this feature isn't supported. You have to get the super duper expensive one for that. Now I should explain that MS like editions - think Windows XP or Vista, there are endless variants such as x64, Home, Home Premium, Professional and what not. They do this with most things and you tend to get more stuff with the pricier editions as you would expect. We are using the second from top edition of this database server and each server requires two licenses (it is based on the number of processors) and at nearly £5000 per license and two servers, that’s not an insignificant amount of cash (although granted, we get charity pricing but the principle still applies).

The next version up is over £20000 per processor (£80000+ total). For just one extra thing in my case. It's not that my version doesn't support what I want to do, it does, just not one of the modes of operation of said feature which is just outright idiotic. Have the feature or don't have the feature, fine, but don't bloody well cripple it. Nowhere did I find this mentioned in my reference texts by the way, including the official course manual from MS themselves that I got from doing the administration course on this product. You have to read a white paper for that. Well gee thanks MS, you shower of bastards. You have just ruined my night (I will have to do all this work again at a similarly late time of night because it’s the only time I can get the business to agree to server downtime).

Oh well, nothing to be done now, so bed time and just look forward to the weekend.

2 comments:

Andrew said...

And the mystery SQL Server feature is?

Captain Flymo said...

Ah yes, I neglected to mention this. It was database mirroring. However, it seems I may have been a bit hasty in my judgement. As it turns out, I forgot that the key in mirroring is difference between databases. Most traffic on our DB is actually select statements and mirroring doesn't care about those because they are irrelevant. When I looked at the SQL Server Mirroring Monitor, we were doing no more than about 6-7KB/s at full tilt of transactions which is, as I know you will appreciare Mr U, cock all. So as it happens I wasn't thinking straight and I may well get my cake and eat it in this case as there should be no problems even with our crappy 1meg link, and with our imminent move to 10meg (and possibly an Expand box which adds compression) it should be almost as if we are on the same subnet as the DR server.

Good times :-)