Master the fundamental concepts of build a simple key-value store through this focused micro-challenge.
Bloom filters sit in SSTable metadata to answer "key definitely not in this file" without disk reads. A negative lookup saves an I/O; a positive lookup must still check the data block because false positives are allowed.
Hash key with k independent functions into m bits. Insert sets bits; query requires all k bits set.
cLoading…
Keep the relevant documentation open while you implement. When your output disagrees with the reference, trace one failing case by hand before changing random lines.
You will implement a Bloom filter with configurable bit array and hash count. This exercise asks you to report false positive rate on a provided key set.
Write a C program that implements a Bloom filter for SSTable negative lookups.
Requirements:
Three hints are available for this task, revealed one at a time inside the code workspace so you can struggle productively before seeing them.
All starter code and reference implementations are available for your local setup.
View on Github