I will be giving a talk about performance characterization and tuning of Scylla on Samsung NVMe SSDs. We will characterize the performance of Scylla on Samsung high-performance NVMe SSDs and show how Z-SSD ─ the Samsung ultra-low-latency NVMe drive ─ can significantly shrink the performance gap between in-memory and in-storage with Scylla.
We will further evaluate the throughput-vs-latency profile of Scylla with NVMe devices and present end-to-end latencies (from the client's viewpoint) as well as the latencies of the software/hardware stack. We will show that a Z-SSD-backed Scylla cluster can provide competitive performance to an in-memory deployment while sharply reducing costs.
1. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Scylla on Samsung Z-SSD
Senior Performance Architect, Samsung Semiconductor Inc.
Arash Rezaei
2. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Arash Rezaei
2
Arash is a senior performance architect at Samsung
Semiconductor Inc. His work has been primarily on
performance evaluation and tuning of data center
applications with a focus on storage.
3. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Agenda
3
▪ Z-SSD – Samsung’s ultra-low latency SSD
▪ Z-SSD use-cases
▪ Scylla on Z-SSD
▪ Summary
4. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Introduction: Latency Matters
4
▪ Threshold of patience is decreasing
o Retrieving data from caches, databases, data stores
o Business analytics
MySQL/ NoSQL
Databases
Streaming
Data
Storage
Layer
Cache Layer
Web
Layer
Analytics
Latency
5. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Samsung Z-SSD
5
▪ Ultra-low latency flash storage device
▪ Provides 5.5x lower latency comparing to today’s leading NVMe SSD
14.7
80.3
0 10 20 30 40 50 60 70 80 90
Z-SSD
PM1725a
Latency [usec]
4K Random
Read Latency
5.5x Lower Latency
fio --rw=randread --bs=4k --direct=1 --iodepth=1 –numjobs=1 --
ioengine=libaio --norandommap
6. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Samsung Z-SSD
6
DRAM
Z-NAND
New Controller
50%▼
Past LP4
70%▼
New CTRLPast
x 1/10 ▼
Z-NANDPast
▪ Samsung’s Z-SSD is vertically optimized from DRAM to storage
7. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
SZ985: Samsung Z-SSD
7
▪ Sequential traffic
o 3.2 GB/sec Read
o 3.2 GB/sec Write
▪ Random traffic
o 750K IOPs Reads
o 170K IOPs Writes
▪ Capacity
o 800GB
8. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Z-SSD Minimizes Latency
8
▪ High performance @ consistent low latency
SSD
Throughput Latency
Sequential
R/W
Random
R/W
Random
Read
PM1725a
3.3/2.95
GB/s
800/160
KIOPS
90µs
Z-SSD 3.2/3.2 GB/s
750/170
KIOPs
15µs
Read-only workload (FIO) Mixed (80%/20% R/W) FIO
9. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Z-SSD Use Cases
10. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Z-SSD Benefits Latency-Sensitive Apps (1/2)
10
▪ Z-SSD as swap space
▪ Memcached: distributed
object caching system
▪ 3x speedup @ 1
3 the
average latency under
heavy swap load
0
20000
40000
60000
80000
100000
memcached
Throughput[op/sec]
Memcached
Throughput
PM1725a Z-SSD
0
200
400
600
800
1000
1200
1400
memcached
ReadLatency[usec]
Memcached
Latency
PM1725a Z-SSD
3x
𝟏
𝟑
memcached with 60GB dataset (45 million records, value size=1000B)
DRAM capacity=32GB (less than half of the used memory space)
Driven with YCSB, 90% read/ 10% update
11. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Z-SSD Benefits Latency-Sensitive Apps (2/2)
11
▪ Z-SSD as storage layer
▪ RocksDB is used as storage
engine for DBs
▪ 2x throughput @ ½ the
average latency
0
20000
40000
60000
80000
100000
120000
140000
RocksDB
Throughput[op/sec]
RocksDB
Throughput
PM1725a Z-SSD
2x
0
50
100
150
200
250
300
350
RocksDB
AverateLatency[usec]
RocksDB
Average Latency
PM1725a Z-SSD
½
db_bench read-while-writing workload
12. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Scylla on Z-SSD
13. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Methodology
13
▪ Goal:
o Compare Scylla in-memory vs. Scylla on Z-SSD
▪ Metric:
o Max throughput under given tail-latency constraints
▪ Workload:
o Cassandra-stress with:
• Varying Read/Write ratio (100%/0% – 75/25% )
• Varying % of request served from memory (25% to 75%)
o Database populated with 300GB data (payload 1KB)
14. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
System Configuration
14
Item Description
CPU 2 x Intel Xeon Gold 6154 @
3.00GHz (total 36 cores per node)
RAM 128GB
SSD 2 x SZ985 800GB
OS Ubuntu 16.04.2, Kernel 4.12.0
Scylla version 2.0
15. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Throughput while Meeting Latency SLA (1/2)
▪ 100% read workload
15
Sub millisecond 95 percentile latency Sub 2 millisecond 99 percentile latency
16. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Throughput while Meeting Latency SLA (1/2)
▪ 100% read workload
16
Sub millisecond 95 percentile latency Sub 2 millisecond 99 percentile latency
17. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Throughput while Meeting Latency SLA (2/2)
▪ 75% read/25% write workload
17
Sub millisecond 95 percentile latency Sub 2 millisecond 99 percentile latency
18. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Throughput while Meeting Latency SLA (2/2)
▪ 75% read/25% write workload
18
Sub millisecond 95 percentile latency Sub 2 millisecond 99 percentile latency
19. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
19
▪ Server viewpoint
▪ Latency under a fixed throughput
▪ 100% read workload
(95 percentile latency)
Software Overheads
20. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
20
▪ Server viewpoint
▪ Latency under a fixed throughput
▪ 100% read workload
(95 percentile latency)
Software Overheads
Device tail latency from FIO experiments
21. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Scylla: DRAM, Z-SSD, or NVMe SSD?
21
▪ For a given use-case requirement (throughput and DB size), what is
the most cost-efficient cluster configuration?
▪ Optimize performance/$ for different use-cases
22. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
Summary
▪ Samsung Z-SSD: ultra-low latency SSD device
o 5.5x lower latency compared to NVMe SSD
▪ Z-SSD benefits latency-sensitive applications
o RocksDB: 2x throughput @ ½ the average latency
o Memcached (as swap): 3x speedup @ 1
3 the average latency
▪ Z-SSD for Scylla:
o Helps reduce the performance gap between memory and storage
• Delivers 44% – 23% of DRAM performance at significant lower cost
– 50% – 75% of requests served from memory
o Software improvements could further shrink the memory/storage gap
o Opens new options for architecting a large cluster
22
23. PRESENTATION TITLE ON ONE LINE
AND ON TWO LINES
First and last name
Position, company
THANK YOU
a.rezaei@samsung.com
Please stay in touch
Any questions?