A block cache is typically used to minimize latencies involved in hard disk based block storage by caching the most utilized blocks in lower latency media like RAM, non-volatile RAM (NVRAM) or Solid State Disks (SSDs). Use of SSDs for caching presents different challenges than RAM based caching. One of those challenges is that SSD based caches can be orders of magnitude larger than RAM based caches. This significant difference in amount of data stored in cache causes existing lookup structures to grow, requiring more memory and making it impractical to accommodate.