29
Benchmarking Sahara-based Big-Data-as-a-Service Solutions Zhidong Yu, Weiting Chen (Intel) Matthew Farrellee (Red Hat) May 2015

Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

  • Upload
    buidien

  • View
    220

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

Benchmarking Sahara-based

Big-Data-as-a-Service Solutions

Zhidong Yu, Weiting Chen (Intel)

Matthew Farrellee (Red Hat)

May 2015

Page 2: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Why Sahara

o Sahara introduction

o Deployment considerations

o Performance testing and results

o Future envisioning

o Summary and Call to Action

2

Agenda

Page 3: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o You or someone at your company is using AWS, Azure, or Google

o You’re probably doing it for easy access to OS instances, but also the modern application features, e.g. AWS’ EMR or RDS or Storage

o [expecting anyone to choose openstack infra for their workloads means providing app level services, e.g. Sahara & Trove]

o [app writers apps are complex enough without having to manage the supporting infra. examples outside cloud in mobile (feedhenry, parse, kinvey)]

3

Why Sahara: Cloud features

Page 4: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o [all this true for database provisioning, and that’s a known quantity]

o [all this especially true for data processing, which many developers are only recently (compared to RDBMS) integrating into their applications]

o [data processing workflow, show huge etl effort, typical workflow does not even take into account infra to run it]

o [flow into key features of sahara]

4

Why Sahara: Data analysis

Page 5: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Why Sahara

o Sahara introduction

o Deployment considerations

o Performance testing and results

o Future envisioning

o Summary and Call to Action

5

Agenda

Page 6: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Repeatable cluster provisioning and management

operations

o Data processing workflows (EDP)

o Cluster scaling (elasticity), Storage integration

(Swift, Cinder, HCFS)

o Network and security group (firewall) integration

o Service anti-affinity (fault domains & efficiency)

6

Sahara features

Page 7: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

7

Sahara

architecture

Page 8: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Users get choice of integrated data progressing

engines

o Vendors get a way to integrate with OpenStack and

access users

o Upstream - Apache Hadoop (Vanilla), Hortonworks,

Cloudera, MapR, Apache Spark, Apache Storm

o Downstream - depends on your OpenStack vendor

8

Sahara plugins

Page 9: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Why Sahara

o Sahara introduction

o Deployment considerations

o Performance testing and results

o Future envisioning

o Summary and Call to Action

9

Agenda

Page 10: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

10

Storage Architecture#2 #4#3#1

Host

HDFS

VM

Comput-

ing Task

VM

Comput-

ing Task

Host

HDFS

VM

Comput-

ing Task

VM

HDFS

Host

HDFS

VM

Comput-

ing Task

VM

Comput-

ing Task

Legacy

NFSGlusterFS Ceph

External

HDFSSwift

HDFS

Scenario #1: computing and data service collocate in the

VMs

Scenario #2: data service locates in the host world

Scenario #3: data service locates in a separate VM world

Scenario #4: data service locates in the remote network

o Tenant provisioned (in VM)o HDFS in the same VMs of computing tasks vs. in

the different VMso Ephemeral disk vs. Cinder volume

o Admin providedo Logically disaggregated from computing taskso Physical collocation is a matter of deploymento For network remote storage, Neutron DVR is very

useful feature

o A disaggregated (and centralized) storage system has significant valueso No data silos, more business opportunitieso Could leverage Manila serviceo Allow to create advanced solutions (.e.g. in-memory

overlayer)o More vendor specific optimization opportunities

Page 11: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Container seems to be promising but still need better support

o Determining the appropriate cluster size is always a challenge to tenants

o e.g. small flavor with more nodes or large flavor with less nodes

11

Compute EnginePros Cons

VM

• Best support in OpenStack

• Strong security

• Slow to provision

• Relatively high runtime performance overhead

Container

• Light-weight, fast provisioning

• Better runtime performance than VM

• Nova-docker readiness

• Cinder volume support is not ready yet

• Weaker security than VM

