Couchbase overview033113long


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
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://­‐f1-­‐car-­‐disassembled.jpeg  
  10. 10. 10  If  Cars  Were  Stored  in  a  Document  Database…  h]p://­‐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  JSONJSONJSONJSONJSONPERFORMANCE
  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://­‐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  JSONJSONJSONJSONJSONPERFORMANCEConsistent  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://  
  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://  
  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  JSONJSONJSONJSONJSONPERFORMANCEConsistent  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://­‐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  JSONJSONJSONJSONJSONPERFORMANCEConsistent  High  Performance  
  44. 44. 44  The  Sun  Never  Sets  on  the  Internet  h]p://  
  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://­‐support-­‐and-­‐subscripAons  
  58. 58. 58    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    Draw  Something  Success  Story  
  63. 63. 63  How  to  Prepare  Your  Social  Game  for  Massive  Growth  Published  February  2,  2012  h]p://­‐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)