由 n 个节点组成的仅内存中的 Aerospike 集群是否会自动跨节点复制数据,在这种情况下,是否可以保证不会将任何数据写入磁盘?
问问题
302 次
2 回答
2
由 n 个节点组成的仅在内存中的 Aerospike 集群会自动跨节点复制数据吗?
是的,假设您在谈论storage-engine memory
而不是storage-engine device
与data-in-memory true
.
在这种情况下,是否可以保证不会将任何数据写入磁盘?
您的记录不会写入磁盘。日志和 SMD(系统元数据)将被写入磁盘。
于 2015-04-02T19:59:49.637 回答
1
Aerospike 使用使用 RIPEMD160 的智能分区算法,该算法负责跨集群的均匀数据分布和复制。如果复制因子配置正确,它将在集群中正确/均匀地分布数据。
只有在 Persistence 模式下,Aerospike 才期望提供一个磁盘存储文件来将数据持久化到其中。如果 Aerospike 配置为 In-Memory 存储,则没有提供磁盘存储文件的选项,这实际上意味着它不会将数据持久化到磁盘。
命名空间测试复制 {
# memory-size 4G # 4GB of memory to be used for index and data
# replication-factor 2 # For multiple nodes, keep 2 copies of the data
# high-water-memory-pct 60 # Evict non-zero TTL data if capacity exceeds
# 60% of 4GB
# stop-writes-pct 90 # Stop writes if capacity exceeds 90% of 4GB
# default-ttl 0 # Writes from client that do not provide a TTL
# will default to 0 or never expire
# storage-engine memory # Store data in memory only
}
于 2015-05-06T04:29:14.870 回答