Hacker News new | ask | show | jobs
by jandrewrogers 605 days ago
The design of good storage layers in databases is deeply architectural. As a consequence, it is essentially a "forever" design decision. Fundamentally changing the storage architecture will alter the set of tradeoffs being made such that it will break the assumptions of existing user applications, which is generally considered a Very Bad Thing. The existing architecture, with all its quirks and behaviors, is part of the public API (see also: Hyrum's Law).

In practice, the only way to change the fundamental architecture of a database is to write a new one, with everything that entails.

1 comments

You could select which storage approach on a per table level. That way the new characteristics don’t surprise anyone.
This is the MySQL approach, but it isn't without downsides - consistency, predictability, etc.