What kind of client do I use with membase?
membase is compatible with existing
memcached clients. If you have a
memcached client already, you can just point
it at membase. Regular testing is done with
spymemcached (the Java client),
libmemcached and fauna (Ruby client). See the
Client
Libraries page
What is a "vbucket"?
An overview from Dustin Sallings is presented here: memcached vbuckets
What is a TAP stream?
A TAP stream is a when a client requests a stream of item updates from the server. That is, as other clients are requesting item mutations (for example, SET's and DELETE's), a TAP stream client can "wire-tap" the server to receive a stream of item change notifications.
When a TAP stream client starts its connection, it may also optionally request a stream of all items stored in the server, even if no other clients are making any item changes. On the TAP stream connection setup options, a TAP stream client may request to receive just current items stored in the server (all items until "now"), or all item changes from now onwards into in the future, or both.
Trond Norbye's written a blog post about the TAP interface. See Blog Entry.
What ports does membase Server need to run on?
The following TCP ports should be available:
8091 — GUI and REST interface
11211 — Server-side Moxi port for standard memcached client access
11210 — native membase data port
21100 to 21199 — inclusive for dynamic cluster communication
What hardware and platforms does membase Server support?
Membase Server supports Red Hat (and CentOS) versions 5 starting with update 2, Ubuntu 9 and and Windows Server 2008 (other versions have been shown to work but are not being specifically tested). There are both 32-bit and 64-bit versions available. Community support for Mac OS X is available. Future releases will provide support for additional platforms.
How can I get membase on (this other OS)?
The membase source code is quite portable and is known to have been built on several other UNIX and Linux based OSs. See Consolidated sources.
Can I query membase by something other than the key name?
Not directly. It's possible to build these kinds of solutions atop TAP. For instance, via Cascading it is possible to stream out the data, process it with Cascading, then create indexes in Elastic Search.
What is the maximum item size in membase?
The default item size for membase buckets is 20 MBytes. The default item size for memcached buckets is 1 MByte.
How do I the change password?
shell> membase cluster-init -ccluster_IP:8091 -ucurrent_username-pcurrent password--cluster-init-username=new_username--cluster-init-password=new_password
How do I change the per-node RAM quota?
shell> membase cluster-init -c \cluster_IP:8091 -uusername-ppassword--cluster-init-ramsize=RAM_in_MB
How do I change the disk path?
Use the membase command-line tool:
shell> membase node-init -ccluster_IP:8091 -u \username-ppassword--node-init-data-path=/tmp
Why are some clients getting different results than others for the same requests?
This should never happen in a correctly-configured membase cluster, since membase ensures a consistent view of all data in a cluster. However, if some clients can't reach all the nodes in a cluster (due to firewall or routing rules, for example), it is possible for the same key to end up on more than one cluster node, resulting in inconsistent duplication. Always ensure that all cluster nodes are reachable from every smart client or client-side moxi host.