# ExDataSketch v0.8.0 - Table of Contents

Production-grade streaming data sketching algorithms (HLL, ULL, CMS, Theta, KLL, DDSketch, REQ, FrequentItems, MisraGries, Bloom, Cuckoo, Quotient, CQF, XorFilter, IBLT, FilterChain) with optional Rust NIF acceleration and XXHash3.

## Pages

- [FI1 Binary State Format](frequent_items_format.md)
- [Changelog](changelog.md)

- Guides
  - [Quick Start](quick_start.md)
  - [Usage Guide](usage_guide.md)
  - [Integration Guide](integrations.md)
  - [Hash Infrastructure — Phase 1 of v0.8.0](hash_strategies.md)
  - [HLL Hot-Path Optimization](hll_performance.md)
  - [Precompiled NIFs](precompiled_nifs.md)
  - [Serialization Compatibility Contract (v0.8.0)](serialization_compatibility.md)
  - [Migrating to ex_data_sketch v0.8.0](v0-8-0_migration_notes.md)
  - [v0.8.0 Architectural Summary](v0-8-0_architecture.md)
  - [v0.9.0 Roadmap Preview](roadmap.md)

## Modules

- [ExDataSketch](ExDataSketch.md): Production-grade streaming data sketching algorithms for Elixir.
- [ExDataSketch.Binary](ExDataSketch.Binary.md): Public facade for the EXSK binary frame.
- [ExDataSketch.Binary.CRC](ExDataSketch.Binary.CRC.md): CRC32C (Castagnoli polynomial, reflected, init 0xFFFFFFFF, xor-out
0xFFFFFFFF) — the checksum used by EXSK v2 frames.
- [ExDataSketch.Binary.Header](ExDataSketch.Binary.Header.md): EXSK v2 binary frame header.
- [ExDataSketch.Binary.Validator](ExDataSketch.Binary.Validator.md): Structured validation primitives for EXSK frames.
- [ExDataSketch.DataSketches.CompactSketch](ExDataSketch.DataSketches.CompactSketch.md): Apache DataSketches CompactSketch binary codec for Theta sketches.
- [ExDataSketch.DataSketches.Murmur3](ExDataSketch.DataSketches.Murmur3.md): Minimal MurmurHash3_x64_128 implementation for DataSketches seed hash computation.
- [ExDataSketch.Hash.Metadata](ExDataSketch.Hash.Metadata.md): Shared hash + sketch metadata block.
- [ExDataSketch.Hash.Murmur3](ExDataSketch.Hash.Murmur3.md): MurmurHash3_x64_128 (64-bit output).
- [ExDataSketch.Hash.Validation](ExDataSketch.Hash.Validation.md): Compatibility checks for hash configurations across merging sketches.
- [ExDataSketch.Hash.XXH3](ExDataSketch.Hash.XXH3.md): XXHash3 (64-bit) hash algorithm.

- Sketch Algorithms
  - [ExDataSketch.Bloom](ExDataSketch.Bloom.md): Bloom filter for probabilistic membership testing.
  - [ExDataSketch.CMS](ExDataSketch.CMS.md): Count-Min Sketch (CMS) for frequency estimation.
  - [ExDataSketch.CQF](ExDataSketch.CQF.md): Counting Quotient Filter (CQF) for multiset membership with approximate counting.
  - [ExDataSketch.Cuckoo](ExDataSketch.Cuckoo.md): Cuckoo filter for probabilistic membership testing with deletion support.
  - [ExDataSketch.DDSketch](ExDataSketch.DDSketch.md): DDSketch quantiles sketch for value-relative-accuracy quantile estimation.
  - [ExDataSketch.FilterChain](ExDataSketch.FilterChain.md): Capability-aware composition framework for chaining membership filters.
  - [ExDataSketch.FrequentItems](ExDataSketch.FrequentItems.md): FrequentItems sketch for approximate heavy-hitter detection using the
SpaceSaving algorithm.
  - [ExDataSketch.HLL](ExDataSketch.HLL.md): HyperLogLog (HLL) sketch for cardinality estimation.
  - [ExDataSketch.IBLT](ExDataSketch.IBLT.md): Invertible Bloom Lookup Table (IBLT) for set reconciliation.
  - [ExDataSketch.KLL](ExDataSketch.KLL.md): KLL (Karnin-Lang-Liberty) quantiles sketch for rank and quantile estimation.
  - [ExDataSketch.MisraGries](ExDataSketch.MisraGries.md): MisraGries sketch for deterministic heavy hitter detection.
  - [ExDataSketch.Quantiles](ExDataSketch.Quantiles.md): Facade for quantile sketch algorithms.
  - [ExDataSketch.Quotient](ExDataSketch.Quotient.md): Quotient filter for probabilistic membership testing with safe deletion and merge.
  - [ExDataSketch.REQ](ExDataSketch.REQ.md): REQ (Relative Error Quantiles) sketch for tail-accuracy quantile estimation.
  - [ExDataSketch.Theta](ExDataSketch.Theta.md): Theta Sketch for set operations on cardinalities.
  - [ExDataSketch.ULL](ExDataSketch.ULL.md): UltraLogLog (ULL) sketch for cardinality estimation.
  - [ExDataSketch.XorFilter](ExDataSketch.XorFilter.md): Xor filter for static, immutable probabilistic membership testing.

- Infrastructure
  - [ExDataSketch.Backend](ExDataSketch.Backend.md): Behaviour defining the computation backend for ExDataSketch.
  - [ExDataSketch.Backend.Pure](ExDataSketch.Backend.Pure.md): Pure Elixir backend for ExDataSketch.
  - [ExDataSketch.Backend.Rust](ExDataSketch.Backend.Rust.md): Rust NIF-accelerated backend for ExDataSketch.
  - [ExDataSketch.Codec](ExDataSketch.Codec.md): ExDataSketch-native binary serialization codec (EXSK format).
  - [ExDataSketch.Hash](ExDataSketch.Hash.md): Stable 64-bit hash interface for ExDataSketch.

- Errors
  - [ExDataSketch.Errors](ExDataSketch.Errors.md): Error types for ExDataSketch.

- Exceptions
  - [ExDataSketch.Errors.DeserializationError](ExDataSketch.Errors.DeserializationError.md): Returned when binary data cannot be deserialized.

  - [ExDataSketch.Errors.IncompatibleSketchesError](ExDataSketch.Errors.IncompatibleSketchesError.md): Returned when attempting to merge sketches with incompatible parameters.

  - [ExDataSketch.Errors.InvalidChainCompositionError](ExDataSketch.Errors.InvalidChainCompositionError.md): Raised when a FilterChain stage composition is invalid.

  - [ExDataSketch.Errors.InvalidOptionError](ExDataSketch.Errors.InvalidOptionError.md): Returned when an option value is invalid.

  - [ExDataSketch.Errors.NotImplementedError](ExDataSketch.Errors.NotImplementedError.md): Raised when a stubbed function is called before its implementation is available.

  - [ExDataSketch.Errors.UnsupportedOperationError](ExDataSketch.Errors.UnsupportedOperationError.md): Raised when an operation is not supported by a structure.

