Skip to main content

Guidance for CPG Data Products on AWS

Overview

This Guidance helps consumer packaged goods (CPG) companies use a data mesh to break down data silos and scale their data analytics capabilities. In a data mesh, business domains maintain control of their own data and offer data as a product to the rest of the enterprise through a central data catalog. Data producers define who can use their data, and governance is managed at the central data platform. Data contracts define the data, and data is exposed to the enterprise through APIs. Data consumer domains can discover and subscribe to datasets through the central data platform.

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.

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.

This architecture was designed with fully managed and serverless services for a highly available and scalable way to move data across the enterprise. You can automatically reflect changes made to data producers in the central data governance account.

Read the Operational Excellence whitepaper

Producer domains control access to the data products developed by their domain using AWS Identity and Access Management (IAM). Lake Formation and IAM use the central data governance account to enforce data access permissions to consumer domains.

Read the Security whitepaper

This architecture consists of loosely-coupled components. Producer domains create data products and add them to a central data governance account. This is achieved without interrupting operations from consumer domains using other data products from that same governance account.

Read the Reliability whitepaper

Scalable and highly available services such as Amazon Simple Storage Service (Amazon S3), AWS Glue, API Gateway, and Lambda are used as core components to increase performance. Amazon S3 is designed to store any amount of data in any format. AWS Glue, API Gateway, and Lambda scale to accommodate both increases and decreases in traffic.

Read the Performance Efficiency whitepaper

This architecture is designed with a serverless-first approach, using services such as AWS Glue, Lambda, and Amazon S3 for cost efficiency. Lambda and AWS Glue crawlers in addition to extract, transform, and load (ETL) jobs are billed by time spent running, which helps to reduce cost while not in operation. Amazon S3 offers a lifecycle management feature that can move infrequently accessed data to lower cost storage tiers.

Read the Cost Optimization whitepaper

This architecture uses serverless services, such as AWS Glue, API Gateway, and Lambda, which will provision the minimum amount of resources necessary to accomplish its intended operation. Lambda and API Gateway provision resources when handling API requests, then automatically shuts down when finished. Likewise, AWS Glue provisions resources while crawling data sources or running ETL jobs, then shuts down those resources once the job is finished.

Read the Sustainability whitepaper

Disclaimer

The sample code; software libraries; command line tools; proofs of concept; templates; or other related technology (including any of the foregoing that are provided by our personnel) is provided to you as AWS Content under the AWS Customer Agreement, or the relevant written agreement between you and AWS (whichever applies). You should not use this AWS Content in your production accounts, or on production or other critical data. You are responsible for testing, securing, and optimizing the AWS Content, such as sample code, as appropriate for production grade use based on your specific quality control practices and standards. Deploying AWS Content may incur AWS charges for creating or using AWS chargeable resources, such as running Amazon EC2 instances or using Amazon S3 storage.