Skip to main content

Crate scepter

Crate scepter 

Source
Expand description

Scepter provides composable primitives for large-scale time-series systems: schema-rich keys, lexicographic routing, approximate field-hint indexing, mergeable distributions, ingestion aggregation, and distributed query planning.

The crate is inspired by the public Monarch paper, but it is an independent Rust library design intended for observability systems, log search, stream processing, and distributed query engines.

Re-exports§

pub use aggregate::CollectionAggregator;
pub use aggregate::Mergeable;
pub use aggregate::PartialAggregate;
pub use aggregate::Sum;
pub use arrow::finalized_u64_buckets_to_record_batch;
pub use arrow::query_health_to_record_batch;
pub use arrow::replica_candidates_to_record_batch;
pub use collect::AdmissionWindow;
pub use collect::BucketedAggregator;
pub use collect::CollectionError;
pub use collect::DeltaPoint;
pub use collect::FinalizedBucket;
pub use collect::MaxReducer;
pub use collect::MergeReducer;
pub use collect::MinReducer;
pub use collect::Reducer;
pub use collect::SumReducer;
pub use compressed::NumericFieldHintIndex;
pub use distribution::Bucket;
pub use distribution::BucketLayout;
pub use distribution::CumulativePoint;
pub use distribution::DeltaWindow;
pub use distribution::Distribution;
pub use distribution::DistributionError;
pub use distribution::Exemplar;
pub use hint::ngrams;
pub use hint::trigrams;
pub use hint::try_ngrams;
pub use hint::ExcerptStrategy;
pub use hint::FieldHint;
pub use hint::FieldHintIndex;
pub use hint::FieldPredicate;
pub use hint::HintError;
pub use ingest::DropPolicy;
pub use ingest::IngestDecision;
pub use ingest::IngestRouter;
pub use ingest::WriteEnvelope;
pub use key::KeyEncoder;
pub use key::LexicographicKey;
pub use model::Field;
pub use model::FieldValue;
pub use model::LocationResolver;
pub use model::MetricKind;
pub use model::MetricSchema;
pub use model::TargetSchema;
pub use model::TimeSeriesKey;
pub use model::ValueKind;
pub use query::ExecutionLevel;
pub use query::FanoutPlan;
pub use query::LogicalPlan;
pub use query::PlanNode;
pub use query::PushdownPlanner;
pub use query::QueryFragment;
pub use reliability::ChildIssue;
pub use reliability::IssueKind;
pub use reliability::QueryHealth;
pub use reliability::ReplicaCandidate;
pub use reliability::ReplicaQuality;
pub use reliability::ReplicaResolver;
pub use reliability::ReplicaState;
pub use reliability::ResolvedRange;
pub use shard::LoadSample;
pub use shard::RangeAssigner;
pub use shard::RangeAssignment;
pub use shard::RangeLoad;
pub use shard::ShardError;
pub use standing::EvaluatorShard;
pub use standing::Schedule;
pub use standing::StandingError;
pub use standing::StandingQuery;
pub use wire::from_cbor;
pub use wire::to_cbor;
pub use wire::WireDeltaPoint;
pub use wire::WireError;
pub use wire::WireFinalizedBucket;
pub use wire::from_cbor_zstd;
pub use wire::to_cbor_zstd;
pub use wire::zstd_compress;
pub use wire::zstd_decompress;

Modules§

aggregate
Distributed aggregation traits and collection aggregation helpers.
arrow
Optional Apache Arrow batch interchange helpers.
collect
Time-bucketed collection aggregation with admission windows. Time-bucketed collection aggregation primitives.
compressed
Optional compressed field-hint indexes.
distribution
Distribution-valued metric primitives.
hint
Field-hint indexing and excerpt generation.
ingest
Ingest routing primitives.
key
Lexicographic key encoding.
model
Schema and logical time-series model types.
query
Logical query planning and pushdown primitives.
reliability
Query reliability primitives for replica choice and partial-result health. Query reliability primitives.
shard
Lexicographic range sharding.
standing
Standing-query scheduling and evaluator sharding.
wire
Optional CBOR and Zstd wire-format helpers.