SmoothieMap is a Map
implementation for Java with the lowest memory usage and absence of rehash latency spikes.
Under the hood, it is a version of extendible hashing with 48-slot
mini segments.
This project also includes a proof-of-concept implementation of SwissTable algorithm in Java: see SwissTable.java
.
See this post for a more detailed introduction, performance and memory comparisons, etc.
Maven:
<dependency>
<groupId>io.timeandspace</groupId>
<artifactId>smoothie-map</artifactId>
<version>2.0.2</version>
</dependency>
Then, in Java:
Map<String, String> myMap = SmoothieMap.<String, String>newBuilder().build();
See Javadocs.