Accelerate MySQL for Demanding OLAP and OLTP Use Case ...

34
Accelerate MySQL for Demanding OLAP and OLTP Use Case with Apache Ignite December 7, 2016 Nikita Ivanov CTO and CoFounder GridGain Systems Peter Zaitsev CEO and CoFounder Percona

Transcript of Accelerate MySQL for Demanding OLAP and OLTP Use Case ...

Accelerate  MySQL  for  Demanding  OLAP  and  OLTP  Use  Case  with  Apache  Ignite  

December  7,  2016  

Nikita  Ivanov  CTO  and  Co-­‐Founder  GridGain  Systems  

Peter  Zaitsev  CEO  and  Co-­‐Founder  Percona  

©  2016  Percona  2  

About  the  Presenta/on  

Problems    

Exis/ng  Solu/ons  

Nikita  Ivanov  will  show  the  power  of  Apache  Ignite  

©  2016  Percona  3  

About  Percona    

We  Exist  to  help  you  to  succeed  with  MySQL  and  MongoDB  

©  2016  Percona  4  

Support  Broad  Ecosystem  

Percona  Server  for  MySQL  

MySQL   MariaDB  

AWS  for  MySQL  and  Aurora  

MongoDB  Percona  Server  for  MongoDB  

Google  CloudSQL  

©  2016  Percona  5  

Percona  SoEware  –  100%  Open  Source      

Percona  Server    for  MySQL  

Percona  Server  for  MongoDB  

Percona  XtraDB  Cluster  

Percona  Xtrabackup   Percona  Toolkit    

Percona  Monitoring  and  Management  

©  2016  Percona  6  

Services    

•  Support •  More than Support (Percona Care) •  Managed Services (Percona Care Ultimate) •  Consulting, Training

©  2016  Percona  7  

My  Convic/on  

There  is  no  silver  bullet  in  technology!    

©  2016  Percona  8  

Why  ?  

All  design  decisions  comes  with  their  own  benefits  and  drawbacks  

©  2016  Percona  9  

Technologies  not  Technology  

Large  Scale  applica/ons  tend  to  use  more  than  one  technology  on  data  

layer  

©  2016  Percona  10  

Works  especially  well  with  Open  Source!  

Addi/onal  Components  do  not  require  heEy  license  fees  

Easy  to  prototype  and  test  out  

Open  Source  Community  is  good  at  building  bridges  

©  2016  Percona  11  

Balance  is  Needed  

Use  as  many  technologies  as  you  need,  but  no  more  

©  2016  Percona  12  

MySQL  

MySQL  is  no  Excep/on.    It  is  not  Great  for  

Everything.  

©  2016  Percona  13  

Some  of  the  Problems  

Hot  Data  

Highly  Vola/le  Data    

Large  Data  Volume  

Analy/cal  Processing    

Full  Text  Search  

©  2016  Percona  14  

Hot  Data  

For  example  “Cache”  

Large  volume  of  simple  requests  

High  overhead  due  to  SQL  

No  good  Memory  focused  Engine  

Not  Designed  for  very  high  Concurrency  

©  2016  Percona  15  

Solu/ons  

MySQL  

• MemcacheD  interface  • Thread  Pool    

External  

• MemcacheD  • Redis  

©  2016  Percona  16  

Highly  Vola/le  Data  

Lots  of  updates,  especially  to  a  single  row  

Design  around  full  Transac/onal  ACID  seman/cs  

Disk  Log  based  durability  

Pessimis/c  Logging  

©  2016  Percona  17  

Solu/ons  

MySQL  

• Data  Design  • ConfiguraXon  Tuning  

• Parallel  ReplicaXon    

External  

• MemcacheD  • Redis  

©  2016  Percona  18  

Large  Data  Volume    

MySQL  is  designed  as  single  node  system    

Limited  in  CPU,  Memory  

Manual  “Sharding”  solu/ons  are  painful  

Especially  with  complex  queries    

©  2016  Percona  19  

Solu/ons  

MySQL  

• Manual  Sharding  • Vitess  • ProxySQL  

External  

• Shading  for  MemcacheD  and  Redis  

• MongoDB  • Cassandra  

©  2016  Percona  20  

Analy/cs  (OLAP)  

MySQL  does  not  support  column  based  storage    

MySQL  op/mizer  is  limited  for  complex  queries  

MySQL  does  not  do  parallel  query  execu/on  

MySQL  does  not  do  distributed  query  execu/on  

©  2016  Percona  21  

Solu/ons  

MySQL  

• ConfiguraXon  and  Schema  Design  (Limited)  

External  

• Hadoop  &  Spark  

• VerXca  • ClickHouse  

©  2016  Percona  22  

Full  Text  Search  

Can  handle  basic  Full  Text  Search  

