November 14, 2013, 8:21 PM — While getting the best performance from your systems is crucial, getting consistent performance is even more important, because it guarantees a satisfactory user experience and even sets the stage for building more capabilities on top of the system, Amazon Chief Technology Officer Werner Vogels said Thursday at the AWS re:Invent 2013 user conference in Las Vegas.
"If you improve consistency of performance, then it is easy for you to build your application," Vogels said.
Vogels launched into the discussion of consistency and performance as a way of explaining a new type of Amazon EC2 (Elastic Cloud Compute) computing instance, called I2, that will offer guaranteed I/O (input/output) performance. That means Amazon guarantees the speed at which data is written to data stores, as well as the speed at which it is read from these data sources to the customer's application.
"If you care about performance, it's all about the I/O. The most important thing is not that you get the highest possible I/O, but that you get consistent performance," Vogels said. "If you get consistent performance, you can build on top of that."
Amazon did not define what the abbreviation I2 stands for, though the service was developed to meet growing customer demand for more IOPS (input/output operations per second) on EC2, said Ariel Kelman, the head of worldwide marketing for AWS, in a follow-up interview.
In particular, databases, both relational and NoSQL, would benefit from consistently high I/O performance, Kelman said.
For many operations, such as writing a large file to storage, some variance in the time it takes to write that data to disk is no big deal. But for a multi-tier application making lots of small reads and writes, such as SAP running on an Oracle database, such variance can appear to the user as jitter or even, in extreme cases, as if the application has stopped working entirely.
Having a guaranteed I/O rate also can simplify a system's architecture, Vogels explained. For example, the system may not need to have additional tiers, such as caching software, to smooth out varying performance. A consistent I/O also makes it easier to build additional capabilities on top of the system, because the system engineers will know the exact rates of input and output that the new feature can expect.
OLTP (online transaction processing) applications "are very chatty, and they can't handle a lot of latency in response," Kelman said. "You need very low latency of I/O."
Vogels explained that Amazon built I2 using solid-state drives (SSDs) rather than spinning hard drives. SSDs offer a lot more consistent I/O than do hard drives, Vogels said.