A system and method of evaluating queries in distributed databases with
MQTs comprises deriving MQTs; replicating the derived MQTs from a local
server to at least one remote server; and distributing data and
replicated derived MQTs to a plurality of other remote servers, wherein
the distributing increases overall query execution efficiency. The
databases may comprise heterogeneous databases. The query execution
efficiency comprises observed response time at a frontend database and
associated costs comprising computational central processing unit costs,
input/output costs, and network communication costs. All of the
associated costs comprise statistically estimated costs. The method
further comprises running a MQT advisor at a frontend database, and
considering the costs of at least one MQT placed at the frontend
database. The method further comprises running a MQT advisor at a
non-frontend database. Additionally, the increased overall query
execution efficiency may consider all dependencies of all involved
database instances and associated costs.