• Not the ideal way to use container

Bare-Metal

• Best performance and QoS

• Best security isolation

• Ironic readiness

• Worst efficiency (e.g. consolidation of workloads with

different behaviors)

• Worst flexibility (e.g. migration)

• Worst elasticity due to slow provisioning

Page 12: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Direct Cluster Operations

o Sahara is used as a provisioning engine

o Tenants expect to have direct access to the virtual cluster

o e.g. directly SSH into the VMs

o May use whatever APIs comes with the distro

o e.g. Oozie

o EDP approach

o Sahara’s EDP is designed to be an abstraction layer for tenants to consume the services

o Ideally should be vendor neutral and plugin agnostic

o Limited job types are supported at present

o 3rd party abstraction APIs

o Not supported yet

o e.g. Cask CDAP

Data Processing API

Page 13: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

Deployment Considerations Matrix

Storage

Compute

Distro/Plugin

Data Processing API

Vanilla CDH HDP MapRSpark

VM Container Bare-metal

Tenant vs. Admin

provisioned

Disaggregated vs. Collocated HDFS vs. other options

Legacy EDP

(Sahara native)3rd party APIs

Storm

Performance results in the next section

Page 14: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Why Sahara

o Sahara introduction

o Deployment considerations

o Performance testing and results

o Future envisioning

o Summary and Call to Action

14

Agenda

Page 15: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

● Host OS: CentOS7

● Guest OS: CentOS7

● Hadoop 2.6.0

● 4-Nodes Cluster

● Baremetal

●OpenStack using KVM○qemu-kvm v1.5

●OpenStack using Docker○Docker v1.6

15

Testing Environment

Page 16: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

● Two factors bring ??% overhead

○ access pattern change accounts for 10%

○ virtualization overhead accounts for ??%

Ephemeral Disk Performance

HDFS over RAID5 brings extra 10% performance overhead

Lower is better

Host

HDFS

Host

Nova Inst.

Store

VM

HDFS

VM

HDFS

RAID

…..

…..vs.

TO BE UPDATED

Page 17: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o To be added.

Collocated HDFS Performance

Host

HDFS

Host

HDFS

…..

VM VM VMVM

TO BE Replaced by real data

Page 18: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

HostHost

Swift Performance

o To be added.

Swift Swift

…..

VM VM VMVM

TO BE Replaced by real data

Page 19: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

● Docker provide similar disk write result with KVM

○ ~15% performance loss for both KVM and Docker

● Docker use less resources than KVM

Bare-metal vs. Container vs. VMHigher is better

TO BE UPDATED

Page 20: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Why Sahara

o Sahara introduction

o Deployment considerations

o Performance testing and results

o Future envisioning

o Summary and Call to Action

20

Agenda

Page 21: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Architectured for disaggregated computing and storage

o Supporting more storage backend

o Integration with Manila

o Better support for container and bare-metal (Nova-docker and Ironic)

o Murano as an alternative?

o EDP as a PaaS like layer for Sahara core provisioning engine

o Data connector abstraction

o Binary/job management

o Workflow management

o Policy engine for resource and SLA management

o Auto-scale, auto-tune

o Sahara needs to be open to all the vendors in the big data ecosystem

o A complete big data stack may have many options at each layer

o e.g. acceleration libraries, analytics, developer oriented application framework (e.g. CDAP)

o Requires a more generic plugin/driver framework to support it

21

Future of Sahara[To be removed]

This page is for what’s in our vision. Don’t have to be

consensus of the community or already planned in roadmap.

Page 22: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Great improvement in Sahara Kilo release. Production ready

with real customer deployments.

o A complete Big-Data-as-a-Service solution requires more

considerations than simply adding a Sahara service to the

existing OpenStack deployment

o Preliminary benchmark results show ….

o Many features could be added to enhance Sahara.

Opportunities exist for various types of vendors.

22

Summary and Call-to-Action[To be removed]

Zhidong’s draft

Join in the Sahara community and make it even more vibrant!

