Skip to content

LevelDB Benchmark Revisited

m1ch1 edited this page Mar 4, 2012 · 2 revisions

Introduction

Configurations

Hardware

  • 2 x Xeon E5620 2.40GHz (HT enabled, 8 cores, 16 threads)
  • Memory: 4GB
  • Disk: RAID-10/2 == 4 x 300GB 15K rpm
  • RAID cache: 512MB (0% read, 100% write)
  • Disk cache: off

Operating System

  • RHEL Server 5.6, Linux 2.6.18-238.1.1.el5 x86_64, 64-bit

File System

  • XFS - noatime,nodiratime,logbufs=8,nobarrier

LevelDB

  • svn revision r58
  • options.write_buffer_size = 500 * 1048576; // 500MB write buffer
  • options.block_cache = leveldb::NewLRUCache(1500 * 1048576); // 1.5GB cache
  • options.sync = false;

YCSB Workload

  • Use the same box as LevelDB
  • Record size: 4KB
  • Number of records: 10 million
  • Number of client threads: 100
  • Read/Write ratio: 80/20

Here are the actual YCSB workload parameters:

recordcount=10000000
operationcount=100000
workload=com.yahoo.ycsb.workloads.CoreWorkload
readallfields=true
readproportion=0.8
updateproportion=0.2
scanproportion=0
insertproportion=0
requestdistribution=zipfian
fieldlength=4000
fieldcount=1
threadcount=100
insertorder=ordered

Results

Sequential Insert Performance

80% Read / 20% Update Performance

Comments?

Send me email at [email protected] or post your comments here if you have any questions/suggestions.