API Gateway serves as the entry point for users to run and observe workloads through a REST API. It provides logging in Amazon CloudWatch, enabling the tracking of caller requests. Lambda is used for serverless compute, eliminating the need for virtual machine or operating system management. DynamoDB, a serverless database, logs API calls and compute job statuses, providing a history of past activities. Additionally, AWS Data Exchange connects the workflow to third-party emissions data sets from verified sources. These services automate code implementation, scaling, and failover, minimizing human errors and accelerating response times during operational events.
Overview
How it works
These technical details feature an architecture diagram to illustrate how to effectively use this solution. The architecture diagram shows the key components and their interactions, providing an overview of the architecture's structure and functionality step-by-step.
Step 1
Well-Architected Pillars
The architecture diagram above is an example of a Solution created with Well-Architected best practices in mind. To be fully Well-Architected, you should follow as many Well-Architected best practices as possible.
Operational Excellence
Security
AWS PrivateLink provides a private connection from corporate on-premises networks to AWS. A VPC endpoint and endpoint policy help ensure only trusted resources can access API Gateway. AWS Identity and Access Management (IAM) integrates with Lambda, allowing application code to authenticate with other services like Amazon Textract and Amazon S3, without storing long-lived credentials. IAM identity-based policies establish resource permissions for creating, accessing, or deleting assets in S3 buckets or DynamoDB tables. For example, a resource-based policy with Lambda can deny asset deletion. Amazon Cognito user and identity pools authorize and authenticate API Gateway access. Amazon S3 and DynamoDB can be configured with encryption at rest to protect data, while IAM controls resource access and actions across services.
Reliability
This Guidance benefits from the inherent reliability of fully managed, serverless offerings like Lambda and DynamoDB, which are deployed across multiple Availability Zones by default. This helps reduce maintenance overhead associated with long-running compute or database resources. For SageMaker deployments, instances are distributed across multiple Availability Zones for high availability and resilience against outages or failures. The high degree of redundancy and fault tolerance provided by fully managed services minimizes single points of failure and eliminates the need for complex auto-scaling or recovery processes.
Performance Efficiency
Amazon Textract, a fully managed machine learning (ML) service, automatically extracts text from handwritten forms and documents, identifying valuable data. Service quota limits for Amazon Textract can be configured to meet performance requirements. API Gateway can handle up to 500 new connections per second with a 128 KB message payload size, helping ensure the REST API can meet the workload's needs. The dynamic scaling and demand-based availability of Lambda and DynamoDB offer optimal performance efficiency without manual resource management. These fully managed services allow users to test many hardware configurations and optimize models to leverage specific chip architectures.
Cost Optimization
Lambda, DynamoDB, and Amazon Textract support pay-as-you-go pricing, charging only when actively processing requests. Amazon Cognito allows only authorized users to submit workloads, while Amazon S3 offers high durability and intelligent tiering for optimizing storage costs based on data access frequency. These fully managed services automatically scale resources based on demand, reducing operational burden on teams and lowering infrastructure management costs. By minimizing idle resource usage, adopting efficient pricing models, optimizing data handling, and reducing maintenance overhead, these services can lower operational costs.
Sustainability
As managed services, Lambda and Amazon Textract shift the responsibility of maintaining high utilization and sustainability optimization of deployed hardware to AWS. Using Amazon Textract avoids the energy and resources needed for model training or building from scratch. Lambda helps ensure compute resources are deployed proportionally to demand, resulting in a lower electrical footprint compared to dedicated compute services.