-
Notifications
You must be signed in to change notification settings - Fork 4
/
README
38 lines (34 loc) · 1.43 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
What is Beansdb?
*******************
Beansdb is a distributed key-value storage system designed for large scale
online system, aiming for high avaliablility and easy management. It took
the ideas from Amazon's Dynamo, then made some simplify to Keep It Simple
Stupid (KISS).
The clients write to N Beansdb node, then read from R of them (solving
conflict). Data in different nodes is synced through hash tree, in cronjob.
Beansdb base on memcached and Tokyo Cabinet, with efficient persistant
hash tree (called Hex Tree) support.
It conforms to memcache protocol (not completed, see below), so any memcached
client can interactive with it without any modification.
Beansdb is heavy used in http://www.douban.com/, stored images, mp3, text
fields and so on, see benchmark below.
Any suggestion or feedback is welcome.
Features
********
* High availability data storage with multi readable and writable repications
* Soft state and final consistency, synced with hash tree
* Easy Scaling out without interrupting online service
* High performance read/write for a key-value based object
* Configurable availability/consistency by N,W,R
* Memcache protocol compatibility
Supported memcache commands
***************************
get, gets
set(with version support)
delete
stats
Private commands
****************
get @xxx, list the content of hash tree, such as @0
get ?xxx, get the meta data of key.
For more info, see: http://beansdb.googlecode.com/