# hrw v0.2.0 - Table of Contents

Rendezvous hashing (HRW) with an optional O(log n) skeleton for large node sets.

## Pages

- [HRW](readme.md)

## Modules

- [HRW](HRW.md): HRW (Highest Random Weight), also known as rendezvous hashing, maps a key
to a node out of a set in a way that stays stable when nodes are added or
removed.
- [HRW.Bounded](HRW.Bounded.md): A bounded-load variant of HRW. Distributes a known set of keys across nodes
such that no node receives more than `ceil(|keys| / |nodes| × (1 + epsilon))`
keys.
- [HRW.Scorer](HRW.Scorer.md): Behaviour for HRW scoring strategies. Each variant module (`HRW`, future
`HRW.Weighted`, etc.) defines a struct holding its configuration and
implements `score/3` returning a score for a `(key, node)` pair.
- [HRW.Skeleton](HRW.Skeleton.md): Internal data structure backing `HRW.build/2` and `HRW.owner/3` for
O(log n) lookups. Nodes are grouped into clusters and routed through a
virtual tree. Plain data, not a process.
- [HRW.Weighted](HRW.Weighted.md): Weighted HRW implementation for ensuring certain nodes get a greater share of keys.

