Devs who don’t understand how SQL or relational databases work write absolute abortions of queries.
9 times out of 10 - yes it is absolutely the devs. I say that as the dev who gets tasked with analysing why these shitty queries from our low budget outsourced labour are so slow
Err, no? At what point did I claim to be an expert?
It doesn’t take a genius to realise that serving 100-record chunks of a billion record dataset using limit 100 offset 582760200 is never gonna perform well
Or that converting indexed time columns to strings and doing string comparisons on them makes every query perform an entire table scan, which is obvious if you actually take the time to look at the query plan (spoiler: they don’t)
“Why can’t the system handle more than 2 queries per second? This database sucks”
I didn’t mean it so serious. I just tried to express that you seem to have experience with it and I am wondering what you have to deal with. I am sorry if it came across negatively.
Yet it’s the sysadmin who gets blamed, not the developer. “How can you tune the database so this doesn’t happen?”
I am telling you this because hopefully it will make you feel a little better. Our head of it blames devs for slow queries.
In my 30 years of experience, it is usually the devs.
As a dev, yes usually. It is certainly the better starting point.
Devs who don’t understand how SQL or relational databases work write absolute abortions of queries.
9 times out of 10 - yes it is absolutely the devs. I say that as the dev who gets tasked with analysing why these shitty queries from our low budget outsourced labour are so slow
So you are saying you are the expert in unshitifying queries? What is the most common thing that needs to be unshitified?
Err, no? At what point did I claim to be an expert?
It doesn’t take a genius to realise that serving 100-record chunks of a billion record dataset using
limit 100 offset 582760200
is never gonna perform wellOr that converting indexed time columns to strings and doing string comparisons on them makes every query perform an entire table scan, which is obvious if you actually take the time to look at the query plan (spoiler: they don’t)
“Why can’t the system handle more than 2 queries per second? This database sucks”
I didn’t mean it so serious. I just tried to express that you seem to have experience with it and I am wondering what you have to deal with. I am sorry if it came across negatively.
I’m the sysadmin (and transitioning to DevOps) at work, but the DBs are 100% in control of our two devs (one of which being the head of IT).
Apparently we’re going to hire a third Dev, who will moonlight as our DBA – oh, and for 30K/yr.
I’m sure this will go well.
At my job, it’s almost always the dev team that is called first for bad DB performance (not always, because sometimes it is the server that’s borked).
Infinitely this, biggest pet peeve