Many people probably don’t know what Lambda is, or why it’s important. But Wood says it could usher in a new era of application development and cloud-based hosting. And perhaps most interestingly, it could be a replacement for one of Amazon’s core cloud services: Virtual machines.
+ MORE AWS FROM NETWORK WORLD: Q&A with Amazon Web Service’s strategist on competing with Google and Microsoft and building the next big thing in the cloud +
What is Lambda?
“AWS Lambda lets you run code without provisioning or managing servers,” AWS states on the Lambda product page. You can think of Lambda as an event-driven computing platform; Lambda runs when triggered by an event and executes code that’s been loaded into the system.
For example, a simple use case would be that every time an image is uploaded into Amazon Simple Storage Service (S3), a Lambda function could automatically resize the image. The Seattle Times uses this to automatically resize images for mobile, tablet and desktop devices. The event that triggers the Lambda function is the file being uploaded to S3. Lambda then executes the function of resizing the image.
One key to Lambda is that customers only pay for the service when functions are executed. So, the Seattle Times only pays AWS when an image has been resized.
Wood said Lambda could be helpful in analytics too. When an online order is placed on Zillow, an entry is made into Amazon DynamoDB NoSQL database. That entry into the database triggers a Lambda function to load the order information into Amazon Redshift, the data warehouse. Analytics programs can be run ontop of data stored in Redshift.
This, Wood says, is ushering in a new era of application architecture. “There’s a particular category of usage where the developer wants to focus primarily on adding functionality to their application, they don’t want to worry about scaling up and down (infrastructure), and they want costs that run in line with usage of their application, not the utilization of their infrastructure,” Wood told me. “Lambda provides a really good answer for developers looking for that sort of focus.”
Amazon’s competitors have their own versions of Lambda. Google has Functions; IBM has open sourced a platform named OpenWhisk and Microsoft recently released Azure Functions. It’s a trendy new platform in the cloud, but Amazon is credited with being the first to market when it introduced Lambda at its re:Invent conference in 2014.
Amazon uses Lambda internally. Lambda is the compute platform for AWS’s Internet of Things service and the Amazon Echo. Amazon CloudWatch events allow users to automatically trigger a patch of an Amazon Elastic Compute Cloud (EC2) virtual machine instance if it fails.
But perhaps what is most interesting about Lambda is that it could threaten one of Amazon’s most popular services: EC2, it’s virtual machine service. Developers can build apps that run entirely on Lambda functions instead of spinning up EC2 VMs. Amazon may be out-innovating itself with Lambda.