AtomSpace::DistributedStorageNode
Inherits AtomSpace::StorageNode < AtomSpace::AtomResolver < AtomSpace::Node < AtomSpace::Atom < Reference < Object
Storage node that participates in distributed clustering
Constructors
new(name : String, cluster : DistributedAtomSpaceCluster, local_storage_backend : String = "file", storage_path : String = "./distributed_storage", partition_strategy : PartitionStrategy = PartitionStrategy::HashBased, replication_strategy : ReplicationStrategy = ReplicationStrategy::PrimaryBackup, replication_factor : Int32 = 2, enable_compression : Bool = true, enable_cache : Bool = true, enable_partition_cache : Bool = true, cache_size : Int32 = 10000, partition_cache_size : Int32 = 50000, partition_cache_ttl : Time::Span = 5.minutes)
Instance methods
cache_stats
Get detailed cache statistics
clear_all_caches
Clear all caches
clear_cache
Clear the LRU cache
clear_partition_cache
Clear the partition info cache
close
Close connection to storage backend
cluster
cluster=(cluster : DistributedAtomSpaceCluster)
connected?
Check if connection is open
distribution_metrics
Get data distribution metrics
enable_cache
enable_cache=(enable_cache : Bool)
enable_compression
enable_compression=(enable_compression : Bool)
enable_partition_cache
enable_partition_cache=(enable_partition_cache : Bool)
fetch_atom(handle : Handle) : Atom | Nil
Fetch a single atom by handle
get_stats
Get storage statistics
Load all atoms into AtomSpace
open
Open connection to storage backend
partition_cache_stats
Get detailed partition cache statistics
partition_strategy
partition_strategy=(partition_strategy : PartitionStrategy)
rebalance_cluster
Rebalance data across cluster nodes
remove_atom(atom : Atom) : Bool
Remove an atom from storage
replication_factor
replication_factor=(replication_factor : Int32)
replication_strategy
replication_strategy=(replication_strategy : ReplicationStrategy)
store_atom(atom : Atom) : Bool
Store a single atom
Store all atoms from AtomSpace