Dati di baseAnalisi

Conteggi su larga scala

Visitatori unici, "l'abbiamo già visto?", elementi principali e frequenze su miliardi di eventi, ciascuno in una quantità di memoria piccola e fissa.

strutture probabilistiche
4
memoria per struttura
Fissa
limiti di errore
Noti
Passo 1 di 5
Visitatori unici

Aggiungi gli id dei visitatori a un HyperLogLog. La memoria resta piccola, per quanti ne arrivino.

Sessione di esempioplaying
# Visitatori unici
hotkv> PFADD visitors:2026-10-16 user:42 user:77 user:91
(integer) 1

Una dimostrazione animata con comandi HotKV reali e risposte di esempio. Clicca su un passo qualsiasi per andarci. Comandi e risposte restano in inglese, esattamente come li digiti e li vedi in HotKV.

Il problema

Le risposte esatte a "quanti utenti unici", "abbiamo già inviato questa email" o "quali sono le ricerche principali" richiedono memoria che cresce con ogni elemento distinto. Con miliardi di eventi diventano gigabyte di set e contatori per ogni domanda.

Come lo gestisce HotKV

Le strutture probabilistiche scambiano un errore piccolo e noto con una memoria costante. HyperLogLog conta gli elementi distinti, i filtri Bloom rispondono sull'appartenenza, Top-K tiene traccia degli elementi più frequenti e i Count-min sketch stimano quante volte si è presentato un elemento qualsiasi. Tutte e quattro sono integrate in HotKV.

Passo dopo passo

Cosa succede, comando per comando

  1. 01

    Visitatori unici

    Aggiungi gli id dei visitatori a un HyperLogLog. La memoria resta piccola, per quanti ne arrivino.

    PFADD visitors:2026-10-16 user:42 user:77 user:91
  2. 02

    Quanti?

    Una stima dei visitatori distinti con un piccolo errore standard.

    PFCOUNT visitors:2026-10-16
  3. 03

    Mai inviare due volte

    Prima di inviare l'email di una campagna, controlla se questo indirizzo l'ha già ricevuta.

    BF.EXISTS sent:campaign:fall ada@example.com
  4. 04

    Ricerche principali

    Top-K mantiene gli elementi più frequenti man mano che arrivano gli eventi.

    TOPK.LIST searches:today WITHCOUNT
  5. 05

    Quante volte per un elemento qualsiasi

    Un Count-min sketch stima il conteggio di qualsiasi elemento, che sia in elenco o no.

    CMS.QUERY pageviews /home /pricing /blog
Dove si usa

Scenari reali

Analisi web e app

Utenti unici giornalieri e mensili per pagina o funzionalità, uniti tra i giorni con PFMERGE.

Email e notifiche

I filtri Bloom impediscono gli invii duplicati tra retry e campagne.

Ricerca e commercio

Le query principali e i prodotti più visti vengono tracciati dal vivo per il merchandising.

Integrato

Cosa ottieni

HyperLogLog

Conteggi distinti, unibili tra bucket.

PFADDPFCOUNTPFMERGE

Filtri Bloom

Appartenenza con un tasso di falsi positivi configurabile.

BF.RESERVEBF.ADDBF.EXISTS

Top-K

Gli elementi più frequenti in uno stream.

TOPK.ADDTOPK.LIST

Count-min sketch

Stime di frequenza per qualsiasi elemento.

CMS.INCRBYCMS.QUERY

Domande frequenti

Quanto sono precise?

I filtri Bloom ti permettono di impostare il tasso di errore, e i Count-min sketch larghezza e profondità. HyperLogLog ha un errore standard piccolo e fisso.

Un filtro Bloom può non riconoscere qualcosa che ha già visto?

No. Può segnalare un falso positivo, mai un falso negativo.

Mi serve un modulo?

No. Fanno parte di HotKV.

Casi d'uso correlati

Provalo sul tuo carico di lavoro

HotKV parla il protocollo Redis, quindi puoi puntarci un client esistente ed eseguire questi stessi comandi.