Couchbase announced changes to CouchDB distribution:
http://blog.couchbase.com/couchbase-2011-year-review
CouchBase Single server has GeoCouch integration, is there an alternative to get GeoCouch support on CouchDB?
You don't have to use Couchbase for it. You can use GeoCouch with Apache CouchDB. It currently does on; work with CouchDB 1.1.x, but I'll update it to work with 1.2.x as well.
There is the refuge project, which is open source, has spatial search (fork of geocouch), based on CouchDB trunk, and maintained by one of the CouchDB contributors.
http://refuge.io/
https://github.com/refuge/refuge
Currently there is no 'binary' release, but I have found it very easy to build.
Hope that helps.
Related
I have an Angular6-App with a PouchDB 7 where I plan a replication to a CouchDB-Server. The current option is a CouchDB-Server in version 1.6 only.
So the question is, if a replication form PouchDB in version 7 to this CouchDB in version 1.6 can work (for a two-way-replication so that different Angular-Clients can exchange changes over this CouchDB-Server).
I can't find any compatibillity list in the net to this topic...
Some hint's would be apprieciated.
CouchDB and PouchDB use the same replication protocol. There are some optimizations introduced in CouchDB 2.x, but PouchDB 7 will still be able to sync without a problem in CouchDB 1.6.
However, you absolutely should not use CouchDB 1.6!! 1.6 had some very serious security flaws, which can essentially allow anyone to execute arbitrary code on your server. These were fixed in 1.7 and later. So please upgrade to at least 1.7.1 immediately!
I have installed couchdb 2.0 on cent OS. I was wondering if any additional tools are needed to store and query geojson documents ? Do I have to install geocouch as well ? If so, how do I install geocouch over couchdb 2.0 ?
Despite GeoCouch is part of the CouchDB 2.0 documentation, its developer's website states it does not yet work with CouchDB 2.0.
Instead you may want to have a look at Cloudant Lab's easton and hastings.
As almereyda answered Cloudant Lab's eastong and hastings will let you do geospatial indexes for CouchDB 2.0+. Since it was pretty hard to get up and running with those tools I created a Docker image for that.
You can find the docker image at https://hub.docker.com/r/kontrollanten/couchdb-hastings/. You should be up and running within some minutes. Be aware that huge databases may take some time for the first query (since CouchDB is creating the indexes upon query).
I am currently learning about CouchDB and PouchDB. Is it correct to assume that from CouchDB's perspective PouchDB is a normal CouchDB offline-client (i.e. it follows CouchDB's proprietary replication protocols), albeit one that is implemented in JavaScript instead of Erlang?
Small correction: CouchDB's protocol is by no means proprietary (see replication.io for the spec) and has several independent implementations - CouchDB, PouchDB, Couchbase Sync Gateway, Cloudant, rcouch, Couchbase Mobile, etc.
Otherwise yes, PouchDB is just another CouchDB. In fact PouchDB Server is functionally the same as CouchDB 1.6 in every way, down to the HTTP interface, the Fauxton UI, etc.
From CouchDB's perspective there is no difference between replicating with PouchDB or replicating with another CouchDB instance. PouchDB follows the standard replication protocols, and in fact is tested against the same test suite that CouchDB uses.
It is fourth day already since I've started diving into CouchDB specifically Membase (Couchbase), Membase seems really interesting technology for me due to simplicity of administration, their interface is as magical as informal and simple. The way you add/remove buckets is just fun.
Unfortunately I didn't managed to launch their .NET client on Mac OS X (on Windows it worked fine) and also couldn't find out the way to perform Map/Reduce queries so it seemed that Membase Server technology is little simpler then pure CouchDB. Anyway everything changed until recently I've stumbled upon the diagram that describes their technology:
The Image is explained here
It seems that "Couchbase server (Currently Membase Server)" plays role of some sort of Master database which isn't accessed directly, and also there is "Couchbase Single Server" which plays the role of client database which has all the features of CouchDB (such as Map/Reduce queries)
If so then how is "CouchSync" is performed? Is it possible to perform this "CouchSync" from code?
Before I describe to you how CouchSync works I think it would be beneficial for me to describe how the Couchbase product history evolved. This will make things more clear. About a year ago, Membase Server was first released. The idea behind Membase Server was to provide memcached with persistence (the persistence layer was sqlite) and simple to use clustering technology. Then about 6 months ago the companies Membase and CouchOne merged to form Couchbase. Directly after the merger Couchbase continued to provide Membase Server, but now also provided Couchbase Single Server. Couchbase Single Server is essentially CouchDB with GeoCouch packaged in by default along with many major performance improvements. On July 29th, 2011 Couchbase announced a developer preview of the first version of Couchbase Server. Couchbase Server is the combination of Couchbase Single Server and Membase. Basically what Couchbase did was replace sqlite with CouchDB as the persistence engine. So this basically caused the product to go from being a key-value store to a document store database.
So what is CouchSync?
CouchSync is basically what Couchbase is calling CouchDB replication. It is very simple to setup in both Couchbase Server, Couchbase Single Server and in CouchDB. All it is is a changes feed that is streamed from one server to another.
A note on using Membase. Since Membase doesn't provide any of the CouchDB support it doesn't actually fit into this diagram and therfore doesn't support CouchSync. You will actually want to look at the developer preview of Couchbase Server since this product has both Membase and CouchDB features. In the meantime if you are looking for something more stable to test then take a look at Couchbase Single Server as it will be able to give you a feel for some of the features (like CouchSync) that are in Couchbase Server
Also, the point of this diagram is to show that you can do CouchSync across the entire Couchbase product line. You don't need to go through Couchbase Single Server to do CouchSync to Couchbase Mobile. You can do CouchSync directly from Couchbase Server.
Is it possible to perform CouchSync from code?
No. It's easier than that. You set it up in the web ui.
Hope that helps.
[EDIT]:
This diagram is now outdated. Couchbase the company no longer supports Couchbase Single Server (which is it's version of CouchDB). The CouchSync feature will now sync directly with Couchbase server.
I wonder what the difference is between Cloudant and CouchOne.
Good question. My quick answer:
CouchOne is lead by Damien Katz, the originator of the CouchDB Apache project. CouchOne is now focused squarely on scaling couchdb down to run efficiently on mobile devices. The goal is to leverage the p2p replication model of CouchDB to solve the sync problem on mobile.
Cloudant is founded by 3 PhD's from MIT with big-data backgrounds. Cloudant is focused squarely on scaling CouchDB up (see the open-source bigcouch project) to power data-intensive applications in the cloud. Cloudant provides scalable data as a service for high-rate, large volume online transaction processing, search and analytics.
Thus there is a real opportunity to see the CouchDB API flourish at two tremendously different scales to provide the application developer a single platform that runs on the mobile and in the cloud, with seamless data (and CouchApp!) migration between the two.
Update (2015)
Currently, according to Professional Services on CouchDB Wiki, there are 3 CouchDB hosting services:
Smileupps
Cloudant
Iris Couch
Since this question is specifically about Cloudant and CouchOne, here's more info:
Cloudant was bought by IBM in March 2014 - see IBM Completes Acquisition of Cloudant - and continues to operate.
According to Wikipedia: "Cloudant is an IBM software product, which is primarily delivered as a cloud-based service. Cloudant is an open source non-relational, distributed database service of the same name that requires zero-configuration. Cloudant is based on the Apache-backed CouchDB project and the open source BigCouch project." (source)
CouchOne is not available any more. As of June 2015 http://www.couchone.com/ gives 404 Not Found (since at least March 2013), #couchone on Twitter had last tweets in May 2011 and says that "CouchOne is now Couchbase, Inc." - but please note that contrary to some marketing material the Couchbase Server is not a continuation of CouchDB - it has a different code base, licensing, philosophy, features, data and protocols.
For more info on this and an explanation of differences between things like CouchDB, CouchIO, CouchOne, Couchbase, Couchbase Server, Couchbase Mobile, Couchbase Lite, CouchApps, BigCouch, Touchbase, Membase, Memcached, MemcacheDB etc.- see the answer that I wrote to: Difference between CouchDB and Couchbase in March 2013.
Original answer (2011)
It's a late answer to a somewhat dated thread but it's a number one Google hit for "couchone and cloudant" so here's a little update.
Few days ago CouchOne announced a merge with Membase to form a new company called Couchbase. Membase is known eg. for the database behind FarmVille by Zynga so it's a mature large scale NoSQL solution and Couchbase is planned to be a technology scaling from smartphones to large data center clusters.
Cloudand on the other hand started from large scale (see Mike's comments) and while you can get a large scale solutions for more than $1000/mo, you can also get a 2GB database for $15/mo and even a smaller one for free.
There is a difference in managing the databases, CouchOne uses just Futon right now and Cloudant has a custom web interface where you can set up shared databases, virtual hosts, custom domains etc.
All in all Cloudant seems to be more mature right now and we have to see how the Couchbase develops.
The bottom line is that both CouchOne and Cloudant can be tried for free so it's probably best to try out both and see what best suits your needs.
I would also note that CouchOne/CouchBase supports the GeoCouch extensions, while Cloudant does not. Important if you want to do bounding box queries.