monday, november 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... ·...
TRANSCRIPT
![Page 1: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/1.jpg)
Monday, November 26, 12
![Page 2: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/2.jpg)
The CouchDB Implementation
Monday, November 26, 12
![Page 3: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/3.jpg)
Jan [email protected]@janlCouchDB PMC ChairCommitter #2
Monday, November 26, 12
Thanks for the inviteGlad to be here
JSConf EU / BBuzz / JSFAB
![Page 4: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/4.jpg)
Any Database
Monday, November 26, 12
- FS integration / raw storage - core data structures - core features - API
![Page 5: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/5.jpg)
FILE SYSTEM
FILE SYSTEM ACCESS
CORE DATA STRUCTURES
CORE FEATURES
API
Monday, November 26, 12
![Page 6: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/6.jpg)
CouchDB is no different
Monday, November 26, 12
- couch_file - couch_btree - couch_db / couch_doc / couch_mr / couch_replicator / etcpp - couch_httpd*
![Page 7: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/7.jpg)
FILE SYSTEM
COUCH_FILE
COUCH_BTREE
COUCH_DB +
COUCH_HTTP*
COUCH_DOCCOUCH_MRCOUCH_REPL…
Monday, November 26, 12
![Page 8: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/8.jpg)
Core Datastructures
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 9: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/9.jpg)
Behold theb+tree
Monday, November 26, 12
![Page 10: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/10.jpg)
Monday, November 26, 12
![Page 11: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/11.jpg)
Monday, November 26, 12
![Page 12: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/12.jpg)
by-id
Monday, November 26, 12
![Page 13: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/13.jpg)
A B C D E F G H I J K L …
Monday, November 26, 12
![Page 14: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/14.jpg)
A B C D E F
DO
C_G
H I J K L …
Monday, November 26, 12
![Page 15: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/15.jpg)
A B C
DO
C_D
E F
DO
C_G
H I J K L …
Monday, November 26, 12
![Page 16: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/16.jpg)
A B C
DO
C_D
E F
DO
C_G
H I J
DO
C_K
L …
Monday, November 26, 12
![Page 17: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/17.jpg)
DO
C_D
DO
C_G
DO
C_K
Monday, November 26, 12
![Page 18: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/18.jpg)
by-seqor
“what happened since?”
Monday, November 26, 12
![Page 19: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/19.jpg)
1. D
OC_G
2. D
OC_D
3. D
OC_K
Monday, November 26, 12
![Page 20: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/20.jpg)
The CouchDBFile Format
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 21: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/21.jpg)
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 22: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/22.jpg)
HEA
DER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 23: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/23.jpg)
DO
C_A
HEA
DER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 24: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/24.jpg)
DO
C_A
BY
ID
ID
X A
HEA
DER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 25: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/25.jpg)
DO
C_A
BY
ID
ID
X A
BY
SEQ
ID
X A
HEA
DER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 26: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/26.jpg)
DO
C_A
BY
ID
ID
X A
BY
SEQ
ID
X A
HEA
DER
FOO
TER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 27: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/27.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
SEQ
ID
X A
HEA
DER
FOO
TER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 28: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/28.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
HEA
DER
FOO
TER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 29: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/29.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
HEA
DER
FOO
TER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 30: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/30.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
HEA
DER
FOO
TER
FOO
TER
Monday, November 26, 12
- 2 x b+tree & data interleaved - append only, mvcc - full fsync control
- Can answer: - Data for $key - What happened $since
- Used for core data storage - As well as indexes
- Everything else is built on top
![Page 31: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/31.jpg)
Monday, November 26, 12
Bulk add + Delete
![Page 32: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/32.jpg)
DO
C_A
Monday, November 26, 12
Bulk add + Delete
![Page 33: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/33.jpg)
DO
C_A
DO
C_B
Monday, November 26, 12
Bulk add + Delete
![Page 34: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/34.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
Monday, November 26, 12
Bulk add + Delete
![Page 35: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/35.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
Monday, November 26, 12
Bulk add + Delete
![Page 36: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/36.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
Monday, November 26, 12
Bulk add + Delete
![Page 37: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/37.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
Monday, November 26, 12
Bulk add + Delete
![Page 38: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/38.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
FOO
TER
Monday, November 26, 12
Bulk add + Delete
![Page 39: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/39.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
FOO
TER
DEL
DO
C_A
Monday, November 26, 12
Bulk add + Delete
![Page 40: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/40.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
FOO
TER
DEL
DO
C_A
BY
ID
ID
X A
Monday, November 26, 12
Bulk add + Delete
![Page 41: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/41.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
FOO
TER
DEL
DO
C_A
BY
ID
ID
X A
BY
SEQ
ID
X A
Monday, November 26, 12
Bulk add + Delete
![Page 42: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/42.jpg)
DO
C_A
DO
C_B
BY
ID
ID
X A
BY
ID
ID
X B
BY
SEQ
ID
X A
BY
SEQ
ID
X B
FOO
TER
DEL
DO
C_A
BY
ID
ID
X A
BY
SEQ
ID
X A
FOO
TER
Monday, November 26, 12
Bulk add + Delete
![Page 43: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/43.jpg)
Operational Consequences
Monday, November 26, 12
- efficient on spinning disk, “tape” - btree = wide, upper layers in disk cache - backup with cp $a $b
- compaction hurts
![Page 44: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/44.jpg)
Core Features (using by-seq)
Monday, November 26, 12
- Replication - Indexing / Views / GeoCouch / Lucene / ES etc. - /_changes - Compaction
![Page 45: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/45.jpg)
Monday, November 26, 12
Replication
![Page 46: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/46.jpg)
DATABASE AMonday, November 26, 12
Replication
![Page 47: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/47.jpg)
DATABASE A
1
Monday, November 26, 12
Replication
![Page 48: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/48.jpg)
DATABASE A
2
1
Monday, November 26, 12
Replication
![Page 49: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/49.jpg)
3
DATABASE A
2
1
Monday, November 26, 12
Replication
![Page 50: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/50.jpg)
3
DATABASE A
2
1
4
Monday, November 26, 12
Replication
![Page 51: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/51.jpg)
3
DATABASE A
2
1
4
DATABASE BMonday, November 26, 12
Replication
![Page 52: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/52.jpg)
3
DATABASE A
2
1
4
DATABASE B
1
Monday, November 26, 12
Replication
![Page 53: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/53.jpg)
3
DATABASE A
2
1
4
DATABASE B
2
1
Monday, November 26, 12
Replication
![Page 54: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/54.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
Monday, November 26, 12
Replication
![Page 55: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/55.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
Monday, November 26, 12
Replication
![Page 56: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/56.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
5
Monday, November 26, 12
Replication
![Page 57: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/57.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
6
5
Monday, November 26, 12
Replication
![Page 58: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/58.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
Monday, November 26, 12
Replication
![Page 59: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/59.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
8
Monday, November 26, 12
Replication
![Page 60: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/60.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
8
5
Monday, November 26, 12
Replication
![Page 61: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/61.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
8
6
5
Monday, November 26, 12
Replication
![Page 62: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/62.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
8
7
6
5
Monday, November 26, 12
Replication
![Page 63: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/63.jpg)
3
DATABASE A
2
1
4
3
DATABASE B
2
1
4
7
6
5
8
7
6
5
8
Monday, November 26, 12
Replication
![Page 64: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/64.jpg)
Monday, November 26, 12
Indexing
![Page 65: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/65.jpg)
DATABASE AMonday, November 26, 12
Indexing
![Page 66: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/66.jpg)
DATABASE A
1
Monday, November 26, 12
Indexing
![Page 67: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/67.jpg)
DATABASE A
2
1
Monday, November 26, 12
Indexing
![Page 68: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/68.jpg)
3
DATABASE A
2
1
Monday, November 26, 12
Indexing
![Page 69: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/69.jpg)
3
DATABASE A
2
1
4
Monday, November 26, 12
Indexing
![Page 70: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/70.jpg)
3
DATABASE A
2
1
4
INDEX AMonday, November 26, 12
Indexing
![Page 71: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/71.jpg)
3
DATABASE A
2
1
4
INDEX A
1
Monday, November 26, 12
Indexing
![Page 72: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/72.jpg)
3
DATABASE A
2
1
4
INDEX A
2
1
Monday, November 26, 12
Indexing
![Page 73: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/73.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
Monday, November 26, 12
Indexing
![Page 74: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/74.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
Monday, November 26, 12
Indexing
![Page 75: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/75.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
5
Monday, November 26, 12
Indexing
![Page 76: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/76.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
6
5
Monday, November 26, 12
Indexing
![Page 77: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/77.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
Monday, November 26, 12
Indexing
![Page 78: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/78.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
8
Monday, November 26, 12
Indexing
![Page 79: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/79.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
8
5
Monday, November 26, 12
Indexing
![Page 80: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/80.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
8
6
5
Monday, November 26, 12
Indexing
![Page 81: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/81.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
8
7
6
5
Monday, November 26, 12
Indexing
![Page 82: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/82.jpg)
3
DATABASE A
2
1
4
3
INDEX A
2
1
4
7
6
5
8
7
6
5
8
Monday, November 26, 12
Indexing
![Page 83: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/83.jpg)
Monday, November 26, 12
/_changes
![Page 84: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/84.jpg)
DATABASE AMonday, November 26, 12
/_changes
![Page 85: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/85.jpg)
DATABASE A
1
Monday, November 26, 12
/_changes
![Page 86: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/86.jpg)
DATABASE A
2
1
Monday, November 26, 12
/_changes
![Page 87: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/87.jpg)
3
DATABASE A
2
1
Monday, November 26, 12
/_changes
![Page 88: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/88.jpg)
3
DATABASE A
2
1
4
Monday, November 26, 12
/_changes
![Page 89: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/89.jpg)
3
DATABASE A
2
1
4
5
Monday, November 26, 12
/_changes
![Page 90: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/90.jpg)
3
DATABASE A
2
1
4
6
5
Monday, November 26, 12
/_changes
![Page 91: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/91.jpg)
3
DATABASE A
2
1
4
7
6
5
Monday, November 26, 12
/_changes
![Page 92: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/92.jpg)
3
DATABASE A
2
1
4
7
6
5
8
Monday, November 26, 12
/_changes
![Page 93: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/93.jpg)
Monday, November 26, 12
Compaction
![Page 94: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/94.jpg)
DATABASE AMonday, November 26, 12
Compaction
![Page 95: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/95.jpg)
DATABASE A
1. DOC_A
Monday, November 26, 12
Compaction
![Page 96: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/96.jpg)
DATABASE A
2. DOC_B
1. DOC_A
Monday, November 26, 12
Compaction
![Page 97: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/97.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
Monday, November 26, 12
Compaction
![Page 98: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/98.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
Monday, November 26, 12
Compaction
![Page 99: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/99.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
5. DOC_D
Monday, November 26, 12
Compaction
![Page 100: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/100.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
6. DOC_B
5. DOC_D
Monday, November 26, 12
Compaction
![Page 101: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/101.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
Monday, November 26, 12
Compaction
![Page 102: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/102.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
Monday, November 26, 12
Compaction
![Page 103: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/103.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
COMPACT AMonday, November 26, 12
Compaction
![Page 104: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/104.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT AMonday, November 26, 12
Compaction
![Page 105: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/105.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT A
4. DOC_A
Monday, November 26, 12
Compaction
![Page 106: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/106.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT A
4. DOC_A
5. DOC_D
Monday, November 26, 12
Compaction
![Page 107: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/107.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT A
4. DOC_A
6. DOC_B
5. DOC_D
Monday, November 26, 12
Compaction
![Page 108: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/108.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
Monday, November 26, 12
Compaction
![Page 109: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/109.jpg)
3. DOC_C
DATABASE A
2. DOC_B
1. DOC_A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
3. DOC_C
COMPACT A
4. DOC_A
7. DOC_F
6. DOC_B
5. DOC_D
8. DOC_G
Monday, November 26, 12
Compaction
![Page 110: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/110.jpg)
Erlang
Monday, November 26, 12
- Small codebase - Efficient in small teams
- Supervision tree - Isolated processes - Concurrency
- Portable runtime
- Hard to recruit for - Steep ramp-on - Bit of an operational black box (nine nines story) - Bit hard as an install-dependency
![Page 111: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/111.jpg)
COUCH_SERVER
COUCH_HTTP
COUCH_QUERY_SERVER
COUCH_LOG
COUCH_DB
COUCH_DB_UPDATER
COUCH_FILE
Monday, November 26, 12
- Small codebase - Efficient in small teams
- Supervision tree - Isolated processes - Concurrency
- Portable runtime
- Hard to recruit for - Steep ramp-on - Bit of an operational black box (nine nines story) - Bit hard as an install-dependency
![Page 112: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/112.jpg)
Potential Improvements
Monday, November 26, 12
- Smarter compactor - Smarter file-storage - Less custom HTTP handling - More indexers
![Page 113: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/113.jpg)
The End
Monday, November 26, 12
![Page 114: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/114.jpg)
Thanks!
Monday, November 26, 12
![Page 115: Monday, November 26, 12 - archive.apachecon.comarchive.apachecon.com/eu2012/presentations/08... · Jan Lehnardt jan@a.o @janl CouchDB PMC Chair Committer #2 Monday, November 26, 12](https://reader034.vdocument.in/reader034/viewer/2022042303/5eceaa381f3056299e53b632/html5/thumbnails/115.jpg)
Monday, November 26, 12