Skip to content
Putting It All Together
step 1/5

Reading — step 1 of 5

Read

~1 min readProduction Use

Putting It All Together

You've built every piece:

  • Probabilistic levels (lesson 1)
  • Multi-level structure (2)
  • Search (3)
  • Insert (4)
  • Delete (5)
  • Range queries (6)
  • Concurrent considerations (7)

Where you'll see skip lists in production:

  • Redis sorted sets (ZSET) — implemented as skip list + hash map
  • LevelDB / RocksDB — memtable is a skip list (now SkipListRep)
  • Java ConcurrentSkipListMap — replacement for synchronized TreeMap
  • Apache Cassandra — Memtable
  • MongoDB WiredTiger — has skip-list option
  • Coq, Agda, Idris — implementations in proof systems for sorted maps

Compared to alternatives:

  • B-tree: better cache locality, more complex code
  • Red-black tree: tighter memory, harder concurrency
  • Hash map: O(1) point lookups but no ordering

Skip list is the sweet spot for ordered concurrent maps in moderate-size data.

Discussion

Ask a question, share an insight, or help someone who’s stuck.

Sign in to post a comment or reply.

Loading…