Polyglot persistence
This refers to the system that uses different databases for
each of its components. The idea is to choose the database that best fits the
needs for a particular component.
The flexibility of RDBMS have led to a scenario where over
the years, it has become a default choice for persistence. In some cases, RDBMS
is severely constraining and we have been addressing it by having a layer of
abstraction on top of the RDBMS solution. Some examples of the abstractions
that we have used are
- Having a caching layer that reads from the database
- Storing files as byte arrays and having functions that converts files to byte arrays & back
- Building data access layer to map complex object to relational model
The emergence of different varieties of NoSQL databases has
given us the choice to choose from a wide variety of options.
A complex enterprise application comes with multiple modules
& functionalities, all its data needs may not be met with a single
persistence technology. It would be beneficial to pick the right database for
each.
The solution that includes multiple databases for its
persistence needs is referred to as polyglot persistence
--------------------------------------------------------------------------------------------------------------------
0 Comments:
Post a Comment
Subscribe to Post Comments [Atom]
<< Home