FrequentLongsSketch

This section contains reference documentation for the FREQUENTLONGSSKETCH function.

FREQUENTLONGSSKETCH is an estimation data-sketch function which can be used to estimate the frequency of an item. It is based on Apache Datasketches library and returns a serialized sketch object which can be merged with other sketches.

Signature

FREQUENTLONGSSKETCH(column, maxMapSize=256) -> Base64 encoded sketch object

  • column (required): Name of the column to aggregate on. Needs to be a type which can be cast into 'LONG'.

  • maxMapSize: This value specifies the maximum physical length of the internal hash map. The maxMapSize must be a power of 2 and the default value is 256.

Usage Example

select FREQUENTLONGSSKETCH(AirlineID, 16) from airlineStats
frequentlongssketch(AirlineID)

BAEKCAUAAAAOAAAAAA...

Which can be used, for example in Java as:

byte[] byteArr = Base64.getDecoder().decode(encodedSketch);
LongsSketch sketch = LongsSketch.getInstance(Memory.wrap(byteArr));

LongsSketch.Row[] items = sketch.getFrequentItems(ErrorType.NO_FALSE_NEGATIVES);
for (int i = 0; i < items.length; i++) {
  LongsSketch.Row item = items[i];
  System.out.printf("Airline: %d, Frequency: %d %n", item.getItem(), item.getEstimate());
}

For more examples on the sketch API, refer to the Datasketches documentation.