AccueilBlogTest technique AWS stack data : S3, Glue, Athena, EMR, Redshift
Guide recrutement data

Test technique AWS stack data : S3, Glue, Athena, EMR, Redshift

AWS est le cloud dominant pour la data. En entretien, on évalue la capacité à choisir les bons services AWS selon le cas d usage et à les intégrer dans une architecture cohérente.

Data Builder·Juin 2025·7 min de lecture·Data Engineer
Sommaire
  1. Architecture data AWS
  2. S3 optimisé
  3. AWS Glue
  4. Athena
  5. Redshift Serverless
  6. Lake Formation
  7. Grille

1Architecture data de référence sur AWS

Question discriminante

Décrivez une architecture data end-to-end sur AWS.

# Architecture AWS typique INGESTION ├── AWS DMS (Database Migration Service) - CDC depuis RDS ├── Kinesis Data Streams - streaming temps réel ├── S3 Transfer Acceleration - fichiers volumineux └── Fivetran/Airbyte - connecteurs SaaS STOCKAGE └── S3 (lake brut + curated + gold) CATALOG └── AWS Glue Data Catalog (Hive Metastore compatible) TRANSFORMATION ├── AWS Glue ETL (Spark managé) ├── EMR Serverless (Spark/Hive self-managed) └── dbt + Redshift/Athena REQUETES ANALYTIQUES ├── Amazon Athena (SQL sur S3, serverless) └── Amazon Redshift Serverless (data warehouse) ORCHESTRATION ├── AWS Step Functions └── MWAA (Managed Airflow) CONSOMMATION └── QuickSight / Tableau / Power BI

2S3 : le centre de gravité AWS

Question discriminante

Quelles sont les fonctionnalités S3 que vous utilisez dans un pipeline data ?

  • S3 Intelligent-Tiering — transition automatique vers Standard-IA ou Glacier selon les accès. Économie 20-80%
  • S3 Lifecycle policies — archiver après 90 jours, supprimer après 7 ans. Automatique
  • S3 Event Notifications — déclencher Lambda ou SQS quand un fichier arrive. Ingestion event-driven
  • S3 Select — lire uniquement les lignes/colonnes nécessaires d un Parquet/CSV sans télécharger tout le fichier
  • S3 Table Buckets — support natif Iceberg sur S3 (2025). Tables managées directement dans S3

3AWS Glue : ETL managé et catalog

Question discriminante

Quand utilisez-vous AWS Glue vs EMR pour les transformations de données ?

## AWS Glue : Spark managé sans cluster à gérer import sys from awsglue.transforms import * from awsglue.utils import getResolvedOptions from awsglue.context import GlueContext from awsglue.job import Job args = getResolvedOptions(sys.argv, ['JOB_NAME']) glue_context = GlueContext(SparkContext()) sparkSession = glue_context.spark_session job = Job(glue_context) # Lire depuis le Glue Data Catalog dyf = glue_context.create_dynamic_frame.from_catalog( database='analytics', table_name='raw_orders' ) # Transformer df = dyf.toDF() df_clean = df.filter('amount > 0').dropDuplicates(['order_id']) # Écrire dans S3 en Parquet glue_context.write_dynamic_frame.from_options( frame=DynamicFrame.fromDF(df_clean, glue_context, 'clean'), connection_type='s3', connection_options={'path': 's3://mon-bucket/silver/orders/'}, format='parquet' )

4Amazon Athena : SQL serverless sur S3

Question discriminante

Dans quels cas Athena est-il plus adapté que Redshift ?

  • Athena — serverless, SQL sur S3. Payer uniquement les octets scannés. Idéal pour les requêtes ad-hoc et les analyses exploratoires
  • Partitionnement Hive — les tables Athena utilisent le partitionnement S3 pour réduire les coûts (require_partition_filter)
  • Athena Federated Query — requêter DynamoDB, RDS, Redshift depuis Athena. Query federation
  • Athena pour Iceberg — support natif Iceberg 2.x. Merge, update, delete, time travel
  • Quand Redshift — BI interactive (sub-seconde), requêtes complexes répétitives, workloads BI avec concurrence

