Query results are pre-cached for a substantial portion of or all queries
that are likely to be issued by users. One query can be entirely
different from another query, yet because corresponding query results are
pre-cached, the database need not be accessed, improving response
performance. Pre-cached queries are also distributed into multiple
partitions to apportion work among multiple computing machines to further
enhance performance and provide redundancy in case of the failure of any
particular partition. Pre-cached query results are selectively refreshed
so that users may enjoy up-to-date information by focusing on queries
that are popular as well as queries that are old.