34
Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®IgniteDecember 7, 2016 Nikita Ivanov CTO and Co-Founder GridGain Systems Peter Zaitsev CEO and Co-Founder Percona

Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

AccelerateMySQL®forDemandingOLAPandOLTPUseCasewithApache®Ignite™

December7,2016

NikitaIvanovCTOandCo-FounderGridGainSystems

PeterZaitsevCEOandCo-FounderPercona

Page 2: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona2

AboutthePresentation

Problems

ExistingSolutions

NikitaIvanovwillshowthepowerofApacheIgnite

Page 3: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona3

AboutPercona

WeExisttohelpyoutosucceedwithMySQLandMongoDB

Page 4: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona4

SupportBroadEcosystem

PerconaServerforMySQL

MySQL MariaDB

AWSforMySQLandAurora

MongoDBPerconaServerforMongoDB

GoogleCloudSQL

Page 5: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona5

Percona Software– 100%OpenSource

PerconaServerforMySQL

PerconaServerforMongoDB

PerconaXtraDBCluster

PerconaXtrabackup PerconaToolkit

PerconaMonitoringandManagement

Page 6: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona6

Services

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

Page 7: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona7

MyConviction

Thereisnosilverbulletintechnology!

Page 8: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona8

Why?

Alldesigndecisionscomeswiththeirownbenefitsanddrawbacks

Page 9: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona9

TechnologiesnotTechnology

LargeScaleapplicationstendtousemorethanonetechnologyondata

layer

Page 10: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona10

WorksespeciallywellwithOpenSource!

AdditionalComponentsdonotrequireheftylicensefees

Easytoprototypeandtestout

OpenSourceCommunityisgoodatbuildingbridges

Page 11: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona11

BalanceisNeeded

Useasmanytechnologiesasyouneed,butnomore

Page 12: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona12

MySQL

MySQLisnoException.ItisnotGreatfor

Everything.

Page 13: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona13

SomeoftheProblems

HotData

HighlyVolatileData

LargeDataVolume

AnalyticalProcessing

FullTextSearch

Page 14: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona14

HotData

Forexample“Cache”

Largevolumeofsimplerequests

HighoverheadduetoSQL

NogoodMemoryfocusedEngine

NotDesignedforveryhighConcurrency

Page 15: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona15

Solutions

MySQL

••MemcacheDinterface

••ThreadPool

External

••MemcacheD••Redis

Page 16: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona16

HighlyVolatileData

Lotsofupdates,especiallytoasinglerow

DesignaroundfullTransactionalACIDsemantics

DiskLogbaseddurability

PessimisticLogging

Page 17: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona17

Solutions

MySQL

••DataDesign••ConfigurationTuning

••ParallelReplication

External

••MemcacheD••Redis

Page 18: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona18

LargeDataVolume

MySQLisdesignedassinglenodesystem

LimitedinCPU,Memory

Manual“Sharding”solutionsarepainful

Especiallywithcomplexqueries

Page 19: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona19

Solutions

MySQL

••ManualSharding

••Vitess••ProxySQL

External

••ShadingforMemcacheDandRedis

••MongoDB••Cassandra

Page 20: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona20

Analytics(OLAP)

MySQLdoesnotsupportcolumnbasedstorage

MySQLoptimizerislimitedforcomplexqueries

MySQLdoesnotdoparallelqueryexecution

MySQLdoesnotdodistributedqueryexecution

Page 21: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona21

Solutions

MySQL

••ConfigurationandSchemaDesign(Limited)

External

••Hadoop&Spark

••Vertica••ClickHouse

Page 22: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona22

FullTextSearch

CanhandlebasicFullTextSearch

Doesnotscalewellwithdatavolume

Noparallelprocessing

Limitedsearchrelevanceoptions

HardTodoGISsearches;Facets

Nolanguageprocessing

Page 23: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona23

