Monday, September 30, 2013

AWS EBS PIOPS : block size and IOPS


Having spent more time in the database world than in the web development world, I am accustomed to measuring (database) performance/through put in terms of IOPS or TPS.  The web/video/image world like to use MB/sec.  Why I am saying this? Because it relates to the conversation about getting a certain level of PIOPS (based upon a 16 KB block) on AWS EBS and how this effects MB/sec.  MB/sec, I am beginning to understand, and maybe move to the 'dark side', is the ultimate measure of disk 'performance'.  

Example: A 2000 Provisioned IOPS volume can handle:
•2000 16KB read/write per second, or 1000 32KB read/write per second, or 500 64KB read/write per second 
•You will get consistent 32 MB/sec throughput (with 16KB or higher IOs)
•Perform an index creation action and sends I/O of 32K, IOPS becomes 1000, you still get 32MB/sec throughput
•On best effort, you may get up to 40 MB/sec throughput 

So, you may be better off using a 64 KB block size but your PIOPS will show up as lower but your MB/sec could be better.

No comments:

Post a Comment