Compression

Vector-Aware Compression

Store behavioral regimes instead of individual data points. 200–16,500x compression beyond columnar approaches, without losing the ability to query, compare, and analyze.

Behavioral Regime Detection

Traditional compression treats each value independently. VectorScaleDB understands that entity behavior exists in regimes — long periods of stability punctuated by meaningful transitions.

Behavioral Drift
Measuring behavioral change in real time
As each new vector arrives, the compression engine measures behavioral drift from the current regime's baseline. When this drift exceeds the configured threshold, the engine recognizes a regime change and seals the current segment.
  • Continuous behavioral monitoring with configurable sensitivity
  • Automatic drift detection with adaptive thresholds
  • Configurable sensitivity threshold per entity type
  • Sub-microsecond per-vector evaluation overhead
Regime Boundaries
Semantically meaningful segmentation
Unlike fixed-window compression that splits data at arbitrary time boundaries, drift-based detection creates segments that align with actual behavioral transitions. A vehicle cruising on a highway for 3 hours produces one segment. The moment it exits and enters city traffic, a new segment begins.
  • Segments align with real behavioral changes
  • No information loss at arbitrary window boundaries
  • Variable-length segments adapt to data characteristics
  • Regime boundaries become queryable events themselves

Why the Ratios Are So High

The headline range comes from exploiting the structure of real-world behavioral data — most data points are redundant, and stability is the norm.

The Insight
Most data points are redundant
In real-world temporal data, entities spend 95-99% of their time in stable behavioral regimes. A sensor reporting 1,000 vectors per second during a stable period is generating 1,000 near-identical data points. VectorScaleDB stores one segment instead — so a 128-dim float32 stream at 10 Hz over an hour of stable behavior (36,000 vectors, 18 MB) collapses to a single compact segment under 2 KB. In production, dynamic entities (trading algorithms) land near the low end of the range while stable entities (infrastructure sensors) reach the high end, with cross-entity behavioral correlation and non-vector semantic deduplication (documents, graphs, blobs) adding further gains.
Lossless Where It Matters
Compression you can still query
Unlike sampling or downsampling, regime-based compression preserves everything needed for downstream queries — representative vectors, temporal bounds, drift, and stability metrics. Ratios scale with how stable your data actually is, not with a fixed dictionary, so the structure of your workload determines the result.

Segment Representation

Each compressed segment captures the full behavioral signature of a regime, preserving everything needed for downstream queries.

Segment Fields
What a segment contains
Each segment captures the complete behavioral signature of a regime, including representative vectors, temporal bounds, and statistical summaries. Time range and point count provide context, while drift and stability metrics enable downstream anomaly detection and forecasting.
Query Compatibility
Segments are first-class query targets — for every domain
Every domain you ingest — a genomics variant, a robot log, a financial tick, a sensor stream — collapses into the same compressed segment representation. Segments are not just storage artifacts; they are indexed in the temporal-semantic index and participate in all query types. KNN search matches against segment centroids. Trajectory similarity uses start/end vectors for alignment. Anomaly scoring uses drift metrics as features. Because the representation is domain-invariant, a query you write for one domain works unchanged on every other.
  • One unified representation for every ingested domain, not just vectors
  • Segment centroids indexed in the temporal-semantic index for similarity search
  • Start/end vectors enable trajectory reconstruction
  • Drift metrics power anomaly detection
  • Point counts inform confidence scoring

Crash-Safe Durability

Every write is durable before acknowledgment. The compression engine never loses data, even during unexpected failures.

Write Durability
Durability before compression
Raw vectors are durably persisted before entering the compression pipeline, with configurable persistence intervals (per-write, per-batch, or timed). Only after durable persistence does the ingest endpoint acknowledge the write.
Recovery
Automatic recovery
On restart, the compression engine automatically recovers from the last checkpoint, replays un-compressed vectors through the drift detector, and resumes normal operation. In-progress segments are fully reconstructed, ensuring no data loss and no duplicate segments.

Adaptive Threshold Tuning

Different entity types have fundamentally different behavioral characteristics. A single sensitivity threshold does not fit all.

How It Works
Per-entity-type adaptive thresholds
VectorScaleDB maintains per-entity-type drift statistics and automatically adjusts compression thresholds to achieve a target compression ratio. High-variance entity types (e.g., financial instruments) get wider thresholds to avoid over-segmentation. Low-variance types (e.g., infrastructure sensors) get tighter thresholds to capture subtle anomalies. You set the target; the engine tunes itself.
# Python: Ingest vectors and check compression stats
import vectorscaledb

