Scien6fic Big Data Benchmark Suite Xinhui Tian, Shaopeng Dai, - - PowerPoint PPT Presentation

scien6fic big data benchmark suite
SMART_READER_LITE
LIVE PREVIEW

Scien6fic Big Data Benchmark Suite Xinhui Tian, Shaopeng Dai, - - PowerPoint PPT Presentation

BigDataBench-S: An Open-source Scien6fic Big Data Benchmark Suite Xinhui Tian, Shaopeng Dai, Zhihui Du, Wanling Gao, Rui Ren, Yaodong Cheng, Zhifei Zhang, Zhen Jia, Peijian Wang and Jianfeng Zhan


slide-1
SLIDE 1

INSTITUTE O OF C COMPUTING T TECHNOLOGY

BigDataBench-­‑S: ¡An ¡Open-­‑source ¡ Scien6fic ¡Big ¡Data ¡Benchmark ¡Suite ¡

Xinhui Tian, Shaopeng Dai, Zhihui Du, Wanling Gao, Rui Ren, Yaodong Cheng, Zhifei Zhang, Zhen Jia, Peijian Wang and Jianfeng Zhan

slide-2
SLIDE 2

HPBDC

2017

Big ¡Data ¡in ¡Scien,fic ¡Domains

2

100 ¡PB ¡

~10,000,000 events each night for 10 years

Astronomy ¡ High ¡Energy ¡Physics

140 ¡PB ¡up ¡to ¡2014

Bioinforma,cs ¡ 40 ¡PB ¡gene ¡data ¡in ¡EBI ¡in ¡2014 ¡ ¡ 15 ¡PB ¡new ¡data ¡per ¡year ¡

slide-3
SLIDE 3

HPBDC

2017

Challenges ¡to ¡Data ¡Management ¡and ¡Analy,cs

n Data ¡Management ¡

n PB ¡level ¡data ¡storage ¡ n Low-­‑latency ¡DBMS ¡opera,ons ¡processing ¡

¡

n Data ¡Analy,cs ¡

n Support ¡for ¡complex ¡analy,cs ¡

  • Linear ¡Algebra ¡
  • Machine ¡Learning ¡
  • … ¡

n Different ¡types ¡of ¡analy,c ¡opera,ons ¡on ¡

the ¡same ¡data ¡set ¡

  • Low ¡cost ¡data ¡sharing ¡

n System ¡Requirements ¡

¡

  • Good ¡Scalability ¡
  • Effec,ve ¡Data ¡Organiza,on ¡

¡& ¡efficient ¡query ¡processing ¡

  • Flexible ¡support ¡for ¡various ¡types ¡
  • f ¡complex ¡analy,c ¡opera,ons ¡
  • In-­‑situ ¡data ¡processing ¡
slide-4
SLIDE 4

HPBDC

2017

Big ¡Data ¡Systems

n Scalable ¡storage ¡system: ¡ ¡

n Hadoop ¡Distributed ¡File ¡System ¡

n Various ¡subsystems ¡for ¡different ¡types ¡of ¡analy,c ¡opera,ons ¡

n General-­‑purpose ¡frameworks ¡

  • Spark, ¡MapReduce, ¡Flink, ¡… ¡

n DBMS ¡components ¡

  • Hive, ¡SparkSQL, ¡… ¡

n Machine ¡Learning ¡

  • Mahout, ¡Spark ¡Mllib… ¡

n … ¡

slide-5
SLIDE 5

HPBDC

2017

A ¡Comprehensive ¡Scien@fic ¡Big ¡Data ¡ Benchmark ¡Suite

Do ¡current ¡big ¡data ¡management ¡and ¡analy@c ¡systems ¡ perform ¡well ¡in ¡the ¡context ¡of ¡scien@fic ¡big ¡data ¡?

slide-6
SLIDE 6

HPBDC

2017

Exis,ng ¡Scien,fic ¡Benchmarks

n SS-­‑DB: ¡[Stanford, ¡xldb10] ¡

n Simulate ¡an ¡astronomical ¡data ¡management ¡scenario ¡ n Queries ¡including ¡raw ¡data ¡cooking ¡and ¡observa,on ¡data ¡

