1	
  
Jeff	
  Harris	
  	
  
Business	
  Development	
  
NoSQL	
  Document	
  Database	
  
Data	
  Management	
  for	
  	
 ...
2	
  
Couchbase	
  NoSQL	
  Leadership	
  
Leading	
  NoSQL	
  database	
  company	
  
Open	
  Source	
  development	
  &	...
3	
  
Market	
  Adop6on	
  
Internet	
  Companies	
   Enterprises	
  
•  Social	
  Gaming	
  
•  Ad	
  Networks	
  
•  Soc...
4	
  
Market	
  Adop6on	
  –	
  Customers	
  
Internet	
  Companies	
   Enterprises	
  
More	
  than	
  350	
  customers	
...
5	
  
Use	
  Cases	
  &	
  Customers	
  
Web	
  app	
  or	
  Use-­‐case	
   Couchbase	
  Solu6on	
   Example	
  Customer	
...
6	
  
Rela6onal	
  Vs	
  NoSQL	
  Document	
  
databases	
  
7	
  
RDBMS	
  Scales	
  Up	
  
Get	
  a	
  bigger,	
  more	
  complex	
  server	
  
Users	
  
Applica6on	
  Scales	
  Out...
8	
  
Couchbase	
  Server	
  Scales	
  Out	
  Like	
  App	
  
Tier	
  
NoSQL	
  Database	
  Scales	
  Out	
  
Cost	
  and	...
9	
  
If	
  Cars	
  Were	
  Stored	
  in	
  an	
  RDBMS…	
  
h]p://iedei.files.wordpress.com/2012/04/mercedes-­‐f1-­‐car-­‐...
10	
  
If	
  Cars	
  Were	
  Stored	
  in	
  a	
  Document	
  
Database…	
  
h]p://images.conceptcarz.com/imgxra/Mercedes-...
11	
  
Rela6onal	
  vs	
  Document	
  Data	
  Model	
  
Rela6onal	
  data	
  model	
   Document	
  data	
  model	
  
Colle...
12	
  
RDBMS	
  Example:	
  User	
  Profile	
  
Address	
  Info	
  
1	
   DEN	
   30303	
  CO	
  
2	
   MV	
   94040	
  CA	...
13	
  
All	
  data	
  in	
  a	
  single	
  document	
  
Document	
  Example:	
  User	
  Profile	
  
	
  {	
  
	
  	
  	
  	...
14	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  
Consistent	
  High	
  
Performance	
  
Flexible	
  ...
15	
  
Couchbase	
  Server	
  Is	
  The	
  Complete	
  
Solu6on	
  
One	
  click	
  scalability	
  and	
  no	
  app	
  
ch...
16	
  
Couchbase	
  Server	
  Overview	
  
Clustered	
  NoSQL	
  Document	
  Database	
  for	
  	
  
interacAve	
  applica...
17	
  
Couchbase	
  Server	
  Features	
  
•  Easy	
  scalability	
  
•  Built-­‐in	
  clustering	
  	
  
•  All	
  nodes	...
18	
  
New	
  Couchbase	
  Server	
  Features	
  
•  Flexible	
  JSON	
  document	
  model	
  
­  No	
  fixed	
  schema	
  ...
19	
  
Couchbase	
  Demonstra6on	
  
•  Star6ng	
  with	
  4	
  database	
  nodes	
  
under	
  load	
  
•  Dynamically	
  ...
20	
  
Couchbase	
  solu6on	
  
“The	
  basics”	
  
21	
  
3	
  3	
   2	
  
Single	
  node	
  -­‐	
  Couchbase	
  Write	
  
Opera6on	
  
Managed	
  Cache	
  
Disk	
  Queue	
 ...
22	
  
3	
  3	
   2	
  
Single	
  node	
  -­‐	
  Couchbase	
  Update	
  
Opera6on	
  
Managed	
  Cache	
  
Disk	
  Queue	
...
23	
  
GET	
  
Doc	
  1	
  
3	
  3	
   2	
  
Single	
  node	
  -­‐	
  Couchbase	
  Read	
  
Opera6on	
  
Disk	
  Queue	
  ...
24	
  
COUCHBASE	
  SERVER	
  	
  CLUSTER	
  
Basic	
  Opera6on	
  
•  Docs	
  distributed	
  evenly	
  across	
  
servers...
25	
  
Add	
  Nodes	
  to	
  Cluster	
  
•  Two	
  servers	
  added	
  with	
  
one-­‐click	
  opera6on	
  
•  Docs	
  aut...
26	
  
Fail	
  Over	
  Node	
  
	
  
	
  
REPLICA	
  
ACTIVE	
  
Doc	
  5	
  
Doc	
  2	
  
Doc	
  
Doc	
  
Doc	
  4	
  
Do...
27	
  
XDCR:	
  Cross	
  Data	
  Center	
  Replica6on	
  
US	
  DATA	
  
CENTER	
  
	
  
EUROPE	
  DATA	
  
CENTER	
  
	
 ...
28	
  
Cross	
  Data	
  Center	
  Replica6on	
  (XDCR)	
  
COUCHBASE	
  SERVER	
  	
  CLUSTER	
  
NYC	
  DATA	
  CENTER	
 ...
29	
  
Indexing	
  and	
  Querying	
  Features	
  
•  Index	
  and	
  Query	
  
­  Distributed	
  indexing	
  and	
  query...
30	
  
COUCHBASE	
  SERVER	
  	
  CLUSTER	
  
Indexing	
  and	
  Querying	
  	
  
User	
  Configured	
  Replica	
  Count	
 ...
31	
  
Full	
  Text	
  Search	
  	
  
32	
  
The	
  Couchbase	
  difference	
  
33	
  
Couchbase:	
  The	
  Complete	
  NoSQL	
  
Solu6on	
  
Easy	
  
Scalability	
  
Flexible	
  
Data	
  Model	
  
Alwa...
34	
  
Consistent	
  High	
  Performance	
  
•  Consistent,	
  predictable	
  sub	
  millisecond	
  latency	
  
­  Apps	
 ...
35	
  
YCSB	
  Benchmark	
  Details	
  	
  
•  Web	
  applica6on	
  simula6on	
  	
  
­  Simulates	
  changing	
  set	
  o...
36	
  
Read	
  performance	
  comparison	
  -­‐	
  NoSQL	
  
databases	
  
0	
  
2	
  
4	
  
6	
  
8	
  
10	
  
12	
  
14	...
37	
  
Write	
  performance	
  comparison	
  -­‐	
  
NoSQL	
  databases	
  
0	
  
5	
  
10	
  
15	
  
20	
  
25	
  
30	
  ...
38	
  
LinkedIn	
  4	
  node	
  cluster	
  
39	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  
Flexible	
  
Data	
  Model	
  
Always	
  On	
  
24x...
40	
  
Couchbase:	
  High	
  throughput	
  that	
  
scales	
  linearly	
  	
  	
  
Linear	
  throughput	
  
scalability	
 ...
41	
  
Draw	
  Something	
  “Goes	
  Viral”	
  3	
  Weeks	
  
Azer	
  Launch	
  	
  
Draw	
  Something	
  by	
  OMGPOP	
  ...
42	
  
As	
  Usage	
  Grew,	
  Game	
  Data	
  Went	
  Non-­‐
Linear	
  Draw	
  Something	
  by	
  OMGPOP	
  
Daily	
  Ac)...
43	
  
NoSQL	
  Database	
  Considera6ons	
  
Easy	
  
Scalability	
  
Flexible	
  
Data	
  Model	
  
Always	
  On	
  
24x...
44	
  
The	
  Sun	
  Never	
  Sets	
  on	
  the	
  Internet	
  
h]p://personal.bgsu.edu/~tede/020522_briAshempire1360.jpg	...
45	
  
Always-­‐On	
  24x7x365:	
  Proof	
  Point	
  
Example	
  
0	
   20	
   40	
   60	
   80	
   100	
  
82	
  
57	
  
...
46	
  
Couchbase	
  Server	
  Is	
  The	
  Complete	
  
Solu6on	
  
One	
  click	
  scalability	
  and	
  no	
  app	
  
ch...
47	
  
Couchbase	
  Server	
  vs.	
  MongoDB	
  
Easy	
  
Scalability	
  
	
  	
  	
  	
  	
  Consistent,	
  High	
  
Perf...
48	
  
Consistent	
  Lower	
  Latencies	
  and	
  Higher	
  
Throughput	
  
•  Couchbase	
  
­  High	
  read	
  and	
  wri...
49	
  
Couchbase	
  Server	
  vs.	
  Cassandra	
  
Easy	
  
Scalability	
  
Consistent,	
  High	
  
Performance	
  
Flexib...
50	
  
Next	
  steps	
  
51	
  
Enterprise	
  vs.	
  Community	
  Edi6on	
  
Enterprise	
  Edi6on	
   Community	
  Edi6on	
  
Cost	
   •  Free	
  f...
52	
  
Next	
  Steps:	
  The	
  Path	
  to	
  Produc6on	
  
ü 	
  	
  	
  	
  	
  Couchbase	
  Overview	
  –	
  Done	
  
...
53	
  
Thank	
  you	
  
	
  
Couchbase	
  	
  
NoSQL	
  Document	
  Database	
  
54	
  
Backup	
  Slides	
  
55	
  
Couchbase	
  Server	
  Features	
  
•  Graphical	
  monitoring	
  and	
  admin	
  console	
  with	
  RESTful	
  int...
56	
  
Couchbase	
  performance	
  with	
  varying	
  
document	
  sizes	
  
Consistently	
  low	
  latencies	
  
sub-­‐mi...
57	
  
Enterprise	
  Edi6on	
  Subscrip6ons	
  
Standard	
   Premium	
  
Price/node	
   $2499	
  
	
  
$4499	
  
Licensing...
58	
  
sales@couchbase.com	
  	
  
Replace	
  a	
  Memcached	
  Tier	
  	
  
with	
  Couchbase	
  Server	
  	
  
59	
  
Challenges	
  with	
  a	
  Memcached	
  Tier	
  
Problem	
   Symptoms	
   Couchbase	
  Solu6on	
  
Cold	
  Cache	
 ...
60	
  
Before	
  and	
  Azer:	
  	
  
Replacing	
  Caching	
  Tier	
  with	
  Couchbase	
  
Server	
  
61	
  
Memcached	
  Tier	
  Replacement:	
  How	
  it	
  
Works	
  
•  Fully	
  memcached	
  protocol	
  compa6ble	
  
