Expand description
Scan predicates for block-level predicate pushdown.
A ScanPredicate describes a filter on a single column that can be
evaluated against BlockStats to skip entire blocks without decompressing.
Predicates work for both numeric columns (comparing against BlockStats.min
/ BlockStats.max) and string columns (comparing against
BlockStats.str_min / BlockStats.str_max). For string Eq predicates the
optional bloom filter provides an additional fast-reject path.
Structs§
- Scan
Predicate - A predicate on a single column for block-level pushdown.
Enums§
- Predicate
Op - Comparison operator for scan predicates.
- Predicate
Value - The value side of a scan predicate.
Constants§
- BLOOM_
BITS_ DEFAULT - Default bloom filter size in bits (2048 bits = 256 bytes).
- BLOOM_
BYTES - Convenience byte count for the default bit array size.
- BLOOM_
K_ DEFAULT - Default number of independent hash functions.
Functions§
- bloom_
insert - Insert a string value into a
BloomFilter. - bloom_
may_ contain - Test whether a string value may be present in a
BloomFilter. - build_
bloom - Build a new
BloomFilterwith the default parameters (k=3,m=2048) and insert all provided string values. - build_
bloom_ with_ params - Build a
BloomFilterwith explicitk(hash function count) andm(bit-array size).mmust be a power of two and at least 8. - f64_
to_ exact_ i64 - Convert an f64 to i64 only if the conversion is exact.