analysis ¡

Only ¡consider ¡one ¡scenario ¡ Only ¡include ¡DBMS ¡opera@ons ¡

slide-7
SLIDE 7

HPBDC

2017

Exis,ng ¡Scien,fic ¡Benchmarks

n GenBase ¡[MIT, ¡Sigmod14] ¡

n Simulate ¡genomics ¡research ¡ n Five ¡mixed ¡data ¡management ¡and ¡analy,cs ¡workloads ¡

  • Data ¡selec,on ¡à ¡data ¡analy,cs ¡à ¡results ¡extrac,on ¡ ¡

Also ¡only ¡one ¡scenario ¡ ¡ Unable ¡to ¡be ¡used ¡to ¡compare ¡subsystems ¡with ¡ same ¡func@ons ¡

  • SparkSQL ¡vs ¡Hive? ¡
  • Mahout ¡vs ¡Spark ¡MLlib? ¡
slide-8
SLIDE 8

HPBDC

2017

BigDataBench-­‑S

n A ¡new ¡scien,fic ¡big ¡data ¡benchmark ¡suite ¡for ¡current ¡

big ¡data ¡analy,cs ¡systems ¡

n Various ¡representa,ve ¡scien,fic ¡analy,c ¡workloads ¡from ¡

different ¡typical ¡scien,fic ¡research ¡areas ¡

n Comparison ¡among ¡various ¡components ¡designed ¡for ¡the ¡

same ¡opera,on ¡types ¡

slide-9
SLIDE 9

HPBDC

2017

Methodology

n Inherit ¡from ¡BigDataBench ¡[Wang, ¡HPCA2014] ¡

Scien,fic ¡ Domain ¡1 Scien,fic ¡ Domain ¡i Scien,fic ¡ Domain ¡N

Typical ¡Opera,on ¡Analysis ¡ Workload ¡Pa^ern ¡Analysis Data ¡Model ¡Analysis Benchmark ¡ Specifica,on ¡1 Benchmark ¡ Specifica,on ¡N Benchmark ¡ Specifica,on ¡i

Benchmark ¡ Decomposi,on ¡ ¡ ¡ ¡ DataSets ¡ Selec,on ¡ ¡ ¡ ¡ Workloads ¡With ¡ Diverse ¡ Implementa,ons Benchmark ¡ Decomposi ,on ¡ ¡ ¡ ¡ Benchmark ¡ Subset ¡1 ¡ ¡ Workloads ¡ With ¡ Diverse ¡ Implementa ,ons Benchmark ¡ Subset ¡i Benchmark ¡ Subset ¡N ¡

slide-10
SLIDE 10

HPBDC

2017

Data ¡Analysis ¡in ¡typical ¡Scien,fic ¡Search ¡Areas

n High ¡Energy ¡Physics ¡

n LHC ¡Events ¡Discrimina,on: ¡Classifica,on ¡and ¡Regression ¡

n Astronomy ¡

n Telescope ¡Image ¡Analysis ¡

n Genomics ¡

n Microarray ¡Data ¡Analysis

slide-11
SLIDE 11

HPBDC

2017

Data ¡Flow

[J.-R. Vlimant, 2016]

Online ¡Events ¡ Acquisi,on Offline ¡Data ¡ Reconstruc,on Data ¡Analysis Result ¡ Extrac,on

slide-12
SLIDE 12

HPBDC

2017

Data ¡Flow

slide-13
SLIDE 13

HPBDC

2017

Overview

3 ¡data ¡sets, ¡17 ¡workloads

slide-14
SLIDE 14

HPBDC

2017

More ¡Scien,fic ¡Domains

n Gravita,onal ¡Waves ¡ n Neuroscience ¡ n … ¡

slide-15
SLIDE 15

HPBDC

2017

Comparison ¡Study

n Performance ¡comparison ¡between ¡numbers ¡of ¡widely-­‑used ¡big ¡

data ¡analy,cs ¡systems ¡using ¡a ¡subset ¡of ¡BigDataBench-­‑S ¡

