Live data from Hacker News

The Database Administrator is dead

thenextweb.com

71–78 of 78 posts

Re: The Database Administrator is dead

#71

If they define DBA as a guy who sit in a room 9-to-5 for a $100k+ salary, then, yes, there is a recession, you know. But usually (or rather unusually) DBA is an engineer, who could do much more than looking at EXPLAIN output and tune some variables once in a week. I have been Informix DBA for years and I could tell that we were the strongest guys in a team, because in order to do our job we had to understand (abstrac…

__DBAs and Sysadmins (real ones, not these clowns who use nothing but chief or puppet and doesn't know how ./configure && make works) are becoming extinct purely from economical reasons__

As long as we're insulting people ... it's going to be 2014 in three weeks. Who compiles anything for PHP4? Boasting about an ability to handle other people's messy scripts sounds like an anti-pattern to me, and your recommendation to your org should be to develop a plan to refactor anything dependent on a library that has been deprecated for 6 years and actively out of development for 5.

I also feel like the vast majority of folks claiming merit badges as DBAs in 2013 are the product of failed technology roadmaps and technical debt with no plans to pay it off. I'm sure there are still places where true, full-time DBAs are worth their paycheck, but in my experience these are far and few between with the current status of OSS database options and hardware performance.

Re: The Database Administrator is dead

#72

If they define DBA as a guy who sit in a room 9-to-5 for a $100k+ salary, then, yes, there is a recession, you know. But usually (or rather unusually) DBA is an engineer, who could do much more than looking at EXPLAIN output and tune some variables once in a week. I have been Informix DBA for years and I could tell that we were the strongest guys in a team, because in order to do our job we had to understand (abstrac…

__DBAs and Sysadmins (real ones, not these clowns who use nothing but chief or puppet and doesn't know how ./configure && make works) are becoming extinct purely from economical reasons__ As long as we're insulting people ... it's going to be 2014 in three weeks. Who compiles anything for PHP4? Boasting about an ability to handle other people's messy scripts sounds like an anti-pattern to me, and your recommendation…

> As long as we're insulting people

People may assume whatever they wish.)

> Who compiles anything for PHP4?

It was long ago, but you probably wouldn't believe how many people are scared to touch anything, leave alone to perform even a necessary security update - "what if it stop working?!"

Unfortunately, frustration, which sometimes influenced wording of some of my comments, is based on a quite long time in the industry, and I never asked for it.

Re: The Database Administrator is dead

#73

The cloud is killing all the low-level admins. Mail administrators? Backup operators? Moving to BYOD will continue to reduce the numbers of administrators as well. Eventually you'll have two groups of IT staff, a very small group of high-level engineers who build and implement everything, and then a very large group of low-skill helpdesk type people who reset your accounts and fill in your login information on your d…

I couldn't agree more. The most apt analogy to explain this to non-tech folks I can come up with is how the automobile went from a hobby toy for the mechanically inclined to a tool people use everyday.

There will always be a place in the world for engineers who understand how to get the most of out an internal combustion engine and ways to improve it, just like for database engineers. But we don't all need our car in the shop twice a month having parts tuned. Nor do the vast majority of databases hitting performance limits that would require full-time DBAs.

Consulting is a great business decision when you reach hundreds of GB in data. In-house when your tossing around Tera or Peta-btyes. By the way, I can whole-heartedly recommend http://www.pgexperts.com if your having Postgres issues. After speaking with a few of their core engineers at DjangoCon 2013 I would consult with them anytime I had PG performance issues.

Re: The Database Administrator is dead

#74

If they define DBA as a guy who sit in a room 9-to-5 for a $100k+ salary, then, yes, there is a recession, you know. But usually (or rather unusually) DBA is an engineer, who could do much more than looking at EXPLAIN output and tune some variables once in a week. I have been Informix DBA for years and I could tell that we were the strongest guys in a team, because in order to do our job we had to understand (abstrac…

>The claims that some crap like MongoDB (of all things!) >service could replace skilled, productive, (but, yes, quite >expensive) professionals is, of course, utter nonsense (what >else we could expect from MongoDB?).

The claim isn't that the service replaces the skilled, productive and expensive folks entirely, those professionals are still needed. They just work for the service provider.

The business entity that creates the actual product can focus on just that, and not complicated DBA tasks. It's a developers world. ;-).

Also, it's not a MongoDB centric concept. Rackspace and Amazon have multiple data products now, with more coming, and they all fall under this concept in my mind.

Re: The Database Administrator is dead

#75

Earlier quoted context omitted.

This sort of nonsense is exactly the sort of mysticism I'm talking about. My, for example, do you think every query needs to be tweaked for this one: Push the query plan down into InnoDB So why did you include it on the list? 5a + 5b, Is MySQL so bad at memory management that you tweak it for every query? So why did you include it. Virtually everything on that list are implementation details that the vast majority of…

> Virtually everything on that list are implementation details that the vast majority of applications and developers don't need to even think about. Particularly if you hire a DBA. But that's not what you meant... and you're right. If your business doesn't generate enough query traffic and data to stress your database, then no, you don't need more than the indexing and smart query development which your average devel…

Look, you're doing the equivalent of looking at a car and saying that every single one needs to be hand tuned.

Just because you're a mechanic.

I said there is a bar when you will need a DBA. It is much, much, much higher than you're making out.

And the things you're talking about, most of the people mucking around with them probably shouldn't be. They've probably made it worse. Any the tiny few who actually need to? They're a tiny few.

Re: The Database Administrator is dead

#76

Earlier quoted context omitted.

That's a naive view of both DBAs and sysadmins these days. They both do much more than just keep things running. Sysadmin has mostly turned into opsdev. Same with DBA.

Sysadmin has mostly turned into opsdev. Not in places large enough to value loose coupling (e.g., if keeping your servers running comes out of a different budget than improving your applications).

Opsdev != dev

Re: The Database Administrator is dead

#77
post #51

Earlier quoted context omitted.

What happens if you also have a “Web Server Administrator” with a similar holistic view? Won’t they step on each others’ toes? Is this not why you have separate roles, like the Dev/Ops division?

Well, your web server is not your database server. If it is, just know that your first scaling task will be to separate the two onto separate systems. I was in a hurry when I wrote my earlier reply - system monitoring is not the only monitoring we perform. We watch the database itself for health and performance. We watch for abnormally long queries, abnormal locking, excessive deadlock resolution, replication health,…

That's too bad since this is one operation that incurs a very significant local drop in performance. The best optimizations I've ever done in website servers is to introduce local caching where reasonable, ignoring updates. User records, item records, comments, sessions, all would be cached locally. You wouldn't believe the speedup.

Having your data on a different server as your website introduces, effectively, a much higher minimum latency. It adds 5-6 ms to every single page load. If I were writing the site that would be a factor 5 drop at least. This is extra time that your webserver has to keep state for a request, and so effectively can mean a drop of a factor 5 or more.

The DBA said then that this would undermine consistency. And, of course, he's right. However for most things websites don't actually need consistency (plus the web request response model makes it impossible, as the data client-side is not included in transactions). The prices at checkout, sure, there you want consistency. Everything else ... do you really care if it takes 1-2 minutes for your webfarm to be entirely in sync ? (and if it's important enough you can implement "clear this cache item now" requests too, which I did for user records after a complaint)

Databases are so ridiculously slow it's not funny. If your data fits in 64-bit address space, an mmap'ed serialized data structure will blow it's socks off, and for everything that doesn't absolutely require synced data it's fast. If your critical data is small enough, keeping it in memory with a background thread getting signaled to dump it to disk after every update may also work.

I wrote a network-as-a-service infrastructure for an isp once (something to do with data on cell phones), where each machine would happily do 1Gbit of web traffic, directed by it's 5Gb database (meaning it would need to look up user account balance, potentially update it, for every request), consistently and quickly (99.9% of requests was Databases are a language + a B+tree data structure for those who can't, or won't implement it themselves. Generalized databases have zero hope of competing with specialized ones.

Re: The Database Administrator is dead

#78
post #57

Earlier quoted context omitted.

No they just know how not to fuck up their queries to start with so we don't need a DBA to optimise 300 join statements...

Knowing how to write good queries and indexes is admittedly 80% of having a good performing database. However, as with any other 80/20 split, the remaining 20% is the hard part, and you'll end up paying a specialist to take care of it for you. Or your dataset and query volume will not grow to the point where you actually need a performant database, but that's a business problem, not a DB solution.

I wonder how much of your business is represented by startups and really capable development teams ... and how much is making hibernate perform better (or should I say "less horrible").

Development teams that go after speed will soon realize that re-serializing the data they need for a web page push and sending it over the network results in a factor 5-50x drop in performance over having that data in a local data structure. And God forbid you have even minor packet (like 0.0000001%) loss in the network between your webserver and database server. Your 99% tail latency will sprint for the 10s mark.

And as the DBA's here said : most databases are in the GB range, with a few in the tens or hundreds. SQLite will beat the crap out of any other solution at those sizes.

People don't realize how much tail latency affects maximum QPS. Once you calculate how one affects the other you see that tail latency is the enemy of performance in webservers. A webserver that can generate 100% of responses in 1ms can serve 1 million qps (ie. can saturate a 10Gbps link). At 99% at 1ms and 1% at 10ms (the very minimum to execute a single query against a database that isn't local to your machine), you're left with 900k. More typical database figures would be 20ms average and 600ms for the 1%, which will leave you with 30k QPS. In this example using a database cost you 97% of your original performance.

That 97% figure is perfectly normal. So if you want decent performance, using a database server (in the serving path) is just not in the cards at all.

Post reply on HN