Re:MongoDB Is Raising Another $100M
by otterley on Friday January 09, 2015 @07:19PM
(#8865296)
What can you do in CouchDB that you can't do in ElasticSearch?
[ Parent
| on HN ]
@vvoyer already mentioned replication. But there is another thing that couchdb is good at but most people don't use it/ know about it. It can interpret arbitrary erlang code.
Which means that you can write an erlang module and call it with couchdb show functions and have the benefit of a ready made http api for you.
A practical use of this would be to use mnesia as an in memory key-value store(for similar things that you would use redis for) and then call the functions in the module from a show function. All the benefits that you get with erlang you get with couchdb.
One of the killer features (for me at least) is user accounts management. In 3 http calls I have login-logout facility in my app ready. I can't tell you how impressed some of my clients are when I show them a V1 of their product in a couple of days.
If you configure your indexes properly, you get replication in ES for free: http://www.elasticsearch.org/guide/en/elasticsearch/guide/cu...
This is different from CouchDB’s peer-to-peer or master-less replication where nodes can live all over the world, be offline for arbitrary amounts of time or even be phones or web-browsers.
Re:MongoDB Is Raising Another $100M
by willholley on Saturday January 10, 2015 @04:38AM
(#8866394)
ES isn't really meant to be used as an operational datastore (although I appreciate some do use it that way). CouchDB provides strong durability and master-master replication. It's also very easy to sync changes from CouchDB (https://github.com/elasticsearch/elasticsearch-river-couchdb) to ES so they make a good complimentary pair. Use CouchDB for the raw data (where you want strong durability and write scalability) and use ES to search over it.
localDB.replicate.to(remoteDB); maybe http://pouchdb.com/guides/replication.html