n Hadoop ¡(MapReduce ¡and ¡Tez), ¡Spark ¡ n Both ¡DBMS ¡queries ¡and ¡complex ¡analy,cs ¡workloads ¡ n Different ¡data ¡formats: ¡Row-­‑based ¡vs ¡Column-­‑based ¡ n Different ¡data ¡sizes ¡

slide-16
SLIDE 16

HPBDC

2017

Comparison ¡Study

n Data ¡Set ¡

n Simulated ¡microarray ¡data ¡using ¡GenBase ¡data ¡generator ¡

n Schema ¡

CREATE TABLE geo( geneid INT, patientid INT, expr_value FLOAT); CREATE TABLE genes( geneid INT, target INT, pos BIGINT, len INT, func INT); CREATE TABLE go( geneid INT, goid INT, belongs INT); CREATE TABLE patients( patientid INT, age INT, gender INT, zipcode INT, disease INT, response FLOAT);

Meta ¡data Matrix ¡data

slide-17
SLIDE 17

HPBDC

2017

Queries

n Query ¡1: ¡Selec,on ¡

n Select ¡data ¡based ¡from ¡matrix ¡table ¡based ¡on ¡condi,ons ¡on ¡the ¡

metadata ¡table ¡

  • Map ¡join ¡based ¡data ¡filter

SELECT ¡geo.* ¡FROM ¡genes ¡ JOIN ¡geo ¡ON ¡(geo.geneid=genes.geneid) ¡WHERE ¡genes.func ¡< ¡X;

slide-18
SLIDE 18

HPBDC

2017

Queries

n Query ¡2: ¡Aggrega,on ¡

n An ¡aggregated ¡opera,on ¡on ¡all ¡data ¡in ¡a ¡matrix ¡data ¡table ¡

SELECT ¡geneid, ¡avg(expr_value) ¡as ¡avg_expr_value ¡FROM ¡geo ¡ GROUP ¡BY ¡geneid;

slide-19
SLIDE 19

HPBDC

2017

Queries

n Query ¡3: ¡Join ¡

n Join ¡data ¡from ¡the ¡geo ¡and ¡go ¡tables ¡ ¡

SELECT ¡go.goid ¡AS ¡go_col, ¡go.pid ¡AS ¡pid, ¡ ¡go.belongs ¡AS ¡cat, ¡gp.ev ¡AS ¡val ¡ FROM ¡ (SELECT ¡g.geneid ¡AS ¡gid, ¡ p.pa@en@d ¡AS ¡pid,g.expr_value ¡AS ¡ev ¡FROM ¡geo ¡g, ¡pa@ents ¡p ¡ WHERE ¡p.pa@en@d ¡< ¡5 ¡AND ¡g.pa@en@d ¡= ¡p.pa@en@d ¡) ¡gp, ¡go ¡ WHERE ¡go.geneid ¡= ¡gp.gid;

slide-20
SLIDE 20

HPBDC

2017

Join ¡Plan ¡in ¡Spark

geo patients go MapJoin Filter ShuffleJoin

g.patientid = p.patendid go.geneid = gp.geneid

Stage0 Stage2 Stage3 Job0 Job1 Stage1

slide-21
SLIDE 21

HPBDC

2017

Complex ¡Analy,cs

n Covariance ¡

n Analyze ¡the ¡relevance ¡of ¡mul,dimensional ¡data ¡

n SVD ¡

n Eliminate ¡the ¡interference ¡data ¡in ¡raw ¡data ¡

n QR ¡Decomposi,on ¡

n Common ¡matrix ¡decomposi,on ¡used ¡in ¡linear ¡regression, ¡eigenvalue ¡

calcula,on ¡… ¡

slide-22
SLIDE 22

HPBDC

2017

Compare ¡with ¡GenBase

GenBase BigDataBench-­‑S Workload ¡Category Mixed Either ¡data ¡queries ¡or ¡complex ¡ analy,cs Workload ¡Number 5 ¡mixed ¡workloads 3 ¡data ¡manipula,on ¡queries ¡ 3 ¡complex ¡analy,cs ¡workloads Supported ¡Systems Tradi&onal ¡row ¡and ¡ column ¡stores ¡+ ¡R/ Madlib, ¡ ¡ Hadoop, ¡ ¡SciDB Large-­‑scale ¡data ¡analy,cs ¡ systems, ¡including ¡ ¡ Hadoop ¡(MapReduce ¡+ ¡Tez), ¡ Spark

