advanced analy9cs & graph ... - the oracle big data€¦ · • oracle advanced analy9cs in...
TRANSCRIPT
OracleBIWASummit2017
AdvancedAnaly9cs&Graph:TransparentlytakingadvantageofHardwareinnova9onsintheCloud
BradCarlile,Sr.Direc9onSolu9onsArchitectureEngineeringOracleAddi$onalinfoonProofpoints:hLp://blogs.oracle.com/bestperf
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
ModernAnaly9csisaboutYourData&ExternalData
• Analy9csisnowyourdataPLUSexternaldata– OracleDatabaseIn-MemoryFastestonSPARC
– Con9nuouslyanalyzingsamedataindifferentways–
Fastestifstoredatain-memory
• Manywaystoaccessexternaldata
– Socialnetworks,publicdata:sen9ments,weather,
traffic,events,ra9ngs,trends,IoTsensors,behaviors,…
– LotsofETL/filteringneededtofindusefuldata– BigDataSQL
Confiden9al–OracleInternal/Restricted/HighlyRestricted2
Be#erinforma,onwhenyoucananalyzeallrelevantdata
Weather
Tweets
ExternalData
Order
Customer
YourData
SensorsSocial
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
OracleDatabaseOp9mizedforOLTPTransac9ons
• OLTPDatabasewereop9mizedfortransac9onsand/orevents
– Eachtransac9on/eventhasmanyfeatures
– Demographics,social,geography,behaviors,…
• Asingletransac,on’sfeaturesarestoredtogetherinrowformemory– Why?BeLercomputa9onalandmemoryefficiencywhenworkingatransac9on
• …butAnalysiswantstolookatspecificfeaturesacrossmanytransac$ons
Confiden9al–OracleInternal/Restricted/HighlyRestricted3
SQLhandlesdatamanipula,onandmanagementofinforma,on
Order F1 F2 … F50
Customer F1 F2 … F100
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
OracleDatabasealsoOp9mizedforAnaly9cQueries
• ColumnStoreisop9malforAnaly9cs– Analy9csLooksacrosstransac9onsatspecificcolumns
– DatabasecolumnsareMachineLearningfeatures
• Columnarfastercomputa,onalandbe#ermemoryefficiencywhenanalyzingfeatures
• Canalsoexploitdatacharacteris9cs>20xbenefit• Storageop9miza9ons–datarepeatedlyanalyzed
– Dic9onary+layeredcompressionmeans10’sTBofdatafit
– intoTB’sofserverstorage• Processingop9miza9ons
– VectorProcessingofDic9onary-encodedColumns,BloomFilterjoinprocessing,operatorpushdown,metadataop9miza9ons
4
SQLop,mizedforanaly,cqueries
100’sofFeatures
BigFeatureRevolu3onNumberoffeaturescollectedforeachTransac$on/eventareexploding:10’sto100’s
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
TheBasicAnaly9csFlow
• Datacancomefrommanysources
– Databases,NoSQL,csv,feeds…
• Weneedtoprepareit
– DataMungingofallsorts!
• Analyzethedata– Findthe“rightway”toanalyzeit
• ML,Graph,SQL…
Confiden9al–OracleInternal/Restricted/HighlyRestricted5
Alotof,mespentinDataMunging
DataMunging
RESULTS
Analy,cs
NoSQL,Search,…
StreamingKaTa,Storm…
Databases
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Con9nuousAnaly9csCycleResultsOmenEnrichTransac9onsAnaly,csismorethanonepipelinestream
• Con9nuousitera9onsaroundthedataanaly9cswheel
– Save,catalog,andre-useallthings:data,SQL,code,andanaly9cs
• In-memoryadvantagesateachstage
– SPARC’sDAX&leadingbandwidthiskey
• Manysourcesofdata
– Internalproprietary,publicdata,externalstreaming,archives
OracleConfiden9al–HighlyRestricted6
StreamingKaTa,Storm,…
EnhanceTransac3ons
Reports
NoSQL
ETL(SQL)
ETL(SQL)
In-Memory
ML&Graph(FP)
Results(SQL)
FeatureExtract,Generate&Transform
(SQL)
Databases
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
0.8x
1.0x
1.2x
1.4x
1.6x
1.8x
2.0x
2012 2013 2014 2015 2016
CorePerform
ance
vs.x86E5v2
x86:flatforfourgenera,ons
SPARC’sInnova9onsareCon9nuallyIncreasingCorePerformance
• SPARChasfastercoresforDatabase,Java,Apps,...• SPARChasmorecoresperchipwhichalsodrivesefficiency
7
x86percoreperformanceisstalled,Intelhasrunoutofsteam
SPARCM7 S7
SPARCS7
SPARC:DB
&Java
S7
"percore=(serverperformance)/(servercorecount)"
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
0.8x
1.0x
1.2x
1.4x
1.6x
1.8x
2.0x
2012 2013 2014 2015 2016
CorePerform
ance
vs.x86E5v2
JavaOLTPMemGB/s
SPARCS7is1.6xto2.1xfasterthanx86
• It’smoreimportanthowyouusetransistors,thanthenumbertransistorsyoumake(Moore’sLaw)
8
x86percoreperformanceisstalled,Intelhasrunoutofsteam
x86indashedlines
SPARCins
olidlines
E5E5v2
E5v3 E5v4
SPARCT5
SPARCM7S7
SPARCS7
"percore=(serverperformance)/(servercorecount)""percore=(serverperformance)/(servercorecount)"
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
ML-MachineLearning• Automa3callysimingthroughmanyfeatures&data
– tofindpreviouslyhiddenpaLerns,– todiscovervaluablenewinsightsandmakepredic9ons
• Examples:
• Idmostimportantfactors(ANributeImportance)• Predictcustomerbehaviors(Classifica$on)
• Predictores9mateavalue(Regression)
• Segmentapopula9on(Clustering)
• Findfraudulentor“rareevents”(AnomalyDetec$on)
• Determineco-occurringitemsina“baskets”(Associa$ons)
• Findprofilesoftargetedpeopleoritems(DecisionTrees)
9
A1A2A3A4A5
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
MachineLearning(ML):Predic9onvs.TrainingPredic9oncri9calforReal-9mescoringenginesSPARC3x-5xfasteratPredic,on&2xfasteratTraining
Predic9on/Scoring
Results
Trainononeserver,thenmovemodeltopredic$onserver(ex:StubHub)OXen70:30splitto
validatemodelbeforemovingmodelto
produc$on
Model
Every4weeksTraining/Learning
Real-TimeScoring:LargeProduc9onDatatoEvaluate
*periodicallyupdatestomodels:quarterly,monthly,weekly,nightly
10
MLScore/Predic,on
MLLearn/Train
%ofac9vity MostData *periodic
SPARCcore
advantagevsx86
3xto5x
percoreUpto2x
percore
Predic$onrequireshighly-efficientserverdesign
Train70%Valid30%
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
OracleDatabaseAdvancedAnaly9csOp9onMachineLearningonSPARC
• OracleAdvancedAnaly9csinOracleDatabase12.2– SPARCM7fasterpercoreontraining64-bitfloa9ngpointintensive
– In-memory640millionrecords,AirlineOn-9medataset
MLtrainingSPARCM7upto2.0xfasterpercorethanx86
SGD(Stochas9cGradientDescent),IPM(InteriorPointMethod)
Training:Crea3ngModelfromdata
A#ri-butes
X5-44-chip
T7-44-chip
SPARCperchipAdvantage
SPARCpercoreAdvantage
Supervised
SVMIPMSolver 900 1442s 404s 3.6x 2.0xGLMClassifica9on 900 331s 154s 2.1x 1.2xSVMSGDSolver 9000 157s 84s 1.9x 1.1xGLMRegression 900 78s 55s 1.4x 0.8x
ClusterModelExpecta9onMaximiza9on 9000 763s 455s 1.7x 0.9xK-Means 9000 232s 161s 1.4x 0.8x
11
Predict Train
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
OracleDatabaseAdvancedAnaly9csOp9onMachineLearningonSPARC
• OracleAdvancedAnaly9csinOracleDatabase12.2– SPARCM7muchfasterpercoreonscoringbandwidth-intensive
– In-memory1Billionrecords,AirlineOn-9medataset
MLpredic,onSPARC3.0x-4.8xfasterpercorethanx86
Predic,onUsingmodelon1Brecords
A#ri-butes
X5-44-chip
T7-44-chip
SPARCperchipAdvantage
SPARCpercoreAdvantage
Supervised
SVMIPMSolver 900 206s 24s 8.6x 4.8xGLMRegression 900 166s 25s 6.6x 3.7xGLMClassifica9on 900 156s 25s 6.2x 3.5xSVMSGDSolver 9000 132s 24s 5.5x 3.1x
ClusterModelK-Means 9000 222s 35s 6.3x 3.6xExpecta9onMaximiza9on 9000 243s 40s 6.1x 3.4x
12
"percore=(serverperformance)/(servercorecount)"
Predict Train
SGD(Stochas9cGradientDescent),IPM(InteriorPointMethod)
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
GraphAnalysis
• Graphseverywhere:– Facebook(friendsoffriends),TwiLer,LinkedIn,etc…
• Mostdatahasinter-rela9onshipsthatcontaininsights
• Twomajortypesofgraphalgorithms
– Computa9onalGraphAnaly9cs:Analysisofen9reGraph• InfluencerID,communitydetect,paLermachine,recommenda9ons
– GraphPaLernMatching
• Queriesthatfindsub-graphsfi|ngrela9onshippaLerns
13
Inter-rela,onshipsbetweendataandnetworksaregrowinginimportance
spouse
friend
friend
Structurefinding,rankingcommuni9es,pathfinding
friend
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Computa9onalGraphAlgorithms:PageRank&Single-SourceShortestPath(SSSP)
• Graphcomputa9onsacceleratedbySPARC’smemorybandwidth– Bellman-Ford/SSSP(single-sourceshortestpath)–op9malrouteorconnec9on
– PageRank-measuringwebsiteimportance
Graph:SPARCM7upto1.5xfasterpercorethanx86GraphAlgorithm Workload
Size4-chip
X86E5v34-chip
SPARCT7-4SPARCperchipAdvantage
SPARCpercoreAdvantage
SSSP
Bellman-Ford
448Mver9ces,17.2Bedges 39.2s 14.7s 2.7x 1.5x233Mver9ces,8.6Bedges 21.3s 8.5s 2.5x 1.4x
PageRank448Mver9ces,17.2Bedges 136.7s 62.6s 2.2x 1.2x233Mver9ces,8.6Bedges 72.1s 27.6s 2.6x 1.5x
14
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
OracleDB
OracleDatabaseIn-Memory&SPARCDAX
• OLTPusesprovenrowformat
• Analy9csusein-memoryColumn• 10xfasteranaly9csduetosomware• Columnarcompressionmeanshugedatabasescannowfitin-memory
• OracledatabasestoresBOTHrowandcolumnformats
• Simultaneouslyac9veandtransac9onallyconsistent
• EvenfasterwithSPARCDAX(DataAccelerator)HWinnova9on
• Addi9onal10xto20xfasterforAnaly9cs
15
RowFormat ColumnFormat
CachedOLTP
Transac9onsWholeDBInMemory
Compressed
WholeDBInMemory
CompressedWholeDB
OnDisk/Flash
Rowstore
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARC’sMul9-genera9onalLeapfroginPerformance
• IntegratedOffload
– DataAnaly9csAccelera9on(DAX)– Encryp9on&Security
• It’smoreimportanthowyouusetransistors,thanMoore’sLaw(thenumbertransistorsyoumake)
RadicalInnova,on:IntegratedOffloadoffers10xfasterperformance!
OthervendorsfocusedonDetachedGPUs• DetachedGPUsarepoorlydesignedforSQL• SlowGPUinterconnec$onrobsperformance
Memory
HalfBW
Memory
X86IBMPower
100%U,lizedNOOFFLOAD!NOOPENCores!
Band-Width
SPARCS7
DAXOFFLO
AD O
FFLOADDAX
16
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCDrama9callyFasterIn-MemorySQLAnaly9cs
• SPARCS79.4xfasterpercorethanx86E5v4– SPARCS7-2422query/mvs2-chipx8656query/m
• S7-2(18-corestotal),2-chipx86E5v4(20-corestotal)
– x86percoreperformanceflatfor4genera9ons
• DAXoffloadsIn-MemoryScans
– DAXoffloadallowscorestoincreasethroughput
• 160GBinmemoryrepresents1TBDBondisk• 6.2xcompressionwithOracle12.2In-memory
17
SPARCDAX(SoowareonSilicon)ismul,genera,onalleadinperformance
In-MemorySQLAnaly,cs
9.4xfasterSPARCcoreadvantage
E5v4x86
SPARCOffloadDAXfrees
Coresforotherprocessing
6xCompression
6xIMcapacity
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Real-TimeEnterprise:SimultaneousOLTP&In-memorySPARCS7:Fasteranaly,cs,fasterOLTP,andbe#erresponse,me(percore)
Analy,cs:SPARCS75.12xfasterpercoreOLTP: SPARCS72.04xfasterpercore
Analy,cs47
Queriespermin
SPARCS7-216cores
VS
OLTPPerformanceThroughput
216k
Transac,onspersec
Analy,cs
107Queriespermin
OLTPPerformanceResponseTime
~8ms
Throughput
196kTransac,ons
persec
ResponseTime
~9ms
x86E5v336cores
SixteenSPARCS7coressameloadas
FiUy-sixx86cores
SF1050=1.05TBDataWarehouseOracle12c12.1.0.2.2 18
"percore=(serverperformance)/(servercorecount)"
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
GraphicProcessingUnits(GPUs)GPUsOnlyHelpVeryComputeIntensiveAlgorithmsComplexML/Sta3s3csoUennotfastonGPUs…“Canonlycomputeasfastasmovedata”• DetachedGPUshavelimitedbandwidth
– GPUsfitforlotsofsimplegraphics• Graphicshave9nydatamovement:Coords&texturesin,videoframeout
– BigDataMLmuchmoredemanding:GPUshavelimitedapplica9ons• MLLearning&Scoring
– SomeMLLearningcanbecomputeintensive,butonlydoneini9allytocreateModel
• NvidiaMathLibrariesonlyhaveBLAS3rou9nes– BLAS2andBLAS1doNOThavecomputeintensitythereforearenotinlibrary
– ComplicatedMLhasmixofBLAS1,BLAS2,BLAS3Bandwidthlinestoscale
GPUcomputeoUenstalledbylackofbandwidth
Memory
Chip
Local169GB/s
Local57GB/s
E5v422core
Local57GB/s
E5v422core
GPU GPU
CurrentPCIe FutureNVlink
SPARCM732core
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SQListhePowerfulLanguageforDataScien9sts
• SQLapowerful,concise,expressive,thatenablesrapiddevelopment
– Decadesofadvancedalgorithmsop9mizingSQL
– CanalsowriteSQLinDSL(DomainSpecificLanguages)forSpark,Python,R,Scala,etc…
• Examplesofuses
– ApacheSparkSQL(67%growthinSQLusers)– JavaStreams-DSLSQLforJava
• UsedbymanycustomersaswellasOracleCoherence
– ApacheEclipse–GoldmanSachsCollec9ons
– ApacheHadoopHive– OracleDatabaseAnaly9cs&OLTP
20
SQLprovideETLandQuerypowerforAnaly,cs,MachineLearning(ML),andGraph
BecauseSQLissoimportantOracleputSQLinSilicon
intheSPARCprocessor(DAX)
SPARCisOver10xFasterthan86BecauseofUniqueDesign
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SQL&theManyFlavorsofDSL–Allpoten9alsforDAX
• SQL:– SELECTcount(*)frompersonWHEREci$zen.age>18
• ApacheSparkSQL(DSL)– valvoters:Int=ci$zen.filter($”ci$zen.age”>18).count()
• JavaStreams(DSL)
– intvoters=arrayList.parallelStream().filter(ci9zen->ci9zen.olderThan(18)).count();
• GoldmanSachsCollec9ons–ApacheEclipse(DSL)
– intvoters=fastList.count(ci9zen->ci9zen.olderThan(18));
ORACLECONFIDENTIAL-HighlyRestricted
SQLcanbewri#eninDomainSpecificLanguages(akaLanguageIntegratedQueries)
ApacheSparkfeedsbothformatsintoSQLop3mizerJoinscanbewriNen&op$mized
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCDAXIntegratedwithJavaJDK8Streams
• JavaStreamsprovideSQL-stylecodeinJava– JavaStreamsisaperfectfitforDAXaccelera9on
• DAX&JavaStreams– IntegerStreamfilter,allMatch,anyMatch,noneMatch,map(ternaryoperator),toArray&countfunc9ons
– SimplecodechangestouseDAX• importcom.Oracle.Streaminsteadofimportjava.u9l.Stream
• DaxIntStreaminsteadofIntStream
• Publicaccess:hLp://SWiSdev.oracle.com/DAX
ORACLECONFIDENTIAL-HighlyRestricted
DAXacceleratesJavaStreams:3.6xto21.8xfaster
3.6x 4.0x 4.1x
10.7x
21.8x
Outlier %9le Top-N Filter allMatch
SpeedupwithDAX10MillionRows
JavaStreamAPI:filter2_data.parallelStream().filter(w->w.temp<100).count()
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCDAXAccelera9ngApacheSpark2.1.0
• Proof-of-ConceptPrototypeonSPARCS7:ApacheSpark2.1POC:DAX&in-memorycolumnar
– 2-chipSPARCS7DAX:9.8Billionrows/secon2-predicatescan• SPARCS7-2(16totalcores) 0.061sec• 2-chipx86(20totalcores)0.760seclatestgenera$onE5v4Broadwell
– TheseadvantagesareoverandaboveTungsten’simprovements
• SPARCDAXoffloadscri9calfunc9ons
– SQL:filtering,dic9onaryencoding,1&2predicate,joinprocessing,addi9onalcompression,etc.
• LibdaxopenAPI:hLp://SWiSdev.oracle.com/DAX
23
SparkSQLonSPARCS7-2DAXover15.6xfasterpercorethanx86
x86 SPARCDAX
15.6xfasterpercorethanx86
SparkOn
SPARCS7
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCAdvantagesforEveryFormofAnaly9cs
Analy3cs In-memoryColumnarSW&SoUwareinSilicon(SPARCDAX)
SPARC’sefficientCPU&memorydesign
DatabaseAnaly,csAnaly$cSQLQueriesfordatabase ✔ ✔JavaAnaly,csJavaCodethatprobesdataSQL-likecode ✔ ✔MachineLearning(ML)Automa$callyfindinghiddenpaNerns&correla$ons ✔ ✔GraphAutoma$callyfindpaNernsinSocialnetworks,etc. ✔NoSQLFastaccesstosemi-structured&unstructureddata ✔Spa,alFastthroughputongeometricdata ✔
24
SPARCis1.3xtoover10xfasterpercoreonAnaly,csthanx86
Featuregenera$on&Selec$onforMLisoXenSQL
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Java&DatabaseareSPARC’sDesignTargets
• OraclebelievestheEnterpriserequiresdeepinnova3onstomakeserverssignificantlybe#erforCloudandAnaly,cs
– SPARC,DB,&Javaco-engineeredtocreateuniquechipinnova9ons• Breakthroughsof70%to10xormorebyworkingacrossthestackboundaries
– Oraclerevolu9onizingtheCloud• Drama9cinnova9onsinsecurity,analy9cs,andefficientVMs
SPARCdras3callyreduceshardware&licensingcost
25
Innova,onsdifferen,ateSPARCfromthegenericcompu,ng
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPECjbb2015Mul9JVMSPARCS7
• Innova9onsinSPARCprocessordesigncon9nuetoimproveJavaandJVMperformance
– x86performanceisflatgenera9ontogenera9on
• TradeoffbetweentuningforMaxjOpsorCritjOpsonx86
26
SPARCS7core1.5xto1.9xfasterthanx86E5v4coreonMaxjOps/core
0
1,000
2,000
3,000
4,000
5,000
6,000
CritjOps/core
MaxjOps/core
x86E5v4 x86E5v3 Processor chip,
coreMaxjOPS
CritjOPS
SPARCS7-2 4.27GHzSPARCS7 2,16 65,790 35,812
IBMS812LC 2.9GHzPower810c 1,10 44,883 13,032
HuaweiRH2288Hv3 2.2GHzE5v422c 2,44 121,381 38,595
CiscoC220 2.2GHzE5v422c 2,44 94,667 71,951HuaweiRH2288Hv3 2.3GHzE5v318c 2,36 98,673 28,824
Lenovox240M5 2.3GHzE5v318c 2,36 80,889 43,654
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Java(JVM)istheLanguageoftheCloud&FOSS
JVM=JavaVirtualMachine-Run$me
ORACLECONFIDENTIAL-HighlyRestricted
Java&theunderlyingJVMisthedesigntargetforSPARCBigData&DevOps Descrip,on Wri#entoOracleFusion EnterpriseApps Java
ApacheSpark In-memoryAnaltyics JVM
ApacheCassandra NoSQLdatabase Java
ApacheHadoop DisktodiskMapReduce Java
ApacheHDFS filesystem Java
ApacheLucene DoctextIndexing Java
ApacheSolr text/doc/websearch Java
Jersey/Grizzly(REST) RESTInterface Java
ApacheHive SQLonHDFS Java
Neo4j Graph Java
Scala Language JVM
BigData&DevOps Descrip,on Wri#entoAkka(REST) RESTforBigData JVM
ApacheAccumulo key/valuestore Java
ApacheFlink Batch&StreamProcessing Java(JVM)
ApacheKaÄa StreamingMessageBroker JVM
Apachelog4j Logeventmanager Java
ApacheSamza Streamprocessing JVM
ApacheStorm Streamprocessing Java&Clojure
ApacheYarn Clusterjobmanager Java
ApacheZookeeper Config&groupservices Java
H20.ai MLAppslibraries Java,Python,R
ApacheHbase NoSQLdatabase Java
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCcoreisFastestforFOSS–x86muchslower
• FOSS(Free&Open-SourceSomware)– ApacheSpark SPARCDAX>15xfaster
– ApacheCassandra SPARCcore1.7xfaster
– ApacheHadoop SPARCcore1.6xfaster
• SPARCAdvantages:– SPARCfastestatJVM&highestefficiency,GCimprovements
– Chipdesigninnova9onseachgenera9on– SPARCscaleswithmul9-threading:SPARC8threadsvs.x862-threads
– SPARChas2xgreatermemorybandwidth
1.6xto2.0xfasterpercoremeansyouneedspendlotsmoreonx86thanSPARC
28
MuchofFOSSrunsonJAVAorJVM
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Oracle&FOSS:Transac9ons&Analy9csTransac,onsnowgeungenrichedwithliveAnaly,cs
• SPARCprocessorsaccelerateeverytypeofTransac9onal&Analy9calworkload– Hadoopcomponents:Hive(SQL),HBase(NoSQL),Mahout(ML),Giraph(Graph),…
– ML=machinelearning/sta9s9cs
OracleConfiden9al–HighlyRestricted29
Transac,ons SQLQueryAnaly,cs NoSQL ML
MachineLearningGraph
Analy,cs Streaming
Fusion&OracleDB
Oracle12cIn-memory
OracleNoSQLOracleAdvanced
Analy9csOracleSpa9al
&GraphOracleStream
Analy9cs
OracleBigDataSQL(mergedatafromvarioussources)
DevOps&Database
SparkSQLCassandraNoSQL
&MongoDBSparkMLlib SparkGraphX
SparkStreaming&KaÄa…
Oracle
FOSS
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
CassandraNoSQL2.2.6(YahooCloudServingBenchmark)
SPARCcoreis1.7xfasterthanE5v3core
• SPARCS71.7xfasterpercorethanE5v3Haswell– SPARC’sadvantagesonJava/JVMbenefitCassandra
• YCSB–YahooCloudServingBenchmark–300M
– MixedLoadWorkloadA(50%Read/50%Update)
30
Cassandra Chip,core Processor AveOps/s KOps/spercore
SPARCpercoreAdvantage
SPARCS7-2 2,16 4.27SPARCS7 66,955 4.2K 1.7xE5v3Haswell 2,36 2.3E5v3 90,184 2.5K 1.0x
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Oracle’sNoSQLonYCSB(YahooCloudServingBenchmark)
• OracleNoSQL4.0• SPARCS71.9xfasterpercorethanE5v4Broadwell
– E5v3HaswellcoresameperformanceasE5v4Broadwellcore
– YCSB(YahooCloudServingBenchmark)
• MixedLoad:95%Read/5%Update
SPARCS7coreis1.9xfasterpercorethanE5v4(Broadwell)
NoSQLYCSB Chip,core Processor Ops/s KOps/s
percoreSPARCpercoreAdvantage
NoSQLVersion
SPARCS7-2 2,16 4.27SPARCS7 340,766 21.3k 1.9x 4.02-chipE5v4Broadwell 2,44 2.2E5v4 502,273 11.4k baseline 4.0
31
"percore=(serverperformance)/(servercorecount)"
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SPARCisFasterthanx86forHadoop
• SPARCM7secure3.9xfasterperchipthanes$matedunsecurex86E5v2IvyBridge– E5v3HaswelllessbandwidthpercorethanE5v2IvyBridge
• SPARCM7secure4.3xfasterperchipthanunsecureIBMPower86c
SPARCcoresecureis1.4xfasterthanunsecurex86v2SPARCcoreunsecureis1.6xfasterthanunsecurex86v2
Terasort10TB Chip,core Processor
PerfGB/minPerchip
PerfGB/minPercore
Hadoop SPARCM7CoreAdvantage
OracleT7-41node 4,128 4.13SPARCM7 35.2 0.90 Opensource (unsecurebaseline)
OracleT7-41node 4,128 4.13SPARCM7 32.2 1.02 Opensource SecureAES-256-GCMbaseline
IvyBridgeEX 1,12 2.8E5v2 8.2est 0.67 Cloudera5.3 Es9mate1.35x(1.5x)est
32
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
UnpredictableAmazonAWSvs.Oracle’sOPC
• MostAWSx86processorsareslow&older
– AWSuseslowerperformancechips,Oracleusesfastestx86chipsateachgenera9on
– AWSvCPUx86= ½core=1hyperthread(mostlyE5v2,someE5v3)
– OPCOCPUx86= 1core=2hyperthreads(mostlyE5v3,newE5v4)
– OPCOCPUSPARC= 1core=8HWthreads(SPARCM7&SPARCT7)
• AWSUnpredictablerun-to-runperformancevaria9on
– Noisyneighboromenhurtsnetwork,storage,&CPUperformance
– x86coreinAWSareslowerandmorevariablethanbare-metalx86
ORACLECONFIDENTIAL-HighlyRestricted
AWS’sUnreliableQoSisahiddencost
SameCost
SPARCCMTThreadsdesignedtoscalex86Hyperthreadinghavewell-knownscalingissues
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
RequiredBenchmarkDisclosureStatement
• Addi9onalInfo:hLp://blogs.oracle.com/bestperf• Copyright2016,Oracle&/oritsaffiliates.Allrightsreserved.Oracle&JavaareregisteredtrademarksofOracle&/oritsaffiliates.Othernamesmaybetrademarksoftheirrespec9veowners
• SPECandthebenchmarknameSPECjEnterpriseareregisteredtrademarksoftheStandardPerformanceEvalua9onCorpora9on.Resultsfromwww.spec.orgasof7/6/2016.SPARCS7-2,14,400.78SPECjEnterprise2010EjOPS(unsecure);SPARCS7-2,14,121.47SPECjEnterprise2010EjOPS(secure)OracleServerX6-2,27,803.39SPECjEnterprise2010EjOPS(unsecure);IBMPowerS824,22,543.34SPECjEnterprise2010EjOPS(unsecure);IBMx3650M5,19,282.14SPECjEnterprise2010EjOPS(unsecure).
• SPECandthebenchmarknameSPECjbbareregisteredtrademarksofStandardPerformanceEvalua9onCorpora9on(SPEC).ResultsfromhLp://www.spec.orgasof6/29/2016.SPARCS7-2(16-core)65,790SPECjbb2015-Mul9JVMmax-jOPS,35,812SPECjbb2015-Mul9JVMcri9cal-jOPS;IBMPowerS812LC(10-core)44,883SPECjbb2015-Mul9JVMmax-jOPS,13,032SPECjbb2015-Mul9JVMcri9cal-jOPS;SPARCT7-1(32-core)120,603SPECjbb2015-Mul9JVMmax-jOPS,60,280SPECjbb2015-Mul9JVMcri9cal-jOPS;HuaweiRH2288Hv3(44-core)121,381SPECjbb2015-Mul9JVMmax-jOPS,38,595SPECjbb2015-Mul9JVMcri9cal-jOPSHPProLiantDL360Gen9(44-core)120,674SPECjbb2015-Mul9JVMmax-jOPS,29,013SPECjbb2015-Mul9JVMcri9cal-jOPS;HPProLiantDL380Gen9(44-core)105,690SPECjbb2015-Mul9JVMmax-jOPS,52,952SPECjbb2015-Mul9JVMcri9cal-jOPS;;CiscoUCSC220M4(44-core)94,667SPECjbb2015-Mul9JVMmax-jOPS,71,951SPECjbb2015-Mul9JVMcri9cal-jOPS;HuaweiRH2288HV3(36-core)98,673SPECjbb2015-Mul9JVMmax-jOPS,28,824SPECjbb2015-Mul9JVMcri9cal-jOPs;Lenovox240M5(36-core)80,889SPECjbb2015-Mul9JVMmax-jOPS,43,654SPECjbb2015-Mul9JVMcri9cal-jOPS;SPARCT5-2(32-core)80,889SPECjbb2015-Mul9JVMmax-jOPS,37,422SPECjbb2015-Mul9JVMcri9cal-jOPS;SPARCS7-2(16-core)66,612SPECjbb2015-Distributedmax-jOPS,36,922SPECjbb2015-Distributedcri9cal-jOPS;HPProLiantDL380Gen9(44-core)120,674SPECjbb2015-Distributedmax-jOPS,39,615SPECjbb2015-Distributedcri9cal-jOPS;HPProLiantDL360Gen9(44-core)106,337SPECjbb2015-Distributedmax-jOPS,55,858SPECjbb2015-Distributedcri9cal-jOPS;HPProLiantDL580Gen9(96-core)219,406SPECjbb2015-Distributedmax-jOPS,72,271SPECjbb2015-Distributedcri9cal-jOPS;LenovoFlexSystemx3850X6(96-core)194,068SPECjbb2015-Distributedmax-jOPS,132,111SPECjbb2015-Distributedcri9cal-jOPS.
• SPECandthebenchmarknamesSPECfpandSPECintareregisteredtrademarksoftheStandardPerformanceEvalua9onCorpora9on.ResultsasofOctober25,2015fromwww.spec.organdthisreport.1chipresultsSPARCT7-1:1200SPECint_rate2006,1120SPECint_rate_base2006,832SPECfp_rate2006,801SPECfp_rate_base2006;SPARCT5-1B:489SPECint_rate2006,440SPECint_rate_base2006,369SPECfp_rate2006,350SPECfp_rate_base2006;FujitsuSPARCM10-4S:546SPECint_rate2006,479SPECint_rate_base2006,462SPECfp_rate2006,418SPECfp_rate_base2006.IBMPower710Express:289SPECint_rate2006,255SPECint_rate_base2006,248SPECfp_rate2006,229SPECfp_rate_base2006;FujitsuCELSIUSC740:715SPECint_rate2006,693SPECint_rate_base2006;NECExpress5800/R120f-1M:474SPECfp_rate2006,460SPECfp_rate_base2006.
• Two-9erSAPSalesandDistribu9on(SD)standardapplica9onbenchmarks,SAPEnhancementPackage5forSAPERP6.0asof5/16/16:SPARCM7-8,8processors/256cores/2048threads,SPARCM7,4.133GHz,130000SDUsers,713480SAPS,Solaris11,Oracle12cSAP,Cer9fica9onNumber:2016020,SPARCT7-2(2processors,64cores,512threads)30,800SAPSDusers,2x4.13GHzSPARCM7,1TBmemory,OracleDatabase12c,OracleSolaris11,Cert#2015050.HPEIntegritySuperdomeX(16processors,288cores,576threads)100,000SAPSDusers,16x2.5GHzIntelXeonProcessorE7-8890v34096GBmemory,SQLServer2014,WindowsServer2012R2DatacenterEdi9on,Cert#2016002.IBMPowerSystemS824(4processors,24cores,192threads)21,212SAPSDusers,4x3.52GHzPOWER8,512GBmemory,DB210.5,AIX7,Cert#201401.DellPowerEdgeR730(2processors,36cores,72threads)16,500SAPSDusers,2x2.3GHzIntelXeonProcessorE5-2699v3256GBmemory,SAPASE16,RHEL7,Cert#2014033.HPProLiantDL380Gen9(2processors,36cores,72threads)16,101SAPSDusers,2x2.3GHzIntelXeonProcessorE5-2699v3256GBmemory,SAPASE16,RHEL6.5,Cert#2014032.SAP,R/3,regTMofSAPAGinGermanyandothercountries.Moreinfowww.sap.com/benchmarks.
MustbeinSPARCS7&M7Presenta,onswithBenchmarkResults
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
BackupSlides
35
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
Oracle’sBigDataSQL
• Oracle’sBigDataSQL– SameSQLaccessesbothDatabase&NoSQL
– SPARCT7-2forOracleDatabasewithDAX&secondSPARCT7-2forOracle’sNoSQL
• 3TBin-memorydatabase,single-threadedquery
OracleDatabaserunsin-memorywithDAXandcombinesdatafromNoSQLdatasource
Query DatabaseQueryModifiedtoalsoaccessNoSQL
Changein,me
a1 32.8s 34.0s 1.04x
b1 18.4s 19.6s 1.07x
b3 14.6s 17.7s 1.21x
q11x 14.5s 15.5s 1.07x
q12x 16.2s 17.4s 1.07x
SELECTc_name,c_mktsegment,lo_orderpriority,lo_ordtotalpriceFROMt1,lineorder,date_dim,customerWHERElo_orderdate=d_datekeyandc_email=ekeyandlo_custkey=c_custkeyandd_daynuminweek=1andlo_quan9ty=1andlo_orderpriority='1-URGENT'andlo_shipmode='RAIL'andlo_discount=1andc_region='ASIA'andc_mktsegment='BUILDING'andlo_ordtotalpriceBETWEEN1700000and1900000;
NoSQLaccessedbyadding:t1andekey
36
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
SecurityKernelSPARCS7PerformanceAES:SPARCS7coreis2.3xfasterthanx86E5v4core(AES-NI)SHA:SPARCS7coreis7.5xfasterthanx86E5v4core
FIPS140-2Level1Valida$onSolaris11.3:KernelCryptographicFrameworkModule&UserlandCryptographicFrameworkModule
AES-CFBpercore
S72.3xfasterthanE5v4Broadwell
0.89GB/s
0.89GB/s
1.98GB/s
2.05GB/s
x86 E5 v3 2.3 GHz
x86 E5 v4 2.2 GHz
SPARC M7 4.13 Ghz
SPARC S7 4.27 Ghz
SHA512percore
S77.5xfasterthanE5v4Broadwell
0.30
0.40GB/s
2.90GB/s
2.99GB/s
E5 v3 2.3 GHz AVX2
E5 v4 2.2 GHz AVX2
SPARC M7 4.13 GHZ
SPARC S7 4.27 GHZ
AES-256-CFBDataatrestDB,Cloud,..
SHA512-1024SecureChecksumBanking,UKonlinemoney…
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
MachineLearning(ML):Scoring/Predic9onversusTraining/LearningCharacteris9csPredic,on/Scoringoperatesonhugeamountsofdatawithlowcomputeintensity
MLScore/Predic,on
MLLearn/Train
%ofac9vity MostData *Ini9al
Computa9on O(n^2)Matrix-vector
O(n^3)Matrix-matrix
Data O(n^2) O(n^2)
ComputeIntensity(Compute/Data) Lowconstant O(n)
SPARCAdvantageDuetoMemory
Bandwidth&design
3xto6x
percoreUpto1.3xpercore
OracleConfiden9al–HighlyRestricted 38
TrainingSet
Scoring/Predic9on
Results
Cantrainononeserverthenmovemodeltopredic$onserver(ex:StubHub)Modelslive4weeks!
Training/Learning
DatatoEvaluate
*Ini$alandthenoccasionallyupdatemodels
Model
Every4weeks
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit2017
GPUsOnlyAccelerateSomeComputeKernelsDetachedGPUmemorybandwidthisbo#leneckformostcomputa,ons
Rou,neLevel Opera,on Flops MemComputeIntensity
TeslaK80peak
MaxPossibleGflops
@12GB/sblock=100
PCIeGPU
%peak
MaxPossibleGflops
@80GB/sblock=100
Nvlink(future)GPU
%peak
BLAS1(vector)
y=ax+y 2n 3n 2/3 935Gflops 1Gflops 0.1% 7Gflops 0.7%
BLAS2(matrix-vector)
y=Ax+y 2n^2+2n n^2 2 935Gflops 3Gflops 0.3% 20Gflops 2.1%
BLAS3(matrix-matrix)
C=AB+C 2n^3 4n^2 n/2 935Gflops 75Gflops 8.0% 500Gflops 53.5%
FFT C=FFT(A) nlog(n) 2n Log(n)/2 935Gflops239Gflops1M1D-FFT
25% 935Gflops1M1D-FFT
Nearpeak
OracleConfiden9al–HighlyRestricted39
Only6BLAS3rou9netypesinNvidiaLibrary:gemm,syrk,syr2k,trsm,trmm,symmCanwritecodesusingBLAS2/1inGPUsbutresul9ngcomputeintensitymustbelargetoaccelerate
Copyright©2017,Oracleand/oritsaffiliates.Allrightsreserved.| OracleBIWASummit201740