Redis Bigkeys Output Analyzer

Paste the summary from redis-cli --bigkeys or --memkeys. The distinction decides everything: --bigkeys counts elements, --memkeys measures memory, and the largest key under one is often not the largest under the other.

Paste below, or drop a file anywhere on this panel

Or drop a file anywhere on this panel. Nothing is uploaded: the analysis runs in this tab.

The answer appears here

Paste on the left and press Analyze. Nothing leaves this tab.

Examples

Real input you can load into the tool above. Each one shows a different thing going wrong, because that is what the tool is for.

Element counts, not memory

A two million item list, and why that number does not answer a memory question

Biggest     list found '"queue:jobs"' has 2000000 items

A large string

Every read copies the whole value into a client output buffer

Biggest   string found '"cache:page"' has 20971520 bytes

Common mistakes

These are the ones that fail silently. The config is accepted, nothing raises an error, and the consequence arrives later.

  1. Chasing the biggest --bigkeys key for a memory problem

    It reports element count for collections. A key with fewer, larger elements can use much more memory.

    Instead:Run --memkeys, or MEMORY USAGE on the specific keys.

  2. Deleting a huge collection with DEL

    DEL is O(N) for collections and blocks the single thread for the whole free.

    Instead:Use UNLINK, which frees it on a background thread.

  3. Running it against the primary during peak

    It walks the entire keyspace issuing commands per key, which is sustained extra load.

    Instead:Run it against a replica.

  4. Treating the summary as a complete picture

    It names only the largest key per type. Many medium keys can matter more in total and never appear.

    Instead:Use a prefix breakdown for aggregate shape.

Why the biggest key is not the biggest problem

These two tools look interchangeable and answer different questions. Choosing the wrong one sends you after the wrong key.

--bigkeys counts elements, --memkeys measures bytes

For collections, --bigkeys reports how many members a key has. A list of 100,000 small integers can occupy less memory than a list of 1,000 long strings, so ranking by element count does not rank by memory. If the question is 'what is using the RAM', --memkeys is the tool.

A large collection is a latency problem before it is a memory problem

Redis executes on one thread, so any O(N) command over a large collection blocks every other client for the duration. DEL is itself O(N) for collections, which is why deleting a huge key can cause a visible stall. UNLINK frees it on a background thread instead.

On a cluster, one key cannot be split

A key lives entirely in one slot, which lives on one node. A single enormous collection therefore caps how evenly the data can shard, and no amount of rebalancing helps, because the unit of movement is the slot and the key cannot leave it.

The scan itself costs something

Both modes walk the whole keyspace with SCAN and issue a type and size command per key. They do not block, but on a large keyspace they add sustained load, and the result is spread over however long the run took rather than being a single consistent moment.

What this cannot see

Only the largest key per type is in the summary, so a thousand keys of moderate size, which together matter more, do not appear at all. Use the keyspace prefix breakdown for that shape.

More redis tools

Redis Hash Slot Calculator Which of the 16,384 slots does this key land in? Redis Hash Tag Tester Will these keys survive a multi-key command? Redis RESP Protocol Decoder Read what the server actually sent Redis RESP2 vs RESP3 Reply Decoder What the same reply looks like on each protocol Redis Command to RESP Exactly what your client puts on the socket Redis Glob Pattern Tester Redis globs are not shell globs Redis Connection URL Parser The path is the database number Redis Memory Unit Converter 1g and 1gb are not the same number Redis TTL Converter -1 and -2 are not durations Redis Stream ID Parser The first half is a millisecond timestamp redis.conf Validator Will Redis start with this file? Redis Production Config Linter The settings that cause incidents redis.conf to CONFIG SET Which of these can you change without a restart? Redis ACL Rule Decoder What does this user actually get? Redis ACL Validator Find the rule that does nothing Redis INFO Analyzer The numbers INFO does not print Redis SLOWLOG Analyzer What blocked everyone else Redis CLUSTER NODES Parser Read the topology, and find the gap Redis Cluster Slot Distribution Who owns how much, and what is missing Redis Keyspace Notification Flags Why your events never arrive Redis Memory Calculator The encoding decides, not the data Redis Key Count to Memory The fixed cost per key Redis Encoding Threshold Calculator One field more, several times the memory Redis Bitmap Memory Calculator Sized by the highest bit, not the set ones Redis HyperLogLog Calculator 12 KB whether you count a thousand or a billion Redis Cluster Sizing Only 60% of each node is usable Redis RDB and AOF Size Calculator The fork needs memory, not disk Redis Replication Bandwidth Calculator How long the backlog actually covers Redis Connection Pool Calculator More connections is not more throughput Redis Pipeline Calculator It removes round trips, not work Redis Cache Hit Rate Calculator 99% to 90% is ten times the backend load Redis Eviction Policy Simulator volatile- with no TTLs is noeviction Redis Cost Estimator Your rates, so nothing goes stale Redis Config File Generator A redis.conf with the reasons in it Redis ACL Generator A user that can do exactly one job Redis Maxmemory Config Generator The limit, and the headroom it needs Redis Persistence Config Generator How much you can afford to lose Redis Lua Script Generator Atomic, and short enough to stay that way Redis TLS Config Generator Encrypted, and the old port actually closed Redis Sentinel Config Generator Failover that can actually be authorised Redis Cluster Config Generator Three primaries, and the bus port open Redis Docker Compose Generator Local Redis that is not on the internet Redis Client Config Generator Timeouts on both sides, and a sane pool Redis MEMORY STATS Analyzer Which number actually matters Redis CLIENT LIST Analyzer Find the connection hurting you Redis LATENCY Report Analyzer An empty report may mean nothing was recorded Redis Keyspace Prefix Analyzer Which key family is growing Redis SET Command Builder A plain SET clears the TTL Redis ZRANGE Query Builder REV reverses the argument order Redis SCAN Iteration Planner COUNT is a hint, not a page size Redis Key Name Validator Legal is not the same as workable Redis Cluster Compatibility Checker Works now, breaks when you shard

Elsewhere on the site