I use Memcache to cache results of MySQL queries. I've found that using an MD5 hash of the SQL statement works well as the key. I don't know the probability of issues where two different sets of data will produce the same MD5. If you find that out please post to the list.

As far as speed goes, the time to perform an MD5 hash is negligible compared to time to hit MySQL vs Memcache. Of course, my SQL statements are relatively short in length.

An MD5 hash also has the added benefit of the short key length which I can only assume allows you to cram more data into a smaller allocation of RAM.

- John

Venkatesh KS wrote:
folks,

memcached supports variable length keys. But I am just curious as to why not use md5 instead of lengthy keys. The keylen requirements for my cache (which is very similar to squid proxy) is very high and I am planning on using md5. I will read up to find out about the false positive probability. But going md5 way will certainly cap the keylen to 16bytes.

regards,
-venkatesh

Reply via email to