What is Murmur? and what is Murmur3A and Murmer3F?

Murmur or Murmerhash is a modern non-cryptographic hash function with a low collision rate and high performance. It is thus suitable for general hash-based lookups and unsuitable for cryptographic uses. The name is composed of multiply (MU) and rotate (R), used in its inner loop. All MurmurHash versions are public domain software.

Murmur3 is just the third and at the time of this writing current version. Murmur3 hash functions are one of today’s best hash functions available with excellent properties. There are two variants: Murmur3A, which produces a 32 bit hash and Murmur3F, which produces a 128 bit hash. Java offers no Murmur hash implementation. Yet, there are several open source Murmur3 implementations available. The most wellknown Core Library for Java 6+, Guava, also offers one. This is however not a very performant impementation as you can see in an overview of hash functions and hash performance benchmarks.

Therefore, we implemented our own Mumur3 hash functions and shared these as open source libraries with the community. We hope you enjoy working with our libraries and are happy to get feedback.





Spread the love