Entre un profil qui a fait du Spark et un profil qui comprend pourquoi un job est lent, il y a un monde.
Entre un profil qui "a fait du Spark" et un profil qui comprend pourquoi un job prend 4h au lieu de 20 minutes, il y a un monde.
Difference entre une transformation et une action dans Spark ?
Les transformations (filter, select, groupBy) sont paresseuses — elles construisent un plan sans rien calculer. Les actions (collect, count, write) declenchent l'execution.
Pourquoi Spark utilise la lazy execution ? Quel avantage concret ?
# Ces transformations ne calculent rien
df_filtered = df.filter(df.montant > 100)
df_grouped = df_filtered.groupBy("region").sum("montant")
# Ici seulement Spark execute et optimise le plan
df_grouped.show()Qu'est-ce qu'un RDD ? Comment stages et tasks s'articulent avec les shuffles ?
Une partition est 100x plus grosse que les autres. Que se passe-t-il ?
Comment dimensionnez-vous les ressources d'un job Spark ?
| Niveau | Maitrise attendue | Signal GO | NO-GO |
|---|---|---|---|
| Junior | DataFrames, transformations/actions, Parquet | Explique transformations vs actions | Ne sait pas ce qu'est la lazy execution |
| Confirme | Partitionnement, cache, broadcast join, Spark UI | A corrige un probleme de performance | N'a jamais ouvert le Spark UI |
| Senior | Internals, AQE, dimensionnement cluster, Delta Lake | A resolu un data skew en production | Ne peut pas expliquer ce qu'est un shuffle |
| Lead | Architecture streaming, optimisation avancee | A designe une architecture Spark Streaming | Ne connait pas AQE |
Premier entretien gratuit. Rapport GO/NO-GO sous 48h.