There is a big database engine running online with an interface to the net. You have a local software that is not written by yourself, which tries to connect to a local database. To connect these two I thought about using a local DB engine that kind of proxys the requests to the online db and caches the result for usage by the software on the local machine. Does such kind of sceniaro makes sense? How would you solve that problem?
Your question is too abstract. Please add more details or this question might be flagged and deleted.
What is this 'big database engine'? (some sql database?) what technology uses local software? Are you absolutely sure is it not possible to change connection address?
As for proxies, there are number of proxy(+connection poolers) for different database engines.
As for cache, in genetic case you'll get inconsistent results when trying to cache sql answers.