On stage at AWS re:Invent last week, CTO Werner Vogels discussed Amazon Web Services’ cloud philosophy, increasingly driven by a belief in building architecture that is cost-aware and designed to optimize economies of scale so it can do volume transactions at thin margins.
The talk, a first-day keynote with Senior Vice President Andy Jassy, predicated the group’s belief in a programmable infrastructure that has more instance types and object storage than any public cloud services provider. For example, Frederic Lardinois wrote about AWS introduction of a “Cluster High Memory” instance type that will offer a massive 240 GB of RAM and two 120 GB SSDs. Jassy also unveiled a “High Storage” instance focused on storage and will come with 117 GB of RAM and 24 hard drives for a total of 48 terabytes of HDD space.
The two keynotes illustrated AWS’s view on cloud computing, which differs from enterprise vendors that have focused on selling hardware to customers for “private clouds.” It was the first time AWS has stated so clearly how it views cloud computing and its competitors, which they say have been “cloudwashing” customers into believing that their costly solutions are better than the rest.
AWS, through its programmable architecture, has built a $1.5 billion business on volume and thin-as-possible margins. The group has dropped pricing 23 times since 2006, including an approximate 25 percent cut that Jassy announced during his keynote. He attributed the drop in price to what he called a virtuous lifecycle.
On Thursday, Vogels showed how a business-driven infrastructure gives customers their own ability to develop businesses that are data driven and optimized to make their operations so tight that they can also operate on low margins.
Vogels explained how an architecture can adapt to changing business needs based on automated practices that use data to analyze and then program instances that auto-scale with expected increases or decreases in demand.
He described it as “cost aware architecture,” meaning that the infrastructure drives application development, as opposed to the other way around. Embodied in this is the increasing requirement for the applications to be controllable, resilient, adaptive and data driven.
Amazon.com started AWS because they needed more infrastructure in order for the business to scale. They also needed a better way to handle the fluctuations that would come when they had ups and downs in web traffic.
Customers will often have to estimate physical storage, for instance, based on the workloads of virtual machines. It’s a constrained method that gives little room for scaling without adding more machines that require manual intervention. Often, it’s purely guesswork.
Vogels reiterated that customers need to stop thinking of physical resources and focus on automation. He described how AWS has built an infrastructure that allows customers to build in small decomposable blocks that can be decoupled from the infrastructure. Vogels used IMDb as an example. Amazon had to scale the movie site as Amazon traffic increased. If Amazon went up, IMDb had to go up. After making changes to the architecture, AWS could loose couple the HTML code on S3 so if Amazon scaled up, IMDb wouldn’t have to.
AWS now offers this idea of hypothesis-driven development that gives customers a combination of instances, spot instances and reserved instances to keep the application optimized based upon its workload. Instances are the standard. Spot instances allow customers to make bids for the best price possible at the time. A reserved instance is a pay-in-advance service that sets a price at a lower rate than what the standard instance costs.
Pinterest has adapted its infrastructure to correspond with traffic loads. Ryan Park, Pinterest’s technical operations lead, said on stage that they have automated their systems to shut down 20 percent after hours. This reduces the cost when traffic is less. They use reserved instances for the standard traffic and then do on-demand and spot instances to handle the elastic load throughout the day. Since building this cost optimized infrastructure their costs have gone from $54 per hour to $20 per hour.
Vogels said this in a blog post this week:
The most important concept is that, when you are growing, your cost should grow over the same dimension your revenue is coming in over. For Amazon.com that dimension is number of orders. If orders go up your cost should be allowed to rise as well. Although if you are architected well, you will be able to exploit economies of scale and your cost will rise less than the rise of your revenue. If you are architected correctly for cost-awareness scale becomes your friend.
That sums up the AWS cloud philosophy. It reflects the group’s past and its future. AWS’s experiences taught the group what services to offer customers. The group learned early that to succeed, it needed systems that can adapt to business needs. It’s not about how much capacity a customer has available. It’s about building an infrastructure for the business and its natural ups and downs.
(Another hat tip to Aaron Delp for his detailed live blog of the AWS keynotes. His notes helped put the pieces together for this post.)