# Sketching Core Library

## Overview

The Sketching Core Library provides a range of stochastic streaming algorithms and closely related java technologies that are particularly useful when integrating this technology into systems that must deal with massive data. Click on the package links below for the package introduction and APIs.

This library is divided into packages that constitute distinct groups of functionality:

- CPC - Compressed Probabilistic Counting
- FDT - Frequent Distinct Tuples
- Frequencies Frequent Items-
- Hash - Common Hash Functions
- HLL - HyperLogLog
- HLLMap - HLL Map
- KLL - High Performance Karnin, Lang, Liberty Quantiles
- Quantiles - Quantiles
- Sampling - Weighted and Unweighted Reservoirs
- Theta - The Theta Family
- Tuple - The Base Tuple Family
- Tuple/adouble - Example Implementation with a single double
- Tuple/aninteger - Example Implementation with a single integer
- Tuple/strings - Example Implementation with an array of Strings

Note: In general, if the requirements or promises of any method's contract are not fulfilled (that is, if there is a bug in either the method or its caller), then an unchecked exception will be thrown. The precise type of such an unchecked exception does not form part of any method's contract.