Hacker News new | ask | show | jobs
by mrfox321 2063 days ago
Can databases be efficiently implemented without shared access?

Can message passing accomplish this at the same level of performance?

although I agree that simplifying resource access should probably be considered before fully shared state.

1 comments

> Can databases be efficiently implemented without shared access?

Let me ask a different question: Why did databases take off in the way they did? Sure they persist stuff to disk, but so do files. What they offer is a concurrency model so good that you almost never think about it. Beginner programmers can competently write large, concurrent systems by writing single-threaded programs which are backed by a central DB, without even knowing the term "race condition".

If beginner database articles told users how to make database Threads, Thread groups, and how to signal and catch interruptions, I don't think databases would have enjoyed nearly as much popularity.

While Threads are fundamental to Java concurrency, I kinda agree with yetkin's point. It introduces the Thread footgun without even paying lip service to the problems of shared, mutable state.