Package org.projectnessie.versioned.gc
Class BinaryBloomFilter
- java.lang.Object
-
- org.projectnessie.versioned.gc.BinaryBloomFilter
-
- All Implemented Interfaces:
Externalizable,Serializable
public class BinaryBloomFilter extends Object implements Externalizable
A utility class wrapping binary bloom filter functionality for spark.Has two different serialization formats:
- format used when exposing a result to a row (direct use of Guava's
BloomFilter.readfromoperations) - internal format used when doing aggregation (based on
Externalizable)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description BinaryBloomFilter()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static BinaryBloomFilteraggregate(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> data, String column)Run aggregation on dataset to add all rows to the bloom filter.org.apache.spark.sql.Dataset<org.apache.spark.sql.Row>filter(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> data, String column)booleanmightContain(byte[] bytes)booleanmightContain(com.google.protobuf.ByteString bytes)booleanmightContain(ByteBuffer bytes)voidreadExternal(ObjectInput in)voidwriteExternal(ObjectOutput out)
-
-
-
Method Detail
-
mightContain
public boolean mightContain(byte[] bytes)
-
mightContain
public boolean mightContain(com.google.protobuf.ByteString bytes)
-
mightContain
public boolean mightContain(ByteBuffer bytes)
-
aggregate
public static BinaryBloomFilter aggregate(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> data, String column)
Run aggregation on dataset to add all rows to the bloom filter.- Parameters:
data- a Spark Dataset to add to binary bloom filtercolumn- the column to aggregate on
-
filter
public org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> filter(org.apache.spark.sql.Dataset<org.apache.spark.sql.Row> data, String column)
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
- Specified by:
writeExternalin interfaceExternalizable- Throws:
IOException
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
- Specified by:
readExternalin interfaceExternalizable- Throws:
IOExceptionClassNotFoundException
-
-