Casa Finanza personale Streaming Algorithms e Bloom Filters - dummies

Streaming Algorithms e Bloom Filters - dummies

Video: Bloom Filters 2025

Video: Bloom Filters 2025
Anonim

Il cuore di molti algoritmi di streaming sono i filtri Bloom. Creato quasi 50 anni fa da Burton H. Bloom, in un periodo in cui l'informatica era ancora piuttosto giovane, l'intento originale del creatore di questo algoritmo era di scambiare spazio (memoria) e / o tempo (complessità) con quello che chiamava errori consentiti. Il suo documento originale è intitolato Complessioni spazio / tempo nella codifica hash con errori consentiti.

Potresti chiederti dello spazio e del tempo che Bloom considera motivatori per il suo algoritmo. Immagina di dover determinare se un elemento è già apparso in uno stream utilizzando una struttura di dati precedentemente discussa. Trovare qualcosa in un flusso implica che la registrazione e la ricerca siano veloci, quindi una tabella hash sembra una scelta ideale. Le tabelle hash richiedono semplicemente di aggiungere gli elementi che si desidera registrare e archiviarli. Recuperare un elemento da una tabella hash è veloce perché la tabella hash utilizza i valori facilmente manipolati per rappresentare l'elemento, piuttosto che l'elemento stesso (che potrebbe essere piuttosto complesso). Tuttavia, la memorizzazione di entrambi gli elementi e un indice di tali elementi presenta limitazioni. Se una tabella hash ha più elementi di quanti ne possa gestire, come gli elementi in un flusso continuo e potenzialmente infinito, a un certo punto finirai per incorrere in problemi di memoria.

Una considerazione essenziale per i filtri Bloom è che possono verificarsi falsi positivi, ma i falsi negativi non possono. Ad esempio, un flusso di dati potrebbe contenere dati di monitoraggio in tempo reale per una centrale elettrica. Quando si utilizza un filtro Bloom, l'analisi del flusso di dati mostrerebbe che le letture previste sono probabilmente parte dell'insieme di letture consentite, con alcuni errori consentiti. Tuttavia, quando si verifica un errore nel sistema, la stessa analisi mostra che le letture non fanno parte dell'insieme delle letture consentite. È improbabile che i falsi positivi causino problemi, ma l'assenza di falsi negativi significa che tutti restano al sicuro. A causa del potenziale di falsi positivi, i filtri come il filtro Bloom sono strutture dati probabilistiche, che non forniscono una risposta certa ma probabile.

Gli hash, le singole voci in una tabella hash, sono veloci perché si comportano come l'indice di un libro. Si utilizza una funzione di hash per produrre l'hash; l'input è un elemento contenente dati complessi e l'output è un numero semplice che funge da indice per quell'elemento. Una funzione di hash è deterministica perché produce lo stesso numero ogni volta che lo si alimenta con uno specifico input di dati.Usi l'hash per localizzare le complesse informazioni di cui hai bisogno. I filtri Bloom sono utili perché sono un modo parsimonioso per registrare tracce di molti elementi senza doverli archiviare come fa una tabella hash. Funzionano in modo semplice e usano i seguenti ingredienti principali:

  • Un vettore di bit: Un elenco di elementi di bit, in cui ogni bit nell'elemento può avere un valore di 0 o 1. L'elenco è lungo numero di bit chiamati m. La m maggiore è, meglio è, anche se ci sono modi per definire in modo ottimale le sue dimensioni.
  • Una serie di funzioni hash: Ogni funzione di hash rappresenta un valore diverso. Le funzioni di hash possono scricchiare rapidamente i dati e produrre risultati uniformemente distribuiti, che sono risultati che vanno ugualmente dal minimo al massimo dei valori di uscita dell'hash.
Streaming Algorithms e Bloom Filters - dummies

Scelta dell'editore

Tasti di scelta rapida per Microsoft Office 2007 - dummies

Tasti di scelta rapida per Microsoft Office 2007 - dummies

Microsoft Office 2007 è pieno di scorciatoie da tastiera per risparmiare tempo. Comprimi i componenti di Office 2007 - Word, Excel, Outlook, PowerPoint e Access - utilizzando i tasti di scelta rapida utili della seguente tabella. Con poco sforzo, puoi aprire file, trovare contenuti, modificare quel contenuto e altro! Funzione Ctrl Copia Ctrl + C Taglia Ctrl + X Trova Ctrl + F Vai ...

Vantaggi di Lync Online - dummies

Vantaggi di Lync Online - dummies

Lync Online è disponibile sia in ambito professionale sia in piccole imprese (P) e aziendali (E ) piani in Office 365. Le funzionalità includono messaggistica istantanea (IM), chiamate audio e video, presenza, riunioni online, presentazioni online e la possibilità di connettersi con i contatti di Windows Live Messenger e altri utenti esterni che eseguono Lync. La tecnologia è integrata in tutto ...

Come avviare una conversazione con Lync Online - dummies

Come avviare una conversazione con Lync Online - dummies

La scheda di contatto di Lync Online è un ottimo modo per avviare una conversazione con un collega o i membri del tuo team. Oltre alle note personali, alla presenza e alla posizione, vengono visualizzate anche le informazioni sulla tua organizzazione come il titolo e i numeri di telefono. Per visualizzare la scheda di contatto, passa con il mouse sopra l'immagine di una persona e fai clic sul gallone ...

Scelta dell'editore

Come scegliere un'immagine di sfondo Twitter per Visual Social Marketing - dummies

Come scegliere un'immagine di sfondo Twitter per Visual Social Marketing - dummies

Quando si imposta su un account Twitter per il social marketing visivo, un tipo di immagine che è richiesto per il tuo profilo è l'immagine di sfondo - viene visualizzata dietro il profilo Twitter. Nella parte superiore della schermata Impostazioni disegno, Twitter ti consente di scegliere tra una serie di temi premade. Un tema premade applica un ...

Come scegliere un buon nome utente Twitter - dummy

Come scegliere un buon nome utente Twitter - dummy

Su Twitter, il tuo nome utente, o handle, è il tuo identità. Se puoi, iscriviti a Twitter usando il tuo nome o una variante di esso come nome utente (supponendo che qualcun altro non lo stia già utilizzando). Ad esempio, se il tuo nome è John Ira, potresti scegliere un nome utente Twitter come @johnira o ...

Come personalizzare il tuo profilo Twitter - dummies

Come personalizzare il tuo profilo Twitter - dummies

La tua pagina pubblica su Twitter, noto anche come profilo, è la prima impressione che gli altri utenti di Twitter hanno di te, e può fare una grande differenza nel decidere se seguirti. Personalizzare la tua pagina del profilo Twitter in modo che rifletta te o la tua azienda fa la differenza quando si tratta di persone ...

Scelta dell'editore

Perché avresti bisogno di più profili utente per Dragon Professional Individuale - manichini

Perché avresti bisogno di più profili utente per Dragon Professional Individuale - manichini

Drago Individuo professionale capisce solo quelli che si sono presentati ufficialmente come utenti e hanno creato un profilo utente. Ecco quattro motivi per cui potresti voler creare più di un profilo utente: usi diversi vocabolari o stili di scrittura per compiti diversi. Si utilizzano diversi microfoni per compiti diversi. Volete ...

Lavorare con fogli di calcolo Usare NaturallySpeaking - dummies

Lavorare con fogli di calcolo Usare NaturallySpeaking - dummies

Utilizzando fogli di calcolo con versioni precedenti di NaturallySpeaking era difficile perché non si poteva indirizzare direttamente i nomi delle celle. Volevi dire qualcosa come "Cella A5" o "Seleziona Colonna C." Ma (sospiro), niente dado. Il tuo assistente non aveva idea di cosa stavi parlando. Bene, il tuo assistente ha "up-leveled" le sue abilità! Ora è possibile ...

Su Evernote's Passcode Lock - dummies

Su Evernote's Passcode Lock - dummies

Abbonati premium e business che utilizzano determinati dispositivi ora possono bloccare l'app Evernote con un blocco Passcode . Ogni volta che torni all'app, ti viene chiesto di inserire il tuo codice. Un blocco passcode è un'ottima opzione se condividi il tuo telefono o tablet con altre persone e vuoi impedire loro di accedere a ...