Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>You are enjoying the following features with your database:</p> <ol> <li>Using it in production</li> <li>The data is naturally relational (related to itself)</li> <li>Huge insertion rate (no MVCC concerns)</li> <li>Complex queries</li> <li>Transactions</li> </ol> <p>These are all reasons <strong>not</strong> to switch to CouchDB.</p> <p>Of course, the story is not so simple. I think you have discovered what many people never learn: complex problems require complex solutions. We cannot simply replace our database and take the rest of the month off. Sure, CouchDB (and BigCouch) supports excellent horizontal scaling (and cross-datacenter replication too!) but the cost will be rewriting a production application. That is not right.</p> <p>So, where can CouchDB benefit you?</p> <p>I suggest that you begin <em>augmenting</em> your application with CouchDB applications. Deploy CouchDB, import your data into it, and build <em>non mission-critical</em> applications. See where it fits best.</p> <p>For your project, these are the key CouchDB strengths:</p> <ol> <li>It is a small, simple tool&mdash;easy for you to set up on a workstation or server</li> <li>It is a web server. It integrates <em>very</em> well with your infrastructure and security policies. <ul> <li>For example, if you have a flexible policy, just set it up on your LAN</li> <li>If you have a strict network and firewall policy, you can set it up behind a VPN, or with your SSL certificates</li> </ul></li> <li>With that step done, it is <strong>very</strong> easy to access now. Just make http or http requests. Whether you are importing data from Oracle with a custom tool, or using your <em>web browser</em>, it's all the same.</li> <li>Yes! CouchDB is an app server too! It has a built-in administrative app, to explore data, change the config, etc. (like a built-in phpmyadmin). But for you, the value will be building admin applications and reports as <em>simple, traditional HTML/Javascript/CSS</em> applications. You can get as fancy or as simple as you like.</li> <li>As your project grows and becomes valuable, you are in a great position to grow, using replication <ul> <li>Either expand the core with larger CouchDB clusters</li> <li>Or, replicate your data and applications into different data centers, or onto individual workstations, or mobile phones, etc. (The strategy will be more obvious when the time comes.)</li> </ul></li> </ol> <p>CouchDB gives you a <em>simple</em> web server and web site. It gives you a <em>built-in</em> web services API to your data. It makes it easy to build web apps. Therefore, CouchDB seems ideal for <strong>extending</strong> your core application, not <strong>replacing</strong> it.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload