Your SlideShare is downloading. ×
0
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Couchbase overview033113long
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Couchbase overview033113long

338

Published on

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

No Downloads
Views
Total Views
338
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 1   Jeff  Harris     Business  Development   NoSQL  Document  Database   Data  Management  for     Interac6ve  Applica6ons  
  • 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   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   Market  Adop6on  –  Customers   Internet  Companies   Enterprises   More  than  350  customers  –  7,500  produc6on  deployments  worldwide  
  • 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   Rela6onal  Vs  NoSQL  Document   databases  
  • 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   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   If  Cars  Were  Stored  in  an  RDBMS…   h]p://iedei.files.wordpress.com/2012/04/mercedes-­‐f1-­‐car-­‐disassembled.jpeg  
  • 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   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   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   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   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   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   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   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   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   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   Couchbase  solu6on   “The  basics”  
  • 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   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   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   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   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   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   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   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   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   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   Full  Text  Search    
  • 32. 32   The  Couchbase  difference  
  • 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   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   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   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   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   LinkedIn  4  node  cluster  
  • 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   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   Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)   Feb  2012                                    March  2012  
  • 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   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   The  Sun  Never  Sets  on  the  Internet   h]p://personal.bgsu.edu/~tede/020522_briAshempire1360.jpg  
  • 45. 45   Always-­‐On  24x7x365:  Proof  Point   Example   0   20   40   60   80   100   82   57   72   Couchbase   Data  Store  Availability  
  • 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   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   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   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   Next  steps  
  • 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   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   Thank  you     Couchbase     NoSQL  Document  Database  
  • 54. 54   Backup  Slides  
  • 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   Couchbase  performance  with  varying   document  sizes   Consistently  low  latencies   sub-­‐millisecond  for   varying  documents  sizes   with  a  mixed  workload  
  • 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   sales@couchbase.com     Replace  a  Memcached  Tier     with  Couchbase  Server    
  • 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   Before  and  Azer:     Replacing  Caching  Tier  with  Couchbase   Server  
  • 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   sales@couchbase.com     Draw  Something   Success  Story  
  • 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   Draw  Something  by  OMGPOP  
  • 65. 65   Draw  Something  “Goes  Viral”  3  Weeks   Azer  Launch     Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)  
  • 66. 66   As  Usage  Grew,  Game  Data  Went  Non-­‐ Linear  Draw  Something  by  OMGPOP   Daily  Ac)ve  Users  (millions)  
  • 67. 67   In  Contrast…   The  Simpson’s:  Tapped  Out   Daily  Ac)ve  Users  (millions)  

×