5Redshift Serverless

Question discriminante

Qu est-ce que Redshift Serverless ? Quand le préférer au Redshift classique ?

  • Redshift Serverless — pas de cluster à provisionner. Capacité automatique selon la charge
  • Facturation RPU — Redshift Processing Units à la seconde. Plus économique pour les charges variables
  • Quand Serverless — charges imprévisibles, équipes petites, pas d expertise Redshift en interne
  • Quand Redshift RA3 — charge prévisible et intensive, besoin de contrôle précis, workloads très concurrents
  • Data Sharing — partager des données entre clusters Redshift sans les copier. Lecture cross-account

6Lake Formation : gouvernance centralisée

Question discriminante

Qu est-ce que AWS Lake Formation ? Quand l utilisez-vous ?

  • Lake Formation — couche de gouvernance centrale sur S3. Gère les permissions au niveau colonne et ligne
  • Column-level security — masquer ou supprimer des colonnes PII selon le rôle de l utilisateur. Compatible Athena, Redshift Spectrum, EMR
  • Row-level filtering — filtrer les lignes selon des attributs de l utilisateur. Ex : un analyst FR ne voit que les données France
  • Governed Tables — tables S3 avec transactions ACID et time travel. Alternative à Delta/Iceberg dans l écosystème AWS
# AWS Data Stack IaC (Terraform) # Glue Catalog + S3 Data Lake + Redshift + Step Functions resource "aws_glue_catalog_database" "analytics" { name = "analytics_prod" } resource "aws_glue_crawler" "orders" { name = "orders_crawler" role = aws_iam_role.glue_role.arn database_name = aws_glue_catalog_database.analytics.name s3_target { path = "s3://${aws_s3_bucket.datalake.bucket}/orders/" } schedule = "cron(0 6 * * ? *)" } # Step Functions pour orchestrer ETL resource "aws_sfn_state_machine" "pipeline" { name = "data_pipeline" definition = jsonencode({ Comment: "ETL Pipeline" StartAt: "RunGlueJob" States: { RunGlueJob: { Type: "Task" Resource: "arn:aws:states:::glue:startJobRun.sync" Parameters: {"JobName": "transform_orders"} Next: "RefreshRedshift" } } }) }
  • AWS Glue vs EMR — Glue : serverless, payer à la minute, idéal pour les ETL ponctuels. EMR : cluster managé, meilleur rapport coût/performance pour les workloads Spark continus
  • Lake Formation — couche de gouvernance sur S3 : gestion des permissions fine-grained (colonne, row-level), catalog centralisé, audit des accès
  • Redshift Serverless — pas de cluster à provisionner, facturation par RPU-second. Pour les charges variables. Redshift classique pour les charges prévisibles et continues
  • Step Functions pour l'orchestration — orchestrateur natif AWS pour les pipelines simples. Pour les workflows complexes : MWAA (Airflow managé sur AWS) ou Step Functions + Lambda
  • Cost optimization — S3 Intelligent-Tiering pour les données dont l'accès est imprévisible. Glue jobs en spot. EMR Spot instances pour les workers (économie 70-90%)

7Grille par niveau

NiveauMaitriseSignal GONO-GO
ConfirméS3, Glue Catalog, Athena, IAM basiqueA déployé un pipeline S3 → Glue → Athena, utilise le partitionnement AthenaNe sait pas ce qu est le Glue Data Catalog
SeniorLake Formation, Redshift Serverless, architecture complète, cost optimizationA configuré Lake Formation avec column-level security, justifie Athena vs RedshiftNe sait pas la différence entre Athena et Redshift

Vous recrutez un Data Engineer AWS ?

Premier entretien gratuit. Rapport GO/NO-GO sous 48h.