Requests are not equally probable, they'll follow some sort of power law distribution. Caching will work well enough in that situation: common queries will remain hot and rare queries will fall out of the cache. The net effect is faster.
SQL databases often have query caches for this reason.
I agree about DoS, but I figure that's going to require the usual defences around throttling. Ideally in the database, but most databases of any kind don't have workload partitioning.
SQL databases often have query caches for this reason.
I agree about DoS, but I figure that's going to require the usual defences around throttling. Ideally in the database, but most databases of any kind don't have workload partitioning.