Expand description
§OxiRS Cluster
Status: Beta Release (v0.1.0-beta.1) Stability: Public APIs are stable. Production-ready with comprehensive testing.
Raft-backed distributed dataset for high availability and horizontal scaling.
This crate provides distributed storage capabilities using Raft consensus with multi-region support, Byzantine fault tolerance, and advanced replication strategies.
§Features
- Raft Consensus: Production-ready Raft implementation using openraft
- Distributed RDF Storage: Scalable, consistent RDF triple storage
- Automatic Failover: Leader election and automatic recovery
- Node Discovery: Multiple discovery mechanisms (static, DNS, multicast)
- Replication Management: Configurable replication strategies
- SPARQL Support: Distributed SPARQL query execution
- Transaction Support: Distributed ACID transactions
§Example
use oxirs_cluster::{ClusterNode, NodeConfig};
use std::net::SocketAddr;
let config = NodeConfig {
node_id: 1,
address: "127.0.0.1:8080".parse()?,
data_dir: "./data".to_string(),
peers: vec![2, 3],
discovery: None,
replication_strategy: None,
region_config: None,
use_bft: false,
};
let mut node = ClusterNode::new(config).await?;
node.start().await?;
// Insert data through consensus
node.insert_triple(
"<http://example.org/subject>",
"<http://example.org/predicate>",
"\"object\"")
.await?;Re-exports§
pub use error::ClusterError;pub use error::Result;pub use failover::FailoverConfig;pub use failover::FailoverManager;pub use failover::FailoverStrategy;pub use failover::RecoveryAction;pub use health_monitor::HealthMonitor;pub use health_monitor::HealthMonitorConfig;pub use health_monitor::NodeHealth;pub use health_monitor::SystemMetrics;pub use consensus::ConsensusError;pub use discovery::DiscoveryError;pub use replication::ReplicationError;
Modules§
- adaptive_
leader_ election - Adaptive Leader Election Tuning
- advanced_
partitioning - Advanced Partitioning Strategies
- advanced_
storage - Advanced Storage Backend
- alerting
- Alerting System Framework
- auto_
scaling - Automated Horizontal Scaling
- backup_
restore - Backup and Restore
- circuit_
breaker - Circuit Breaker Pattern
- conflict_
resolution - Advanced Conflict Resolution for Distributed Operations
- consensus
- Consensus Protocol
- crash_
recovery - Comprehensive Crash Recovery
- data_
rebalancing - Automatic Data Rebalancing
- disaster_
recovery - Disaster Recovery System
- discovery
- Node Discovery
- distributed_
query - Distributed Query Processing Module
- distributed_
tracing - Distributed Tracing with OpenTelemetry Integration
- edge_
computing - Edge Computing Integration for Distributed RDF Storage
- enhanced_
node_ discovery - Enhanced Node Discovery
- enhanced_
snapshotting - Enhanced Snapshotting Module
- error
- Error types for the OxiRS cluster module
- failover
- Automated Failover System
- federation
- Advanced Federation Features
- health_
monitor - Health Monitoring and Failure Detection
- health_
monitoring - Enhanced Cluster Health Monitoring
- memory_
optimization - Memory optimization module for distributed RDF storage
- merkle_
tree - Merkle Tree Data Integrity Verification
- mvcc
- Multi-Version Concurrency Control (MVCC) implementation for OxiRS cluster
- mvcc_
storage - Version-aware storage backend for MVCC
- network
- Network Communication Layer
- node_
lifecycle - Node Lifecycle Management
- node_
status_ tracker - Node Status Tracking with State Machine
- operational_
transformation - Enhanced Conflict Resolution with Operational Transformation
- optimization
- Storage and Serialization Optimization Module
- partition_
detection - Network Partition Detection and Auto-Healing
- performance_
metrics - Comprehensive Performance Metrics
- performance_
monitor - Performance Monitoring and Validation for OxiRS Cluster
- raft
- Raft Consensus Implementation
- raft_
optimization - Raft Consensus Optimization
- raft_
profiling - Raft Consensus Profiling Integration
- raft_
state - Raft State Machine Implementation
- range_
partitioning - Range-Based Partitioning Module
- read_
replica - Read Replica Support
- region_
manager - Multi-Region Deployment Manager
- replication
- Data Replication
- replication_
lag_ monitor - Replication Lag Monitoring and Alerting
- rolling_
upgrade - Rolling Upgrade Support
- security
- Security and Authentication Module
- serialization
- Advanced Serialization Module
- shard
- Sharding with semantic-aware partitioning
- shard_
manager - Shard manager for coordinating distributed shards
- shard_
migration - Shard Migration Module
- shard_
routing - Shard routing for distributed query execution
- split_
brain_ prevention - Split-Brain Prevention
- storage
- Distributed storage implementation for Raft consensus
- strong_
consistency - Strong Consistency Guarantees
- tls
- TLS Communication and Encryption Module
- transaction
- Cross-shard transaction support with Two-Phase Commit (2PC) optimization
- transaction_
optimizer - Optimizations for Two-Phase Commit protocol
- visualization_
dashboard - Visualization Dashboard
- zero_
downtime_ migration - Zero-Downtime Migrations
Structs§
- Cluster
Node - Cluster node implementation
- Cluster
Status - Comprehensive cluster status information
- Distributed
Store - Distributed RDF store (simplified interface)
- Edge
Computing Config - Edge computing configuration
- Multi
Region Config - Multi-region deployment configuration
- Node
Config - Cluster node configuration
- Region
Status - Multi-region status information