Benckmarking and System Design

post-thumb

One of my candidates recently asked me a system design question in an email.I thought will be nice to document my response and seek advice from my peers who might have interesting practical experiences.I will keep this updated as new responses come by and hopefully we have something interesting. If you are reading this blog and have something to add please email me at rsalota@interviewhelp.io

Hi Rahul,

Where can I get approximate numbers for the max reads / writes per second supported by various database types ; Relational vs Key-Value vs Column (Cassandra and Hbase) vs In memory (Redis/Memcached). From my understanding, benchmarks performance results vary with tests, but I’m looking to know at what reads / writes per second does it make sense to select a Relational to No-SQL to in-memory

The only numbers I could find were for these limits

SQL Server = 36K reads per second

MySQL = 50K reads per second

A few rules of thumbs

  1. Orders of magnitude is important and not the exact numbers
  2. Don’t trust the numbers if presented by creator of the product, trust independent studies.
  3. Look out for configuration parameters so compare apples to apples . Vendors bench marks on db are run with very specific parameters that are typically impractical but of course getting phenomenal performance.

Here are links to some interesting studies

Cassandra

Redis

MySQL

Kafka

Preparing for Amazon interview? Don’t forget to check out our article about Amazon’s System design interview questions.

Prepare For Your System Design Interview Using Our Interview Preparation Program

Enroll Now

comments powered by Disqus