Hjem Personlig finansiering Streaming Algoritmer og Bloom Filtre - Dummies

Streaming Algoritmer og Bloom Filtre - Dummies

Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024

Video: ZEITGEIST: MOVING FORWARD | OFFICIAL RELEASE | 2011 2024
Anonim

I hjertet av mange streaming algoritmer er Bloom-filtre. Skapt for nesten 50 år siden av Burton H. Bloom, i en tid da datalogi fortsatt var ganske ung, var den opprinnelige hensikten med denne algoritmenes skaperen å handle mellomrom (minne) og / eller tid (kompleksitet) mot det han kalte Tillatte feil. Hans originale papir har tittelen Utvidelse av rom / tid i Hash-koding med tillatte feil.

Du kan lure på plass og tid som Bloom anser motivatorer for sin algoritme. Tenk deg at du må avgjøre om et element allerede har dukket opp i en strøm ved hjelp av en tidligere diskutert datastruktur. Å finne noe i en strøm innebærer at innspilling og søking er raske, og derfor er et hashbord et ideelt valg. Hash-tabeller trenger bare å legge til elementene du vil spille inn og lagre dem. Gjenopprette et element fra et hasjbord er raskt fordi hashbordet bruker lett manipulerte verdier til å representere elementet, i stedet for selve elementet (som kan være ganske komplisert). Likevel, lagring av begge elementene og en indeks til disse elementene har begrensninger. Hvis et hasjbord står overfor flere elementer enn det kan håndtere, for eksempel elementene i en kontinuerlig og potensielt uendelig strøm, vil du ende opp med å oppleve minneproblemer på et tidspunkt.

En viktig vurdering for Bloom-filtre er at falske positiver kan oppstå, men falske negativer kan ikke. For eksempel kan en datastrøm inneholde sanntids overvåkingsdata for et kraftverk. Ved bruk av et Bloom-filter vil analysen av datastrømmen vise at forventede målinger trolig er en del av settet av tillatte målinger, med enkelte feil tillatt. Men når en feil oppstår i systemet, viser den samme analysen at lesingene ikke er en del av settet av tillatt målinger. De falske positive er usannsynlig å forårsake problemer, men fraværet av falske negativer betyr at alle forblir trygge. På grunn av potensialet for falske positiver, er filtre som Bloom-filteret probabilistiske datastrukturer - de gir ikke et bestemt svar, men en sannsynlig.

Hashes, de enkelte oppføringene i et hashbord, er raske fordi de fungerer som indeksen til en bok. Du bruker en hash-funksjon for å produsere hash; inngangen er et element som inneholder komplekse data, og utgangen er et enkelt tall som fungerer som en indeks til det elementet. En hash-funksjon er deterministisk fordi den produserer det samme nummer hver gang du sparer det en bestemt datainngang.Du bruker hasen til å finne den komplekse informasjonen du trenger. Blomfiltre er nyttige fordi de er en sparsom måte å registrere spor av mange elementer uten å måtte lagre dem bort som et hashbord gjør. De fungerer på en enkel måte og bruker følgende som hovedingredienser:

  • En liten vektor: En liste over bitelementer, hvor hver bit i elementet kan ha en verdi på 0 eller 1. Listen er lang antall biter kalt m. Jo større m er, desto bedre, selv om det er måter å optimalisere størrelsen på.
  • En rekke hashfunksjoner: Hver hash-funksjon representerer en annen verdi. Hashfunksjonene kan raskt knase data og produsere jevnt fordelte resultater, som er like like fra minimum til maksimale utgangsverdier for hasen.
Streaming Algoritmer og Bloom Filtre - Dummies

Redaktørens valg

Speil Lockup (MUP) på Nikon D7100-dummies

Speil Lockup (MUP) på Nikon D7100-dummies

En komponent i det optiske systemet til din Nikon D7100 kamera er et speil som beveger seg hver gang du trykker på lukkerknappen. Den lille vibrasjonen som følge av speilets handling kan føre til svak utryddelse av bildet når du bruker en veldig langsom lukkerhastighet, skyter med en lang teleobjektiv, ...

