email@example.com / @jchris
Apache CouchDB Committer
I’m here to answer the question: What is CouchDB? (from an app devs perspective - and some
How many of you have:
built an application around a key value store?
written map reduce functions?
used Erlang in an application?
- easy to reason about
- reliable - your data is safe with us.
- honda accord, not a ferrari
- as a debating point among developers
speed of light
drawback to cloud computing
- k/v store with map reduce
- http database written in erlang
- on your device, local network, in a browser plugin
- replication: it just works. makes data portable.
- real-time remote backups, ad hoc topologies.
- local to the user, more like desktop web than like Gears
- local http server
- browser apps
- same application on the client and server or the cloud
“Of the Web”
Let me tell you something: Django may be built for the Web, but CouchDB is built of the Web. I've never seen software that so completely embraces the philosophies behind HTTP. ... this is
what the software of the future looks like. Jacob Kaplan-Moss -- October, 2007
perfect spot - discovered not invented
- lower barrier for contribution
- validate installations
- foster interop (CouchDB as a protocol)
“In the fullness of time there is only one CouchDB”
standalone CouchDB applications
Uses HTML5 storage
Replicates with CouchDB
Gives Control to Users
- want to get kids in trouble for programming too much
Stuart Langridge - Canonical
- good because it's the status quo
- easy to address with URLs
- bad because users are depending on a remote resource for low latency responses
- centralized, so traffic spikes impact all users, who might start refreshing
- local requests are fast
- easier to tune for throughput
- plays to the strengths of mobile connections
- users can run different applications on the same dataset
- dark matter of the information universe
Can we trust intermediate servers?
Dress like a Couch: http://shop.couchdb.com