slide-23
SLIDE 23

HPBDC

2017

Experiments

n Configura,ons ¡

Config Node Number 10 ¡Huawei ¡RH2285 ¡servers CPU Intel ¡Xeon ¡E5645, ¡12 ¡cores Memory 32 ¡GB Disk 1TB ¡SATA

slide-24
SLIDE 24

HPBDC

2017

Experiments

n Configura,ons ¡

n 10 ¡servers, ¡each ¡with ¡12 ¡cores, ¡32 ¡GB ¡memory ¡and ¡1TB ¡disk

Hadoop ¡ MapReduce Tez Spark Version 2.7.1 0.8.3 2.0.1 Query ¡ Processing Hive ¡2.0.0 Hive ¡2.0.0 SparkSQL Machine ¡ Learning Mahout ¡ MLlib

slide-25
SLIDE 25

HPBDC

2017

A ¡Brief ¡View ¡of ¡Execu,on ¡Model

Map ¡ Map ¡ Map ¡ Reduce ¡ Reduce ¡

HDFS ¡

HDFS ¡ HDFS ¡

Map ¡ Map ¡ Map ¡ Reduce ¡ Reduce ¡

MapReduce

Tez

Map ¡ Map ¡ Map ¡ Reduce ¡ Reduce ¡

HDFS ¡

HDFS ¡

Reduce ¡ Reduce ¡

slide-26
SLIDE 26

HPBDC

2017

A ¡Brief ¡View ¡of ¡Execu,on ¡Model

n Spark

  • iter. ¡1 ¡
  • iter. ¡2 ¡

. ¡ ¡. ¡ ¡. ¡ Input ¡ Input ¡ query ¡1 ¡ query ¡2 ¡ query ¡3 ¡ . ¡ ¡. ¡ ¡. ¡

  • ne-­‑time ¡

processing ¡

[M ¡Zaharia, ¡2012]

slide-27
SLIDE 27

HPBDC

2017

Experiments

n Performance ¡of ¡queries ¡with ¡different ¡formats ¡

n Text, ¡Parquet, ¡ORCFile ¡

n Performance ¡comparison ¡of ¡query ¡processing ¡between ¡three ¡

systems ¡

n Performance ¡comparison ¡of ¡complex ¡analy,cs ¡between ¡

Hadoop ¡and ¡Spark

slide-28
SLIDE 28

HPBDC

2017

  • Experiments ¡– ¡File ¡Format

n Storage ¡efficiency ¡of ¡different ¡file ¡formats ¡

n Row-­‑based: ¡Text ¡ n Column-­‑based: ¡ ¡Parquet, ¡ORCFile

Special ¡serializa&on ¡ ¡method ¡for ¡integers

slide-29
SLIDE 29

HPBDC

2017

Experiments ¡– ¡File ¡Format

n Effect ¡of ¡file ¡format ¡on ¡query ¡processing ¡performance ¡

n Selec,on

  • No ¡obvious ¡speedup ¡when ¡ ¡

using ¡column-­‑based ¡format ¡ ¡ The ¡data ¡filter ¡opera,on ¡is ¡ ¡ based ¡on ¡one ¡map-­‑join ¡opera,on

slide-30
SLIDE 30

HPBDC

2017

Experiments ¡– ¡File ¡Format

n Effect ¡of ¡file ¡format ¡on ¡query ¡processing ¡performance ¡

n Aggrega,on

  • Be^er ¡performance ¡ ¡

for ¡column-­‑based ¡format Smaller ¡data ¡size ¡ ¡ ⇒ Less ¡parallelism ¡for ¡table ¡read ¡ ⇒ More ¡local ¡combine ¡opera,ons ¡ ⇒ Less ¡shuffle ¡data ¡exchange ¡

slide-31
SLIDE 31

HPBDC

2017

Experiments ¡– ¡File ¡Format

n Effect ¡of ¡file ¡format ¡on ¡query ¡processing ¡performance ¡