•  ...
62	
  
sales@couchbase.com	
  	
  
Draw	
  Something	
  
Success	
  Story	
  
63	
  
How	
  to	
  Prepare	
  Your	
  Social	
  Game	
  for	
  Massive	
  Growth	
  
Published	
  February	
  2,	
  2012	...
64	
  
Draw	
  Something	
  by	
  OMGPOP	
  
65	
  
Draw	
  Something	
  “Goes	
  Viral”	
  3	
  Weeks	
  
Azer	
  Launch	
  	
  
Draw	
  Something	
  by	
  OMGPOP	
  ...
66	
  
As	
  Usage	
  Grew,	
  Game	
  Data	
  Went	
  Non-­‐
Linear	
  Draw	
  Something	
  by	
  OMGPOP	
  
Daily	
  Ac)...
67	
  
In	
  Contrast…	
  
The	
  Simpson’s:	
  Tapped	
  Out	
  
Daily	
  Ac)ve	
  Users	
  (millions)	
  
Upcoming SlideShare
Loading in …5
×

Couchbase overview033113long

546 views
473 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
546
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Couchbase overview033113long

  1. 1. 1   Jeff  Harris     Business  Development   NoSQL  Document  Database   Data  Management  for     Interac6ve  Applica6ons  
  2. 2. 2   Couchbase  NoSQL  Leadership   Leading  NoSQL  database  company   Open  Source  development  &  business  model   Most  mature,  reliable  and  widely  deployed  solu6on   >7,500  paid  producAon  deployments  worldwide   Headquarters  in  Silicon  Valley  (Mountain  View,  CA)   ~120  employees  including  >70  in  engineering/product   >80%  of  commits  to  Couchbase,  memcached,  Apache  CouchDB   Document-­‐oriented  NoSQL  database   Focused  on  interacAve  internet  and  mobile  applicaAons   Provide  more  flexible,  higher  performance,     more  scalable  database  than  rela6onal  alterna6ve  
  3. 3. 3   Market  Adop6on   Internet  Companies   Enterprises   •  Social  Gaming   •  Ad  Networks   •  Social  Networks   •  Online  Business   Services   •  E-­‐Commerce   •  Online  Media   •  Content  Management   •  Cloud  Services   • CommunicaAons   • Retail   • Financial  Services   • Health  Care   • AutomoAve/Airline   • Agriculture   • Consumer  Electronics   • Business  Systems  
  4. 4. 4   Market  Adop6on  –  Customers   Internet  Companies   Enterprises   More  than  350  customers  –  7,500  produc6on  deployments  worldwide  
  5. 5. 5   Use  Cases  &  Customers   Web  app  or  Use-­‐case   Couchbase  Solu6on   Example  Customer   Content  Store  &   Metadata  System   Couchbase  document  store  +  ElasAc  Search   Social  Game  &   Mobile  App   Couchbase  store  game  and  player  data     Ad  Targe6ng   Couchbase  stores  user  informaAon  for  fast   access   User  Profile  Store   Couchbase  Server  as  a  key-­‐value  store     Session  Store   Couchbase  Server  as  a  key-­‐value  store     High  Availability     Caching  Tier   Couchbase  Server  as  a  memcached  Aer   replacement   Chat/Messaging   PlaYorm   Couchbase  Server  
  6. 6. 6   Rela6onal  Vs  NoSQL  Document   databases  
  7. 7. 7   RDBMS  Scales  Up   Get  a  bigger,  more  complex  server   Users   Applica6on  Scales  Out   Just  add  more  commodity  web  servers   Users   System  Cost   ApplicaAon  Performance     Rela6onal  Technology  Scales  Up   Rela6onal  Database   Expensive  and  disrup6ve  sharding,  doesn’t  perform  at  web  scale   System  Cost   ApplicaAon  Performance     Won’t   scale   beyond   this  point   Web/App  Server  Tier  
  8. 8. 8   Couchbase  Server  Scales  Out  Like  App   Tier   NoSQL  Database  Scales  Out   Cost  and  performance  mirrors  app  6er   Users   Scaling  out  fla_ens  the  cost  and  performance  curves   Couchbase  Distributed  Data  Store   Web/App  Server  Tier   Applica6on  Scales  Out   Just  add  more  commodity  web  servers   Users   System  Cost   ApplicaAon  Performance     ApplicaAon  Performance     System  Cost  
  9. 9. 9   If  Cars  Were  Stored  in  an  RDBMS…   h]p://iedei.files.wordpress.com/2012/04/mercedes-­‐f1-­‐car-­‐disassembled.jpeg  
  10. 10. 10   If  Cars  Were  Stored  in  a  Document   Database…   h]p://images.conceptcarz.com/imgxra/Mercedes-­‐Benz/Mercedes-­‐W03-­‐F1-­‐Spanish-­‐GP_012-­‐1680.jpg  
  11. 11. 11   Rela6onal  vs  Document  Data  Model   Rela6onal  data  model   Document  data  model   CollecAon  of  complex  documents  with   arbitrary,  nested  data  formats  and   varying  “record”  format.   Highly-­‐structured  table  organizaAon   with  rigidly-­‐defined  data  formats  and   record  structure.   JSON   JSON   C1   C2   C3   C4   JSON   {         }  
  12. 12. 12   RDBMS  Example:  User  Profile   Address  Info   1   DEN   30303  CO   2   MV   94040  CA   3   CHI   60609  IL   User  Info   KEY   First   ZIP_id  Last   4   NY   10010  NY   1   Frank   2  Weigel   2   Ali   2  Dodson   3   Mark   2  Azad   4   Steve   3  Yen   ZIP_id   CITY   ZIP  STATE   1   Frank   2  Weigel   To  get  info  about  specific  user,  you  perform  a  join  across  two  tables    
  13. 13. 13   All  data  in  a  single  document   Document  Example:  User  Profile    {          “ID”:  1,          “FIRST”:  “Frank”,          “LAST”:  “Weigel”,          “ZIP”:  “94040”,          “CITY”:  “MV”,          “STATE”:  “CA”      }   JSON   =   +  
  14. 14. 14   NoSQL  Database  Considera6ons   Easy   Scalability   Consistent  High   Performance   Flexible   Data  Model   Always  On   24x7x365   Grow  cluster  without  applicaAon   changes,  without  downAme   when  needed   Always  awesome  experience     for  your  applicaAon  users.   The  sun  never  sets  on  the  Internet,   your  applicaAon  needs  the  database   to  always  serve  data.   Keep  developers  producAve  and   allow  fast  and  easy  addiAon  of     new  features   JSON JSON JSON JSONJSON PERFORMANCE
  15. 15. 15   Couchbase  Server  Is  The  Complete   Solu6on   One  click  scalability  and  no  app   changes.   Sub  millisecond  latency  with  high   throughput  for  reads  and  writes.   Maintenance,  upgrades  and   cluster  resizing  all  online   without  applicaAon  downAme   JSON  document  model  with  no  fixed   schema.   ✔   ✔   ✔   ✔   Consistent  High   Performance   Flexible   Data  Model   Easy   Scalability   Always  On   24x7x365  
  16. 16. 16   Couchbase  Server  Overview   Clustered  NoSQL  Document  Database  for     interacAve  applicaAons       •  Easy  scalability  with  efficient  auto-­‐sharding   ­  ApplicaAon  stays  unchanged  as  cluster  size  changes   ­  Data  replicaAon  and  node  auto-­‐failover   •  Consistent  high  performance   ­  Sub  millisecond  latency  with  high  throughput   •  Always-­‐On   ­  Maintenance,  upgrades  and  cluster  resizing  all  online   without  applicaAon  downAme  
  17. 17. 17   Couchbase  Server  Features   •  Easy  scalability   •  Built-­‐in  clustering     •  All  nodes  equal   •  One  click  to  scale  horizontally     •  Consistent  High  Performance   •  Built-­‐in  managed  cache   •  High  performance  for  both  reads  and  writes     •  Always  on   •  Data  replication  with  auto-­‐failover   •  Cross  Datacenter  Replication   •  Zero-­‐downtime  maintenance   •  Monitoring  and  administration  APIs  and  GUI  
  18. 18. 18   New  Couchbase  Server  Features   •  Flexible  JSON  document  model   ­  No  fixed  schema  for  higher  producAvity  and  less  obstacles  for  developers   •  Data  indexing  and  querying   ­  Secondary  indexes  on  JSON  documents   ­  Simple  real-­‐Ame  analyAcs  via  incremental  map-­‐reduce   ­  Connector  to  full-­‐text  search  indexer   •  Cross  datacenter  replica6on   ­  Scale  your  data  beyond  a  single  data  center  
  19. 19. 19   Couchbase  Demonstra6on   •  Star6ng  with  4  database  nodes   under  load   •  Dynamically  scaling  to  6   database  nodes   •  Easy  management  and   monitoring   •  JSON  indexing  and  querying     •  Easy  configura6on  of        cross-­‐ datacenter  replica6on     •  Not  possible  any  other  database   technology     Couchbase  Servers   In  the  EC2  or  Datacenter   Web  applicaAon  server   ApplicaAon  user   XDCR  
  20. 20. 20   Couchbase  solu6on   “The  basics”  
  21. 21. 21   3  3   2   Single  node  -­‐  Couchbase  Write   Opera6on   Managed  Cache   Disk  Queue   Disk   ReplicaAon   Queue   App  Server   Couchbase  Server  Node   Doc  1  Doc  1   Doc  1   To  other  node  
  22. 22. 22   3  3   2   Single  node  -­‐  Couchbase  Update   Opera6on   Managed  Cache   Disk  Queue   ReplicaAon   Queue   App  Server   Couchbase  Server  Node   Doc  1’   Doc  1   Doc  1’  Doc  1   Doc  1’   Disk   To  other  node  
  23. 23. 23   GET   Doc  1   3  3   2   Single  node  -­‐  Couchbase  Read   Opera6on   Disk  Queue   ReplicaAon   Queue   App  Server   Couchbase  Server  Node   Doc  1   Doc  1  Doc  1   Managed  Cache   Disk   To  other  node  
  24. 24. 24   COUCHBASE  SERVER    CLUSTER   Basic  Opera6on   •  Docs  distributed  evenly  across   servers     •  Each  server  stores  both  ac6ve  and   replica  docs   ­  Only  one  server  acAve  at  a  Ame   •  Client  library  provides  app  with   simple  interface  to  database   •  Cluster  map  provides  map     to  which  server  doc  is  on   ­  App  never  needs  to  know   •  App  reads,  writes,  updates  docs   •  Mul6ple  app  servers  can  access  same   document  at  same  6me   User  Configured  Replica  Count  =  1   READ/WRITE/UPDATE       ACTIVE   Doc  5   Doc  2   Doc   Doc   Doc   SERVER  1       ACTIVE   Doc  4   Doc  7   Doc   Doc   Doc   SERVER  2   Doc  8       ACTIVE   Doc  1   Doc  3   Doc   Doc   Doc   REPLICA   Doc  4   Doc  1   Doc  8   Doc   Doc   Doc   REPLICA   Doc  6   Doc  3   Doc  2   Doc   Doc   Doc   REPLICA   Doc  7   Doc  9   Doc  5   Doc   Doc   Doc   SERVER  3   Doc  6   APP  SERVER  1   COUCHBASE  Client  Library      CLUSTER  MAP   COUCHBASE  Client  Library      CLUSTER  MAP   APP  SERVER  2   Doc  9  
  25. 25. 25   Add  Nodes  to  Cluster   •  Two  servers  added  with   one-­‐click  opera6on   •  Docs  automa6cally   rebalance  across  cluster   ­  Even  distribuAon  of  docs   ­  Minimum  doc  movement   •  Cluster  map  updated   •  App  database     calls  now  distributed     over  larger  number  of   servers         REPLICA   ACTIVE   Doc  5   Doc  2   Doc   Doc   Doc  4   Doc  1   Doc   Doc   SERVER  1       REPLICA   ACTIVE   Doc  4   Doc  7   Doc   Doc   Doc  6   Doc  3   Doc   Doc   SERVER  2       REPLICA   ACTIVE   Doc  1   Doc  3   Doc   Doc   Doc  7   Doc  9   Doc   Doc   SERVER  3       SERVER  4       SERVER  5   REPLICA   ACTIVE   REPLICA   ACTIVE   Doc   Doc  8   Doc   Doc  9   Doc   Doc  2   Doc   Doc  8   Doc   Doc  5   Doc   Doc  6   READ/WRITE/UPDATE   READ/WRITE/UPDATE   APP  SERVER  1   COUCHBASE  Client  Library      CLUSTER  MAP   COUCHBASE  Client  Library      CLUSTER  MAP   APP  SERVER  2   COUCHBASE  SERVER    CLUSTER   User  Configured  Replica  Count  =  1  
  26. 26. 26   Fail  Over  Node       REPLICA   ACTIVE   Doc  5   Doc  2   Doc   Doc   Doc  4   Doc  1   Doc   Doc   SERVER  1       REPLICA   ACTIVE   Doc  4   Doc  7   Doc   Doc   Doc  6   Doc  3   Doc   Doc   SERVER  2       REPLICA   ACTIVE   Doc  1   Doc  3   Doc   Doc   Doc  7   Doc  9   Doc   Doc   SERVER  3       SERVER  4       SERVER  5   REPLICA   ACTIVE   REPLICA   ACTIVE   Doc  9   Doc  8   Doc   Doc  6   Doc   Doc   Doc  5   Doc   Doc  2   Doc  8   Doc   Doc   •  App  servers  accessing  docs   •  Requests  to  Server  3  fail   •  Cluster  detects  server  failed   –  Promotes  replicas  of  docs  to   acAve   –  Updates  cluster  map   •  Requests  for  docs  now  go  to   appropriate  server   •  Typically  rebalance     would  follow   Doc   Doc  1   Doc  3   APP  SERVER  1   COUCHBASE  Client  Library      CLUSTER  MAP   COUCHBASE  Client  Library      CLUSTER  MAP   APP  SERVER  2   User  Configured  Replica  Count  =  1   COUCHBASE  SERVER    CLUSTER  
  27. 27. 27   XDCR:  Cross  Data  Center  Replica6on   US  DATA   CENTER     EUROPE  DATA   CENTER     ASIA  DATA   CENTER     h]p://blog.groosy.com/wp-­‐content/uploads/2011/10/internet-­‐map.jpg  
  28. 28. 28   Cross  Data  Center  Replica6on  (XDCR)   COUCHBASE  SERVER    CLUSTER   NYC  DATA  CENTER       ACTIVE   Doc     Doc  2   SERVER  1   Doc  9       SERVER  2       SERVER  3   RAM   Doc     Doc     Doc   ACTIVE   Doc   Doc     Doc     RAM   ACTIVE   Doc     Doc     Doc   RAM   DISK   Doc     Doc   Doc     DISK   Doc   Doc   Doc   DISK   COUCHBASE  SERVER    CLUSTER   SF  DATA  CENTER       ACTIVE   Doc     Doc  2   SERVER  1   Doc  9       SERVER  2       SERVER  3   RAM   Doc     Doc     Doc   ACTIVE   Doc   Doc     Doc     RAM   ACTIVE   Doc     Doc     Doc   RAM   DISK   Doc     Doc   Doc     DISK   Doc   Doc   Doc   DISK  
  29. 29. 29   Indexing  and  Querying  Features   •  Index  and  Query   ­  Distributed  indexing  and  querying   ­  Secondary  indexes  of  JSON  document  content   ­  Flexible  querying  of  indexes   •  Incremental  Map-­‐Reduce   ­  Distributed  simple  real-­‐Ame  analyAcs   ­  Only  considers  changes  due  to  updated  data   •  Full  Text  Search   ­  Robust  integraAon  with  ElasAcSearch  cluster   ­  Flexible  full  text  search  and  faceted  search  
  30. 30. 30   COUCHBASE  SERVER    CLUSTER   Indexing  and  Querying     User  Configured  Replica  Count  =  1       ACTIVE   Doc  5   Doc  2   Doc   Doc   Doc   SERVER  1   REPLICA   Doc  4   Doc  1   Doc  8   Doc   Doc   Doc   APP  SERVER  1   COUCHBASE  Client  Library      CLUSTER  MAP   COUCHBASE  Client  Library      CLUSTER  MAP   APP  SERVER  2   Doc  9   •  Indexing  work  is  distributed   amongst  nodes   •  Large  data  set  possible   •  Parallelize  the  effort   •  Each  node  has  index  for  data  stored   on  it   •  Queries  combine  the  results  from   required  nodes       ACTIVE   Doc  4   Doc  7   Doc   Doc   Doc   SERVER  2   REPLICA   Doc  6   Doc  3   Doc  2   Doc   Doc   Doc   Doc  8       ACTIVE   Doc  1   Doc  3   Doc   Doc   Doc   SERVER  3   REPLICA   Doc  7   Doc  9   Doc  5   Doc   Doc   Doc   Doc  6   Query  
  31. 31. 31   Full  Text  Search    
  32. 32. 32   The  Couchbase  difference  
  33. 33. 33   Couchbase:  The  Complete  NoSQL   Solu6on   Easy   Scalability   Flexible   Data  Model   Always  On   24x7x365   Grow  cluster  without  applicaAon   changes,  without  downAme   when  needed   Always  awesome  experience     for  your  applicaAon  users.   The  sun  never  sets  on  the  Internet,   your  applicaAon  needs  the  database   to  always  serve  data.   Keep  developers  producAve  and   allow  fast  and  easy  addiAon  of     new  features   JSON JSON JSON JSONJSON PERFORMANCE Consistent  High   Performance  
  34. 34. 34   Consistent  High  Performance   •  Consistent,  predictable  sub  millisecond  latency   ­  Apps  need  fast,  predictable  access  to  data,  it’s  not  good  enough  to  be  fast   some  of  the  Ame   •  Consistent,  predictable  throughput   ­  Throughput  capacity  of  your  data  layer  should  be  independent  of  the  mix   of  reads  and  writes   •  Linear  throughput  scalability   ­  Double  the  number  of  servers,  get  twice  the  maximum  throughput  and   double  the  data  capacity  
  35. 35. 35   YCSB  Benchmark  Details     •  Web  applica6on  simula6on     ­  Simulates  changing  set  of  users  using  the  app/accessing  data     ­  Document  size  of  1.5-­‐2K  with  15  million  acAve  documents   •  Data  doesn’t  enArely  fit  into  RAM   ­  Workload  simulaAng  realisAc  mix  of  reads  and  writes  (60/40)   •  System  details   ­  4  node  cluster  with  seperate  node  to  run  client  workload   ­  AWS  Extra  Large  instances  with  striped  EBS   ­  1  replica  setup  (For  mongoDB  -­‐  no  write  concern,  no  journaling)   ­  Each  test  run  3  Ames  with  varying  throughputs  with  95%  latency  measured     •  YCSB  test  workload  source  code     ­  h]ps://github.com/Altoros/YCSB  
  36. 36. 36   Read  performance  comparison  -­‐  NoSQL   databases   0   2   4   6   8   10   12   14   16   18   0   2000   4000   6000   8000   10000   12000   14000   16000   18000   20000   22000    95th  Percen6le  Latency  (ms)     Opera6ons  per  Second   Read  latencies  against  throughput   MongoDB  cannot  handle   throughput  above  ~  8000  ops  /  sec   Couchbase  handles  ~3X  throughput   with  significantly  lower  latency     MongoDB   Cassandra   Couchbase   h]ps://github.com/Altoros/YCSB  
  37. 37. 37   Write  performance  comparison  -­‐   NoSQL  databases   0   5   10   15   20   25   30   0   2000   4000   6000   8000   10000   12000   14000   16000   18000   20000   22000    95th  Percen6le  Latency  (ms)     Opera6ons  per  Second   Insert/update  latencies  against  throughput   MongoDB  latency  shoots   up  beyond  6000  ops  /  sec   Couchbase  latency  stays  consistently   low  even  at  20000  ops  /  sec   MongoDB   Cassandra   Couchbase  
  38. 38. 38   LinkedIn  4  node  cluster  
  39. 39. 39   NoSQL  Database  Considera6ons   Easy   Scalability   Flexible   Data  Model   Always  On   24x7x365   Grow  cluster  without  applicaAon   changes,  without  downAme   when  needed   Always  awesome  experience     for  your  applicaAon  users.   The  sun  never  sets  on  the  Internet,   your  applicaAon  needs  the  database   to  always  serve  data.   Keep  developers  producAve  and   allow  fast  and  easy  addiAon  of     new  features   JSON JSON JSON JSONJSON PERFORMANCE Consistent  High   Performance  
  40. 40. 40   Couchbase:  High  throughput  that   scales  linearly       Linear  throughput   scalability   High  throughput  with  1.4   GB/sec  data  transfer  rate   using  4  servers   h]p://www.cisco.com/en/US/prod/collateral/switches/ps9441/ps9670/white_paper_c11-­‐708169.pdf  
  41. 41. 41   Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)   Feb  2012                                    March  2012  
  42. 42. 42   As  Usage  Grew,  Game  Data  Went  Non-­‐ Linear  Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)   Feb  2012                                    March  2012  
  43. 43. 43   NoSQL  Database  Considera6ons   Easy   Scalability   Flexible   Data  Model   Always  On   24x7x365   Grow  cluster  without  applicaAon   changes,  without  downAme   when  needed   Always  awesome  experience     for  your  applicaAon  users.   The  sun  never  sets  on  the  Internet,   your  applicaAon  needs  the  database   to  always  serve  data.   Keep  developers  producAve  and   allow  fast  and  easy  addiAon  of     new  features   JSON JSON JSON JSONJSON PERFORMANCE Consistent  High   Performance  
  44. 44. 44   The  Sun  Never  Sets  on  the  Internet   h]p://personal.bgsu.edu/~tede/020522_briAshempire1360.jpg  
  45. 45. 45   Always-­‐On  24x7x365:  Proof  Point   Example   0   20   40   60   80   100   82   57   72   Couchbase   Data  Store  Availability  
  46. 46. 46   Couchbase  Server  Is  The  Complete   Solu6on   One  click  scalability  and  no  app   changes.   Sub  millisecond  latency  with  high   throughput  for  reads  and  writes.   Maintenance,  upgrades  and   cluster  resizing  all  online   without  applicaAon  downAme   JSON  document  model  with  no  fixed   schema.   ✔   ✔   ✔   ✔   Consistent  High   Performance   Flexible   Data  Model   Easy   Scalability   Always  On   24x7x365  
  47. 47. 47   Couchbase  Server  vs.  MongoDB   Easy   Scalability            Consistent,  High   Performance   Flexible   Data  Model   Always  On   24x7x365   Consistent  sub  millisecond     reads/writes;   Consistent  high  throughput   No  downAme  for   sotware  upgrades,   hardware   maintenance,  etc.   Schemaless  data   model  for  rapid   development   With  1-­‐click,  horizontally   grow  cluster,  even  scale   across  datacenters     High  &  Inconsistent  latency;   Lower  throughput   Schemaless  data   model  for  rapid   development   Difficult  online   upgrade;   Not  all  maintenance   is  online   Complex  mulA-­‐step  scaling,   no  write  scaling  across  data   centers   ✔   ✖   ✔   ✔   ✔   ✔   ✖   ✖   ✔  
  48. 48. 48   Consistent  Lower  Latencies  and  Higher   Throughput   •  Couchbase   ­  High  read  and  write  throughput  and  consistent  low  latencies   ­  Write  performance  advantage  due  to  low  granularity  of  Couchbase   memory  locking  mechanism  and  minimal  contenAon   ­  Read  operaAons  happen  concurrently  with,  and  independently  of  writes   •  MongoDB   ­  Severely  limited  write  throughput  due  to  very  coarse  write  locks  that  limit   concurrency  at  the  node  level     ­  Inconsistent  latencies  and  throughput  as  all  reads  need  to  wait  for  a  write   to  finish.     •  Cost  Considera6ons    
  49. 49. 49   Couchbase  Server  vs.  Cassandra   Easy   Scalability   Consistent,  High   Performance   Flexible   Data  Model   Always  On   24x7x365   Consistent  sub-­‐millisecond     reads/writes  and  high   throughput   No  downAme  for   sotware  upgrades,   hardware  maintenance,   etc.   Schemaless  data   model  for  rapid   development   With  1-­‐click,  horizontally   grow  cluster,  even  scale   across  datacenters   High  and  inconsistent   latency;  medium   throughput   Very  complex   columnar  data   model   Online  upgrades  and   online  maintenance   Complex  mulA-­‐step   scaling,  coarse  grain   growth  recommended   ✔   ✔   ✔   ✔   ✖   ✖   ✖   ✔  
  50. 50. 50   Next  steps  
  51. 51. 51   Enterprise  vs.  Community  Edi6on   Enterprise  Edi6on   Community  Edi6on   Cost   •  Free  for  pre-­‐producAon   •  StarAng  at  $2,499/node/yr   •  Free   Produc6on   Readiness   ProducAon  Ready   •  Take  open  source  snapshots   •  Put  through  rigorous  QA  process,  fix  bugs   Unknown  ProducAon  Readiness   •  Built  with  latest  open  source   •  Undefined  quality   Technical   Support   Professional  Support   •  Defined  SLAs  from  the  experts   •  Immediate  hot  bug  fixes   Community/Forum  Support   •  No  SLA,  unknown  response  Ames   •  No  bugs  fixes  assured  in  a  Amely  manner   Best  Prac6ce   Exper6se     Broad  Best  PracAce  ExperAse   •  From  working  with  100s  of  customers   ExperAse  of  community  members   •  Based  on  limited  individual  experAse   Release   Support   Long-­‐Tail  Release  Support   •  Including  hot  bug  fixes   No  Support  for  Old  Releases   •  Must  support  old  releases  yourself   License  Type   Commercial  License   •  Std  license  terms,  SLA,  indemnity   Simple  “As  is”  license   Intended  Use   ProducAon  Deployments   Non-­‐ProducAon  Use,  Simple  Use  Cases  
  52. 52. 52   Next  Steps:  The  Path  to  Produc6on   ü           Couchbase  Overview  –  Done   2.  Technical  session     • Who:  Architects/Developers  and  Couchbase   SoluAons  Architect   • Deployment  and  development  best  pracAces   • OperaAons  deep-­‐dive   • Tech  Q&A   3.  Design  review   •  Review  and  feedback  on  design  and  feature  usage   •  Verify  assumpAons  and  use  of  Couchbase  APIs   4.  Produc6on  deployment  
  53. 53. 53   Thank  you     Couchbase     NoSQL  Document  Database  
  54. 54. 54   Backup  Slides  
  55. 55. 55   Couchbase  Server  Features   •  Graphical  monitoring  and  admin  console  with  RESTful  interface   ­  Single  click  cluster  resizing,  powerful  monitoring  accessible  via  every  node   •  Online  upgrades,  backups  and  database  maintenance   ­  Database  is  always  online,  applicaAons  can  be  available  24x7x365   •  All  nodes  are  iden6cal   ­  Easy  provisioning  on  all  supported  plaxorms:  Linux,  Windows,  MacOS   •  Supported  SDKs  for  all  common  languages   ­  Easy  adopAon  by  developers  for  Java,  .NET,  PHP,  Ruby,  C/C++  
  56. 56. 56   Couchbase  performance  with  varying   document  sizes   Consistently  low  latencies   sub-­‐millisecond  for   varying  documents  sizes   with  a  mixed  workload  
  57. 57. 57   Enterprise  Edi6on  Subscrip6ons   Standard   Premium   Price/node   $2499     $4499   Licensing   Per  node     Per  node   Support  Hours   10  X  5     24  X  7   Hours  of   Opera6on   7am  –  5pm  Pacific  Standard  Time     N/A   Support  Channel   Phone,  Email,  Web,  Forums     Phone,  Email,  Web,  Forums   P1  Response  Time   5  hours   2  hours   P2  Response  Time   1  day   5  hours   Update  releases   Yes   Yes   HoYixes   Yes   Yes   Technical  Alerts   Yes   Yes   h]p://www.couchbase.com/couchbase-­‐support-­‐and-­‐subscripAons  
  58. 58. 58   sales@couchbase.com     Replace  a  Memcached  Tier     with  Couchbase  Server    
  59. 59. 59   Challenges  with  a  Memcached  Tier   Problem   Symptoms   Couchbase  Solu6on   Cold  Cache   Slowdown  or  collapse  of  the  data   service  layer  due  to  heavily   overloaded  RDBMS  when   memcached  nodes  go  down  (on   failure  or  for  maintenance)   Data  is  automaAcally  replicated  across   the  Couchbase  cluster,  providing  high   availability  of  data  even  on  failures   Heavy  RDBMS   Conten6on   MulAple  requests  for  data  items  that   do  not  exist  in  the  cache  results  in   sudden  shiting  of  load  to  the   relaAonal  database  causing  heavy   contenAon   By  replicaAng  data  across  the  cluster,   Couchbase  Server  provides  consistent   performance  without  shiting  load  to   the  RDBMS  layer   Lack  of  Scalability   Adding  or  removing  memcached   nodes  is  complicated  and  causes   unpredictable  applicaAon   performance  degradaAon   Auto-­‐sharding  and  online  rebalancing   in  Couchbase  Server  provides  easy  non-­‐ disrupAve  expansion  of  the  cluster   Complex   Monitoring   Management  of  individual   memcached  nodes  increases  the   complexity  of  operaAons  and  lacks  a   single  consistent  view  of  the  caching   layer   Couchbase  Server  provides  an  in-­‐built   admin  console  for  cluster  wide   management  and  monitoring  as  well  as   RESTful  APIs  for  easy  automaAon  and   third-­‐party  integraAon  
  60. 60. 60   Before  and  Azer:     Replacing  Caching  Tier  with  Couchbase   Server  
  61. 61. 61   Memcached  Tier  Replacement:  How  it   Works   •  Fully  memcached  protocol  compa6ble   •  Easy  to  replace  a  6er  of  individual  memcached  servers  with  a   Couchbase  Server  cluster     •  The  cluster  receives  reads  and  writes,  keeps  frequently  accessed   items  in  memory,  persists  and  shards  and  replicates  the  data   amongst  the  cluster   •  Reads  and  writes  are  s6ll  as  low  latency  and  high  throughput  as   memcached     •  User  gets  all  the  scalability  and  high-­‐availability  advantages  of  a   Couchbase  Server  cluster    
  62. 62. 62   sales@couchbase.com     Draw  Something   Success  Story  
  63. 63. 63   How  to  Prepare  Your  Social  Game  for  Massive  Growth   Published  February  2,  2012   h]p://mashable.com/2012/02/01/social-­‐game-­‐prepare-­‐growth/   Five  days  later…  
  64. 64. 64   Draw  Something  by  OMGPOP  
  65. 65. 65   Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)  
  66. 66. 66   As  Usage  Grew,  Game  Data  Went  Non-­‐ Linear  Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)  
  67. 67. 67   In  Contrast…   The  Simpson’s:  Tapped  Out   Daily  Ac)ve  Users  (millions)  

×