Polyglot Persistence
With all these principles in mind, we can think of two main considerations.
The first is as a database system creator, someone who can develop new database systems that can privilege some features over others (partitioning, indexing, and so on). These features, in general, differ from those that RDBMS typically supports.
The second is as a database user (the application developer). We can decide who will take over the responsibility of writing different data models we could use in our solutions. We can choose a different database engine that can differently optimize the features required by an application (storing, querying, searching, and indexing). Alternatively, we can take explicit responsibility in implementing different data stores in different database engines.
We can cite Martin Fowler:
Polyglot Persistence is the practice of using multiple data-storage technologies, chosen based on the way data is being used by individual applications.
Why store binary images in...