新浪memcachedb官方文档

注意事项:

BerkeleyDB.4.8 的下载地址:http://download.oracle.com/berkeley-db/db-4.8.30.tar.gz

libevent 的下载地址:http://www.monkey.org/~provos/libevent-2.0.13-stable.tar.gz

memcachedb下载地址:http://memcachedb.googlecode.com/files/memcachedb-1.2.1-beta.tar.gz

在memcachedb编译过程中会报 libdb.so 未找到,需要加上 ./configure --with-bdb=/usr/local/BerkeleyDB.4.8

在运行 memcachedb 时也会报 libdb-4.8.so 和 libevent.so 未找到。

需要在运行前执行  

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/BerkeleyDB.4.8/lib:/usr/local/lib

最后在执行

memcachedb -p1212 -d -r -u root -f shopal01.db -H /mnt/data -N

------------------------------------------------------------

memcachedb安装备忘   http://hi.baidu.com/scalong/blog/item/10bbbc3158df2cbb5fdf0e14.html

----------------------------------------------------------------------------------------------------------------------------

最近想研究研究新浪的memcachedb,先从官方文档入手~~~

官方网站:http://memcachedb.org/

文档地址:http://memcachedb.org/memcachedb-guide-1.0.pdf

主要内容包括以下几点:

新浪memcachedb官方文档_第1张图片

 

Getting Started

1.What is Memcachedb?
"Memcachedb is a distributed key-value storage system designed for persistent."
A complete memcached, but *NOT* a cache solution(Memcached is good enough for cache.)
*NO* expiration(For memcache protocol compatible, still reserved, but we do nothing.)
Totally for persistent(Transaction, replication, we do our best to achieve persistent.)
2.Why Memcachedb?
We have MySQL, we have PostgreSQL, we have a lot of RDBMSs, but   why we need Memcachedb?
@RDBMS is slow
All they have a complicated SQL engine on top of storage. Our data   requires to be stored and retrieved damnable fast.
@Not concurrent well
When thousands of clients, millions of requests happens...
@But the data we wanna store is very small size!
Cost is high if we use RDBMS.
@Many critical infrastructure services need fast, reliable data storage and retrieval, but do not need the flexibility of dynamic SQL queries.
            -Index, Counter, Flags
            -Identity Management(Account, Profile, User config info, Score) 
            -Messaging
            -Personal domain name
            -meta data of distributed system
            -Other non-relatonal data
3.Memcachedb Features
@High performance read/write for a key-value based object
@Rapid set/get for a key-value based object, not relational. Benchmark will tell you the true later.
@High reliable persistent storage with transaction
@Transaction is used to make your data more reliable.
@High availability data storage with replication
@Replication rocks! Achieve your HA, spread your read, make your transaction durable!
@Memcache protocol compatibility
@Lots of Memcached Client APIs can be used for Memcachedb, almost in any language, Perl, C, Python, Java, ...
4.Supported Commands
Standard Memcache Commands
      -‘get’ Retrieval of one or multiple items
      -‘set’ "Store this data”
      -‘add’ "Store this data, but only if the server *doesn’t* already hold data for this key”
      -‘replace’ "Store this data, but only if the server *does* already hold data for this key”
      -‘delete’ deletes one item based a key
      -‘incr/decr’ Increment or decrement a numeric value. It’s atomic!
      -‘stats’ shows the status of current deamon. 'stats’, 'stats malloc’,'stats maps’
Private Commands
      -‘db checkpoint’ does a checkpoint manuanlly.
      -‘db archive’ removes log files that are no longer needed.
      -‘stats bdb’ shows the status of BerkeleyDB.
      -‘rep ismaster’ shows whether the site is a master.
      -‘rep whoismaster’ shows which site is a master.
      -‘rep set priority’ sets the priority of a site for electing in replication.
      -‘rep set ack policy’ sets ACK policy of the replication.
      -‘rep set ack timeout’ sets ACK timeout value of the replication .
      -‘rep set bulk’ Enable bulk transfer or not in replication.
      -‘rep set request’ sets the minimum and maximum number of missing log records that a client waits before requesting retransmission.
      -‘stats rep’ shows the status of Replication.
MDB In Action
1.Installation
libevent An event notification library that provides a mechanism to execute a callback function when a specific event occurs on a file descriptor or after a timeout has been reached. Now it supports /dev/poll, kqueue(2), event ports, select(2), poll(2) and epoll(4).
http://www.monkey.org/~provos/libevent/
BerkeleyDB The industry-leading open source, embeddable database engine that provides developers with fast, reliable, local persistence with zero administration.
http://www.oracle.com/technology/products/berkeley-db/db/index.html
新浪memcachedb官方文档_第2张图片
新浪memcachedb官方文档_第3张图片
2.Running Options Explained 
新浪memcachedb官方文档_第4张图片
3.Managing Daemon 
新浪memcachedb官方文档_第5张图片
启动:
停止:
新浪memcachedb官方文档_第6张图片
4.Commands Using telnet 
新浪memcachedb官方文档_第7张图片
新浪memcachedb官方文档_第8张图片
新浪memcachedb官方文档_第9张图片
Internals
新浪memcachedb官方文档_第10张图片
Replication 
新浪memcachedb官方文档_第11张图片
新浪memcachedb官方文档_第12张图片
新浪memcachedb官方文档_第13张图片
新浪memcachedb官方文档_第14张图片
新浪memcachedb官方文档_第15张图片
新浪memcachedb官方文档_第16张图片
新浪memcachedb官方文档_第17张图片
新浪memcachedb官方文档_第18张图片
新浪memcachedb官方文档_第19张图片
Managing and Monitoring
1.Managing DB Files
新浪memcachedb官方文档_第20张图片
新浪memcachedb官方文档_第21张图片
新浪memcachedb官方文档_第22张图片
新浪memcachedb官方文档_第23张图片
2.Monitoring 
新浪memcachedb官方文档_第24张图片 新浪memcachedb官方文档_第25张图片
新浪memcachedb官方文档_第26张图片
新浪memcachedb官方文档_第27张图片
新浪memcachedb官方文档_第28张图片
关键字:  memcachedb , 持久化

你可能感兴趣的:(memcached,文档,PostgreSQL,performance,library,Descriptor)