blob: e31987a5c5185c7b0edad21751fbe0986dc7456b [file] [log] [blame]
<link rel="stylesheet" href="/css/toc.css">
<div id="toc" class="nav toc hidden-print">
<p id="overview">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_overview">Overview</a>
</p>
<div class="collapse" id="collapse_overview">
<li>
<a href="{{site.docs_dir}}/TheChallenge.html">The Challenge</a>
</li>
<li>
<a href="{{site.docs_dir}}/MajorSketchFamilies.html">The Major Sketch Families</a>
</li>
<li>
<a href="{{site.docs_dir}}/SketchOrigins.html">Sketch Origins</a>
</li>
<li>
<a href="{{site.docs_dir}}/SketchElements.html">Sketch Elements</a>
</li>
<li>
<a href="{{site.docs_dir}}/KeyFeatures.html">Key Features</a>
</li>
<li>
<a href="{{site.docs_dir}}/LargeScale.html">Large Scale Computing</a>
</li>
<li>
<a href="{{site.docs_dir}}/Architecture.html">Architecture</a>
</li>
<li>
<a href="{{site.docs_dir}}/OrderSensitivity.html">Notes on Order Sensitivity</a>
</li>
<li>
<a href="{{site.docs_dir}}/Concurrency.html">Notes on Concurrency</a>
</li>
<li>
<a href="{{site.docs_pdf_dir}}/DataSketches_deck.pdf">Overview Slide Deck</a>
</li>
</div>
<p id="research">
<a href="{{site.docs_dir}}/Research.html">Research</a>
</p>
<p id="frequent-items-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_frequent">Frequent Items Sketches</a>
</p>
<div class="collapse" id="collapse_frequent">
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsOverview.html">Frequent Items Overview</a>
</li>
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsJavaExample.html">Frequent Items Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsPigUDFs.html">Frequent Items Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsHiveUDFs.html">Frequent Items Hive UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsErrorTable.html">Frequent Items Error Table</a>
</li>
<li>
<a href="{{site.docs_dir}}/FrequentItems/FrequentItemsReferences.html">Frequent Items References</a>
</li>
</div>
<p id="hll-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_hll">HyperLogLog Sketches</a>
</p>
<div class="collapse" id="collapse_hll">
<li>
<a href="{{site.docs_dir}}/HLL/HLL.html">HLL Sketch</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/Hll_vs_Hllpp.html">HLL vs HLL++</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/HllJavaExample.html">HLL Sketch Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/HllPigUDFs.html">HLL Sketch Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/HllHiveUDFs.html">HLL Sketch Hive UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/HllMap.html">HLL Map Sketch</a>
</li>
<li>
<a href="{{site.docs_dir}}/HLL/HllSketchVsDruidHyperLogLogCollector.html">HLL Sketch vs Druid HyperLogLogCollector</a>
</li>
</div>
<p id="memory-package">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_memory">Memory</a>
</p>
<div class="collapse" id="collapse_memory">
<li>
<a href="{{site.docs_dir}}/Memory/MemoryPackage.html">Memory Package</a>
</li>
</div>
<p id="quantiles-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_quantiles">Quantiles Sketches</a>
</p>
<div class="collapse" id="collapse_quantiles">
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesOverview.html">Quantiles Overview</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesAccuracy.html">Quantiles Accuracy and Size</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesJavaExample.html">Quantiles Sketch Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesPigUDFs.html">Quantiles Sketch Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesHiveUDFs.html">Quantiles Sketch Hive UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/KLLSketch.html">New KLL sketch and comparison with DoublesSketch</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/KllSketchVsTDigest.html">KLL sketch vs t-digest</a>
</li>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_quantilesStudies">Quantiles Studies</a>
</p>
<div class="collapse" id="collapse_quantilesStudies">
<li>
<a href="{{site.docs_dir}}/Quantiles/KLLSketch.html">New KLL sketch and comparison with DoublesSketch</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/KllSketchVsTDigest.html">KLL sketch vs t-digest</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/DruidApproxHistogramStudy.html">Druid Approximate Histogram Study</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_quantilesTheory">Quantiles Sketch Theory</a>
</p>
<div class="collapse" id="collapse_quantilesTheory">
<li>
<a href="{{site.docs_pdf_dir}}/Quantiles_KLL.pdf">Optimal Quantile Approximation in Streams</a>
</li>
<li>
<a href="{{site.docs_dir}}/Quantiles/QuantilesReferences.html">Quantiles References</a>
</li>
</div>
</div>
<p id="sampling-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_sampling">Sampling Sketches</a>
</p>
<div class="collapse" id="collapse_sampling">
<li>
<a href="{{site.docs_dir}}/Sampling/ReservoirSampling.html">Reservoir Sampling</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/ReservoirSamplingPerformance.html">Reservoir Sampling Performance</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/ReservoirSamplingJava.html">Reservoir Sampling Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/ReservoirSamplingPigUDFs.html">Reservoir Sampling Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/VarOptSampling.html">VarOpt Sampling</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/VarOptSamplingJava.html">VarOpt Sampling Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/Sampling/VarOptPigUDFs.html">VarOpt Sampling Pig UDFs</a>
</li>
</div>
<p id="theta-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_theta">Theta Sketches</a>
</p>
<div class="collapse" id="collapse_theta">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaSketchFramework.html">Theta Sketch Framework</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaJavaExample.html">Theta Sketch Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaSparkExample.html">Theta Sketch Spark Example</a>
</li>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_kmv">KMV Tutorial</a>
</p>
<div class="collapse" id="collapse_kmv">
<li>
<a href="{{site.docs_dir}}/Theta/InverseEstimate.html">The Inverse Estimate</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/KMVempty.html">Empty Sketch</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/KMVfirstEst.html">First Estimator</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/KMVbetterEst.html">Better Estimator</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/KMVrejection.html">Rejection Rules</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/KMVupdateVkth.html">Update V(kth) Rule</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_set">Set Operations</a>
</p>
<div class="collapse" id="collapse_set">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaSketchSetOps.html">Set Operations</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_accuracy">Accuracy</a>
</p>
<div class="collapse" id="collapse_accuracy">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaAccuracy.html">Basic Accuracy</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaAccuracyPlots.html">Accuracy Plots</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaErrorTable.html">Relative Error Table</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaSketchSetOpsAccuracy.html">SetOp Accuracy</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/AccuracyOfDifferentKUnions.html">Unions With Different k</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_size">Size</a>
</p>
<div class="collapse" id="collapse_size">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaSize.html">Theta Sketch Size</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_speed">Speed</a>
</p>
<div class="collapse" id="collapse_speed">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaUpdateSpeed.html">Update Speed</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaMergeSpeed.html">Merge Speed</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_scale">Large Scale Computing</a>
</p>
<div class="collapse" id="collapse_scale">
<li>
<a href="{{site.docs_dir}}/Theta/ThetaPigUDFs.html">Theta Sketch Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaHiveUDFs.html">Theta Sketch Hive UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/DruidIntegration.html">Integration with Druid</a>
</li>
<li>
<a href="{{site.docs_dir}}/Memory/MemoryPackage.html">Memory Package</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaPSampling.html"><i>p</i>-Sampling</a>
</li>
</div>
<p>
<a data-toggle="collapse" class="menu collapsed" href="#collapse_thetaTheory">Theta Sketch Theory</a>
</p>
<div class="collapse" id="collapse_thetaTheory">
<li>
<a href="{{site.docs_pdf_dir}}/ThetaSketchFramework.pdf">Theta Sketch Framework (PDF)</a>
</li>
<li>
<a href="{{site.docs_pdf_dir}}/SketchEquations.pdf">Sketch Equations (PDF)</a>
</li>
<li>
<a href="{{site.docs_pdf_dir}}/DataSketches.pdf">DataSketches (PDF)</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaConfidenceIntervals.html">Confidence Intervals Notes</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaMergingAlgorithm.html">Merging Algorithm Notes</a>
</li>
<li>
<a href="{{site.docs_dir}}/Theta/ThetaReferences.html">Theta References</a>
</li>
</div>
</div>
<p id="tuple-sketches">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_tuple">Tuple Sketches</a>
</p>
<div class="collapse" id="collapse_tuple">
<li>
<a href="{{site.docs_dir}}/Tuple/TupleOverview.html">Tuple Sketch Overview</a>
</li>
<li>
<a href="{{site.docs_dir}}/Tuple/TupleJavaExample.html">Tuple Sketch Java Example</a>
</li>
<li>
<a href="{{site.docs_dir}}/Tuple/TuplePigUDFs.html">Tuple Sketch Pig UDFs</a>
</li>
<li>
<a href="{{site.docs_dir}}/Tuple/TupleHiveUDFs.html">Tuple Sketch Hive UDFs</a>
</li>
</div>
<p id="other-information">
<a data-toggle="collapse" class="menu collapsed" href="#collapse_other">Other Information</a>
</p>
<div class="collapse" id="collapse_other">
<li>
<a href="{{site.docs_dir}}/CommandLine/CommandLine.html">Creating Command Line Executables</a>
</li>
<li>
<a href="{{site.docs_dir}}/WhoUses.html">Who Uses</a>
</li>
<li>
<a href="/LICENSE.html">License</a>
</li>
<!-- * [Endorsements](endorsements.html) -->
</div>
</div>
<script>
(function () {
var findLineItem = function (path) {
return document.querySelector(`[href="${path}"]`);
};
var highlighLineItem = function (element) {
element.classList.add('highlight');
};
var checkHasClass = function (element, className) {
return element.className.split(' ').find(function (item) { return item === className || '' })
}
var findAllCollapseParents = function (element) {
var collapseMenus = [];
var elementPointer = element;
while (elementPointer !== document.body) {
if (checkHasClass(elementPointer, 'collapse')) {
collapseMenus.push(elementPointer);
}
elementPointer = elementPointer.parentElement
}
return collapseMenus
};
var findMatchingCollapseMenu = function (collapseItem) {
return document.querySelector(`[href="#${collapseItem.id}"]`);
};
var findAllParentMenus = function (element) {
var parentMenus = []
var elementPointer = element;
while (elementPointer !== document.body) {
if (elementPointer.className.split(' ').indexOf('menu') > -1) {
parentMenus.push(elementPointer);
}
elementPointer = elementPointer.parentElement;
}
return parentMenus;
}
var openMenuItem = function (element) {
element.click();
};
var openAllFromList = function (elementList) {
elementList.forEach(function (element) {
console.log(element)
openMenuItem(findMatchingCollapseMenu(element))
});
};
var highlightAndOpenMenu = function () {
var currentLineItem = findLineItem(document.location.pathname);
highlighLineItem(currentLineItem)
openAllFromList(findAllCollapseParents(currentLineItem));
};
$(highlightAndOpenMenu);
}());
</script>