And now for a brief interlude while I work on my next “real” post… continuing with the same theme… SQL Server for the developer/programmer! Warning: potentially excessive snark ahead.
SQL Server is a mystical fairy-tale land where you can store all your application data, and never have to worry about it again! Sure, it “should” be relational, but you also “should” drive the speed limit.. PSHH! Let’s throw blobs in there too — HTML, XML, hell, even JSON now that 2016’s got nice happy JSON-centric system functions. And files? Heck yes, what else is
FILESTREAM for? Sure, performance may be abysmal, but that’s somebody else’s problem, so why should we care?
It’s the only database platform your company invested in, so it must be good for everything. Document storage? Sure, not like there’s anything else better suited for the job, especially for ‘Free’! Ooh, how about key-value data, and volatile temporal data like .NET Session-State? Obviously! Nothing else exists, and Microsoft makes it so simple to set it up in SQL.
It’s that wonderful database system where we send all our Entity Framework queries and data just magically appears! We don’t need to worry about how nasty and convoluted those queries turn out when they finally get parsed down to actual TSQL code. It was only 3 nice simple lines of LINQ, why should it be any more complex than that? Oh, and we can write all sorts of abhorrent ad-hoc queries against it too, nobody will even notice. Let that code build all sorts of
IN SELECTs & sub-queries, chains of unreadable
JOINs, and Inception-level nested
VIEWs, it’s perfectly fine! Performance, shmerformance! That’s what we have DBAs for. Not that they’ll be able to help you when you refuse to refactor or rewrite your code that’s responsible for these abominable queries.
SQL Server is so easy! Microsoft gives me a free Developer Edition, I can code for all these awesome features that I know we’ll have in production, right? Oh, we only run Standard Edition? Woops. Ooh, I know! Let’s put everything in Azure. It can do everything and make us breakfast! Then we won’t need to worry about feature differences, backups, RTO/RPOs, index maintenance, performance tuning, scaling, or even performance in general! Wait, no? Oh well, that’s what we have DBAs for! Besides, it’s so easy to move everything over, we just take our SQL backups and upload them to blob storage and then restore them on Azure SQL Database, right? No?
Hmm. Maybe we should hire a DBA. Or four.
That’s all, see ya next time! XD