AWS blog details building a scalable recommendation system
This AWS Big Data Blog post explains how Amazon.com built a scalable personalized recommendation system by leveraging a batch-first architecture. The system utilizes AWS Lake Formation for a centralized data lake, Amazon MWAA for orchestration, and SageMaker for ML workloads, later extending to Amazon MemoryDB for real-time capabilities. The post details how this approach ensures data consistency, faster development, and efficient resource utilization across global marketplaces.
- →Centralized data lake with AWS Lake Formation
- →Orchestration with Amazon Managed Workflows for Apache Airflow (MWAA)
- →Data access and processing with Athena and AWS Glue
- →Machine learning with Amazon SageMaker
Notes (4) ›
- Centralized data lake with AWS Lake Formation
The system establishes a centralized data lake using Amazon S3 and AWS Lake Formation to create a single source of truth for recommendation pipelines. Lake Formation provides fine-grained cross-account access and schema governance through AWS Glue Data Catalog, ensuring data consistency and enabling faster pipeline development by querying curated, validated 'golden datasets'.
- Orchestration with Amazon Managed Workflows for Apache Airflow (MWAA)
Amazon MWAA is used as the orchestration layer, managing complex multi-step workflows and removing the operational burden of Airflow infrastructure. The team developed reusable custom Airflow operators, encapsulating core compute engines to streamline new pipeline development and ensure a consistent pattern across recommendation pipelines.
- Data access and processing with Athena and AWS Glue
Amazon Athena is employed for data access, running SQL queries against the Glue Data Catalog and unloading results to S3. AWS Glue handles compute-intensive data transformations using PySpark, with Auto Scaling worker pools for scalability and ephemeral jobs that read from and write to S3, requiring no long-running clusters.
- Machine learning with Amazon SageMaker
Amazon SageMaker powers ML workloads including model training (using SageMaker Training Jobs on GPU instances), batch inference (via SageMaker Batch Transform), and vector search for approximate nearest neighbor (ANN) search using FAISS within SageMaker Processing Jobs. This integration within MWAA ensures end-to-end lineage, automatic retry mechanisms, and proper resource sequencing for ML tasks.
https://aws.amazon.com/blogs/big-data/building-a-scalable-personalized-recommendation-system-on-aws-from-batch-to-real-time/
Related releases
- AWS Blog: Unified Access Control for Enterprise Lakehouses AWS Big Data Blog ·
- AWS Glue integrates with SageMaker Unified Studio for one-click data access AWS What's New ·
- NVIDIA and Qwen AI Models Now on Amazon SageMaker JumpStart AWS What's New ·
- NVIDIA Nemotron 3.5 Lightning AI Model Now Available on Amazon SageMaker JumpStart AWS What's New ·
- New GLM-5.2 FP8, Nemotron-Nano-12B-v2, and GLM-OCR models on SageMaker JumpStart AWS What's New ·
- New AI Models from Redis, JetBrains, and LightOn Now on SageMaker JumpStart AWS What's New ·