Caching for Object-Relational Mapping
Caching is the retention of data, usually in the application, to minimize network traffic flow and/or disk access. With transparent persistence, caching is often set up as part of the application work space. With this cache, there is no need for the application to explicitly translate relational tuples. They move from disk storage automatically into program memory. This is either as a result of a query or from traversing the graph structure. For an animation that demonstrates this caching, see transparent persistence.
The performance cost of using relational DBMSs with objects can be reduced because most object-relational mapping products provide transparent persistence with object programming languages and caching. Caching can help improve performance if the client applications read the same data multiple times for every write. Therefore, caching can, in some cases, reduce the effect of impedance mismatch. It does not, however, eliminate the underlying impedance mismatch between objects in your application and tuples on disk.
Also see cache synchronization.
More on the general topic: Mapping Layer
- Development Costs with Object-Relational Mapping Products
- Mapping Objects to Tables
- Mapping Tables to Objects
- Cache Sychronization