Does  not  scale  well  with  data  volume    

No  parallel  processing    

Limited  search  relevance  op/ons  

Hard  To  do  GIS    searches;  Facets    

No  language  processing    

©  2016  Percona  23  

Solu/ons  

MySQL  

• Small  Scale  search  applicaXons  only  

• Supported  with  Innodb  tables  since  MySQL  5.6  

External  

• ElasXc    • Solr  • Sphinx  

©  2016  Percona  24  

New  Solu/ons  constantly  appear  

Always  be  on  lookout  for  a  beger  solu/ons!  

©  2016  Percona  25  

Apache  Ignite  

Nikita  Ivanov  will  show  what  you  can  do  with  

Apache  Ignite!    

Accelerate  MySQL®  for  Demanding  OLAP  and  OLTP  Use  Cases  with  Apache®  Ignite™  

December  7,  2016  

Nikita  Ivanov    

Founder  &  CTO,  GridGain  Systems  Apache  Ignite  PMC  

Why  In-­‐Memory  CompuXng  Now?  Declining  DRAM  Cost  

Cost  drops  30%  every  12  months  8  zeeabytes  in  2015  growing  to  35  in  2020  

DRAM  

Data  Growth  Driving  Demand  

Disk  

Flash  0  

5  

10  

15  

20  

25  

30  

35  

2009   2010   2015   2020  

Growth  of  Global  Data  

Zegab

ytes  of  D

ata  

©  2014  GridGain  Systems,  Inc.  

In-­‐Memory  Data  Fabric  Ideal  accelerator  for  SQL  data  stores  and  apps  

 Apache  Ignite  is  a  leading  open-­‐source,  cloud-­‐ready  distributed  sohware  delivering  100x  performance  and  scalability  by  storing  and  processing  data  in  memory  across  scale  out  or  scale  up  infrastructure.  

©  2014  GridGain  Systems,  Inc.  

In-­‐Memory  Data  Fabric  Main  components  

©  2014  GridGain  Systems,  Inc.  

•  Distributed  In-­‐Memory  Key-­‐Value  Store  •  Replicated  and  ParXXoned  data  •  TBs  of  data,  of  any  type  •  On-­‐Heap  and  Off-­‐Heap  Storage  •  Highly  Available  In-­‐Memory  Replicas  •  AutomaXc  Failover    •  Distributed  ACID  TransacXons    •  SQL99  queries  and  JDBC/ODBC  driver  •  CollocaXon  of  Compute  and  Data  

In-­‐Memory  Data  Grid  

©  2014  GridGain  Systems,  Inc.  

• Direct  API  for  MapReduce  •  Zero  Deployment  • Cron-­‐like  Task  Scheduling  •  State  Checkpoints  •  Load  Balancing  • AutomaXc  Failover  •  Full  Cluster  Management  • Pluggable  SPI  Design  

In-­‐Memory  Compute  Grid  

Smart  Metering  and  UXliXes  –  delivers  a  comprehensive  IoT  plaoorm  

50+ Million Meters

•  SilverSpring  Requirements:  –  100x  speed  up  of  DB-­‐based  ops  –  Add  scalability  &  elasXcity  –  Use  open  source  technologies  

•  Why  GridGain  Used:  –  Strong  compute  capabiliXes  

•  Co-­‐located  in-­‐memory  processing  –  Demonstrated  best  

•  On-­‐demand  elasXcity  &  scalability  •  ANSI-­‐99  SQL  Support  •  TransacXonal  consistency  

SilverSpring IoT Platform

GridGain Security

©  2016  Percona  33  

Join  Us  at  Percona  Live!  MySQL,  MongoDB,  Open  Source  Databases  ▪ April  24-­‐27,  2017  ▪ Santa  Clara,  CA  ▪ Tutorials,  keynotes  and  sessions  from  technical  experts  

Use  “WebinarPL”  code  to  receive  a  10%  discount  ▪ Save  even  more  with  early  bird  pricing  unXl  January  8th  ▪ heps://www.percona.com/live/17/register  

Sponsorship  opportuni/es  available  ▪ heps://www.percona.com/live/17/be-­‐a-­‐sponsor    

©  2014  GridGain  Systems,  Inc.  

More  InformaXon  Percona  heps://www.percona.com/  •  Peter  Zaitsev:  [email protected]  •  ConsulXng:  heps://www.percona.com/services/consulXng  

 GridGain  Systems  heps://www.gridgain.com/  •  Nikita  Ivanov:  [email protected]  •  GridGain  Professional  or  Enterprise  EdiXon  for  30-­‐Day  Trial:  heps://www.gridgain.com/resources/download  

•  Apache  Ignite:  heps://ignite.apache.org/    

THANK  YOU!!!