CouchDB Google

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    CouchDB Google - Presentation Transcript

    1. Apache CouchDB
    2. Hello Chris Anderson jchris@apache.org / @jchris Apache CouchDB Committer REST and JavaScript enthusiast Director, couch.io
    3. I’m here to answer the question: What is CouchDB? (from an app devs perspective - and some implementor) How many of you have: built an application around a key value store? written map reduce functions? used Erlang in an application?
    4. Relax - easy to reason about - reliable - your data is safe with us. - honda accord, not a ferrari - as a debating point among developers
    5. Bandwidth Explosion
    6. “no bars”
    7. http://www.flickr.com/photos/hercwad/2290378571/
    8. Latency Sucks speed of light drawback to cloud computing
    9. What is CouchDB? - k/v store with map reduce - http database written in erlang
    10. Local Web Local Web Platform Platform - on your device, local network, in a browser plugin - replication: it just works. makes data portable. - real-time remote backups, ad hoc topologies.
    11. “Ground Computing” @jhuggins http://www.flickr.com/photos/mcpig/872293700/ - 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
    12. Offline by Default http://www.flickr.com/photos/shane-h/280084650 - low latency & reliable - 2 tier applications
    13. http://apod.nasa.gov/apod/ap050930.html “Of the Web” http://jacobian.org/writing/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
    14. - lower barrier for contribution - validate installations - foster interop (CouchDB as a protocol)
    15. Learning Curve - doc modeling (mvcc / concurrency) - etags / Functional style of REST - eventual consistency
    16. http://www.longnow.org/projects/clock/ http://www.longnow.org/projects/clock/orrery/
    17. Robust - single file - append only - no fixup phase - minimizes seeks
    18. Robust - when britain is burning - Enda Farrell - bbc
    19. { "_id": "BC4ea69ce1a73aa7d21d23b608d221d "_rev": "1-967a00dff5e02add41819138abb32 JSON Documents "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } - denormalize - natural data behavior - evolve formats with your application - easier to bootstrap in your mind
    20. { "_id": "BC4ea69ce1a73aa7d21d23b608d221d "_rev": "1-967a00dff5e02add41819138abb32 JSON Documents "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true } - 2 patterns - document update - event log
    21. { "_id": "BC4ea69ce1a73aa7d21d23b608d221d "_rev": "2-41819138abb32967a00dff5e02ad JSON Documents "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": “More CoWbell!” } - MVCC - model for concurrency
    22.  Map Reduce
    23. http://horicky.blogspot.com/2008/10/couchdb-implementation.html
    24. ful  http://www.flickr.com/photos/calliope/3573471166
    25. db  http://code.google.com/p/couchdb-lounge/ http://www.flickr.com/photos/aussiegall/658457636
    26. curl -X POST http://127.0.0.1:5984/_replicate -d '{ "source": "http://couch.example.com:5984/remote-db", "target": "local-db" }'
    27. curl -X POST http://127.0.0.1:5984/_replicate -d '{ "source": "http://couch.example.com:5984/remote-db", "target": "local-db" }'
    28. periodic, notifier system
    29. “In the fullness of time there is only one CouchDB”
    30. standalone CouchDB applications
    31. Scaling Down
    32. Browser Couch JavaScript port Uses HTML5 storage Replicates with CouchDB http://hg.toolness.com/browser-couch/
    33. Gives Control to Users CC-BY-SA http://www.flickr.com/photos/kelleys/492253912/ - want to get kids in trouble for programming too much claris
    34. Stuart Langridge - Canonical ! !
    35. - 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
    36. - local requests are fast - easier to tune for throughput - plays to the strengths of mobile connections
    37. - users can run different applications on the same dataset deployment Independent Personal - dark matter of the information universe
    38. messaging peer discovery identity Can we trust intermediate servers?
    39. “Obvious.” web architecture
    40. Local Web Platform
    41. anks!
    42. Resources @CouchDB http://couchdb.apache.org/ Dress like a Couch: http://shop.couchdb.com http://planet.couchdb.org/ https://peepcode.com/products/couchdb-with-rails
    43. @couchdbinaction http://books.couchdb.org/relax
    44. Robust JSON HTTP Local
    45. Conflict resolution by example A B couch.io
    46. Conflict resolution by example A B ❦ couch.io
    47. Conflict resolution by example A B ❦ couch.io
    48. Conflict resolution by example A B ❦ ❦ couch.io
    49. Conflict resolution by example A B ❦ ❦ couch.io
    50. Conflict resolution by example A B ❦ ✿ ❦ couch.io
    51. Conflict resolution by example A B ❦ ✿ ❦ couch.io
    52. Conflict resolution by example A B ✿ couch.io
    53. Conflict resolution by example A B ✿ couch.io
    54. Conflict resolution by example A B ✿ couch.io
    55. Conflict resolution by example A B ✿ couch.io
    56. CC-by-nd http://www.flic.kr/photos/eifelyeti110/273939759/
    SlideShare Zeitgeist 2009

    + Steve SoudersSteve Souders Nominate

    custom

    383 views, 1 favs, 1 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 383
      • 372 on SlideShare
      • 11 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 2
    Most viewed embeds
    • 11 views on http://typeslashcode.com

    more

    All embeds
    • 11 views on http://typeslashcode.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories