Unlocking the value of data is a primary goal that AWS helps our customers to pursue. In recent years, an explosion of intelligent devices have created oceans of new data across many industries. We have seen that such devices can benefit greatly from the elastic resources of the cloud. This is because data gets more valuable when it can be processed together with other data.
At the same time, it can be valuable to process some data right at the source where it is generated. Some applications – medical equipment, industrial machinery, and building automation are just a few – can't rely exclusively on the cloud for control, and require some form of local storage and execution. Such applications are often mission-critical: safeties must operate reliably, even if connectivity drops. Some applications may also rely on timely decisions: when maneuvering heavy machinery, an absolute minimum of latency is critical. Some use cases have privacy or regulatory constraints: medical data might need to be stored on site at a hospital for years even if also stored in the cloud. When you can't address scenarios such as these, the value of data you don't process is lost.
As it turns out, there are three broad reasons that local data processing is important, in addition to cloud-based processing. At AWS we refer to these broad reasons as "laws" because we expect them to hold even as technology improves:
Law of Physics. Customers want to build applications that make the most interactive and critical decisions locally, such as safety-critical control. This is determined by basic laws of physics: it takes time to send data to the cloud, and networks don't have 100% availability. Customers in physically remote environments, such as mining and agriculture, are more affected by these issues.
Law of Economics. In many industries, data production has grown more quickly than bandwidth, and much of this data is low value. Local aggregation and filtering of data allows customers to send only high-value data to the cloud for storage and analysis.
Law of the Land. In some industries, customers have regulatory or compliance requirements to isolate or duplicate data in particular locations. Some governments impose data sovereignty restrictions on where data may be stored and processed.
Today, we are announcing the general availability of AWS Greengrass, a new service that helps unlock the value of data from devices that are subject to the three laws described above.
AWS Greengrass extends AWS onto your devices, so they can act locally on the data they generate while still taking advantage of the cloud. AWS Greengrass takes advantage of your devices' onboard capabilities, and extends them to the cloud for management, updates, and elastic compute and storage.
AWS Greengrass provides the following features:
- Local execution of AWS Lambda functions written in Python 2.7 and deployed down from the cloud.
- Local device shadows to maintain state for the stateless functions, including sync and conflict resolution.
- Local messaging between functions and peripherals on the device that hosts AWS Greengrass core, and also between the core and other local devices that use the AWS IoT Device SDK.
- Security of communication between the AWS Greengrass group and the cloud. AWS Greengrass uses the same certificate-based mutual authentication that AWS IoT uses. Local communication within an AWS Greengrass group is also secured by using a unique private CA for every group.
Before AWS Greengrass, device builders often had to choose between the low latency of local execution, and the flexibility, scale, and ease of the cloud. AWS Greengrass removes that trade-off—manufacturers and OEMs can now build solutions that use the cloud for management, analytics, and durable storage, while keeping critical functionality on-device or nearby.
AWS Greengrass makes it easier for customers to build systems of devices (including heterogeneous devices) that work together with the AWS Cloud. Our goal is not to provide an alternative for the cloud, but to provide tools for customers to use the cloud to build applications and systems that can't be moved entirely to the cloud. Using AWS Greengrass for local execution, customers can identify the most valuable data to process, analyze, and store in the cloud.
With AWS Greengrass, we can begin to extend AWS into customer systems—from small devices to racks of servers—in a way that makes it easy to do the things locally that are best done locally, and to amplify those workloads with the cloud.
Getting started: AWS Greengrass is available today to all customers, in US East (N. Virginia) and US West (Oregon). You can get started by visiting http://aws.amazon.com/greengrass.