Image Size Matters!

No Image2KB12KB500KB
SQL-X107106510
CASQL1021019759
MongoDB1141059466

The presence of a profile image and its size may impact system performance dramatically. Using BG, an evaluator may benchmark a data store with different image sizes for member profile. This includes the possibility of no image at all. See BG's data model for details.

To illustrate, the x-axis of the adjacent figure shows four different BG databases. One with no images and 3 others with the following profile image sizes: 2 KB, 12 KB, and 500 KB. The y-axis reports the SoAR (maximum throughput rating) of the different systems with an SLA that requires 95% of View Profile (VP) actions to observe a service time equal to or faster than 100 milliseconds.

Target systems include:

  1. SQL-X: A commercial strength relational database management system. Due to licensing agreement, we cannot disclose the identity of this system

  2. CASQL: SQL-X augmented with memcached server, version 1.4.2 (64 bit), using Whalin memcached client, version 2.5.1

  3. MongoDB version 2.0.6: A document store

With no profile image, MongoDB outperforms SQL-X by more than a factor of two. With a small profile image size (2KB), SQL-X and MongoDB provide comparable performance. With 12 KB profile image sizes, SoAR of SQL-X drops from thousands of actions (16,139) per second to one hundred. With 500 KB profile image sizes, SQL-X cannot satsify the SLA, producing a rating of zero. Augmenting SQL-X with memcached (CASQL) uses cached key-value pairs to provide a SoAR in the order of hundreds.