Page 23: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

BACKUP

Page 24: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

DD Testing Result

Test Case Throughput

Host with Multiple Disks 100 MB/s x 4 = 400 MB/s

Container with Multiple Disks 90 MB/s x 4 = 360 MB/s

Host in RAID5 320 MB/s

VM in RAID5 270 MB/s

Container in RAID5 270 MB/s

Multiple Disks Configuration: 1 x 1TB SATA HDD for System, 4 x 1TB SATA HDDs for Data,

RAID 5 Configuration: 5 x 1TB SATA HDD

dd command: dd if=/dev/zero of=/mnt/test1 bs=1M count=8192 (4096, 8192, 16384, 24576) conv=fdatasync

Page 25: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

2-phases in Sort running period for disk write

● Shuffle Map-Reduce Data -> Use temp folder to store intermediate data(40%total

throughput)

● Write Output -> HDFS Write(60%total throughput)

Sort IO Profiling

Shuffling data using temp folder

Write output to HDFS/External StorageDisk IO Peak

Page 26: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

● Dedicate storage disks to spread disk io for better performance

● A system disk for operating system

● Several data disks for tmp folder and HDFS

Storage Suggestion in Computing

Node

VM

Comput-

ing Task

HDFS

VM

HDFS

Comput-ing

Task

System

Disk

Data Disk

For operating system, it can be used to allocate boot, root,

and swap partition in this disk. RAID is also available in

this disk for better failover.

For intermediate data, it is used to assign a volume for

intermediate data in mapreduce configuration.

Data DiskFor HDFS, it is used to process HDFS. It can also be

replaced with any kind of external storage like swift.

Page 27: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

Storage Strategy in Sahara

Transient ClusterUse external storage(Swift, External HDFS) to

persist data.

Pros

● persist data in external storage

● terminate computing node after finishing

the jobs

Cons

● lost performance from external storage

Long Run ClusterUse ephemeral storage/cinder storage for better

performance.

Pros

● better performance using internal storage

Cons

● may still need backup from external storage

VM

Comput-

ing Task

HDFS

#1

VM

#2

HDFS

Comput-

ing TaskVM

Comput-

ing Task

Host

HDFSSwift

#4

VM

Comput-

ing Task #3

VM

Comput-

ing Task

VM

HDFS

#3

VM

Comput-

ing Task

VM

HDFS

Page 28: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

o Additional external network in computing node

o Using iPerf and 1Gb in internal and external network

o DVR provide better performance from Instance to Host

DVR enhance network performance

Host Host

941Mb

HostHost

Instance

941Mb

Host

Instance w/o DVR:941Mb

w/ DVR: 14Gb

Host

Instance

Host Host

Instance

941Mb

Instance

14GbInstance

Instance communicates with different hosts. The scenario usually uses

in control path from host to instances.

Instances communicate between hosts. The scenario usually uses in

Internal HDFS data communication.

Instance communicates with the same host. The scenario usually uses

in control path from host to instances. Put datanode in the host with data

locality may bring a new concept for data persistent

Two instances in the same host.Internal HDFS data communication.

Page 29: Benchmarking Sahara-based Big-Data-as-a-Service … · parse, kinvey)] 3 Why Sahara: Cloud features. ... Benchmarking Sahara-based Big-Data-as-a-Service Solutions Author: Raghuram,

Intel technologies’ features and benefits depend on system configuration and may require enabled hardware, software or service activation. Performance varies depending on system configuration. No computer system can be absolutely secure. Check with your system manufacturer or retailer or learn more at [intel.com].

Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products.

Include as footnote in appropriate slide where performance data is shown:o § Configurations: [describe config + what test used + who did testing] o § For more information go to http://www.intel.com/performance.

Intel, the Intel logo, {List the Intel trademarks in your document} are trademarks of Intel Corporation in the U.S. and/or other countries.

*Other names and brands may be claimed as the property of others.

© 2015 Intel Corporation.

29

Disclaimer