4 ms·
Here's an example of a database abstraction choice: the data model. Do you treat data as a series of normalized row-based data tables with joins optimized for
by PeterCorless 4y ago
Here's an example of a database abstraction choice: the data model.
Do you treat data as a series of normalized row-based data tables with joins optimized for strongly consistent OLTP? [PostgreSQL]
Or as a denormalized row-based key-key-value single table optimized for eventually consistent OLTP? [ScyllaDB]
Or as a denormalized column-based single table optimized for OLAP? [Pinot]
Or as a denormalized key-value optimized for in-memory caching? [Redis]
And so on for document stores, or property graphs, etc.
Each of these design choices then gives way to the abstractions of implementation.