pub struct BlockStats {
pub min: f64,
pub max: f64,
pub null_count: u32,
pub row_count: u32,
}Expand description
Per-block statistics for a single column. Enables predicate pushdown:
skip blocks where WHERE price > 100 and block’s max_price < 100.
Fields§
§min: f64Minimum value in this block (encoded as f64 for uniformity; i64 values are cast losslessly, strings use 0.0).
max: f64Maximum value in this block.
null_count: u32Number of null values in this block.
row_count: u32Number of rows in this block (≤ BLOCK_SIZE, last block may be smaller).
Implementations§
Source§impl BlockStats
impl BlockStats
Sourcepub fn non_numeric(null_count: u32, row_count: u32) -> Self
pub fn non_numeric(null_count: u32, row_count: u32) -> Self
Create stats for a block with no meaningful min/max (e.g., string columns).
Trait Implementations§
Source§impl Clone for BlockStats
impl Clone for BlockStats
Source§fn clone(&self) -> BlockStats
fn clone(&self) -> BlockStats
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BlockStats
impl Debug for BlockStats
Source§impl<'de> Deserialize<'de> for BlockStats
impl<'de> Deserialize<'de> for BlockStats
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for BlockStats
impl RefUnwindSafe for BlockStats
impl Send for BlockStats
impl Sync for BlockStats
impl Unpin for BlockStats
impl UnsafeUnpin for BlockStats
impl UnwindSafe for BlockStats
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.