Distributed data processing with Step FunctionsIntroduction to Distributed Map for Serverless Data Processing3 min
Learning Goals
- Understand the benefits of distributed data processing with Serverless.
Introduction to distributed data processing with AWS Step Functions
Data processing is fundamental to organizations to meet business goals and unlock new value such as operational efficiency, and process optimization. With volumes of data increasing over time, it becomes important for developers to learn technologies that process data at scale.
Are you looking to process huge volumes of data without dealing with huge clusters or learning parallel computing? By using AWS Step Functions and AWS Lambda, you can process structured, semi-structured, and unstructured data at large scale. You can even do it real-time as the data lands in an Amazon S3 bucket. For example, you can invoke a Step Functions workflow when a file is uploaded to an S3 bucket. As soon as the file is uploaded, the workflow runs to process the file.
Some of the key business benefits of using Step Functions and Lambda for data processing workloads include:
- Reduced time to market - Using serverless services such as Step Functions and Lambda means that, AWS handles as much of the undifferentiated heavy lifting as possible. Step Functions handles S3 iteration, output aggregation, and failure handling. While Lambda runs business logic with unparalleled concurrency and speed. Click here to learn more about how CyberGRX reduced data processing time by leveraging Step Functions and Lambda.
- Increased flexibility - With both services, you only pay for the compute time you use and the service automatically scales to handle the demands of your application. This means you don’t have to worry about over-provisioning resources and you can easily handle sudden spikes in traffic.
- Cost savings - Data processing jobs are done either at intervals or event driven. With pay per use pricing model, you can potentially reduce your infrastructure cost of running serverful workflow orchestration and compute services. Additionally, organizations can save cost on training developers on distributed computing technologies and services.
- Improved productivity - Developers can use the programming language they are familiar with to build the data processing workloads. With discrete task and distributed architectures but co-ordinated through an orchestrator, individuals can work independently on tasks. Additionally, AWS Step Functions provides complete view of what’s happening with the workflow visually along with metrics and logs sent to CloudWatch. So, the time spent on debugging and monitoring problems are greatly reduced.
This tutorial teaches you how to achieve serverless data processing using Distributed Map for Step Functions. Step Function’s Distributed Map state allows you to write workflows to coordinate large-scale parallel workloads within your serverless applications. The following pages give practical guidance on how to process your data residing in S3 using Distributed Map, optimization techniques, patterns and use cases where you can apply the patterns. With this guidance, you can take advantage of the unparalleled concurrency and speed of Step Functions and Lambda to unlock new business value and gain a competitive advantage.
Created by:
Adam WagnerAWS - Principal Serverless Solutions Architect