
Files land in S3/raw (from vendor SFTP or app exports). An S3-put trigger invokes Lambda to validate naming and basic CSV/JSON sanity, optionally convert to Parquet into S3/processed with a partitioned path (e.g., `dt=YYYY-MM-DD/`). Lambda then starts a Glue Crawler (or updates tables via Glue APIs). Once the catalog is updated, data is immediately queryable in Athena. Athena stores results in a dedicated results bucket/workgroup; partitions and compression keep scans cheap. EventBridge can run lightweight housekeeping/compaction.