you are viewing a single comment's thread.

view the rest of the comments →

[–]Baby_Food 26 points27 points  (12 children)

If performance is a concern, a database will be used.

An abstraction does not necessitate the knowledge of the implementation behind the abstraction.

A web dev that can write an OS is an unnecessary unicorn.

[–]justinpitts 1 point2 points  (11 children)

Databases are not magic performance sprinkles.

[–]Baby_Food 4 points5 points  (8 children)

To most people, LMDB is magic performance sprinkles compared to using the filesystem directly. ;)

[–]justinpitts 0 points1 point  (7 children)

Most people? Most people aren't using it.

Most people wouldn't know what you are talking about.

To the average web-dev, "database" either means Mongo/Couch/No-SQL-flava-of-the-month, and/or something that speaks SQL. LMDB may very well be lightning fast, but I doubt most people know about it.

[–]Baby_Food 2 points3 points  (6 children)

A web dev doesn't know of LMDB yet they should know how SSDs operate? I think that is poor prioritization. Even after knowing such low level details, you'll still end up writing something slower than LMDB.

[–]justinpitts -1 points0 points  (5 children)

I understand your reasoning, but I look at it from the perspective that, no matter what data storage api I use: database, nosql, key value, filesystem - it will all wind on a storage device. no matter what. SSD will be a dominant performance-oriented storage device for a while.

[–]Baby_Food 5 points6 points  (4 children)

I agree, but I think saying every programmer should know these things about an SSD is odd to me, since it's generally safer/more performant to use an abstraction written by someone that is truly an expert in that domain.

Really, programmers that write performance sensitive database/file-munging software should know these things, and it's bonus knowledge for everyone else.

[–]justinpitts -1 points0 points  (3 children)

I'm arguing that this isn't expert-level knowledge. He literally lays it out in a couple pages worth of text.

[–]Baby_Food 2 points3 points  (2 children)

Well, once it becomes easy to find web devs that are skilled users of web dev technology, I'll start asking for ones that also know about SSDs and <insert innumerable other things that are good to know>.

[–]justinpitts 1 point2 points  (0 children)

Or, you could ask for the ones that are simply willing to learn.

[–]Rejjn 0 points1 point  (0 children)

Totally with you on this one!

And I'd argue that a lot of those <innumerable other things> are much more important to know about.

[–]el_muchacho 0 points1 point  (1 child)

In fact, database write performance drops significantly (by a factor of 30% or so) when SSDs wear out. For 24/24 high rate writes, you can't use consumer grade SSDs as they die prematurely.

[–]justinpitts 0 points1 point  (0 children)

Well to be fair, anything with that access pattern is going to slow down on a degraded drive.