Expand description
Fundamental data representation.
This module contains the types for representing data in Materialize that all layers of the stack can understand. Think of it as the lingua franca: individual layers may use different representations internally, but they all agree to use this representation at their boundaries.
- The core value type is the
Datum
enum, which represents a literal value. Row
extends aDatum
horizontally, and has features for efficiently doing so.RelationDesc
describes what it takes to extend aRow
vertically, and corresponds most closely to what is returned from querying our dataflows
Re-exports
pub use crate::global_id::GlobalId;
Modules
Abstract data types.
Custom
proptest::strategy::Strategy
implementations and Protobuf types
for the chrono
fields used in the codebase.A set of traits for modeling things that can be explained by a
SQL
EXPLAIN
statement.Routines for converting datum values to and from their string
representation.
Structs
The name of a column in a
RelationDesc
.The type of a
Datum
.A sequence of Datums
A mapping from string keys to Datums
A re-useable vector of
Datum
with no particular lifetime.A borrowed allocation of
Datum
with a specific lifetime.Expression violated not-null constraint on named column
A description of the shape of a relation.
The type of a relation.
A packed representation for
Datum
s.RowArena
is used to hold on to temporary Row
s for functions like eval
that need to create complex Datum
s but don’t have a Row
to put them in yet.A wrapper around a byte slice that guarantees the data are row-formatted.
System-wide timestamp type.
Enums
A single value.
The type of a
Datum
.Traits
Types that implement this trait can be stored in an SQL column with the specified ColumnType
A bridge between native Rust types and SQL runtime types represented in Datums
Functions
Number of bytes required by a list of datums. This computes the size that would be required if
the given datums were packed into a list.
Number of bytes required by the datum.
Number of bytes required by a sequence of datums.
Return the number of bytes these Datums would use if packed as a Row.
Type Definitions
System-wide record count difference type.