In most sys design diagrams an arrow is shown from the cache to the db. I just want to clarify one thing - my understanding is that caches are just for storage and do not interact directly with dbs. Is that correct? For example, to update the cache/db, an app must exist which does that updation by invoking methods that act upon the cache and db. Or is it possible for a cache to operate on the db directly