Redis
 sql >> Database >  >> NoSQL >> Redis

redis HLL troppi falsi positivi

HyperLogLog viene utilizzato per contare gli oggetti unici. Può contare un gran numero di elementi con poca memoria. Tuttavia, la cardinalità restituita NON è esatta, ma approssimata con un standard error .

0,81% è l'standard error , NON il falso positivo. Per la tua istanza, puoi chiamare PFCOUNT HLL per ottenere il numero approssimativo di elementi univoci inseriti in HyperLogLog . Il numero restituito deve essere compreso nell'intervallo [10000 * (1 - 0.81%), 10000 * (1 + 0.81%)] .

PFADD restituisce 1 se la cardinalità stimata viene modificata dopo l'esecuzione del comando. Restituisce 0, altrimenti. Non ha nulla a che fare con false positive .

Sembra che ciò di cui hai bisogno sia un filtro Bloom, che può dirti se un elemento esiste già in un set di dati, con un falso positivo. Puoi implementare un Bloom Filter con Redis, ovviamente. E dovrebbe esserci qualche progetto open source per questo.