`
youngerbaby
  • 浏览: 111950 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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设计与实现

    beansdb是豆瓣开发的分布式存储,本文档描述了beansdb的存储设计与实现。

    Inside BeansDB

    BeansDB,豆瓣开源数据库存储系统,豆瓣

    beansdb-0.5.3-中文源注释[Original].rar

    这是本人花了几天的时间对 目前beansdb的源代码进行的分析,其中核心部分每一行都有详细注释。详细注释的文件有htree.c hstore.c bitcask.c record.c beansdb.c,其它部分注释的比较少。因为其它部分不会影响我们的...

    BeansDB代理和监控器Beanseye.zip

    Beanseye 是豆瓣用 Go 语言开发的一个 BeansDB 的代理和监控器。

    Inside-BeansDB.rar_inside

    BeansDB 是一个主要针对大数据量、高可用性的分布式KeyValue存储系统,采用HashTree和简化的版本号来快速同步保证最终一致性(弱),一个简化版的Dynamo

    cpp-BeansDB豆瓣公司另一个分布式键值存储系统

    BeansDB 是一个主要针对大数据量、高可用性的分布式KeyValue存储系统,采用HashTree和简化的版本号来快速同步保证最终一致性(弱),一个简化版的 Dynamo。 它采用类似memcached的去中心化结构,在客户端实现数据...

    ImageServer:使用Beansdb作为后端的图像服务

    beansdb -p 7901 -d -P/tmp/beansdb1.pid -L/tmp/beansdb1.log -H /home/gfreezy/beans/db/db1 -vv beansdb -p 7902 -d -P/tmp/beansdb2.pid -L/tmp/beansdb2.log -H /home/gfreezy/beans/db/db2 -vv 自定义设置。...

    已存档,请参阅GoBeansDB。-C/C++开发

    它采用了Amazon Dynamo的想法,然后进行了一些简化,以使其保持“简单愚蠢(KISS)”。 客户端写入N Beansdb节点,然后从它们的R中读取(解决冲突)。 不同节点中的数据通过cronjob中的哈希树进行同步。 它符合内存...

    豆瓣的架构和一些组件

    5月30日CTO俱乐部在北京举办的第99期主题活动的主讲嘉宾:洪强宁(豆瓣 首席架构师) 介绍豆瓣的技术架构和豆瓣自行开发的主要组件(如KV存储组件BeansDB,应用开发平台DAE,Python的Spark实现Dpark等)。...

    NoSQL数据库笔谈

    1. 序 2. 思想篇 CAP ...BeansDB 简介 更新 特性 性能 Nuclear 两个设计上的T ips Voldemort Dynomite Kai 未分类 Skynet Drizzle 比较 可扩展性 数据和查询模型 持久化设计 5. 应用篇 eBay 架构经验

    大数据云计算技术系列 NoSQL数据库学习教程(共71页).pdf

    4 BeansDB 4 简介 4 更新 4 特性 4 性能 4 Nuclear 4 两个设计上的Tips 4 Voldemort 4 Dynomite 4 Kai 4 未分类 4 Skynet 4 Drizzle 4 比较 4 可扩展性 4 数据和查询模型 4 持久化设计 5 应用篇 5 eBay 架构经验 5 ...

Global site tag (gtag.js) - Google Analytics