- Amazon S3 — object storage ideal for data lakes, raw datasets, and model artifacts.
- Amazon EFS — managed POSIX (NFS) file system for shared, low-latency access across compute nodes.
- Amazon FSx — high-performance managed file systems (e.g., Lustre) optimized for HPC and throughput-heavy ML training.

Amazon S3 — Object Storage (Data Lake)
Amazon S3 is the de facto data lake on AWS. It provides massively scalable, highly durable object storage suitable for structured, semi-structured, and unstructured data. S3 is the preferred store for raw data, processed datasets, and model artifacts that require long-term retention and broad service integration.
- Multiple storage classes for cost and access optimization: Standard, Intelligent-Tiering, Standard-IA, One Zone-IA, Glacier Instant Retrieval, Glacier Flexible Retrieval, Glacier Deep Archive.
- Object versioning and replication: enable
Versioning, Cross-Region Replication (CRR), and Same-Region Replication (SRR). - Native integrations: Lambda, Athena, Glue, EMR, SageMaker, CloudFront, and many more.
- Strong security and compliance controls: SSE-S3 / SSE-KMS / SSE-C, TLS in transit, IAM/bucket policies, ACLs, and S3 Block Public Access.
- Lifecycle policies: automated transitions and expirations for objects to manage cost and retention.
S3 durability is expressed as 11 nines (99.999999999%). This extreme durability makes S3 an ideal system of record for ML datasets and trained model artifacts.
- Raw data ingestion: use event-driven or batch ingestion patterns. For small/real-time payloads, use AWS Lambda; for scheduled or large ETL, use AWS Glue.
- Data preprocessing & transformation: Glue and EMR read raw objects from S3, transform them, and write cleaned/aggregated datasets back to S3.
- Model training & artifacts: SageMaker training jobs read training/validation data from S3 and write serialized model artifacts and evaluation outputs back to S3 for deployment.

Amazon S3 as the centralized data lake (system of record). Lambda handles small or real-time loads; Glue handles scheduled, large-scale ETL and schema discovery.

- Amazon Glue: serverless ETL, schema discovery, data cataloging, and job orchestration.
- Amazon EMR: managed Spark/Hadoop for large-scale distributed processing. Both commonly use S3 as the primary input/output store for intermediate and final datasets.


Amazon EFS — Shared POSIX File System
Amazon EFS provides a fully managed, POSIX-compliant NFS file system that automatically scales. EFS supports concurrent mounts from many EC2 instances, containers, and (in supported configurations) SageMaker components—making it an excellent choice for distributed training, shared feature stores, and collaborative notebooks. Key EFS features for ML- Shared storage for distributed training and clusters: mount the same filesystem from multiple nodes.
- Integration with SageMaker Studio and compute containers (in supported setups) to reduce data copy operations.
- Automatic scaling to petabytes as datasets grow.
- Low-latency POSIX access suited to workloads requiring fast random reads/writes.
- Centralized storage of datasets, checkpoints, model artifacts, and notebooks to reduce duplication.

- /datasets — shared read-only training data
- /checkpoints — nodes write checkpoints to enable resume after failure
- /logs — centralized logs for monitoring and metrics aggregation

EFS is excellent for shared POSIX access but consider throughput mode and performance mode selection carefully. For very high IOPS or extremely low latency needs, FSx (Lustre) or instance-attached NVMe storage may be more appropriate—and cost profiles differ significantly.
Amazon FSx — High-Performance File Systems (Lustre, ONTAP, OpenZFS)
Amazon FSx offers fully managed file systems tailored to specific workloads. Relevant FSx options for ML/HPC include:- FSx for Lustre — parallel, high-throughput POSIX file system commonly used for large-scale ML training and HPC. Can be linked to S3 to provide a fast POSIX namespace backed by S3 objects (data import/export and caching).
- FSx for Windows File Server — Windows-native file shares for Windows-based applications.
- FSx for NetApp ONTAP — enterprise-grade data management and replication features.
- FSx for OpenZFS — POSIX-compliant with snapshots and ZFS features for workloads that require them.
Rules of Thumb — Which Storage to Use
- Use Amazon S3 for:
- Raw dataset storage, data lake patterns, model artifacts, and archival.
- Broad service integration and long-term retention.
- Use Amazon EFS for:
- Shared POSIX file access, low-latency reads/writes, distributed training with frequent checkpointing, and collaborative development.
- Use Amazon FSx (Lustre) for:
- High-throughput, parallel file access required by HPC and large-scale ML training. FSx for Lustre can cache and import S3 data for fast local access during training.

Quick Comparison
Use these guidelines to select the appropriate AWS storage service based on your ML project’s performance, access patterns, cost, and operational requirements.
Links and References
- Amazon S3 — documentation and examples
- Amazon EFS — official docs
- Amazon FSx — product overview
- AWS Glue — ETL service
- Amazon EMR — managed big data
- Amazon SageMaker — ML platform