Module tiering

Module tiering 

Source
Expand description

§Hot/Warm/Cold Tiering System for Vector Indices

This module provides a production-grade tiering system that automatically manages vector indices across different storage tiers based on access patterns, size, and performance requirements.

§Tiering Strategy

  • Hot Tier: In-memory, frequently accessed indices (sub-millisecond latency)
  • Warm Tier: Memory-mapped or SSD-backed indices (millisecond latency)
  • Cold Tier: Compressed, disk-based indices (second latency, loaded on demand)

§Features

  • Automatic tier promotion/demotion based on access patterns
  • Configurable policies (LRU, LFU, cost-based, adaptive)
  • Integration with monitoring and analytics
  • Support for gradual tier transitions
  • Predictive tier management using ML
  • Multi-tenant resource allocation

§Example

use oxirs_vec::tiering::{TieringManager, TieringConfig, TieringPolicy};

let config = TieringConfig {
    hot_tier_capacity_gb: 16.0,
    warm_tier_capacity_gb: 128.0,
    cold_tier_capacity_gb: 1024.0,
    policy: TieringPolicy::Adaptive,
    ..Default::default()
};

let mut manager = TieringManager::new(config)?;

// Add an index
manager.register_index("embeddings_v1", index)?;

// Access triggers automatic tier management
let results = manager.query_index("embeddings_v1", query_vector, k)?;

// Check tier statistics
let stats = manager.get_tier_statistics();
println!("Hot tier: {:.2}% utilized", stats.hot_tier_utilization * 100.0);

Re-exports§

pub use config::TieringConfig;
pub use manager::TieringManager;
pub use metrics::TierMetrics;
pub use policies::TierTransitionReason;
pub use policies::TieringPolicy;
pub use types::IndexMetadata;
pub use types::StorageTier;
pub use types::TierStatistics;

Modules§

access_tracker
Access pattern tracking for tiering decisions
config
Configuration for hot/warm/cold tiering system
manager
Main tiering manager that coordinates tier operations
metrics
Metrics collection for tiering system
policies
Tiering policies for index placement and transition decisions
storage_backends
Storage backends for different tiers
tier_optimizer
Tier optimization using ML and statistical analysis
types
Core types for hot/warm/cold tiering system