|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.hadoop.util.bloom.Filter
public abstract class Filter
Defines the general behavior of a filter.
A filter is a data structure which aims at offering a lossy summary of a set A. The
key idea is to map entries of A (also called keys) into several positions
in a vector through the use of several hash functions.
Typically, a filter will be implemented as a Bloom filter (or a Bloom filter extension).
It must be extended in order to define the real behavior.
The general behavior of a key,
A hash function| Field Summary | |
|---|---|
protected HashFunction |
hash
The hash function used to map a key to several positions in the vector. |
protected int |
hashType
Type of hashing function to use. |
protected int |
nbHash
The number of hash function to consider. |
protected int |
vectorSize
The vector size of this filter. |
| Constructor Summary | |
|---|---|
protected |
Filter()
|
protected |
Filter(int vectorSize,
int nbHash,
int hashType)
Constructor. |
| Method Summary | |
|---|---|
void |
add(Collection<Key> keys)
Adds a collection of keys to this filter. |
abstract void |
add(Key key)
Adds a key to this filter. |
void |
add(Key[] keys)
Adds an array of keys to this filter. |
void |
add(List<Key> keys)
Adds a list of keys to this filter. |
abstract void |
and(Filter filter)
Peforms a logical AND between this filter and a specified filter. |
abstract boolean |
membershipTest(Key key)
Determines wether a specified key belongs to this filter. |
abstract void |
not()
Performs a logical NOT on this filter. |
abstract void |
or(Filter filter)
Peforms a logical OR between this filter and a specified filter. |
void |
readFields(DataInput in)
Deserialize the fields of this object from in. |
void |
write(DataOutput out)
Serialize the fields of this object to out. |
abstract void |
xor(Filter filter)
Peforms a logical XOR between this filter and a specified filter. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected int vectorSize
protected HashFunction hash
protected int nbHash
protected int hashType
| Constructor Detail |
|---|
protected Filter()
protected Filter(int vectorSize,
int nbHash,
int hashType)
vectorSize - The vector size of this filter.nbHash - The number of hash functions to consider.hashType - type of the hashing function (see Hash).| Method Detail |
|---|
public abstract void add(Key key)
key - The key to add.public abstract boolean membershipTest(Key key)
key - The key to test.
public abstract void and(Filter filter)
Invariant: The result is assigned to this filter.
filter - The filter to AND with.public abstract void or(Filter filter)
Invariant: The result is assigned to this filter.
filter - The filter to OR with.public abstract void xor(Filter filter)
Invariant: The result is assigned to this filter.
filter - The filter to XOR with.public abstract void not()
The result is assigned to this filter.
public void add(List<Key> keys)
keys - The list of keys.public void add(Collection<Key> keys)
keys - The collection of keys.public void add(Key[] keys)
keys - The array of keys.
public void write(DataOutput out)
throws IOException
Writableout.
write in interface Writableout - DataOuput to serialize this object into.
IOException
public void readFields(DataInput in)
throws IOException
Writablein.
For efficiency, implementations should attempt to re-use storage in the existing object where possible.
readFields in interface Writablein - DataInput to deseriablize this object from.
IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||