beansdb 结构简单描述

来源:互联网 发布:淘宝入驻天猫要多少钱 编辑:程序博客网 时间:2024/06/06 19:55

简单说明:

           1:beansdb是豆瓣的key-value分布式系统,类似memcache之类的。

           2:beansdb可以部署在多个节点上。由proxy集中管理。方便简单。


beansdb结构:

Hstore{

    (节点)0 ~ (节点E);

    每个节点默认16开,即0~F号biscask;

    每个biscask有一个hash tree做索引;

}

ps:

     上面的是简单的默认结构。

     实际可以这样:

           height = 1,path下有16个子目录:0~f,每个目录下一个bitcask,共16个bitcask
           height = 2,path下有2级子目录:0/0~f/f,共256个bitcask
           height = 3, path下有3级子目录:0/0/0~f/f/f,共16*16*16个bitcask
           每个bitcask最多对应256个bucket,每个bitcask有一个htree


想清楚了解结构的情况。可以看源码的main函数和hs_open函数。

(谢谢网友Songsong Lei的指正


补充

    bucket: 一个 bucket 是 beansdb 中的一个哈希区间,在服务器端存储时会是一个目录,里面是一个bitcask,内存中会有一棵哈希树。

    数据路由 数据路由是可以在客户端实现(就不需要代理了),也可以在中间代理层实现,根据需要来调整部署。代理层的好处是可以简化配置管理。

2 0