<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_162) on Tue Aug 07 18:31:02 PDT 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Overview (com.yahoo.datasketches:sketches-core 0.12.1-SNAPSHOT API)</title>
<meta name="date" content="2018-08-07">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Overview (com.yahoo.datasketches:sketches-core 0.12.1-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h1 class="title">com.yahoo.datasketches:sketches-core 0.12.1-SNAPSHOT API</h1>
</div>
<div class="header">
<div class="subTitle">
<div class="block">Sketching Core Library</div>
</div>
<p>See: <a href="#overview.description">Description</a></p>
</div>
<div class="contentContainer">
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Packages table, listing packages, and an explanation">
<caption><span>Packages</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="com/yahoo/sketches/package-summary.html">com.yahoo.sketches</a></td>
<td class="colLast">
<div class="block">This package is the parent package for all sketch algorithms.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="com/yahoo/sketches/frequencies/package-summary.html">com.yahoo.sketches.frequencies</a></td>
<td class="colLast">
<div class="block">This package is dedicated to streaming algorithms that enable estimation of the 
 frequency of occurence of items in a weighted multiset stream of items.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="com/yahoo/sketches/hash/package-summary.html">com.yahoo.sketches.hash</a></td>
<td class="colLast">
<div class="block">The hash package contains a high-performing and extended Java implementation 
 of Austin Appleby's 128-bit MurmurHash3 hash function originally coded in C.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="com/yahoo/sketches/hll/package-summary.html">com.yahoo.sketches.hll</a></td>
<td class="colLast">
<div class="block">The hll package contains a high performance implementation of Phillipe
 Flajolet's HLL sketch with significantly improved error behavior.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="com/yahoo/sketches/hllmap/package-summary.html">com.yahoo.sketches.hllmap</a></td>
<td class="colLast">
<div class="block">The hllmap package contains a space efficient HLL mapping sketch of keys to approximate unique
 count of identifiers.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="com/yahoo/sketches/kll/package-summary.html">com.yahoo.sketches.kll</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="com/yahoo/sketches/quantiles/package-summary.html">com.yahoo.sketches.quantiles</a></td>
<td class="colLast">
<div class="block">The quantiles package contains stochastic streaming algorithms that enable single-pass 
 analysis of the distribution of a stream of real (double) values or generic items.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="com/yahoo/sketches/sampling/package-summary.html">com.yahoo.sketches.sampling</a></td>
<td class="colLast">
<div class="block">This package is dedicated to streaming algorithms that enable fixed size, uniform sampling of
 unweighted items from a stream.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="com/yahoo/sketches/theta/package-summary.html">com.yahoo.sketches.theta</a></td>
<td class="colLast">
<div class="block">The theta package contains all the sketch classes that are members of the 
 <a href="./resources/dictionary.html#thetaSketch">Theta Sketch Framework</a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="com/yahoo/sketches/tuple/package-summary.html">com.yahoo.sketches.tuple</a></td>
<td class="colLast">
<div class="block">The tuple package contains implementation of sketches based on the idea of
 theta sketches with the addition of values associated with unique keys.</div>
</td>
</tr>
</tbody>
</table>
</div>
<div class="contentContainer"><a name="overview.description">
<!--   -->
</a>
<div class="block"><h2>Sketching Core Library</h2> 
<h3>Overview</h3>

<p>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.
</p>

<p>This library is divided into packages that constitute distinct groups of functionality:</p>

<ul>
<li><b><a href="com/yahoo/sketches/frequencies/package-summary.html">Frequencies</a></b>
</li>

<li><b><a href="com/yahoo/sketches/hash/package-summary.html">Hash</a></b>
</li>

<li><b><a href="com/yahoo/sketches/hll/package-summary.html">HLL</a></b> 
</li>

<li><b><a href="com/yahoo/sketches/hllmap/package-summary.html">HLLMap</a></b> 
</li>

<li><b><a href="com/yahoo/sketches/quantiles/package-summary.html">Quantiles</a></b> 
</li>

<li><b><a href="com/yahoo/sketches/sampling/package-summary.html">Sampling</a></b>
</li>

<li><b><a href="com/yahoo/sketches/theta/package-summary.html">Theta</a></b>
</li>

<li><b><a href="com/yahoo/sketches/tuple/package-summary.html">Tuple</a></b>
</li>
</ul>
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.</div>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li class="navBarCell1Rev">Overview</li>
<li>Package</li>
<li>Class</li>
<li>Use</li>
<li><a href="overview-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li><a href="index-all.html">Index</a></li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?overview-summary.html" target="_top">Frames</a></li>
<li><a href="overview-summary.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2015&#x2013;2018. All rights reserved.</small></p>
</body>
</html>
