BeansDB简单了解

 

 

1. 使用算法hash, bucket, btree.

2. 独立存储节点,独立数据目录,bucket扩展

3. 可靠性保证:多机冗余(N=3),同步写(同时想多个节点写,写成功2个节点即可),依次读

4. 一致性(最终一致性)

用Hash tree的数据结构做节点数据同步

存储引擎:没有使用TokyoCabinet,BerkeleyDB,使用了Bitcask存储算法

通过对key进行重新编码将20字节编码为5个字节,来节省内存。

Leader/Follower模型实现请求和处理,实现网络异步,磁盘同步的处理。

 

感觉:

1. 使用到的算法需要很讲究,根据具体的发展来演化,算法对提高效率很重要

2. 请求处理和磁盘读写之间的结合非常影响整体的性能

3. 失掉临时一致性保证最终一致性

你可能感兴趣的:(BeansDB)