github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

etolabo / kumofs

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 127
    • 4
  • Source
  • Commits
  • Network (4)
  • Issues (0)
  • Downloads (4)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Switch Branches (1)
    • master ✓
  • Switch Tags (2)
    • kumofs-0.3.1
    • kumofs-0.3.0
  • Branch List
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

kumofs is a scalable and highly available distributed key-value store. — Read more

  Cancel

  Cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

update doc: LD_LIBRARY_PATH 
frsyuki (author)
Mon Feb 22 00:54:21 -0800 2010
commit  4d0e2bee312d4b3e52564944581094cbda9a07ef
tree    605873d0d583deb79b6cd3b748a7938469d8cac7
parent  4f2bfa5d311f69984df492b2b39d57f200cbf31e
kumofs /
name age
history
message
file AUTHORS Thu Nov 27 09:31:40 -0800 2008 import rewritten code git-svn-id: svn+ssh://co... [frsyuki]
file COPYING Wed Oct 14 09:27:41 -0700 2009 fix copyright notices git-svn-id: svn+ssh://co... [frsyuki]
file ChangeLog Tue Jan 19 22:52:34 -0800 2010 version 0.3.1 [frsyuki]
file INSTALL Wed Mar 11 23:54:13 -0700 2009 framework-style new codebase git-svn-id: svn+s... [frsyuki]
file Makefile.am Mon Jan 18 02:40:06 -0800 2010 fix Makefile.am [frsyuki]
file NEWS Thu Nov 27 09:31:40 -0800 2008 import rewritten code git-svn-id: svn+ssh://co... [frsyuki]
file NOTICE Wed Oct 14 09:27:41 -0700 2009 fix copyright notices git-svn-id: svn+ssh://co... [frsyuki]
file README.md Tue Jan 19 22:28:39 -0800 2010 doc: fix typo (Jun Kuriyama++) [frsyuki]
file bootstrap Fri Jul 31 02:55:10 -0700 2009 リビジョン表示をsvnからgit向けに変更 git-svn-id: svn+ssh://co... [frsyuki]
file configure.in Thu Jan 21 00:21:50 -0800 2010 configure.in: check __sync_* atomic operations [frsyuki]
directory doc/ Mon Feb 22 00:54:21 -0800 2010 update doc: LD_LIBRARY_PATH [frsyuki]
directory rt/ Wed Jan 06 23:19:15 -0800 2010 rt/*.rt: default LOOP_RESTART=3 git-svn-id: sv... [frsyuki]
directory src/ Thu Jan 28 16:22:30 -0800 2010 kazuhiki/kazuhiki.h: include sys/types.h (@kam... [frsyuki]
directory test/ Fri Jul 31 02:14:29 -0700 2009 test/* 整理 git-svn-id: svn+ssh://code.etolabo.o... [frsyuki]
README.md

kumofs

Overview

kumofs is a scalable and highly available distributed key-value store.

  • Data is replicated over multiple servers.
  • Data is partitioned over multiple servers.
  • Extreme single node performance; comparable with memcached.
  • Both read and write performance got improved as servers added.
  • Servers can be added without stopping the system.
  • Servers can be added without changing the client applications.
  • The system does not stop even if one or two servers crashed.
  • The system does not stop to recover crashed servers.
  • Scalable from 2 to 60 servers. (more than 60 servers has not be tested yet)
  • Optimized for storing a large amount of small data.
  • memcached protocol support. (get, set and delete only; expiration time and flags must be 0)

See following URLs for more details:

  • document, English
  • document, Japanese
  • blog, Japanese
  • source code

Installation

Following libraries are required to build kumofs:

  • linux >= 2.6.18
  • g++ >= 4.1
  • ruby >= 1.8.6
  • Tokyo Cabinet >= 1.4.10
  • MessagePack for C++ >= 0.3.1
  • MessagePack for Ruby >= 0.3.1
  • zlib
  • libcrypto (openssl)

Configure and install in the usual way:

$ ./bootstrap  # if needed
$ ./configure
$ make
$ sudo make install

Example

This example runs kumofs on 6-node cluster. Run kumo-manager on mgr1 and mgr2, kumo-server on svr1, svr2 and svr3, then run kumo-gateway on cli1.

[on mgr1]$ kumo-manager -v -l mgr1 -p mgr2
[on mgr2]$ kumo-manager -v -l mgr2 -p mgr1
[on svr1]$ kumo-server  -v -l svr1 -m mgr1 -p mgr2 -s /var/kumodb.tch
[on svr2]$ kumo-server  -v -l svr2 -m mgr1 -p mgr2 -s /var/kumodb.tch
[on svr3]$ kumo-server  -v -l svr3 -m mgr1 -p mgr2 -s /var/kumodb.tch
[       ]$ kumoctl mgr1 attach
[on cli1]$ kumo-gateway -v -m mgr1 -p mgr2 -t 11211
[on cli1]$ # use memcached client on 11211/tcp

See documents for details.

Run on single host

This example runs kumofs on single host.

[localhost]$ kumo-manager -v -l localhost
[localhost]$ kumo-server  -v -m localhost -l localhost:19801 -L 19901 -s ./kumodb1.tch
[localhost]$ kumo-server  -v -m localhost -l localhost:19802 -L 19902 -s ./kumodb2.tch
[localhost]$ kumo-server  -v -m localhost -l localhost:19803 -L 19902 -s ./kumodb3.tch
[localhost]$ kumoctl localhost attach
[localhost]$ kumo-gateway -v -m localhost -t 11211
[localhost]$ # have fun with memcached client on 11211/tcp

License

Copyright (C) 2009-2010 FURUHASHI Sadayuki

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

See also NOTICE file.

Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server