Plus facile à lire avec un fond crème, une teinte, plus de contraste ou un texte plus grand ? Choisissez vos couleurs et votre texte, une fois pour toutes les pages.

Leçon gratuite

De la caisse au rapport

La leçon entière est à lire ici. Créez un compte gratuit pour lancer ses commandes dans un laboratoire et passer ses quiz et ses exercices.

Leçon de 45 minAucune commande

Le rapport est prêt à 7 h

Une enseigne de bricolage compte quarante magasins. Chaque matin à 7 h, la directrice régionale lit les ventes de la veille.

Personne n'a tapé ces chiffres. Pendant la nuit, un programme a récupéré les ventes des caisses, les a nettoyées et rangées.

Ce programme est une chaîne de traitement des données. Un ingénieur données la construit et la surveille.

À la fin de cette leçon

Remarque

Je peux décrire le chemin des données, de la source au rapport.

Mots-clés

MotCe que ça veut direExemple
Sourcele système où les données naissentla caisse
Extrairecopier les données hors de la source
Transformernettoyer et mettre en forme les données
Chargerranger les données propres là où on les lit
Pipelineune chaîne de traitement qui enchaîne ces étapes

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

Trois étapes : extraire, transformer, charger

On extrait : on copie les ventes hors du logiciel de caisse, souvent dans un fichier texte.

On transforme : on découpe chaque ligne, on nettoie et on convertit les montants.

On charge : on range les lignes propres dans une base faite pour les rapports.

Les initiales donnent le nom courant : ETL. Un planificateur lance le tout chaque nuit.

Un pipeline est du code qu'on peut lire

Un export français sépare les colonnes par un point-virgule et écrit les décimales avec une virgule.

Le code ci-dessous suit les trois étapes, dans l'ordre. Chaque étape commence par un commentaire.

Lisez-le une fois, puis exécutez-le. Comptez les lignes chargées : une vente a été écartée.

Faire tourner un petit pipeline

Code: python
# EXTRAIRE : la caisse exporte du texte, une vente par ligne.
export = """2026-10-01;Lyon;12,50
2026-10-01;lyon ;8,00
2026-10-01;Grenoble;
2026-10-01;Grenoble;4,50"""

# TRANSFORMER : découper, nettoyer, convertir.
propres = []
for ligne in export.split("\n"):
    parties = ligne.split(";")
    montant = parties[2].strip()
    if montant != "":   # une vente sans montant est écartée
        propres.append({"ville": parties[1].strip().title(),
                        "montant": float(montant.replace(",", "."))})

# CHARGER : ranger les lignes propres dans la base de rapports.
base = {}
for vente in propres:
    ville = vente["ville"]
    if ville in base:
        base[ville] = base[ville] + vente["montant"]
    else:
        base[ville] = vente["montant"]

print("Lignes chargées :", len(propres))
print("Ventes par ville :", base)

# Ajoutez la ligne 2026-10-01;GRENOBLE;10,00 à l'export, puis exécutez.

Une erreur fréquente

Attention

Beaucoup pensent qu'il faut corriger les erreurs directement dans la caisse. Non : un pipeline ne modifie jamais sa source. Il travaille sur une copie extraite. Si une règle est fausse, on la corrige et on relance la chaîne.

Vous enseignez à une classe ? Proposez ce module à vos étudiants avec un guide de l'enseignant, des devoirs corrigés et un laboratoire pour chaque étudiant.