There have been occassions when I have replaced a query on a remote database
with a local materialized view, thus eliminating the frequent fetches across the
network -- only the MV refresh has to go across the network.
Furthermore, it also makes sense to index the MV local. A Materialized View
is, actually (physically) a Table. It can be indexed.
Response time on queries has gone down from 10s of minutes to single minutes
with MVs and then single seconds with the appropriate index(es) on the MVs.