pub struct ColumnProfile {
pub rows: u64,
pub present: u64,
pub nulls: u64,
pub null_rate: f64,
pub types: TypeCounts,
pub distinct: u64,
pub numeric: Option<NumericSummary>,
pub string: Option<StringSummary>,
pub top_values: Option<Vec<TopValue>>,
pub high_cardinality: bool,
}Expand description
The learned profile of one column over one run.
Fields§
§rows: u64Records the run wrote (the denominator of null_rate).
present: u64Records in which the column was present (including explicit nulls).
nulls: u64Records where the column was absent or null.
null_rate: f64nulls / rows (0 when no rows).
types: TypeCounts§distinct: u64Estimated distinct non-null values (HyperLogLog, ~1.6 % error).
numeric: Option<NumericSummary>§string: Option<StringSummary>§top_values: Option<Vec<TopValue>>Most frequent values, count descending. Absent for high-cardinality
columns and when top_values: 0.
high_cardinality: boolThe estimated distinct count exceeded categorical_max_distinct, so
no values are published for this column.
Implementations§
Trait Implementations§
Source§impl Clone for ColumnProfile
impl Clone for ColumnProfile
Source§impl Debug for ColumnProfile
impl Debug for ColumnProfile
Source§impl<'de> Deserialize<'de> for ColumnProfile
impl<'de> Deserialize<'de> for ColumnProfile
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
Source§impl JsonSchema for ColumnProfile
impl JsonSchema for ColumnProfile
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for ColumnProfile
impl PartialEq for ColumnProfile
Source§impl Serialize for ColumnProfile
impl Serialize for ColumnProfile
impl StructuralPartialEq for ColumnProfile
Auto Trait Implementations§
impl Freeze for ColumnProfile
impl RefUnwindSafe for ColumnProfile
impl Send for ColumnProfile
impl Sync for ColumnProfile
impl Unpin for ColumnProfile
impl UnsafeUnpin for ColumnProfile
impl UnwindSafe for ColumnProfile
Blanket Implementations§
impl<T> Allocation for T
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request