This video is 100% animated in C# code using WPF.
It was tons of work so I hope you’ll like it.
Bloom Filter source code is in the video description but you can grab it directly here: https://gist.github.com/badamczewski/42ec5d3aabd47c32684cdb87851f8a51
Also, people are asking me for the code to create the animations and text morphs. I’m slowly turning my spaghetti mess into a library but it’s going to take some time so in the meantime I can share just the text morph part of the codebase:
https://gist.github.com/badamczewski/06d9c86e6d78fc79905f943cb3545f51
The video was very nice and instructive. What would be a practical application of having a set that may return a false positive? I understand you can get better performance, but could not think of a practical application. If you could share any examples it would be nice. 🤔
Most Document Databases and Key-Value stores use Bloom Filters to know in which file to look for a particular key.
There’s a couple of distributed computation engines that use Bloom Filters as well.
Search Indexes use them to quickly check for items.
Relational Databases use them both internally and externally as an Index you can create.
You typically tune the parameters to get a very low error rate like 0.1% for a very big capacity and while such a bloom filter will be big it will still be around ~1mb to represent 1mil values.
Indexes and Data Bases use them to shorten query time, and when you get a false positive and don’t find what you are looking for in a file shard you hit the slow path and look in other shards that reported having the item.
C# devs
null reference exceptions