CouchDB Thursday, 22 October 2009 Whos Talking Jan Lehnardt - - PowerPoint PPT Presentation

couchdb
SMART_READER_LITE
LIVE PREVIEW

CouchDB Thursday, 22 October 2009 Whos Talking Jan Lehnardt - - PowerPoint PPT Presentation

Apache CouchDB Thursday, 22 October 2009 Whos Talking Jan Lehnardt Erlang & JavaScript Hacker, Web Enthusiast CouchDB Developer Director Relaxed, Inc. jan@apache.org / @janl & couch.io github.com/janl


slide-1
SLIDE 1

CouchDB

Apache

Thursday, 22 October 2009
slide-2
SLIDE 2

Who’s Talking

  • Jan Lehnardt
  • CouchDB Developer
  • jan@apache.org / @janl
  • github.com/janl
  • Erlang & JavaScript

Hacker, Web Enthusiast

  • Director Relaxed, Inc.

& couch.io

  • Helps running N✮SQL

Berlin

Thursday, 22 October 2009
slide-3
SLIDE 3

Relax

Thursday, 22 October 2009
slide-4
SLIDE 4 http://www.flickr.com/photos/freelancing_god/3271488152/ Thursday, 22 October 2009
slide-5
SLIDE 5

Bandwidth Explosion

Thursday, 22 October 2009
slide-6
SLIDE 6 Thursday, 22 October 2009
slide-7
SLIDE 7 Thursday, 22 October 2009
slide-8
SLIDE 8 Thursday, 22 October 2009
slide-9
SLIDE 9 Thursday, 22 October 2009
slide-10
SLIDE 10 Thursday, 22 October 2009
slide-11
SLIDE 11

“no bars”

Thursday, 22 October 2009
slide-12
SLIDE 12

http://de.wikipedia.org/w/index.php?title=Datei:Birkholzaue_Ortseingang.jpg&filetimestamp=20060413223336

Thursday, 22 October 2009
slide-13
SLIDE 13

Latency Sucks

Thursday, 22 October 2009
slide-14
SLIDE 14

What is CouchDB?

Thursday, 22 October 2009
slide-15
SLIDE 15

Local Web Platform Local Web Platform

Thursday, 22 October 2009
slide-16
SLIDE 16

http://www.flickr.com/photos/mcpig/872293700/

“Ground Computing”

@jhuggins

Thursday, 22 October 2009
slide-17
SLIDE 17

http://de.wikipedia.org/w/index.php?title=Datei:Birkholzaue_Ortseingang.jpg&filetimestamp=20060413223336

Offline by Default

Thursday, 22 October 2009
slide-18
SLIDE 18

http://www.flickr.com/photos/shane-h/280084650

Offline by Default

Thursday, 22 October 2009
slide-19
SLIDE 19

http://jacobian.org/writing/of-the-web/

http://apod.nasa.gov/apod/ap050930.html

“Of the Web”

— Jacob Kaplan-Moss

Thursday, 22 October 2009
slide-20
SLIDE 20 Thursday, 22 October 2009
slide-21
SLIDE 21

Learning Curve

Thursday, 22 October 2009
slide-22
SLIDE 22 Thursday, 22 October 2009
slide-23
SLIDE 23

{ "_id": "BC4ea69ce1a73aa7d21d23b608d221d0", "_rev": "1-967a00dff5e02add41819138abb3284d", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true }

JSON Documents

Thursday, 22 October 2009
slide-24
SLIDE 24

