1. HIGH PERFORMANCE
HARDWARE FOR DATA
ANALYSIS
Michael Pittaro
Michael_Pittaro@dell.com
O P E N
D A T A
S C I E N C E
C O N F E R E N C E_
BOSTON 2015
@opendatasci
3. 3
About This Talk
âą We canât cover everything about hardware in a 30 minute session.
âą We can go deep enough to help you
â Understand tradeoffs and balanced architectures
â Ask the right questions about choices
â Learn from what others are doing
âą My Approach Today
1. Why look at high performance hardware ?
2. Look at a production cluster design
3. Look at the choices and tradeoffs behind the scene
4. 4
Why consider High Performance Hardware ?
âą Choice of hardware can have large impacts
â On performance
â On budget
âą Understanding the hardware helps with the software
â Scalable and parallel systems deal with both
âą Data is heavy
â Local clusters are persistent
â Large data transfer may not be a viable option.
âą Cloud hosting may not be an option
â You canât or wonât delegate critical infrastructure to third parties.
â You need every bit of performance you can get.
7. 7
Reference Architectures Fill The Gap
âą Tested Server Configurations
âą Tested Network Configurations
âą Recommended Software Configuration
â Application and Workload Software
â OS Infrastructure
â Operational Infrastructure
âą Opinionated Point of View
â Based on real world experience
âą Recommended starting point
â Customization is possible
7
8. 8
The secret to a good architecture is balance
Price
Performance
Fault Zones
Application Workload
Software
12. 12
Server Choices
âą 4 Socket Servers (e.g. Dell R920)
â Optimized for enterprise applications - Large RDBMS servers, SAP, SAP HANA,
Microsoft Exchange
â Very large memory available (6 TB)
â Often use direct or network attached storage
âą âBladeâ Servers (e.g. Dell M620, M1000e Chassis)
â Pluggable Processor and Storage modules
â Backplane and Chassis has a lot of shared interconnect logic
â Flexibility for enterprise applications - Virtualization is popular
âą 2 Socket Servers (e.g. Dell R620, R630, R720, R730)
â Many options available
â 1U and 2U chassis footprints
â Developed for Web Hosting and Large Scale-Out Clusters
â Dell Internal Storage â 12 x 3.5â drives, 24 x 2.5â drives (in chassis)
13. 13
âą Assume 1-1.5 Hadoop tasks per core
â allows headroom for other processes
âą Hyperthreading
â Enable for Hadoop, Spark
â for others: it depends
âą Hadoop: aim for 1 core / disk spindle
âą Impala: can handle more spindles and cores easily
âą Spark: I/O depends on back end storage
âą Faster processor is better
â Most Hadoop jobs are I/O bound, not processor bound
â Hadoop compression uses processor cycles
â Less cores with a faster clock is often a good tradeoff
â The Map / Reduce balance depends on actual workload
â Itâs hard to optimize more without knowing the actual workload
Selecting Processors
14. 14
Intel Xeon Dual Socket Processor Architecture
Haswell CPU
Up to 18 cores
TDP: Up to 145 W (SVR); 160 W (WS)
Socket Socket-R3
Scalability 2S capability
Memory
4xDDR4 channels
1333, 1600, 1866 (2 DPC), 2133 (1 DPC)
RDIMM, LRDIMM
QPI
2xQPI 1.1 channels
6.4, 8.0, 9.6 GT/s
PCIe
PCIe 3.0 (2.5, 5, 8 GT/s)
PCIe Extensions: Dual Cast, Atomics
40xPCIe*3.0
IntelÂź XeonÂź
processor
E5-2600 v3
IntelÂź XeonÂź
processor
E5-2600 v3
QPI
2 Channels
DDR4
LAN
Up to
4x10GbE
PCIe* 3.0, 40 lanes
IntelÂź C610
series
chipset
WBG
DDR4
DDR4
DDR4
DDR4
DDR4
DDR4
DDR4
15. 15
Intel Processor Generations
Product Xeon E5-2600 E5-2600 V2 E5-2600 V3
Microarchitecture SandyBridge IvyBridge Haswell
Cores / Threads 8 / 16 12/24 18/36
Last Level Cache Up to 20MB Up to 30 MB Up to 45 MB
Max Memory Speed 1600 MT/S
DDR3
1866 MT/s
DDR3
2133 MT/s
DDR4
QPI (GT/s) 2 channels
6.4, 7.2, 8.0
2 channels
6.4, 7.2, 8.0
2 channels
6.4, 8.0, 9.6
Max DIMMS 12 12 12
Max Clock Speed 3.1GHz / 3.8GHz 3.7 GHz / 3.8GHz 3.7 Ghz / 3.8Ghz
Process Tech 32nm 22nm 22nm
Year 2012 2013 2014
16. 16
Selecting Memory
âą DDR3 versus DDR4, RDIMM versus LRDIMM
â DDR3 is cheaper now, DDR4 is faster (15%)
âą DIMM Sizes
â 8GB, 16GB, 32GB, 64GB, 128GB
âą Sweet Spot Varies
â DDR4 around 32GB right now
âą Balance the memory banks
â 4 memory channels per processor
â 4 x 16GB better than 2 x 32GB
âą Server Class Memory
â Itâs all ECC checked
â Dell Server BIOS options to optimize checking method
17. 17
Selecting Disks
âą 3.5â Drives
â 3TB, 4TB, 6TB per drive
â Pricing sweet spot is 3TB
â Use enterprise grade drives, not consumer !!
â SATA or SAS. SAS slightly faster.
â 3.0 GB/sec is fine, 6.0 Gb/sec is a waste with spinning drives
âą 2.5â Drives
â 800GB and 1.2 TB
â More expensive than 3.5â drives
â more spindles and performance
âą SATA Solid State Drives
â 6.0 Gb/sec
â 2.5â and 1.8â options
â Expensive for now
â Not as deterministic as spindles
18. 18
âą Hadoop scales processing and storage together
â The cluster grows by adding more data nodes
â The ratio of processor to storage is the main adjustment
âą Generally, aim for a 1 spindle / 1 core ratio
â I/O is large blocks (64Mb to 256Mb)
â Primarily sequential read/write, very little random I/O
â 8 tasks will be reading or writing 8 individual spindles
âą Drive Sizes and Types
â NL SAS or Enterprise SATA 6 Gb/sec
â Drive size is mainly a price decision
âą Depth per node
â Up to 48 TB/node is common
â 112 Tb / node is possible
â Consider how much data is âactiveâ
â Very deep storage impacts recovery performance
Spindle / Core / Storage Depth Optimization
1
21. 21
Network and Switches
âą Simple Tree Structure
â Top of Rack (TOR) for each rack / group of nodes
â Racks feed up to a Cluster or Aggregation Switch
â All switching is at Layer 2 (Ethernet)
âș No fancy routing or layer 3 (IP) packet inspection
â Most switches are 48 ports in this class
âą Switch Characteristics
â Line rate switching at 10Gbps
â Deep buffers to handle bursts
â Virtual Link Trunking (VLT)â two switches act as one, with failover
â Uplinks are 40GbE
âą High Availability and Performance
â Use two 10GbE links to alternate switches
â Bond at the Linux level into a single device
22. 22
Model Data Node
Configuration
Comments RA
R730Xd Dual socket, 12 cores,
24 x 2.5â spindles
Most popular platform for
Hadoop
C8000 Dual socket, 16 cores,
16 x 3.5â spindles
Popular for deep/dense
Hadoop applications
C6100 /
C6105
Dual socket, 8/12 cores,
12 x 3.5â spindles
Two node version. C6100 is
hardware EOL
C2100 Dual Socket, 12 cores,
12 x 3.5â spindles
Popular, hardware EOL but
often repurposed for
Hadoop
R620 Dual Socket, 8 cores,
10 x 2.5â spindles
1U form factor
C6220 Dual-socket, 8 cores,
6 x 2.5â spindles
Core/spindle ratio is not
ideal for Hadoop.
In the Wild â Dell Customer Hadoop Configurations
2
23. 23
âą GPUâs
â Possible, not seen too often with Hadoop
âą Ingest / Streaming
â Usually a custom configuration for high speed capture/loading (e.g. Kafka, Storm)
âą Dell PowerEdge VRTX
â Designed as a âmini-bladeâ for branch offices
â Could make a killer data science workstation
What I havenât talked about!
25. 25
High Performance Hardware for Data Analysis
âą Choosing hardware for big data analysis is difficult because of the many options and variables involved. The problem is more
complicated when you need a full cluster for big data analytics.
âą This session will cover the basic guidelines and architectural choices involved in choosing analytics hardware for Spark and
Hadoop. I will cover processor core and memory ratios, disk subsystems, and network architecture. This is a practical advice
oriented session, and will focus on performance and cost tradeoffs for many different options.