Security News
38% of CISOs Fear They’re Not Moving Fast Enough on AI
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
count-min-sketch
Advanced tools
An implementation of Coromode and Muthukrishnan's Count-Min sketch data structure for JavaScript. The count-min sketch is basically a high powered generalization of the bloom filter. While a bloom filter gives an efficient way to approximate membership of a set, a count-min sketch can give approximate data about the relative frequency of items in the set.
For more information see the following references:
//Import library
var createCountMinSketch = require("count-min-sketch")
//Create data structure
var sketch = createCountMinSketch()
//Increment counters
sketch.update("foo", 1)
sketch.update(1515, 104)
//Query results
console.log(sketch.query(1515)) //Prints 104
console.log(sketch.query("foo")) //Prints 1
npm install count-min-sketch
module.exports
is a constructor for the data structure, and you import it like so:
var createCountMinSketch = require("count-min-sketch")
var sketch = createCountMinSketch(epsilon, probError[, hashFunc])
Creates a count-min sketch data structure.
epsilon
is the accuracy of the data structure (ie the size of bins that we are computing frequencies of)
probError
is the probability of incorrectly computing a value
hashFunc(key, hashes)
is a hash function for the data structure. (optional) the parameters to this function are as follows:
key
is the item that is being hashedhashes
is an array of k
hashes which are required to be pairwise independent.Returns A count-min sketch data structure
sketch.update(key, v)
Adds v
to key
key
is the item in the table to increment.v
is the amount to add to itsketch.query(key)
Returns the frequency of the item key
key
is the item whose frequency we are countingReturns An estimate of the frequency of key
sketch.toJSON()
Returns a serializable JSON representation of the table.
sketch.fromJSON(obj)
Converts a JSON object into a deserialized sketch. The hash function is reused from the current sketch.
Note In order for this to be successful both the serialized hash table and the current hash table have to have the same hash function.
(c) 2013 Mikola Lysenko. MIT License
FAQs
Count-Min Sketch Data Structure
The npm package count-min-sketch receives a total of 0 weekly downloads. As such, count-min-sketch popularity was classified as not popular.
We found that count-min-sketch demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISOs are racing to adopt AI for cybersecurity, but hurdles in budgets and governance may leave some falling behind in the fight against cyber threats.
Research
Security News
Socket researchers uncovered a backdoored typosquat of BoltDB in the Go ecosystem, exploiting Go Module Proxy caching to persist undetected for years.
Security News
Company News
Socket is joining TC54 to help develop standards for software supply chain security, contributing to the evolution of SBOMs, CycloneDX, and Package URL specifications.