34
a Supposi)on: “ can MySQL be Ka5a ? ” vishnu rao – pocketmath.com

a wild Supposition: can MySQL be Kafka ?

Embed Size (px)

Citation preview

a  Supposi)on:  “  can  MySQL  be  Ka5a  ?  ”  

vishnu  rao  –  pocketmath.com  

Apache  Ka5a  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  – Producer  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  – Producer  – Topic  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  – Producer  – Topic  – Consumer  

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  – Producer  – Topic  – Consumer  – Message  offset    

Apache  Ka5a  

•  A  publish-­‐subscribe  messaging  system  implemented  as  distributed  commit  log.  

•  No)ons:  – Producer  – Topic  – Consumer  – Message  offset  – Broker    

•  Producers  publish  messages  to  a  topic.      

•  Producers  publish  messages  to  a  topic.      •  Topic  is  just  a  par))oned  write-­‐ahead  log.  Producers  APPEND  records  to  these  logs.  

 

•  Producers  publish  messages  to  a  topic.      •  Topic  is  just  a  par))oned  write-­‐ahead  log.  Producers  APPEND  records  to  these  logs.  

•  Every  message  is  at  a  OFFSET  in  the  log.  

•  Producers  publish  messages  to  a  topic.      •  Topic  is  just  a  par))oned  write-­‐ahead  log.  Producers  APPEND  records  to  these  logs.  

•  Every  message  is  at  a  OFFSET  in  the  log.  

•  Consumers  consume  messages  from  logs  using  offset  

What  about  …  

•  Replicas?  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

•  Mul)ple  Par))ons  in  a  ka5a  broker  Versus  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

•  Mul)ple  Par))ons  in  a  ka5a  broker  Versus  – Single  par))on(binlog)  in  a  MySQL  instance  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

•  Mul)ple  Par))ons  in  a  ka5a  broker  Versus  – Single  par))on(binlog)  in  a  MySQL  instance  

•  Data  Reten)on  ?  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

•  Mul)ple  Par))ons  in  a  ka5a  broker  Versus  – Single  par))on(binlog)  in  a  MySQL  instance  

•  Data  Reten)on  ?  –  How  long  you  keep  the  binlogs.  

What  about  …  

•  Replicas?  – MySQL  Master  –  Slave  

•  Horizontally  Scalable  ?  – Add  more  MySQL  instances  (split  write)  

•  Mul)ple  Par))ons  in  a  ka5a  broker  Versus  – Single  par))on(binlog)  in  a  MySQL  instance  

•  Data  Reten)on  ?  –  How  long  you  keep  the  binlogs.  

•  Transac)ons  for  free  versus  no  txn  in  ka5a  

     

This  approach  might  seem  unconven)onal  &  unorthodox.  

     

     

This  approach  might  seem  unconven)onal  &  unorthodox.  

     

hence  It’s  a  WILD  supposi)on  “MySQL  can  be  Ka5a.”  

Thank  you.  

We  are  Hiring!  h]p://www.pocketmath.com/jobs.html  

 [email protected]  [email protected]  sweetweet213@twi]er