分布式key/value存储系统 BeansDB

BSD
Python
Linux
豆瓣
2009-12-30
红薯

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

它采用类似memcached的去中心化结构,在客户端实现数据路由。目前只提供了 Python版本的客户端,其它语言的客户端可以由memcached的客户端稍加改造得到。

主要特性包括:

  • 高可用:通过多个可读写的用于备份实现高可用;

  • 最终一致性:通过哈希树实现快速完整数据同步(短时间内数据可能不一致);

  • 容易扩展:可以在不中断服务的情况下进行容量扩展;

  • 高性能:异步IO和高性能的Key Value数据Tokyo Cabinet

  • 可配置的可用性和一致性:通过N,W,R进行配置;

  • 简单协议:Memcached兼容协议,大量可用客户端。

Python 操作示例:

from dbclient import Beansdb

# three beansdb nodes on localhost
BEANSDBCFG = {
    "localhost:7901": range(16),
    "localhost:7902": range(16),
    "localhost:7903": range(16),
}

db = Beansdb(BEANSDBCFG, 16)

db.set('hello', 'world')
db.get('hello')
db.delete('hello')

性能测试:

 $ beansdb -d 
 $ memstorm -s localhost:7900 -n 1000000 -k 10 -l 100 
   
  ---- 
  Num of Records : 1000000 
  Non-Blocking IO : 0 
  TCP No-Delay : 0 
   
  Successful [SET] : 1000000 
  Failed [SET] : 0 
  Total Time [SET] : 51.77594s 
  Average Time [SET] : 0.00005s 
   
  Successful [GET] : 1000000 
  Failed [GET] : 0 
  Total Time [GET] : 40.93667s 
  Average Time [GET] : 0.00004s
加载中

评论(1)

chenvii
chenvii
应该是把所有开源软件的名字做了索引,然后放在缓存中。碰到#这种格式#就正则匹配一下看看能不能在开源软件列表找到。如果能找到,就在替换成软件的ID以便前台展示应用链接。JSchartsBeansDBPHPMySQL,#Memcache#,Redis

豆瓣 BeansDB 卷土重来,发布 0.5.2 版本

感谢王海峰的报料: 距上次发布 beansdb-0.3.0 以来, 又过了一年. 经过一年的线上运营锤炼, 它一直在不断改进中, 到现在已经有了非常大的变化, 下面简单描述一下: 完全放弃了ToykoCabinet 作...

2010/12/23 21:45

没有更多内容

加载失败,请刷新页面

没有更多内容

1
回答
如何遍历beansdb数据库?有没有可用的C代码实现?

如何遍历beansdb数据库?有没有可用的C代码实现? 如果数据库记录量很大,且在不知道key的情况下,应该如何遍历数据库? 有知道的朋友,请帮忙解答一下...

2017/03/14 11:34
3
回答
BeansDB(豆瓣DB)更新

转自:http://www.douban.com/note/122507891/ 距上次发布 beansdb-0.3.0 以来, 又过了一年. 经过一年的...

2010/12/23 21:39
2
回答
java 保存图片、 beansdb

逛oschina很久了。不过昨天是第一次在上面发帖。问题很快解答了。是红薯大哥回答的。 。 现在项目里面有很多图片,大概300g的样子。 目前是直接存放在...

2012/03/09 10:21
3
回答
以前听说豆瓣开发的beanDB中用到了Tokyo Cabinet,不知是否属实。还请高人指教。

以前听说豆瓣开发的beanDB中用到了Tokyo Cabinet,不知是否属实。还请高人指教。

2011/10/07 14:00

没有更多内容

加载失败,请刷新页面

没有更多内容

豆瓣的基础架构

2014-04-10 InfoQ 本文根据InfoQ中文站对豆瓣洪强宁(@hongqn)的沟通交流整理而成。洪强宁介绍了豆瓣的架构和组件,并分享了豆瓣基础平台部的一些团队经验。文中截图来自洪强宁在2013年CTO...

2014/04/13 08:25
47
0
BeansDB(豆瓣DB)更新

转自:http://www.douban.com/note/122507891/ 距上次发布 beansdb-0.3.0 以来, 又过了一年. 经过一年的线上运营锤炼, 它一直在不断改进中, 到现在已经有了非常大的变化, 下面简单描述一下:...

2010/12/23 21:39
436
0
豆瓣网CTO洪强宁讲述网站架构变迁

豆瓣网CTO洪强宁讲述网站架构变迁 罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。洪强宁,2002年毕业于清华大学,现任北京豆瓣互动科技有限公司首席架构师。洪...

2015/04/20 11:44
79
0
优雅的Bitcask

优雅的Bitcask

2015/05/05 20:07
133
0
2010年10大热门的开源NoSQL服务器软件

2010年10大热门的开源NoSQL服务器软件 16人关注此资讯, 取消关注| 新闻投递 红薯 发布于: 2010年12月30日 ( 9评) NoSQL,就是反SQL,是一项全新的数据库革新运动,特别是在 2010 年得以迅猛...

2010/12/31 01:03
1K
0
Mongodb入门系列(1)——NoSQL及MongoDB的特性

NoSQL,是Not Only SQL的缩写,可不是no SQL哦。 NoSQL目前被国内外的很多公司在应用: 新浪微博 Redis Google BIgtable Amazon SimpleDB 淘宝数据平台 Tair 视觉中国网站 MongoDB youku运营...

2015/03/03 13:59
382
0
key value store

NoSQL

2014/06/18 12:58
29
0
2012数据库技术发展现状与未来趋势

近几年来,NoSQL运动如火如荼,不断有业内的巨头加入阵营,发布和推广NoSQL的相关产品,开拓应用场景。传统关系型数据库软件厂商也不甘寂寞,新产品、新版本、新特性不断发布,新官司、新收购...

2012/07/10 11:16
574
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部