How Judy arrays work and why they are so fast (2002)
judy.sourceforge.net
judy.sourceforge.net
I also use it as part of a custom indexing/inverted index search engine daemon for PostgreSQL, in one of the bookstore e-shops I made more than a decade ago.
The dataset has a lot of shared prefixes, and Judy excels at storing such data.
It was 15 years ago so don't ask me for details.
> If your data is strictly sequential; you should use a regular array. If your data is often sequential, or approximately sequential (e.g. an arithmetic sequence stepping by 64), Judy might be the best data structure to use. If you need to keep space to a minimum--you have a huge number of associative arrays, or you're only storing very small values, Judy is probably a good idea. If you need an sorted iterator, go with Judy. Otherwise, a hash table may be just as effective, possibly faster, and much simpler.
But are the assumptions made still applicable to newer hardware?