| <!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_242) on Tue Apr 28 14:52:33 PDT 2020 --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>HllSketch (datasketches-java 1.3.0-incubating API)</title> |
| <meta name="date" content="2020-04-28"> |
| <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="HllSketch (datasketches-java 1.3.0-incubating API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":9,"i8":10,"i9":9,"i10":9,"i11":10,"i12":10,"i13":10,"i14":9,"i15":9,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":9,"i28":9,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":9,"i38":9}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </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><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/HllSketch.html">Use</a></li> |
| <li><a href="package-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 Class</li> |
| <li><a href="../../../../org/apache/datasketches/hll/IntMemoryPairIterator.html" title="class in org.apache.datasketches.hll"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/datasketches/hll/HllSketch.html" target="_top">Frames</a></li> |
| <li><a href="HllSketch.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../allclasses-noframe.html">All 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> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">org.apache.datasketches.hll</div> |
| <h2 title="Class HllSketch" class="title">Class HllSketch</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.datasketches.hll.HllSketch</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <br> |
| <pre>public class <span class="typeNameLabel">HllSketch</span> |
| extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre> |
| <div class="block">This is a high performance implementation of Phillipe Flajolet’s HLL sketch but with |
| significantly improved error behavior. If the ONLY use case for sketching is counting |
| uniques and merging, the HLL sketch the HLL sketch is a reasonable choice, although the highest |
| performing in terms of accuracy for storage space consumed is CPC (Compressed Probabilistic Counting). |
| For large enough counts, this HLL version (with HLL_4) can be 2 to 16 times smaller than the |
| Theta sketch family for the same accuracy. |
| |
| <p>This implementation offers three different types of HLL sketch, each with different |
| trade-offs with accuracy, space and performance. These types are specified with the |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll"><code>TgtHllType</code></a> parameter. |
| |
| <p>In terms of accuracy, all three types, for the same <i>lgConfigK</i>, have the same error |
| distribution as a function of <i>n</i>, the number of unique values fed to the sketch. |
| The configuration parameter <i>lgConfigK</i> is the log-base-2 of <i>K</i>, |
| where <i>K</i> is the number of buckets or slots for the sketch. |
| |
| <p>During warmup, when the sketch has only received a small number of unique items |
| (up to about 10% of <i>K</i>), this implementation leverages a new class of estimator |
| algorithms with significantly better accuracy. |
| |
| <p>This sketch also offers the capability of operating off-heap. Given a WritableMemory object |
| created by the user, the sketch will perform all of its updates and internal phase transitions |
| in that object, which can actually reside either on-heap or off-heap based on how it is |
| configured. In large systems that must update and merge many millions of sketches, having the |
| sketch operate off-heap avoids the serialization and deserialization costs of moving sketches |
| to and from off-heap memory-mapped files, for example, and eliminates big garbage collection |
| delays.</div> |
| <dl> |
| <dt><span class="simpleTagLabel">Author:</span></dt> |
| <dd>Lee Rhodes, Kevin Lang</dd> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Field and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#DEFAULT_HLL_TYPE">DEFAULT_HLL_TYPE</a></span></code> |
| <div class="block">The default HLL-TYPE is HLL_4</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#DEFAULT_LG_K">DEFAULT_LG_K</a></span></code> |
| <div class="block">The default Log_base2 of K</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colOne" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#HllSketch--">HllSketch</a></span>()</code> |
| <div class="block">Constructs a new on-heap sketch with the default lgConfigK and tgtHllType.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#HllSketch-int-">HllSketch</a></span>(int lgConfigK)</code> |
| <div class="block">Constructs a new on-heap sketch with the default tgtHllType.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#HllSketch-int-org.apache.datasketches.hll.TgtHllType-">HllSketch</a></span>(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</code> |
| <div class="block">Constructs a new on-heap sketch with the type of HLL sketch to configure.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#HllSketch-int-org.apache.datasketches.hll.TgtHllType-org.apache.datasketches.memory.WritableMemory-">HllSketch</a></span>(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType, |
| org.apache.datasketches.memory.WritableMemory dstMem)</code> |
| <div class="block">Constructs a new sketch with the type of HLL sketch to configure and the given |
| WritableMemory as the destination for the sketch.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#copy--">copy</a></span>()</code> |
| <div class="block">Return a copy of this sketch onto the Java heap.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#copyAs-org.apache.datasketches.hll.TgtHllType-">copyAs</a></span>(<a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</code> |
| <div class="block">Return a deep copy of this sketch onto the Java heap with the specified TgtHllType.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getCompactSerializationBytes--">getCompactSerializationBytes</a></span>()</code> |
| <div class="block">Gets the size in bytes of the current sketch when serialized using |
| <i>toCompactByteArray()</i>.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getCompositeEstimate--">getCompositeEstimate</a></span>()</code> |
| <div class="block">This is less accurate than the <a href="../../../../org/apache/datasketches/hll/HllSketch.html#getEstimate--"><code>getEstimate()</code></a> method and is automatically used |
| when the sketch has gone through union operations where the more accurate HIP estimator |
| cannot be used.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getEstimate--">getEstimate</a></span>()</code> |
| <div class="block">Return the cardinality estimate</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getLgConfigK--">getLgConfigK</a></span>()</code> |
| <div class="block">Gets the <i>lgConfigK</i>.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getLowerBound-int-">getLowerBound</a></span>(int numStdDev)</code> |
| <div class="block">Gets the approximate lower error bound given the specified number of Standard Deviations.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getMaxUpdatableSerializationBytes-int-org.apache.datasketches.hll.TgtHllType-">getMaxUpdatableSerializationBytes</a></span>(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</code> |
| <div class="block">Returns the maximum size in bytes that this sketch can grow to given lgConfigK.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getRelErr-boolean-boolean-int-int-">getRelErr</a></span>(boolean upperBound, |
| boolean unioned, |
| int lgConfigK, |
| int numStdDev)</code> |
| <div class="block">Gets the current (approximate) Relative Error (RE) asymptotic values given several |
| parameters.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getSerializationVersion--">getSerializationVersion</a></span>()</code> |
| <div class="block">Returns the current serialization version.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getSerializationVersion-org.apache.datasketches.memory.Memory-">getSerializationVersion</a></span>(org.apache.datasketches.memory.Memory mem)</code> |
| <div class="block">Returns the current serialization version of the given Memory.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getTgtHllType--">getTgtHllType</a></span>()</code> |
| <div class="block">Gets the <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll"><code>TgtHllType</code></a></div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getUpdatableSerializationBytes--">getUpdatableSerializationBytes</a></span>()</code> |
| <div class="block">Gets the size in bytes of the current sketch when serialized using |
| <i>toUpdatableByteArray()</i>.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>double</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#getUpperBound-int-">getUpperBound</a></span>(int numStdDev)</code> |
| <div class="block">Gets the approximate upper error bound given the specified number of Standard Deviations.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#heapify-byte:A-">heapify</a></span>(byte[] byteArray)</code> |
| <div class="block">Heapify the given byte array, which must be a valid HllSketch image and may have data.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#heapify-org.apache.datasketches.memory.Memory-">heapify</a></span>(org.apache.datasketches.memory.Memory srcMem)</code> |
| <div class="block">Heapify the given Memory, which must be a valid HllSketch image and may have data.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isCompact--">isCompact</a></span>()</code> |
| <div class="block">Returns true if the backing memory of this sketch is in compact form.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isEmpty--">isEmpty</a></span>()</code> |
| <div class="block">Returns true if empty</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isEstimationMode--">isEstimationMode</a></span>()</code> |
| <div class="block">This HLL family of sketches and operators is always estimating, even for very small values.</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isMemory--">isMemory</a></span>()</code> |
| <div class="block">Returns true if this sketch was created using Memory.</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isOffHeap--">isOffHeap</a></span>()</code> |
| <div class="block">Returns true if the backing memory for this sketch is off-heap.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#isSameResource-org.apache.datasketches.memory.Memory-">isSameResource</a></span>(org.apache.datasketches.memory.Memory mem)</code> |
| <div class="block">Returns true if the given Memory refers to the same underlying resource as this sketch.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#reset--">reset</a></span>()</code> |
| <div class="block">Resets to empty, but does not change the configured values of lgConfigK and tgtHllType.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>byte[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toCompactByteArray--">toCompactByteArray</a></span>()</code> |
| <div class="block">Serializes this sketch as a byte array in compact form.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toString--">toString</a></span>()</code> |
| <div class="block">Human readable summary as a string.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toString-boolean-boolean-boolean-">toString</a></span>(boolean summary, |
| boolean detail, |
| boolean auxDetail)</code> |
| <div class="block">Human readable summary with optional detail.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toString-boolean-boolean-boolean-boolean-">toString</a></span>(boolean summary, |
| boolean detail, |
| boolean auxDetail, |
| boolean all)</code> |
| <div class="block">Human readable summary with optional detail</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toString-byte:A-">toString</a></span>(byte[] byteArr)</code> |
| <div class="block">Returns a human readable string of the preamble of a byte array image of an HllSketch.</div> |
| </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toString-org.apache.datasketches.memory.Memory-">toString</a></span>(org.apache.datasketches.memory.Memory mem)</code> |
| <div class="block">Returns a human readable string of the preamble of a Memory image of an HllSketch.</div> |
| </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>byte[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#toUpdatableByteArray--">toUpdatableByteArray</a></span>()</code> |
| <div class="block">Serializes this sketch as a byte array in an updatable form.</div> |
| </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-byte:A-">update</a></span>(byte[] data)</code> |
| <div class="block">Present the given byte array as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-char:A-">update</a></span>(char[] data)</code> |
| <div class="block">Present the given char array as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-double-">update</a></span>(double datum)</code> |
| <div class="block">Present the given double (or float) datum as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i33" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-int:A-">update</a></span>(int[] data)</code> |
| <div class="block">Present the given integer array as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i34" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-long-">update</a></span>(long datum)</code> |
| <div class="block">Present the given long as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i35" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-long:A-">update</a></span>(long[] data)</code> |
| <div class="block">Present the given long array as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i36" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-java.lang.String-">update</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> datum)</code> |
| <div class="block">Present the given String as a potential unique item.</div> |
| </td> |
| </tr> |
| <tr id="i37" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#wrap-org.apache.datasketches.memory.Memory-">wrap</a></span>(org.apache.datasketches.memory.Memory srcMem)</code> |
| <div class="block">Wraps the given read-only Memory that must be a image of a valid sketch, |
| which may be in compact or updatable form, and should have data.</div> |
| </td> |
| </tr> |
| <tr id="i38" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/datasketches/hll/HllSketch.html#writableWrap-org.apache.datasketches.memory.WritableMemory-">writableWrap</a></span>(org.apache.datasketches.memory.WritableMemory srcWmem)</code> |
| <div class="block">Wraps the given WritableMemory, which must be a image of a valid updatable sketch, |
| and may have data.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> |
| <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.detail"> |
| <!-- --> |
| </a> |
| <h3>Field Detail</h3> |
| <a name="DEFAULT_LG_K"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>DEFAULT_LG_K</h4> |
| <pre>public static final int DEFAULT_LG_K</pre> |
| <div class="block">The default Log_base2 of K</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../constant-values.html#org.apache.datasketches.hll.HllSketch.DEFAULT_LG_K">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="DEFAULT_HLL_TYPE"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>DEFAULT_HLL_TYPE</h4> |
| <pre>public static final <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> DEFAULT_HLL_TYPE</pre> |
| <div class="block">The default HLL-TYPE is HLL_4</div> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="HllSketch--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>HllSketch</h4> |
| <pre>public HllSketch()</pre> |
| <div class="block">Constructs a new on-heap sketch with the default lgConfigK and tgtHllType.</div> |
| </li> |
| </ul> |
| <a name="HllSketch-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>HllSketch</h4> |
| <pre>public HllSketch(int lgConfigK)</pre> |
| <div class="block">Constructs a new on-heap sketch with the default tgtHllType.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>lgConfigK</code> - The Log2 of K for the target HLL sketch. This value must be |
| between 4 and 21 inclusively.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="HllSketch-int-org.apache.datasketches.hll.TgtHllType-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>HllSketch</h4> |
| <pre>public HllSketch(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</pre> |
| <div class="block">Constructs a new on-heap sketch with the type of HLL sketch to configure.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>lgConfigK</code> - The Log2 of K for the target HLL sketch. This value must be |
| between 4 and 21 inclusively.</dd> |
| <dd><code>tgtHllType</code> - the desired Hll type.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="HllSketch-int-org.apache.datasketches.hll.TgtHllType-org.apache.datasketches.memory.WritableMemory-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>HllSketch</h4> |
| <pre>public HllSketch(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType, |
| org.apache.datasketches.memory.WritableMemory dstMem)</pre> |
| <div class="block">Constructs a new sketch with the type of HLL sketch to configure and the given |
| WritableMemory as the destination for the sketch. This WritableMemory is usually configured |
| for off-heap memory. What remains on the java heap is a thin wrapper object that reads and |
| writes to the given WritableMemory. |
| |
| <p>The given <i>dstMem</i> is checked for the required capacity as determined by |
| <a href="../../../../org/apache/datasketches/hll/HllSketch.html#getMaxUpdatableSerializationBytes-int-org.apache.datasketches.hll.TgtHllType-"><code>getMaxUpdatableSerializationBytes(int, TgtHllType)</code></a>.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>lgConfigK</code> - The Log2 of K for the target HLL sketch. This value must be |
| between 4 and 21 inclusively.</dd> |
| <dd><code>tgtHllType</code> - the desired Hll type.</dd> |
| <dd><code>dstMem</code> - the destination memory for the sketch.</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="heapify-byte:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>heapify</h4> |
| <pre>public static final <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> heapify(byte[] byteArray)</pre> |
| <div class="block">Heapify the given byte array, which must be a valid HllSketch image and may have data.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>byteArray</code> - the given byte array. This byteArray is not modified and is not retained |
| by the on-heap sketch.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an HllSketch on the java heap.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="heapify-org.apache.datasketches.memory.Memory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>heapify</h4> |
| <pre>public static final <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> heapify(org.apache.datasketches.memory.Memory srcMem)</pre> |
| <div class="block">Heapify the given Memory, which must be a valid HllSketch image and may have data.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>srcMem</code> - the given Memory, which is read-only.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an HllSketch on the java heap.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="writableWrap-org.apache.datasketches.memory.WritableMemory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>writableWrap</h4> |
| <pre>public static final <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> writableWrap(org.apache.datasketches.memory.WritableMemory srcWmem)</pre> |
| <div class="block">Wraps the given WritableMemory, which must be a image of a valid updatable sketch, |
| and may have data. What remains on the java heap is a |
| thin wrapper object that reads and writes to the given WritableMemory, which, depending on |
| how the user configures the WritableMemory, may actually reside on the Java heap or off-heap. |
| |
| <p>The given <i>dstMem</i> is checked for the required capacity as determined by |
| <a href="../../../../org/apache/datasketches/hll/HllSketch.html#getMaxUpdatableSerializationBytes-int-org.apache.datasketches.hll.TgtHllType-"><code>getMaxUpdatableSerializationBytes(int, TgtHllType)</code></a>.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>srcWmem</code> - an writable image of a valid source sketch with data.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an HllSketch where the sketch data is in the given dstMem.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="wrap-org.apache.datasketches.memory.Memory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>wrap</h4> |
| <pre>public static final <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> wrap(org.apache.datasketches.memory.Memory srcMem)</pre> |
| <div class="block">Wraps the given read-only Memory that must be a image of a valid sketch, |
| which may be in compact or updatable form, and should have data. Any attempt to update the |
| given source Memory will throw an exception.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>srcMem</code> - a read-only image of a valid source sketch.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>an HllSketch, where the read-only data of the sketch is in the given srcMem.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="copy--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>copy</h4> |
| <pre>public <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> copy()</pre> |
| <div class="block">Return a copy of this sketch onto the Java heap.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a copy of this sketch onto the Java heap.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="copyAs-org.apache.datasketches.hll.TgtHllType-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>copyAs</h4> |
| <pre>public <a href="../../../../org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a> copyAs(<a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</pre> |
| <div class="block">Return a deep copy of this sketch onto the Java heap with the specified TgtHllType.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>tgtHllType</code> - the TgtHllType enum</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a deep copy of this sketch with the specified TgtHllType.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCompositeEstimate--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCompositeEstimate</h4> |
| <pre>public double getCompositeEstimate()</pre> |
| <div class="block">This is less accurate than the <a href="../../../../org/apache/datasketches/hll/HllSketch.html#getEstimate--"><code>getEstimate()</code></a> method and is automatically used |
| when the sketch has gone through union operations where the more accurate HIP estimator |
| cannot be used. |
| This is made public only for error characterization software that exists in separate |
| packages and is not intended for normal use.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the composite estimate</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getEstimate--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getEstimate</h4> |
| <pre>public double getEstimate()</pre> |
| <div class="block">Return the cardinality estimate</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the cardinality estimate</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getLgConfigK--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLgConfigK</h4> |
| <pre>public int getLgConfigK()</pre> |
| <div class="block">Gets the <i>lgConfigK</i>.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the <i>lgConfigK</i>.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getCompactSerializationBytes--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getCompactSerializationBytes</h4> |
| <pre>public int getCompactSerializationBytes()</pre> |
| <div class="block">Gets the size in bytes of the current sketch when serialized using |
| <i>toCompactByteArray()</i>.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the size in bytes of the current sketch when serialized using |
| <i>toCompactByteArray()</i>.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getLowerBound-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getLowerBound</h4> |
| <pre>public double getLowerBound(int numStdDev)</pre> |
| <div class="block">Gets the approximate lower error bound given the specified number of Standard Deviations.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>numStdDev</code> - This must be an integer between 1 and 3, inclusive. |
| <a href="../../../../resources/dictionary.html#numStdDev">See Number of Standard Deviations</a></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the lower bound.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getMaxUpdatableSerializationBytes-int-org.apache.datasketches.hll.TgtHllType-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMaxUpdatableSerializationBytes</h4> |
| <pre>public static final int getMaxUpdatableSerializationBytes(int lgConfigK, |
| <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> tgtHllType)</pre> |
| <div class="block">Returns the maximum size in bytes that this sketch can grow to given lgConfigK. |
| However, for the HLL_4 sketch type, this value can be exceeded in extremely rare cases. |
| If exceeded, it will be larger by only a few percent.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>lgConfigK</code> - The Log2 of K for the target HLL sketch. This value must be |
| between 4 and 21 inclusively.</dd> |
| <dd><code>tgtHllType</code> - the desired Hll type</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the maximum size in bytes that this sketch can grow to.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getTgtHllType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getTgtHllType</h4> |
| <pre>public <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a> getTgtHllType()</pre> |
| <div class="block">Gets the <a href="../../../../org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll"><code>TgtHllType</code></a></div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the TgtHllType enum value</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getUpdatableSerializationBytes--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getUpdatableSerializationBytes</h4> |
| <pre>public int getUpdatableSerializationBytes()</pre> |
| <div class="block">Gets the size in bytes of the current sketch when serialized using |
| <i>toUpdatableByteArray()</i>.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the size in bytes of the current sketch when serialized using |
| <i>toUpdatableByteArray()</i>.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getUpperBound-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getUpperBound</h4> |
| <pre>public double getUpperBound(int numStdDev)</pre> |
| <div class="block">Gets the approximate upper error bound given the specified number of Standard Deviations.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>numStdDev</code> - This must be an integer between 1 and 3, inclusive. |
| <a href="../../../../resources/dictionary.html#numStdDev">Number of Standard Deviations</a></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the upper bound.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isCompact--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isCompact</h4> |
| <pre>public boolean isCompact()</pre> |
| <div class="block">Returns true if the backing memory of this sketch is in compact form.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the backing memory of this sketch is in compact form.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isEmpty--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isEmpty</h4> |
| <pre>public boolean isEmpty()</pre> |
| <div class="block">Returns true if empty</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if empty</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isMemory--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isMemory</h4> |
| <pre>public boolean isMemory()</pre> |
| <div class="block">Returns true if this sketch was created using Memory.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if this sketch was created using Memory.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isOffHeap--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isOffHeap</h4> |
| <pre>public boolean isOffHeap()</pre> |
| <div class="block">Returns true if the backing memory for this sketch is off-heap.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the backing memory for this sketch is off-heap.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isSameResource-org.apache.datasketches.memory.Memory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isSameResource</h4> |
| <pre>public boolean isSameResource(org.apache.datasketches.memory.Memory mem)</pre> |
| <div class="block">Returns true if the given Memory refers to the same underlying resource as this sketch. |
| The capacities must be the same. If <i>this</i> is a region, |
| the region offset must also be the same. |
| |
| <p>This is only relevant for HLL_4 sketches that have been configured for off-heap |
| using WritableMemory or Memory. For on-heap sketches or unions this will return false. |
| |
| <p>It is rare, but possible, the the off-heap memory that has been allocated to an HLL_4 |
| sketch may not be large enough. If this should happen, the sketch makes a request for more |
| memory from the owner of the resource and then moves itself to this new location. This all |
| happens transparently to the user. This method provides a means for the user to |
| inquire of the sketch if it has, in fact, moved itself.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>mem</code> - the given Memory</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the given Memory refers to the same underlying resource as this sketch or |
| union.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="reset--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>reset</h4> |
| <pre>public void reset()</pre> |
| <div class="block">Resets to empty, but does not change the configured values of lgConfigK and tgtHllType.</div> |
| </li> |
| </ul> |
| <a name="toCompactByteArray--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toCompactByteArray</h4> |
| <pre>public byte[] toCompactByteArray()</pre> |
| <div class="block">Serializes this sketch as a byte array in compact form. The compact form is smaller in size |
| than the updatable form and read-only. It can be used in union operations as follows: |
| <pre><code> |
| Union union; HllSketch sk, sk2; |
| int lgK = 12; |
| sk = new HllSketch(lgK, TgtHllType.HLL_4); //can be 4, 6, or 8 |
| for (int i = 0; i < (2 << lgK); i++) { sk.update(i); } |
| byte[] arr = HllSketch.toCompactByteArray(); |
| //... |
| union = Union.heapify(arr); //initializes the union using data from the array. |
| //OR, if used in an off-heap environment: |
| union = Union.heapify(Memory.wrap(arr)); //same as above, except from Memory object. |
| |
| //To recover an updatable heap sketch: |
| sk2 = HllSketch.heapify(arr); |
| //OR, if used in an off-heap environment: |
| sk2 = HllSketch.heapify(Memory.wrap(arr)); |
| </code></pre> |
| |
| <p>The sketch "wrapping" operation skips actual deserialization thus is quite fast. However, |
| any attempt to update the derived HllSketch will result in a Read-only exception.</p> |
| |
| <p>Note that in some cases, based on the state of the sketch, the compact form is |
| indistiguishable from the updatable form. In these cases the updatable form is returned |
| and the compact flag bit will not be set.</p></div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this sketch as a compact byte array.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toUpdatableByteArray--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toUpdatableByteArray</h4> |
| <pre>public byte[] toUpdatableByteArray()</pre> |
| <div class="block">Serializes this sketch as a byte array in an updatable form. The updatable form is larger than |
| the compact form. The use of this form is primarily in environments that support updating |
| sketches in off-heap memory. If the sketch is constructed using HLL_8, sketch updating and |
| union updating operations can actually occur in WritableMemory, which can be off-heap: |
| <pre><code> |
| Union union; HllSketch sk; |
| int lgK = 12; |
| sk = new HllSketch(lgK, TgtHllType.HLL_8) //must be 8 |
| for (int i = 0; i < (2 << lgK); i++) { sk.update(i); } |
| byte[] arr = sk.toUpdatableByteArray(); |
| WritableMemory wmem = WritableMemory.wrap(arr); |
| //... |
| union = Union.writableWrap(wmem); //no deserialization! |
| </code></pre></div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this sketch as an updatable byte array.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString-boolean-boolean-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString(boolean summary, |
| boolean detail, |
| boolean auxDetail, |
| boolean all)</pre> |
| <div class="block">Human readable summary with optional detail</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>summary</code> - if true, output the sketch summary</dd> |
| <dd><code>detail</code> - if true, output the internal data array</dd> |
| <dd><code>auxDetail</code> - if true, output the internal Aux array, if it exists.</dd> |
| <dd><code>all</code> - if true, outputs all entries including empty ones</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>human readable string with optional detail.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString-byte:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString(byte[] byteArr)</pre> |
| <div class="block">Returns a human readable string of the preamble of a byte array image of an HllSketch.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>byteArr</code> - the given byte array</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a human readable string of the preamble of a byte array image of an HllSketch.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString-org.apache.datasketches.memory.Memory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString(org.apache.datasketches.memory.Memory mem)</pre> |
| <div class="block">Returns a human readable string of the preamble of a Memory image of an HllSketch.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>mem</code> - the given Memory object</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a human readable string of the preamble of a Memory image of an HllSketch.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getSerializationVersion--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getSerializationVersion</h4> |
| <pre>public static final int getSerializationVersion()</pre> |
| <div class="block">Returns the current serialization version.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the current serialization version.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getSerializationVersion-org.apache.datasketches.memory.Memory-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getSerializationVersion</h4> |
| <pre>public static final int getSerializationVersion(org.apache.datasketches.memory.Memory mem)</pre> |
| <div class="block">Returns the current serialization version of the given Memory.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>mem</code> - the given Memory containing a serialized HllSketch image.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the current serialization version.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getRelErr-boolean-boolean-int-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getRelErr</h4> |
| <pre>public double getRelErr(boolean upperBound, |
| boolean unioned, |
| int lgConfigK, |
| int numStdDev)</pre> |
| <div class="block">Gets the current (approximate) Relative Error (RE) asymptotic values given several |
| parameters. This is used primarily for testing.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>upperBound</code> - return the RE for the Upper Bound, otherwise for the Lower Bound.</dd> |
| <dd><code>unioned</code> - set true if the sketch is the result of a union operation.</dd> |
| <dd><code>lgConfigK</code> - the configured value for the sketch.</dd> |
| <dd><code>numStdDev</code> - the given number of Standard Deviations. This must be an integer between |
| 1 and 3, inclusive. |
| <a href="../../../../resources/dictionary.html#numStdDev">Number of Standard Deviations</a></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the current (approximate) RelativeError</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isEstimationMode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isEstimationMode</h4> |
| <pre>public boolean isEstimationMode()</pre> |
| <div class="block">This HLL family of sketches and operators is always estimating, even for very small values.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString()</pre> |
| <div class="block">Human readable summary as a string.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code> in class <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Human readable summary as a string.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString-boolean-boolean-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString(boolean summary, |
| boolean detail, |
| boolean auxDetail)</pre> |
| <div class="block">Human readable summary with optional detail. Does not list empty entries.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>summary</code> - if true, output the sketch summary</dd> |
| <dd><code>detail</code> - if true, output the internal data array</dd> |
| <dd><code>auxDetail</code> - if true, output the internal Aux array, if it exists.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>human readable string with optional detail.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-long-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(long datum)</pre> |
| <div class="block">Present the given long as a potential unique item.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>datum</code> - The given long datum.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-double-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(double datum)</pre> |
| <div class="block">Present the given double (or float) datum as a potential unique item. |
| The double will be converted to a long using Double.doubleToLongBits(datum), |
| which normalizes all NaN values to a single NaN representation. |
| Plus and minus zero will be normalized to plus zero. |
| The special floating-point values NaN and +/- Infinity are treated as distinct.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>datum</code> - The given double datum.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> datum)</pre> |
| <div class="block">Present the given String as a potential unique item. |
| The string is converted to a byte array using UTF8 encoding. |
| If the string is null or empty no update attempt is made and the method returns. |
| |
| <p>Note: About 2X faster performance can be obtained by first converting the String to a |
| char[] and updating the sketch with that. This bypasses the complexity of the Java UTF_8 |
| encoding. This, of course, will not produce the same internal hash values as updating directly |
| with a String. So be consistent! Unioning two sketches, one fed with strings and the other |
| fed with char[] will be meaningless. |
| </p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>datum</code> - The given String.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-byte:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(byte[] data)</pre> |
| <div class="block">Present the given byte array as a potential unique item. |
| If the byte array is null or empty no update attempt is made and the method returns.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>data</code> - The given byte array.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-char:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(char[] data)</pre> |
| <div class="block">Present the given char array as a potential unique item. |
| If the char array is null or empty no update attempt is made and the method returns. |
| |
| <p>Note: this will not produce the same output hash values as the <a href="../../../../org/apache/datasketches/hll/HllSketch.html#update-java.lang.String-"><code>update(String)</code></a> |
| method but will be a little faster as it avoids the complexity of the UTF8 encoding.</p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>data</code> - The given char array.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-int:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(int[] data)</pre> |
| <div class="block">Present the given integer array as a potential unique item. |
| If the integer array is null or empty no update attempt is made and the method returns.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>data</code> - The given int array.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="update-long:A-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>update</h4> |
| <pre>public void update(long[] data)</pre> |
| <div class="block">Present the given long array as a potential unique item. |
| If the long array is null or empty no update attempt is made and the method returns.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>data</code> - The given long array.</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= 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><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/HllSketch.html">Use</a></li> |
| <li><a href="package-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 Class</li> |
| <li><a href="../../../../org/apache/datasketches/hll/IntMemoryPairIterator.html" title="class in org.apache.datasketches.hll"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/datasketches/hll/HllSketch.html" target="_top">Frames</a></li> |
| <li><a href="HllSketch.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../allclasses-noframe.html">All 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> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small>Copyright © 2015–2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </body> |
| </html> |