Questions tagged [couchdb]

Apache CouchDB, commonly referred to as CouchDB, is an open source database that focuses on ease of use and on being "a database that completely embraces the web". It is a NoSQL database that uses JSON to store data, JavaScript as its query language using MapReduce and HTTP for an API. One of its distinguishing features is easy replication.

Apache CouchDB, commonly referred to as CouchDB, is an open source database that focuses on ease of use and on being "a database that completely embraces the web". It is a NoSQL database that uses JSON to store data, JavaScript as its query language using MapReduce and HTTP for an API. One of its distinguishing features is easy replication.

Unlike in a relational database, CouchDB does not store data and relationships in tables. Instead, each database is a collection of independent documents. Each document maintains its own data and self-contained schema. An application may access multiple databases, such as one stored on a user's mobile phone and another on a server. Document metadata contains revision information, making it possible to merge any differences that may have occurred while the databases were disconnected.

CouchDB implements a form of Multi-Version Concurrency Control (MVCC) in order to avoid the need to lock the database file during writes. Conflicts are left to the application to resolve. Resolving a conflict generally involves first merging data into one of the documents, then deleting the stale one.

Other features are ACID semantics with eventual consistency, MapReduce, incremental replication and fault-tolerance. Administration is supported with a built-in web application called Futon.

(from Wikipedia)

32 questions
24
votes
4 answers

What does horizontal scaling mean?

In database context, I have come across horizontal scalability as one of the advantages of the NOSQL databases. What does the term mean? CouchDB on Wikipedia NoSQL on Wikipedia How would it compare to vertical scaling?
Lazer
  • 3,361
  • 15
  • 43
  • 53
18
votes
2 answers

CouchDB vs MongoDB

Evaluating document-oriented storage, what are the pros and cons of CouchDB vs MongoDB?
Abie
  • 885
  • 1
  • 8
  • 9
17
votes
1 answer

How do databases store index key values (on-disk) for variable length fields?

Context This question pertains to the low-level implementation details of indexes in both SQL and NoSQL database systems. Actual structure of the index (B+ tree, hash, SSTable, etc.) is irrelevant as the question pertains specifically to the keys…
Riyad Kalla
  • 338
  • 2
  • 7
12
votes
3 answers

CouchDB and document versioning

I'm currently working on a wiki-esque application using CouchDB and am trying to implement a document versioning scheme. The way I see it there are two ways of doing this: Store each version as a separate document Store older versions as…
James Adam
  • 221
  • 2
  • 5
7
votes
1 answer

How to handle "reference tables" in CouchDB?

What's the best way to handle "reference tables", tables that contain static data, for example a list with various kinds of ingredients for food? Multiple documents, one for each ingredient One document per reference { "_id" = "ingredients", …
Patrick
  • 183
  • 6
5
votes
2 answers

Stopping a running compaction process

I need to run compaction on a production CouchDB instance, that may not have had compaction run on it before. If compaction puts too much additional load on the CouchDB instance, is it possible to safely kill the compaction process? If so, how?
Chris Snow
  • 153
  • 7
4
votes
2 answers

NoSQL, CouchDB vs. CouchBase, What should i do?

I started to encounter some issues on my production site, when having a web page that needs to load a very big ResultSet (currently coming from relational database, MySQL) it takes forever, and problem these result sets are only getting bigger and…
Adihoch
  • 61
  • 1
  • 5
4
votes
1 answer

SQLite or CouchDB for Locational Data Mining Project?

I am currently designing a Data Mining Project where I am going to harvest rather large volumes of Twitter data in order to analyse locational data (geocoded tweets) and do some machine learning with it. What I want to do: I'll have some scripts…
grssnbchr
  • 143
  • 4
3
votes
1 answer

Can a Couchbase application work with no network connection (like CouchDB)?

I'm building an application where users running android tablets will have to be able to write to a database (running on their local device) with NO network connection and sync using peer-to-peer replication (through a USB connection or possibly…
Avi
  • 33
  • 2
3
votes
1 answer

Does document "depth" affect CouchDB performance?

I have a project where it is very tempting to use a deeply nested collection of data. But how does that affect performance? Are there any reasons why I should avoid doing this? I'm talking about lists in lists in lists, etc.
jo-erlend
  • 131
  • 1
3
votes
1 answer

SQL equivalent to CouchDB for 2 way replication

Are there any SQL server variants (i.e MySQL, Postgresql etc) that handle replication as well as couch db does and offers client side replication (2 way)? I'm in the early stages of my app which is currently using PouchDB / CouchDB as a key point…
webnoob
  • 605
  • 2
  • 6
  • 18
2
votes
1 answer

Requests to local CouchDB have 40ms latency

Requests to a CouchDB instance on the same machine have about 40ms latency when HTTP keepalive is used by the client, about 0-1ms latency when the client does not use keepalive. What causes this latency?
thejh
  • 141
  • 2
2
votes
0 answers

CouchDB views and references

Not sure if/how it is intended to be done but i am trying to match up all the active document in my database with the author of it: function(doc) { if (doc.data.active && doc.data.active == '1') { emit(doc.data._account.data.name,…
Elfranne
  • 21
  • 1
2
votes
2 answers

How does Couchdb calculates the document revision number?

Whats the exact algorithm to calculate the CouchDB revision number. CouchDB uses a deterministic algorithm to calculate the document revision number. Here is one relevant doc I…
user3769778
  • 121
  • 2
2
votes
2 answers

Complex queries in CouchDB across multiple documents

I'm relatively new to CouchDB (more specifically Cloudant if it matters) and I'm having a hard time wrapping my head around something. Assume the following (simplified) document examples: { "docType": "school", "_id": "school1", "state": "CA" } {…
nute
  • 313
  • 3
  • 10
1
2 3