We have to implement a sizable-scale key-value store (let us say as much as 500GB) and BerkeleyDB appeared like it may be a good option, but we would love so that it is network accessible. This brought me to check out memcachedb. I've not found much on the internet where people discuss actual encounters with memcachedb, so my questions are, if you have used memcachedb:
- can you recommend utilizing it for any large k-v store?
- otherwise, why don't you?
Thanks ahead of time!
After I was attempting to use BerkeleyDB (Which memcachedb apparrently uses like a after sales), I discovered the place speed to become atrociously slow. It truly was useless for the reason that respect. My place pattern and configuration was fairly standard, and so i have no clue whether it's only a general weakness of BDB, or something like that strange with my test setup.
One choice to consider could be CouchDB. If you want to scale really large, almost always there is HBase or Hypertable, that are both Bigtable clones.
I have tried personally memcached a bit in a single of my projects. I believe it is a extremely powerful and scalable caching platform. By altering small designs, you are in a position to replicate the cached objects in several server. Facebook uses memacached for his or her in-memory storage and it is a massive entity on the internet. This provides a thumb up for memcahced.
The only issue I faced in implementation is the fact that does not instantly accept objects to keep. You will have to serialize the objects before storing which might be a bit confusing at the start.
FYI, there's a nother caching platform created by Microsoft known as: Velocity. You may want to have a look onto it: http://www.microsoft.com/downloads/details.aspx?FamilyId=B24C3708-EEFF-4055-A867-19B5851E7CD2&displaylang=en