client = vectorscaledb.Client("https://api.vectorscaledb.com")

# Ingest a batch of temporal vectors
response = client.ingest(
    entity_id="sensor-north-wing-03",
    entity_type="INFRASTRUCTURE",
    vectors=[
        {
            "timestamp": "2026-03-09T10:00:00.000Z",
            "embedding": [0.11, -0.22, 0.33, 0.44, -0.55, 0.66],
            "metadata": {"source": "vibration"}
        },
        {
            "timestamp": "2026-03-09T10:00:00.100Z",
            "embedding": [0.12, -0.21, 0.34, 0.43, -0.54, 0.67],
            "metadata": {"source": "vibration"}
        }
        # ... thousands more vectors
    ]
)

print(f"Ingested: {response.vectors_accepted} vectors")
print(f"Active segments: {response.active_segments}")

# Check compression statistics for this entity type
stats = client.compression.stats(entity_type="INFRASTRUCTURE")

print(f"Compression ratio:     {stats.compression_ratio}x")
print(f"Total vectors ingested: {stats.total_vectors}")
print(f"Total segments stored:  {stats.total_segments}")
print(f"Current sensitivity threshold: {stats.sensitivity_threshold:.4f}")
print(f"Avg segment duration:  {stats.avg_segment_duration}")

# Example output:
# Compression ratio:     847x
# Total vectors ingested: 12,400,000
# Total segments stored:  14,639
# Current sensitivity threshold: auto-tuned
# Avg segment duration:  4m 22s

Intelligent Write Elimination

A multi-stage compression pipeline that automatically identifies and eliminates redundant writes. Stable entities generate zero storage I/O — only meaningful state changes are persisted.

Smart Suppression
Only store what matters
VectorScaleDB's proprietary write elimination engine automatically detects when incoming data represents no meaningful change from the current state. Redundant observations are suppressed before reaching storage, dramatically reducing I/O and disk usage.
  • Automatic detection of stable vs. changing entities
  • Per-entity adaptive sensitivity
  • Configurable tolerance thresholds
  • Proprietary multi-stage pipeline
Impact
10-100x additional compression for steady-state entities
In typical deployments, the majority of entities are in a stable state at any given time. Intelligent write elimination removes these redundant observations entirely, leaving only genuinely changing entities for behavioral analysis. Combined with drift-based compression, effective ratios reach 10,000-100,000x for populations where most entities are idle.
  • Parked vehicles: 5-10x improvement over drift-only
  • Idle infrastructure sensors: 3-5x improvement
  • Satellites in stable orbit: 2-10x improvement
  • Configurable liveness timeout ensures no data is silently lost

Self-Managing Capacity

Zero-configuration resource adaptation. Deploy with any resource allocation — VectorScaleDB detects available memory and automatically sizes its compression pipeline.

Auto-Detection
Memory-aware budgeting
The compression engine detects container memory limits at startup and computes optimal segment capacity. No manual tuning required — allocate resources and VectorScaleDB adapts automatically.
Eviction
Watermark eviction
A three-tier watermark system automatically reclaims segment memory when load approaches capacity. Single-observation segments are evicted first, preserving active streaming workloads.
Recovery
Idle segment recovery
Segments that stop receiving data are automatically finalized after a configurable timeout. Batch-import patterns that create thousands of unique entities are handled gracefully without manual intervention.

Advanced Compression Features

Research-driven enhancements that push compression ratios further while maintaining query accuracy.

Quantization
Adaptive multi-bit quantization
Adaptive multi-resolution quantization tunes precision per entity, reducing segment storage by 4-16x on top of behavioral compression while preserving distance ranking accuracy for downstream KNN and anomaly queries.
Stationarity
Fast-path optimization for stable entities
Entities in a stationary regime are automatically promoted to an O(1) fast path that bypasses the full compression pipeline. No drift evaluation, no durable writes — just a lightweight heartbeat. When behavior resumes, the entity seamlessly re-enters the standard pipeline.
Adaptivity
Adaptive sensitivity tuning
Adaptive sensitivity thresholds automatically tune based on the intrinsic dimensionality of each entity's behavioral manifold. High-dimensional entities with complex behavior get wider boundaries; low-dimensional entities with predictable trajectories get tighter boundaries — all without manual tuning.

Related API Endpoints

Explore the full API reference for ingestion and compression-aware queries.

Related Capabilities

See 16,500x compression on your own data

Schedule a technical demo and watch your temporal vectors compress in real time.