Architecture details
This section describes the components and AWS services that make up this solution and the architecture details on how these components work together.
AWS services in this solution
AWS service | Description |
---|---|
Amazon S3 |
Core. Stores inventory and archives transferred from the Amazon S3 Glacier service. |
Amazon S3 Glacier | Core. Maintains the vault being transferred to the Amazon S3 service. |
Amazon DynamoDB |
Core. Stores workflow-related data, including hash validation values and progress metrics for S3 Glacier archives. |
AWS Glue |
Core. Reorders and splits the S3 Glacier vault inventory file into partitions for processing by multiple Lambda invocations. Parses file names from Inventory/OverrideNaming file. |
AWS Lambda |
Core. Performs workflow compute, including archive transfer and validation. |
Amazon SNS |
Supporting. Decouples Lambda workflows by providing communication between the solution, the Amazon S3 Glacier service, and Amazon SQS queues. |
Amazon SQS |
Supporting. Decouples Lambda workflows. |
Amazon CloudWatch |
Supporting. Stores the solution logs and metrics. Presents a custom dashboard to provide visibility of the archive copy operation progress. |
Amazon EventBridge |
Supporting. Invokes supporting workflows that promote the smooth operation of the Solution. |
IAM |
Supporting. Provides permissions for this solution's resources to perform actions. |
AWS Systems
Manager |
Supporting. Provides a Systems Manager document (SSM document) for solutions workflow invocations. |
AWS Step
Functions |
Supporting. Orchestrates partitioning the inventory with AWS Glue. Also orchestrates Lambda invocations to request S3 Glacier vault archive retrieval. |