Some questions..
Hello, I have some questions about Membase:
1. Is there a performance difference between the Windows, Red Hat & Ubuntu versions? If so, which is the most efficient?
2. Is there an example on how to use TAP protocol? I couldn't quite understand how to perform anything from the documentation.
3. How can I completely delete all data on a specific bucket?
4. When will performing "SQL-like" selects/updates will be available approximately?
Thanks,
Ron
Hey about TAP, we want at the very least to be able to iterate through all of our data and then perform our own temporary "SQL-like" calculations on them for statistics.
Another question, assuming for example we have 500,000 objects stored in Membase - are all loaded all the time into the RAM, or only when used are they loaded in a sort of a sliding time window and then unload when unused?
My current calculations show that for 1GB of RAM we can store about 5,000 users, which is not bad if it's for CCU, but if objects are in the RAM all the time, this can cause a serious issue for us as we'll need obscene amounts of RAM.
Yes, you can use TAP to iterate over all the keys.
Membase has an actively managed memory caching layer. All data is stored in RAM while there is still RAM available. As memory fills up, Membase will "eject" some data from RAM that has already been written to disk in order to make room for more. When a request comes in for one of these items, it will be retrieved from disk and stored in RAM until the ejection process needs space again.
You should read through our Wiki on topics such as "disk greater than RAM": http://www.couchbase.org/wiki/display/membase/Growing+Data+Sets+Beyond+M...
And our sizing guidelines: http://www.couchbase.org/wiki/display/membase/Sizing+Guidelines
Perry
thank you for the links, perry!
that actually helped me to solve some of the problems i didn't know how to deal with
Ron,
1 - There's really no performance difference. Linux (RedHat and Ubuntu) give us some better diagnostic tools and the operating systems generally use less RAM (leaving more for Linux) so that would be our recommendation, but we definitely support Windows as well (currently Server 2008 and Win 7)
2 - What are you trying to do with TAP? You can run the sample script located at /opt/membase/bin/ep_engine/management/tap.py to get an example of the output. Run it with ":11210" and it will print out all the data contained within the default bucket. There are also TAP drivers available for Java and Ruby on the TAP documentation page of the wiki: http://techzone.couchbase.com/wiki/display/membase/TAP+Protocol
3 - Currently, the only way to do this is for a Membase-type bucket is to either delete and recreate the bucket or shut the service down and delete the DB files. There is a bug in 1.6.x that will require you to delete the DB files after deleting (before recreating) but that is fixed in 1.7. For memcached-type buckets, we support the "flush_all" command which will also clear out all the data.
4 - Depending on what you want to accomplish, you will have some of this functionality in 2.0 (end of this summer) and increased functionality in 3.0. 2.0 will allow for map reduce and indexing/querying, while 3.0 will have a more robust query language. Can you give some more information on what exactly you want to do?
Perry
Forum support is great for free but sometimes you need a guaranteed response time and dedicated resources for your questions or issues.
Consider purchasing enterprise-level support from Couchbase: http://www.couchbase.com/products-and-services/overview
Call or email "sales -at- couchbase-dot- com" today!