Ang mga filter ay ginagamit para subukin kung ang isang elemento ay miyembro ng isang set, kung ang mga ito ay mahusay pagdating sa espasyo at oras, anupat angkop sa mga aplikasyong nangangailangan ng mabilis na pagsalà sa data.

Disenyong mga Simulain ng mga Bloom Filmer

Ang isang bloom filter ay gumagamit ng maramihang mga tungkulin ng hash upang i-stall ang mga elemento sa isang bit array. Kapag ang isang elemento ay idinagdag, ang bawat isang hash function computing ay gumagamit ng multiple, at ang mga kaukulang mga piraso ay nakatakda sa 1. Upang masuri kung ang isang elemento ay umiiral, ang parehong mga gawain ng hash ay nilalapat, at ang mga bit ay tiyak na hindi sinusuri.

Ang mga pangunahing pakinabang ay kinabibilangan ng kaunting paggamit ng memorya at patuloy na-time na mga operasyon. Gayunpaman, ang probabilidad ng mga hindi tunay na positibo ay tumataas habang ang mas maraming mga elemento ay idinaragdag, na isang pangkalakalan-off para sa kahusayan sa espasyo.

Mga Hangganan ng mga Bulwagan

Sa kabila ng kanilang kahusayan, ang mga bloom filter ay may mga limitasyon. hindi nila sinusuportahan ang deleksiyon ng mga elemento nang walang karagdagang data istruktura, at ang mga maling positibo ay hindi maiiwasan, na maaaring humantong sa maling mga palagay tungkol sa nakatakdang pagiging kasapi. Ang maling positibong bilis ay nakasalalay sa sukat ng array ng bit at ang bilang ng mga tungkulin ng hash na ginagamit.

Ang pagdidisenyo ng mabisang bloom filter ay nagsasangkot ng pagbalanse sa espasyo, maling positibong bilis, at ang inaasahang bilang ng mga elemento.

Mga Gamit ng mga Bloom Filter

  • Pag - aalinlangan sa Datbase
  • Pag - iingat at pagsala sa pamamagitan ng Network
  • Mga sistema ng pamamahagi ng impormasyon para sa pagsasanib ng mga impormasyon
  • Pagsala sa Web caching at nilalaman