Solutions

MySQL

••SmallScalesearchapplicationsonly

••SupportedwithInnodbtablessinceMySQL5.6

External

••Elastic••Solr••Sphinx

Page 24: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona24

NewSolutionsconstantlyappear

Alwaysbeonlookoutforabettersolutions!

Page 25: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona25

ApacheIgnite

NikitaIvanovwillshowwhatyoucandowith

ApacheIgnite!

Page 26: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

AccelerateMySQL®forDemandingOLAPandOLTPUseCaseswithApache®Ignite™

December7,2016

NikitaIvanov

Founder&CTO,GridGainSystemsApacheIgnitePMC

Page 27: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

WhyIn-MemoryComputingNow?DecliningDRAMCost

Costdrops30%every12months8zettabytesin2015growingto35in2020

DRAM

DataGrowthDrivingDemand

Disk

Flash0

5

10

15

20

25

30

35

2009 2010 2015 2020

GrowthofGlobalData

Zettab

ytesofD

ata

Page 28: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2014GridGainSystems,Inc.

In-MemoryDataFabricIdealacceleratorforSQLdatastoresandapps

ApacheIgniteisaleadingopen-source,cloud-readydistributedsoftwaredelivering100xperformanceandscalabilitybystoringandprocessingdatainmemoryacrossscaleoutorscaleupinfrastructure.

Page 29: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2014GridGainSystems,Inc.

In-MemoryDataFabricMaincomponents

Page 30: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2014GridGainSystems,Inc.

• DistributedIn-MemoryKey-ValueStore• ReplicatedandPartitioneddata• TBsofdata,ofanytype• On-HeapandOff-HeapStorage• HighlyAvailableIn-MemoryReplicas• AutomaticFailover• DistributedACIDTransactions• SQL99 queriesandJDBC/ODBC driver• CollocationofComputeandData

In-MemoryDataGrid

Page 31: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2014GridGainSystems,Inc.

• DirectAPIforMapReduce• ZeroDeployment• Cron-likeTaskScheduling• StateCheckpoints• LoadBalancing• AutomaticFailover• FullClusterManagement• PluggableSPIDesign

In-MemoryComputeGrid

Page 32: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

SmartMeteringandUtilities– deliversacomprehensiveIoTplatform

50+ Million Meters

• SilverSpring Requirements:– 100xspeedupofDB-basedops– Addscalability&elasticity– Useopensourcetechnologies

• WhyGridGainUsed:– Strongcomputecapabilities

• Co-locatedin-memoryprocessing– Demonstratedbest

• On-demandelasticity&scalability• ANSI-99SQLSupport• Transactionalconsistency

SilverSpring IoT Platform

GridGainSecurity

Page 33: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2016Percona33

JoinUsatPerconaLive!MySQL,MongoDB,OpenSourceDatabases▪April24-27,2017▪SantaClara,CA▪Tutorials,keynotesandsessionsfromtechnicalexperts

Use“WebinarPL”codetoreceivea10%discount▪SaveevenmorewithearlybirdpricinguntilJanuary8th▪https://www.percona.com/live/17/register

Sponsorshipopportunitiesavailable▪https://www.percona.com/live/17/be-a-sponsor

Page 34: Accelerate MySQL for Demanding OLAP and OLTP Use …...Accelerate MySQL® for Demanding OLAP and OLTP Use Case with Apache®Ignite™ December 7, 2016 Nikita Ivanov CTO and Co-Founder

©2014GridGainSystems,Inc.

MoreInformationPerconahttps://www.percona.com/• PeterZaitsev:[email protected]• Consulting:https://www.percona.com/services/consulting

GridGainSystemshttps://www.gridgain.com/• NikitaIvanov:[email protected]• GridGainProfessionalorEnterpriseEditionfor30-DayTrial:https://www.gridgain.com/resources/download

• ApacheIgnite:https://ignite.apache.org/

THANKYOU!!!