A Memory-optimized Bloom Filter using An Additional Hashing Function Author: Mahmood Ahmadi, Stephan...

Preview:

Citation preview

A Memory-optimized Bloom Filter using An Additional

Hashing Function

Author: Mahmood Ahmadi, Stephan WongPublisher: IEEE GLOBECOM 2008Presenter: Yu-Ping ChiangDate: 2009/04/29

Outline

Related workRegular bloom filterPruned bloom filter

BFAH

(bloom filter with an additional hashing function)

Performance

Regular bloom filterAddress

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

1

0

1

1

1

0

1

0

0

R0

R2

R3

R1

H1(R1)

H2(R1)H3(R1)

R0

R1

R0

R0

R1

R1 R2

R3

R2

R2

R3

R3

R0

Regular bloom filter - searchAddress

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

1

0

1

1

1

0

1

0

0

Input: X

H1(X)

H3(X)

R0

R1

R0

R0

R1

R1 R2

R3

R2

R2

R3

R3

H2(X)R0

NO match any rule !!

Disadvantages:‧Can’t delete rule‧Duplicate rules in memory

Pruned bloom filterBit-array

1

1

0

1

0

1

1

1

0

1

0

0

Address

0

2

1

6

3

5

4

8

7

10

9

11

R0

R2

R3

R1 R0

R1

R2

R3

2

3

0

1

0

2

1

2

0

1

0

0

Counter

‧After set bit-array for all rules, save rule only in smallest counter position.

Outline

Related workRegular bloom filterPruned bloom filter

BFAH

(bloom filter with an additional hashing function)

Performance

BFAH

Determine which place will use to insert item.

Address

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

1

0

1

1

1

0

1

0

0

R0

R2

R3

R1

H1(R1)

H2(R1)H3(R1)

Additional hash function

BFAH - example

Address

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

0

0

0

1

0

0

0

0

0

R0

H1(R1)

H2(R1)H3(R1)

Additional hash functionrule_num mod 3Input : 0 Output : 0

R0

BFAH - example

Address

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

0

0

1

1

0

0

0

0

0

R0

R1

Additional hash functionrule_num mod 3Input : 1 Output : 1

R0

R1

BFAH - example

Address

0

2

1

6

3

5

4

8

7

10

9

11

Bit-array

1

1

0

1

0

1

1

1

0

1

0

0

R0

R2

R3

R1

Additional hash functionrule_num mod 3

R0

R1

R3

R2

Outline

Related workRegular bloom filterPruned bloom filter

BFAH

(bloom filter with an additional hashing function)

Performance

Performance

R.B : Regular Bloom filterP.C.B : Pruned Counting Bloom filterM.B : BFAH

k = # of hash functionsm = size of bit arrayn = # of items (rules)

Performance

R.B : Regular Bloom filterP.C.B : Pruned Counting Bloom filterM.B : BFAH

k = # of hash functionsm = size of bit arrayn = # of items (rules)

Performance Average number of collisions for all rule-set.

Recommended