„Ingineria datelor este dezvoltarea, implementarea și întreținerea sistemelor și proceselor care primesc date brute și produc informație de calitate, consistentă, care susține cazuri de utilizare din aval, precum analiza și învățarea automată.”Joe Reis, Matt Housley · Fundamentals of Data Engineering · 2022 · Fundamentals of Data Engineering (2022), cap. 1 — definiția ingineriei datelor
O rulare repetată pentru aceeași fereastră trebuie să dea același rezultat — asta e idempotența.
ETL transformă datele într-o unealtă separată înainte să le încarce; ELT le încarcă brute și le transformă cu SQL în depozit, unde calculul e ieftin, SQL-ul stă în git și proveniența se citește din interogări. Ordinea nouă face extragerea subțire (copiază fidel) și transformarea bogată (modelează, testează, documentează). Orchestrarea e graful de sarcini: dependențe, program, reîncercări, alerte, o vedere a ce a rulat și ce nu. Parametrul unei rulări e fereastra de timp, niciodată „acum” — altfel rularea de ieri nu se mai poate repeta. Idempotența e proprietatea care face totul reparabil: rularea repetată pentru aceeași fereastră produce exact aceleași rânduri. Se obține ștergând și reîncărcând partiția, sau prin merge pe cheie — niciodată prin adăugare oarbă, care dublează datele la a doua rulare. Cu ea, un backfill e doar o buclă peste ferestre vechi, iar o eroare de la 3 dimineața se rezolvă cu o reluare, nu cu o investigație. Încărcările incrementale poartă un watermark și o fereastră pentru datele care sosesc târziu; fișierele mici se compactează; totul se testează în CI, ca orice cod.
De ce contează Un pipeline care nu poate fi rerulat fără să dubleze datele transformă fiecare incident într-o operațiune manuală de curățenie.