{ "_id": "BC4ea69ce1a73aa7d21d23b608d221d0", "_rev": "1-967a00dff5e02add41819138abb3284d", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": true }

JSON Documents

Thursday, 22 October 2009
slide-25
SLIDE 25

{ "_id": "BC4ea69ce1a73aa7d21d23b608d221d0", "_rev": "2-41819138abb32967a00dff5e02add84d", "type": "person", "name": "Darth Vader", "age": 63, "headware": ["Helmet", "Sombrero"], "dark_side": “More CoWbell!” }

JSON Documents

Thursday, 22 October 2009
slide-26
SLIDE 26 Thursday, 22 October 2009
slide-27
SLIDE 27

Robust

Thursday, 22 October 2009
slide-28
SLIDE 28

bust

Thursday, 22 October 2009
slide-29
SLIDE 29

http://www.sics.se/~joe/apachevsyaws.html

Munctional

Apache YAWS Concurrent Connections Throughput

Thursday, 22 October 2009
slide-30
SLIDE 30

 Map Reduce

Thursday, 22 October 2009
slide-31
SLIDE 31

http://horicky.blogspot.com/2008/10/couchdb-implementation.html

Thursday, 22 October 2009
slide-32
SLIDE 32

http://www.flickr.com/photos/calliope/3573471166

ful 

Thursday, 22 October 2009
slide-33
SLIDE 33

CDB lounge

http://tilgovi.github.com/couchdb-lounge/

http://www.flickr.com/photos/aussiegall/658457636

Thursday, 22 October 2009
slide-34
SLIDE 34

http://www.flickr.com/photos/aussiegall/658457636

Shards: 16 Nodes: 4

Thursday, 22 October 2009
slide-35
SLIDE 35

http://www.flickr.com/photos/aussiegall/658457636

Shards: 16 Nodes: 8

Thursday, 22 October 2009
slide-36
SLIDE 36

http://www.flickr.com/photos/aussiegall/658457636

Shards: 16 Nodes: 16

Thursday, 22 October 2009
slide-37
SLIDE 37

http://www.flickr.com/photos/aussiegall/658457636

Shards: 16 Nodes: 16 Sub Shards: 16 Sub Nodes: 4

Thursday, 22 October 2009
slide-38
SLIDE 38

http://www.flickr.com/photos/aussiegall/658457636

and so on…

Thursday, 22 October 2009
slide-39
SLIDE 39

http://www.flickr.com/photos/aussiegall/658457636

Fractal Scaling

Thursday, 22 October 2009
slide-40
SLIDE 40

breathe…

Thursday, 22 October 2009
slide-41
SLIDE 41 Thursday, 22 October 2009
slide-42
SLIDE 42 Thursday, 22 October 2009
slide-43
SLIDE 43

curl -X POST http://127.0.0.1:5984/_replicate

  • d

'{ "source": "http://couch.example.com:5984/remote-db", "target": "local-db" }'

Thursday, 22 October 2009
slide-44
SLIDE 44

curl -X POST http://127.0.0.1:5984/_replicate

  • d

'{ "source": "http://couch.example.com:5984/remote-db", "target": "local-db" }'

Thursday, 22 October 2009
slide-45
SLIDE 45 Thursday, 22 October 2009
slide-46
SLIDE 46 Thursday, 22 October 2009
slide-47
SLIDE 47 Thursday, 22 October 2009
slide-48
SLIDE 48 Thursday, 22 October 2009
slide-49
SLIDE 49 Thursday, 22 October 2009
slide-50
SLIDE 50 Thursday, 22 October 2009
slide-51
SLIDE 51 Thursday, 22 October 2009
slide-52
SLIDE 52 Thursday, 22 October 2009
slide-53
SLIDE 53

Scaling Down

Thursday, 22 October 2009
slide-54
SLIDE 54

Browser Couch

JavaScript port Uses HTML5 storage Replicates with CouchDB http://hg.toolness.com/browser-couch/

Thursday, 22 October 2009
slide-55
SLIDE 55

Gives Control to Users

CC-BY-SA http://www.flickr.com/photos/kelleys/492253912/ Thursday, 22 October 2009
slide-56
SLIDE 56

! !

Thursday, 22 October 2009
slide-57
SLIDE 57 Thursday, 22 October 2009
slide-58
SLIDE 58

http://books.couchdb.org/relax

Thursday, 22 October 2009
slide-59
SLIDE 59

anks!

Thursday, 22 October 2009
slide-60
SLIDE 60 Thursday, 22 October 2009
slide-61
SLIDE 61

couch.io

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-62
SLIDE 62

couch.io

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-63
SLIDE 63

couch.io

❦ ❦

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-64
SLIDE 64

couch.io

❦ ❦

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-65
SLIDE 65

couch.io

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-66
SLIDE 66

couch.io

Conflict resolution by example

A B

❦ ✿

Thursday, 22 October 2009
slide-67
SLIDE 67

couch.io

Conflict resolution by example

A B

❦ ✿ ♪

Thursday, 22 October 2009
slide-68
SLIDE 68

couch.io

✿ ♪

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-69
SLIDE 69

couch.io

✿ ♪

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-70
SLIDE 70

couch.io

✿ ♪

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-71
SLIDE 71

couch.io

✿ ♪

Conflict resolution by example

A B

Thursday, 22 October 2009
slide-72
SLIDE 72 CC-by-nd http://www.flic.kr/photos/eifelyeti110/273939759/ Thursday, 22 October 2009
slide-73
SLIDE 73 Thursday, 22 October 2009