Opptaksmuligheter på Nikon D5300 - dummies

Opptaksmuligheter på Nikon D5300 - dummies

Du kan styre noen få aspekter av din filmoppgave på din Nikon D5300. Du kan manipulere videoen din for å skape en rekke effekter. Følgende liste går gjennom disse alternativene: Eksponeringsmodus: Du kan ta opp filmer i hvilken som helst eksponeringsmodus (Auto, Scenemodus, Effektmodus, P, M, og så videre). Som med fortsatt ...

Hvordan man manipulerer eksponering og kontroll på Nikon D5600-dummies

Hvordan man manipulerer eksponering og kontroll på Nikon D5600-dummies

Følgende retusjonsverktøy på din Nikon D5600 kamerajustering eksponering og farge: D-Lighting, Quick Retouch, Filter Effects og Monochrome. Selv om disse verktøyene ikke får deg til å velge ett kamera over en annen, hvis du allerede har en Nikon D5600, er de tilgjengelige, så du kan også lære å bruke dem! D-Lighting: Active D-Lighting ...

Redaktørens valg

DOs og DON'Ts of Fantasy Basketball Draft Picks - dummies

DOs og DON'Ts of Fantasy Basketball Draft Picks - dummies

Hvis du vurderer bli med i en fantasy basketball liga, må du ta hensyn til følgende DOs og DON'Ts før du vurderer spillerne du vil utarbeide på laget ditt. Kreditt: © iStockphoto. com / IS_ImageSource Fantasy basketball draft pick DOS I de fleste fantasy basketball ligaer bestemmer kommisjonen (personen som setter opp ligaen) bestillingen i ...

Linjene og dimensjonene til en basketballbane - dummies

Linjene og dimensjonene til en basketballbane - dummies

En basketballbane har symmetri; Den ene halvdelen av retten er et speilbilde av den andre. Hele basketballbanen (se figur 1) er 94 fot med 50 fot. På hver halvplass viser malte linjer fritt korsbanen og sirkelen, samt trepunktsbuen, hvis avstand fra kurven varierer basert ...

Kjøp av gratis agenter i fantasy fotball - dummies

Kjøp av gratis agenter i fantasy fotball - dummies

I løpet av fantasy fotball sesongen, spillere som ikke blir utarbeidet bli gratis agenter - spillere tilgjengelig for enhver ligamatch villig til å slippe en eid spiller. Bruk gratis agentbassenget til å erstatte en skadet spiller eller noen som bare ikke lever opp til dine forventninger. Bruk disse tipsene for å finne en gratis agent for å ...

Redaktørens valg

Grunnleggende for din iOS-app - dummies

Grunnleggende for din iOS-app - dummies

Heldigvis mesteparten av det du trenger å gjøre så langt som iOS animasjon er opptatt er allerede bygd inn i rammen. Noen visningsegenskaper kan animeres, noe som betyr at du bare må fortelle visningen hvor du skal begynne og hvor du skal avslutte flyttingen, og noen få andre valgfrie parametere, og du er ferdig. ...

Montering av verktøylinjen for Android App Development - dummies

Montering av verktøylinjen for Android App Development - dummies

Når du vet at du er klar til være en Android-utvikler, ta tak i datamaskinen din og få sprekker på å installere verktøyene og rammene som er nødvendige for å bygge ditt første blockbuster-program. Linux-kjernen Android ble opprettet på toppen av åpen kildekode Linux-kjernen. Android-teamet valgte å bruke denne kjernen fordi den ga bevist ...

Grunnleggende om Cocoa Touch i iOS Apps - dummies

Grunnleggende om Cocoa Touch i iOS Apps - dummies

Cocoa Touch-laget inneholder det meste av objektet -orientert utvikler-vendt rammer for å bygge iOS applikasjoner. Det er ditt eneste utgangspunkt for app-utvikling. Apple-guiderne oppfordrer deg til å undersøke teknologiene i dette laget for å se om de oppfyller dine behov, før du ser på de andre lagene. Med andre ord, Apple har til hensikt å ...