Caches and sessions
We design keys and expiration rules for frequently accessed data and time-limited user sessions stored in memory.
We assess caching, session and event-stream needs with open-source Valkey alongside your existing systems.
Tell us what you needWe assess potential uses for Valkey against your work and existing systems.
We design keys and expiration rules for frequently accessed data and time-limited user sessions stored in memory.
We select data structures and application behavior for short-lived data such as counters and request rate limits.
We assess Valkey data structures for background jobs and event streams, considering failures and retries within the scope of the work.
On suitable Valkey 8 or later deployments, we can design preliminary membership checks using the separately loaded Valkey-Bloom module. We verify module and command availability in the service being used.
Valkey’s HyperLogLog can estimate the number of distinct visitors, accounts or devices. It cannot tell whether a particular person is in the set.
We define the scope around your needs, existing systems and team priorities.
We review versions, commands, clients and dependencies in an existing Redis implementation. We test suitability for Valkey and plan migration and rollback steps.
Explore AI-assisted development with AI LABSWe define Bloom filter capacity, error targets and update flows, and plan measurement windows for HyperLogLog. RedisBloom and Valkey-Bloom filter data are not RDB-compatible, so we plan to rebuild filters from source data when migrating. Valkey-Bloom does not include Cuckoo filters, Count-Min Sketch, Top-K or t-digest. Some needs can use sets and counters; approximate structures require assessing compatible additional components.
We connect caching, session and filter flows to your application, designing key organization, refresh rules and failure handling together.
Explore software development with Reformo (opens in a new tab)We assess persistence, replication, memory limits and monitoring against your data-loss and availability requirements.
Explore training and mentoring with HGM Labs (opens in a new tab)These examples illustrate what could be built for different needs.
Explore 70 scenarios and 4 advanced patterns
A compatible Valkey-Bloom module must be loaded separately; if the filter is not current, use the source.
Client and command compatibility can be tested for an application using Redis. The results can guide the migration sequence and a rollback plan.
Multiple application servers can use a shared Valkey layer for time-limited sessions. Session duration and connection-failure behavior are agreed together.
With Valkey-Bloom, a complete, up-to-date filter can screen out product IDs absent from a catalogue. If the filter is not ready or current, the application checks the source of truth; possible matches are verified there too.
A Bloom filter can flag event IDs that may already have been processed. Possible duplicates are checked against the authoritative record; the filter alone does not guarantee exactly-once processing.
HyperLogLog can estimate the number of distinct visitors or users reached by a campaign over a period. It cannot list people or check individual membership.
Valkey-Bloom can pre-check user–device history, while HyperLogLog estimates the number of distinct accounts from an IP address. Risk reviews consider these signals alongside authoritative records and other rules.
This catalogue brings together the examples above and other possible uses. Open each topic to explore scenarios and implementation conditions.
Valkey-Bloom is loaded separately; it is built for Valkey 8.1 and later, with a specific build option for 8.0. Verify module availability in the service. Check possible matches against the source of truth and fall back when the filter is incomplete or stale.
Valkey-Bloom does not provide Cuckoo filters. Some needs can use exact membership in Valkey sets; memory use, expiry and concurrency have different trade-offs.
Valkey-Bloom does not provide Count-Min Sketch. Some frequency needs can use Valkey counters; approximate sketches need an appropriate additional component. Time windows and aggregation require separate design.
Valkey-Bloom does not provide Top-K. Counters and sorted sets can rank frequencies; this differs from an approximate Top-K sketch and requires data and time-window management.
Valkey-Bloom does not provide t-digest. These distribution calculations require a suitable application library or separate analytics component; support and version requirements must be assessed.
Valkey’s built-in HyperLogLog estimates distinct counts; it cannot list people or check individual membership. Period summaries are merged rather than added.
Valkey-Bloom can provide pre-screening; these patterns still require separate routing, error-correction, graph-processing or reconciliation algorithms.