Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think this is a really good question, and I'm surprised by the answers, many of them are not particularly accurate. I won't tear into the wrongness of the answers and instead I'll highlight the rightness of the question - why use an incredibly complex data management system when you can store your data simply. IMHO The answer usually is "because thats the way everyone else does it" and thats not really a wrong answer but its not really all that interesting either.

If you are storing a dataset thats write once, read many, then not using a database is great and you're likely to save a lot of work efficiency. However, if you end up doing complex things with your data, its probably not that great to re-invent the wheel. You should also look at the cost of training other people to work around your storage system, if its not actually simple, you waste a lot of time getting people up to speed.



Everyone else using something is actually valuable.

There's a lot less potential pitfalls to using something that has a big community behind it, than a roll-your-own-flat-files-system.


why use an incredibly complex data management system when you can store your data simply.

Databases haven't been incredibly complex for years. Anyone can be up and running with MariaDB or psql or even mongodb in literally minutes. Actually using them is absolutely no more difficult than file system operations.


Sorry, thats not my model of complex :) If I have to store one line of text IE: "This is a line of text" in a database, the amount of overhead required to do that is huge. To store that simply with a flat file, I just put it into the file, thats a low complexity system.


You're right. It's harder to start with an RDMBS; the threshold of action is higher.

RDBMSes are like that because in return they make certain guarantees about their behaviour. Most of the time, the gratification from those guarantees is highly delayed and so, humans being humans, we heavily discount their value.


Your original post referred to it as "incredibly complex". It isn't at all complex. Is it more complex -- at least to start -- that an fopen/fwrite/fclose? Sure, but it's still easier than virtually any other part of any solution worth doing.

Worse still, avoiding such non-complexity early on almost certain dooms you to serious complexity later on, because soon enough silly things like concurrency pop up -- the sorts of issues that databases solved decades ago.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: