Overview
What is CouchDB?
Apache CouchDB is an HTTP + JSON document database with Map Reduce views and bi-directional replication. The Couch Replication Protocol is implemented in a variety of projects and products that span computing environments from globally distributed server-clusters, over mobile phones…
Easy to setup, flexible and highly available. All you need to do is relax on the CouchDB
CouchDB for analytics
CouchDB - The Hidden Gem of NoSQL Databases
CouchDB has a worse performance than AWS S3
CouchDB Fanboy
Fast and reliable replacement as day to day DB.
CouchDB, our data frenemy
Chillaxin
CouchDB: NOSQL is faster than SQL
- route planning for sales force
- a central farm and mobile devices replicating the content …
Video Reviews
Leaving a video review helps other professionals like you evaluate products. Be the first one in your network to record a review of CouchDB, and make your voice heard!
Pricing
What is CouchDB?
Apache CouchDB is an HTTP + JSON document database with Map Reduce views and bi-directional replication. The Couch Replication Protocol is implemented in a variety of projects and products that span computing environments from globally distributed server-clusters, over mobile phones to web browsers.
Entry-level set up fee?
- No setup fee
Offerings
- Free Trial
- Free/Freemium Version
- Premium Consulting / Integration Services
Would you like us to let the vendor know that you want pricing?
22 people also want pricing
Alternatives Pricing
What is MongoDB?
MongoDB (from "humongous") is an open source document-oriented database system developed and supported by 10gen. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like…
What is MarkLogic Server?
MarkLogic Server is a multi-model database that has both NoSQL and trusted enterprise data management capabilities. The vendor states it is the most secure multi-model database, and it’s deployable in any environment. They state it is an ideal database to power a data hub.
Product Details
- About
- Tech Details
What is CouchDB?
CouchDB Technical Details
Operating Systems | Unspecified |
---|---|
Mobile Application | No |
Comparisons
Compare with
Reviews and Ratings
(30)Attribute Ratings
Reviews
(1-10 of 10)CouchDB: If you're looking for a quick and dirty document oriented database management system (DDBMS) look no further!
- Document oriented database management! This alone is worth it: being able to describe your record in a JSON document, and then index it is HUGE.
- You're able to store the SAME document in multiple database instances, and due to CouchDB's engine, it is not a problem.
- FAST: Accessing JSON is programmatically easy to parse, and therefore makes it fast to query and view.
- Fan Following: If you have used CouchDB in a limited role, and you are not a DBA, then you will blindly fall in love with it. If you're an old DBA that is used to such artifacts as Cubes, then CouchDB may represent alien technology and thus be susceptible to being over-looked.
- CAN be slow: But this is true of any database: Some queries just take longer, and that's a fact of life.
- Uses an awkward engine: it uses an older version of the Javascript engine, which leaves you exposed to vulnerabilities (allegedly).
Easy to setup, flexible and highly available. All you need to do is relax on the CouchDB
- Serialized objects can be stored as unstructured data in JSON formatted documents highly desirable for Web and Mobile Applications.
- RESTful HTTP API provides flexible and seamless database operations.
- Scalable distributed high availability solution with replication capability for redundant data storage.
- NoSQL DB can become a challenge for seasoned RDBMS users.
- The map-reduce paradigm can be very demanding for first-time users.
- JSON format documents with Key-Value pairs are somewhat verbose and consume more storage.
CouchDB for analytics
- It can replicate and sync with web browsers via PouchDB. This lets you keep a synced copy of your database on the client-side, which offers much faster data access than continuous HTTP requests would allow, and enables offline usage.
- Simple Map/Reduce support. The M/R system lets you process terabytes of documents in parallel, save the results, and only need to reprocess documents that have changed on subsequent updates. While not as powerful as Hadoop, it is an easy to use query system that's hard to screw up.
- Sharding and Clustering support. As of CouchDB 2.0, it supports clustering and sharding of documents between instances without needing a load balancer to determine where requests should go.
- Master to Master replication lets you clone, continuously backup, and listen for changes through the replication protocol, even over unreliable WAN links.
- The HTTP content type headers aren't explicitly set to `application/json` when you make a request with your browser. They incorrectly respond with `text/plain`. This issue has been reported multiple times, and even had patches proposed, but so far they've been rejected.
- CouchDB doesn't support returning gzipped responses. You can get around this by using nginx in front of your CouchDB servers, but it could be faster if it was supported directly.
- Even in clustered mode, CouchDB nodes aren't able to share computed view data through replication. Each node needs to compute it on their own, which is a little wasteful.
CouchDB - The Hidden Gem of NoSQL Databases
We use CouchDB + Logstash + Elasticsearch to provide incredibly fast, powerful "search and do stuff" functionality for our customers. And they love it!
- Technically easy to use and integrate. REST API allows CouchDB to work with all technologies we use: node.js, lua, python, Elasticsearch, Logstash, etc. Our experience is that it is very robust and has been trouble-free to sue for over 5 years of heavy daily use.
- Using map/reduce allows us to quickly implement new views into our customer's data based on their needs. Easy to develop new features based on CouchDB's view/list/show mechanism. Functions are written in Javascript, which allows a broad range of our developer's to understand and contribute to code.
- NoSQL is wonderful for our data set. We support format-specific metadata for many thousands of different file types without the need to change schemas or anything else. We find that CouchDB allows us to focus more on our applications and customers and less on back-end design.
- Scales for us well. We have 100's millions of documents, many with binary attachments, stored in thousands of databases. Running on some fairly meager hardware distributed across multiple locations. There is not difference in performance today as when we had a few thousand documents when we started.
- Replication model is very nice and simple. And fast! We use it for obvious things like backups & redundancy. But we also use it for deploying software updates and for remote data colleciton from customer sites.
- CouchDB's documentation is a bit lacking. The technical bits are all there from Apache, but meaningful examples are hard to find. I would say the learning curve is a few months to get fluent. Not that CouchDB is too complex, but it has a design that takes some effort to understand and leverage. But for us the results have been more than worth it.
- CouchDB could use some better tools for managing & administrating itself. We have many thousands of CouchDB databases and had to invest a bit of development effort to be able to managing it all. But the REST API is simple, there are node.js modules like cradle, etc that minimze any challenges we have had.
- It is not widely used. Or if it is, not a lot of people are admitting to it! This may be a concern if you are looking for people that have CouchDB experience to work on your project.
Do your homework and understand the nature of your data and how it needs to be stored, accessed, and moved around. Make sure that NoSQL fits your problem. If it does, look at CouchDB. It isn't the most popular NoSQL database, but we love it.
CouchDB has a worse performance than AWS S3
- Can host on your own server
- Views can do complex things to show subsets of data
- Install was easy
- SUPER SLOW. We do tons of data and S3 and just using the file system were both way faster
- Using views is too complex
- Stores entire DB as 1 file, good luck when it becomes many TB
CouchDB Fanboy
- Ease of install and setup.
- Ease of syncing with another database. This was truly set it and forget it.
- The REST API to read data. No additional drivers are needed to work with CouchDB.
- Documentation is always helpful. Took a while to understand how indexing and views worked.
- User security was a bit hard to set up. Still don't believe we have it correct.
- It returns data in a non-standard way than we've found with other packages like MongoDB. Caused a few days of head scratching until we realized what we were looking at.
Fast and reliable replacement as day to day DB.
- Faster retrieval is the main key. When the data is denormalized in required format, the response time for queries without id columns are really fast in CouchDB.
- Replacing Oracle views to bucket structure provides great readability and flexibility to the data.
- Writing multiple views supporting the needs that will perform the action in an equal amount of time makes CouchDB the favourite database for query-like micro services.
- Views need to be more easier for creation.
- Documentation is the key for the development with multiple languages which this lacks.
Less Appropriate: Data structure is too complex to do denormalization and will require multiple hops to serve one request.
CouchDB, our data frenemy
- Lightweight NoSQL data store.
- Can be accessed dynamically using any RESTful-API compliant software.
- Saves data in documents based on JSON structures.
- Can view and manipulate data inside your browser.
- Futon (the in-browser views manager) is not up to par. It lacks tons of needed functionality (like deleting a group of documents in one action).
- CouchDB is NoSQL, which means accessing data needs views (written in JS only). Your power of accessing data is limited to the power of your written views (so no unified way to access any types of data documents like we see in structures SQL databases).
- CouchDB software adapters are limited. You mainly have a couch-rest library for rails apps.
If your product depends heavily of mining data, stay away from CouchDB, since it's not the best out there when it comes to data search capabilities. May be then it's worth more looking into other options like MongoDB.
Chillaxin
- Replication sync
- NoSql schema
- Small client side implementation (PouchDB)
- Better client side/mobile implemention
- Alway room for improvement for documentation
CouchDB: NOSQL is faster than SQL
- route planning for sales force
- a central farm and mobile devices replicating the content partitioned per user
- Syncrhonization
- Fast http interface
- Dead easy scalability
- Authentication
- Security (you must compile your own https capable instance)
- Project mango is not built in yet
- db front end for mobile applications
- apps with no intensive data entry requirements
- bulk operations
- apps with server side requirements
- complex queries