3 ms·
Yup. As developers we're always told to trust the database and to use proper, normalized relational theory and how it's so much better that in the database we
by Pxtl 10y ago
Yup. As developers we're always told to trust the database and to use proper, normalized relational theory and how it's so much better that in the database we just say what we want instead of specifying exactly how to calculate it like we do in the client programming languages...
But that beautiful kernel of relational theory is wrapped up in a six-foot-ball of duck-tape, bubble-gum, and hot glue in the form of a zillion hacks and leaky abstractions.
At a certain point it really feels like databases are failing to live up to their promises. I expect things like sharding to be hard. I'm okay with that. But if I have one database server, I expect to be able to create tables, maybe indexes, and for it to Just Work given that information. That's what we're paying for.
- gigatexal 10y agoUntil there's an automated way for a database to tell a developer that their particular query is running terribly because of some defacto reason there'll always be a need for a DBA to interpret and investigate, though, I wish it weren't so. I wish we could just treat databases as "dumb" stores of information that could be queried in n number of ways without issue. Some or most DB-as-a-service offerings will handle the mundane tasks of backing up, upgrades, etc. but I know of none that offer this DBA-like level of service where an automated tool can tell you exactly what's going wrong, basically take the context of your query and match it with the current execution plan and the underlying structure of the tables and your data (data types included) and tell you what is wrong. That'd be a huge innovation if it exists. And I'd be out of a job.