n Join

  • Even ¡worse ¡performance ¡when ¡

using ¡column-­‑based ¡formats ¡for ¡ HiveOnMR ¡and ¡HiveOnTez Smaller ¡data ¡size ¡ ¡ ⇒ Less ¡parallelism ¡for ¡table ¡read ¡ ¡ But.. ¡ Cannot ¡perform ¡local ¡combina,ons ¡ Same ¡record ¡size ¡+ ¡less ¡parallelism ¡ è ¡Heavier ¡load ¡for ¡each ¡worker

slide-32
SLIDE 32

HPBDC

2017

Time ¡Distribu,on

  • Parallelism ¡Degree: ¡ ¡
  • Spark: ¡user-­‑defined ¡(300) ¡
  • Tez: ¡
  • Text: ¡91 ¡
  • Parquet: ¡14 ¡
  • ORCFile: ¡4
slide-33
SLIDE 33

HPBDC

2017

Experiments ¡– ¡System ¡Comparison

  • Selec,on

HiveOnMR ¡gets ¡the ¡worst ¡performance ¡

  • Long ¡task ¡launch ¡,me ¡
  • Extra ¡sort ¡opera,on ¡for ¡each ¡map ¡task
  • Aggrega,on
slide-34
SLIDE 34

HPBDC

2017

Experiments ¡– ¡System ¡Comparison

  • Join
  • Text

Parquet Spark ¡gets ¡the ¡best ¡performance ¡

  • Fast ¡table ¡scan ¡
  • Impact ¡of ¡parallelism ¡degree ¡

Tez ¡is ¡the ¡worst ¡

  • Smallest ¡parallelism ¡degree ¡
  • Lack ¡of ¡effec,ve ¡plan ¡op,miza,on ¡strategies ¡
  • Accurate ¡predic,on ¡of ¡parallelism ¡degree ¡ ¡
slide-35
SLIDE 35

HPBDC

2017

Experiments– ¡Complex ¡Analy,cs

  • Spark ¡performs ¡much ¡be^er ¡than ¡Hadoop ¡
  • A ¡block-­‑oriented ¡matrix ¡model: ¡ ¡
  • only ¡support ¡covariance ¡
  • SVD ¡and ¡QR: ¡
  • Be^er ¡support ¡for ¡itera,ve ¡ ¡

¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡ ¡computa,ons ¡ Support ¡for ¡efficient ¡linear ¡algebra ¡

  • pera@ons ¡is ¡s@ll ¡not ¡enough ¡
slide-36
SLIDE 36

HPBDC

2017

Conclusion

n Current ¡column-­‑based ¡storage ¡formats ¡

n provide ¡li^le ¡help ¡for ¡performance ¡improvement ¡for ¡genomics ¡

microarray ¡data ¡analy,cs ¡

n even ¡can ¡cause ¡performance ¡reduc,on ¡

n Reasons ¡

n Lack ¡the ¡support ¡for ¡the ¡map-­‑join ¡based ¡data ¡filter ¡queries ¡ n Lack ¡efficient ¡query ¡op,miza,on ¡strategies ¡for ¡parallelism ¡degree ¡

decision ¡

n Spark ¡can ¡achieve ¡the ¡best ¡performance ¡in ¡most ¡scenarios ¡

n S,ll ¡lack ¡enough ¡support ¡for ¡complex ¡linear ¡algebra ¡opera,ons ¡

slide-37
SLIDE 37

HPBDC

2017

Improvement ¡Suggests

n Efficient ¡storage ¡structure ¡

n Storage ¡size ¡reduc,on ¡ n Awareness ¡of ¡implicit ¡data ¡filter ¡opera,ons ¡

n Be^er ¡Query ¡op,miza,on ¡strategies ¡

n Load-­‑based ¡parallelism ¡degree ¡decision ¡

n Be^er ¡support ¡for ¡complex ¡algebra ¡opera,ons ¡

n Efficient ¡large-­‑scale ¡matrix ¡par,,oning ¡and ¡computa,on ¡model ¡

slide-38
SLIDE 38

HPBDC

2017

Thanks ¡J