9,0 klantwaardering
BTW-vrijgestelde cursussen
Incompany & klassikaal
Praktische en unieke aanpak
Cursus Compleet
KLASSIKALE CURSUSSEN & TRAININGEN

Ontdek onze klassikale cursussen

Vind de juiste training en kies het niveau dat bij je past.

CURSUSAANBOD VOOR BEDRIJVEN

Incompany-trainingen

Ontdek trainingen voor jouw team, afgestemd op jullie dagelijkse praktijk.

Microsoft 365

Samenwerken & moderne werkplek

5 trainingen
Kennisartikel

Data Factory-pipelines in Fabric ontwerpen

Data Factory-pipelines in Fabric: ontwerp broncontracten, dependencies, retries, idempotente verwerking en controles voor een betrouwbare gegevensketen.

⏱ 9 min leestijd 📁 Microsoft Fabric 🕒 Bijgewerkt 1 november 2026

Een gegevenspipeline is pas betrouwbaar wanneer niet alleen de uitvoering succesvol eindigt, maar ook aantoonbaar de juiste informatie is verwerkt. Microsoft Fabric Data Factory ondersteunt het orkestreren van gegevensstromen en activiteiten binnen één Fabric-omgeving. In de praktijk gaat het om meer dan een reeks blokken op een canvas: laadmomenten, afhankelijkheden, bronkwaliteit, autorisaties en foutafhandeling moeten als één proces worden ontworpen.

Dit artikel behandelt het ontwerp van een productiegerichte pipeline voor een dagelijks ERP-bestand. Het onderscheidt technische voltooiing van zakelijke goedkeuring, bespreekt parametrisering en herstartbaarheid, en laat zien hoe monitoring daadwerkelijk bruikbare signalen oplevert. Een pipeline die groene status meldt terwijl twintig procent van de factuurregels ontbreekt, is immers geen geslaagd rapportageproces.

Wat doet een Data Factory-pipeline binnen Fabric?

Een pipeline organiseert activiteiten in een bepaalde volgorde. Voorbeelden zijn gegevens kopiëren, een notebook uitvoeren, een andere pipeline aanroepen of na een controle een vervolgstap starten. Activiteiten kunnen worden verbonden met afhankelijkheidsvoorwaarden, zodat een taak alleen doorgaat wanneer een vorige taak is geslaagd, mislukt of is afgerond. Dat maakt zowel normale verwerking als uitzonderingsafhandeling mogelijk.

Een pipeline is niet hetzelfde als een afzonderlijke Power Query-transformatie of notebook. De pipeline regelt de samenhang tussen stappen; de feitelijke transformatie kan in een andere Fabric-functie plaatsvinden. Een veelgebruikte keten bestaat uit een Copy-activiteit voor brondata, een notebook voor opschoning, een kwaliteitscontrole en vervolgens het bijwerken van de rapportagelaag. De keuze voor het gereedschap per stap hangt af van gegevensvolume, bronformaat, teamvaardigheden en technische eisen.

Een orkestratieproces hoort ook te weten wat het niet zelf oplost. Een geslaagde kopie naar een Lakehouse controleert bijvoorbeeld niet vanzelf of orderbedragen en valuta logisch zijn. Daarom moet datakwaliteit een expliciete activiteit of controle-uitkomst zijn, en geen onuitgesproken aanname op basis van de groene uitvoerstatus.

Ontwerp de gegevensstroom vóór het canvas

Begin met een data-contract voor iedere bron. Leg minimaal vast: bestand of endpoint, eigenaar, verwacht moment van beschikbaarheid, schema, sleutelvelden, volume, gevoeligheid en gedrag bij een ontbrekende levering. Een leveranciersbestand dat dagelijks om 06.00 uur verschijnt, heeft een ander foutprofiel dan een API die op elk moment kan worden bevraagd. Ook moet duidelijk zijn of de bron volledige snapshots of alleen mutaties aanlevert.

Gebruik bij voorkeur een helder architectuurplaatje. Bijvoorbeeld: ERP-export → ruwe landingslaag → controles op volledigheid → genormaliseerde Delta-tabel → rapportagetabel → Power BI-vernieuwing. Onder elke pijl staat de verantwoordelijke activiteit. Onder elk opslagpunt staat welke data zichtbaar mogen worden voor vervolgstappen. Een bronbestand dat nog niet is gevalideerd mag niet ongemerkt de managementrapportage voeden.

Maak zakelijke acceptatiecriteria concreet. Een dagelijkse omzetverwerking kan bijvoorbeeld eisen dat elke factuur een unieke documentidentificatie heeft, dat bedragen numeriek zijn en dat retouren correct negatief worden geboekt. Voor een pilot kunnen aantallen per afdeling worden gereconcilieerd met het ERP. Als de afwijking groter is dan de afgesproken tolerantie, wordt de publicatiestap overgeslagen en ontvangt de proceseigenaar een melding.

Activiteiten en afhankelijkheden zorgvuldig combineren

Een robuuste pipeline heeft herkenbare namen, bijvoorbeeld Copy_ERP_Orders, Check_RowCounts, Transform_Orders en Publish_Reporting. Die namen zijn nuttiger tijdens incidenten dan Copy1 of Notebook3. Houd technische acties klein genoeg om een mislukking te kunnen lokaliseren, maar splits niet iedere triviale handeling in een afzonderlijke pipeline. Een overdaad aan losse pipelines maakt de totale keten juist moeilijk te volgen.

Afhankelijkheidsvoorwaarden zijn belangrijker dan een mooie lay-out. Wanneer de transformatie alleen bij een geslaagde kopie mag starten, hoort daarvoor een succesrelatie te bestaan. Wanneer de kopie mislukt, moet een foutpad de gebeurtenis registreren of doorgeven aan monitoring. Een stap die altijd draait is nuttig voor opruimen of logging, maar gevaarlijk als deze een rapportage vrijgeeft terwijl de bronlading is mislukt.

De volgorde van taken verdient een expliciet argument. Een pipeline die gelijktijdig klanten en orders laadt, kan een tijdelijk inconsistente rapportagelaag opleveren wanneer orders eerder gereed zijn dan klantdimensies. Een controle op referentiële samenhang hoort dan tussen verwerking en publicatie. Anders ontstaat een dashboard dat gedurende enkele minuten klanten aan de verkeerde categorie koppelt of transacties zonder klant laat zien.

Parametrisering voor herhaalbaarheid

Parameters voorkomen dat voor iedere regio, datum of databron een bijna identieke pipeline moet worden gekopieerd. Denk aan RunDate, SourceSystem of een goedgekeurde doelomgeving. Een parameter is geen vrijbrief om willekeurige paden of SQL-instructies vanuit gebruikersinvoer samen te stellen. Beperk mogelijke waarden en documenteer welke combinaties ondersteund worden.

Voor een dagelijkse verwerking is het nuttig de verwerkingsdatum los te trekken van de werkelijke uitvoeringstijd. Een pipeline die op 3 november opnieuw wordt gestart voor gegevens van 1 november, moet bewust de bronperiode 1 november ophalen. Zonder die scheiding haalt een herstart mogelijk ineens de nieuwste data op, waardoor controle en reconstructie onmogelijk worden.

Gebruik voor ontwikkel-, acceptatie- en productieomgevingen centraal beheerde configuraties. Geheimen horen niet in zichtbare parameters, bestandsnamen of logberichten. Authenticatie, gateways en bronrechten moeten door de verantwoordelijke beheerders worden ingericht. Een workflow die onder een persoonlijk account werkt, kan stilvallen zodra die medewerker het bedrijf verlaat of zijn rechten wijzigen.

Voorbeeld: dagelijkse ERP-orders laden

Een groothandel verwacht elke werkdag een bestand met de kolommen OrderId, OrderDate, CustomerId, Currency, NetAmount en LastChangedAt. Het bronsysteem kan laat op de dag correcties sturen. De organisatie wil de ochtendrapportage om 08.30 uur gereed hebben, maar uitsluitend wanneer de gegevens compleet zijn. De informatie wordt eerst als ruwe levering opgeslagen en blijft gedurende een afgesproken periode traceerbaar.

De pipeline begint met het controleren van de aanwezigheid van de verwachte levering. Daarna kopieert zij de bron naar een landingslaag, met een bestandsnaam waarin brondatum en runidentificatie terugkomen. De verwerking normaliseert datums en getallen, toetst verplichte sleutels en plaatst afgekeurde regels afzonderlijk. Pas daarna schrijft een volgende stap de geldige gegevens naar rapportagetabellen. De controle vergelijkt aantallen, unieke ordernummers en waar zinvol netto-bedragen met het bronbestand.

Stel dat het bestand 12.500 regels bevat, waarvan 30 regels geen CustomerId hebben. Het is onvoldoende om alleen 12.470 geldige regels te laden en de run als succesvol te markeren. Er moet vastliggen of zulke records worden afgekeurd, in quarantaine geplaatst of een expliciete melding vereisen. Bij een nul-tolerantie voor ontbrekende klanten mag de publicatiestap niet doorgaan. Wanneer het probleem uitsluitend niet-kritieke metadata betreft, kan een gedocumenteerde uitzondering gelden. Dat is een zakelijke keuze, geen toevallige technische instelling.

Een geschikte auditregel bevat bijvoorbeeld SourceFile, RunId, ExpectedRows, AcceptedRows, RejectedRows, ValidationStatus en PublishedAt. Ook is vastgelegd wie afwijkingen beoordeelt. Dezelfde informatie maakt later zichtbaar of een wijziging in de ERP-export een daling van de laadkwaliteit veroorzaakt heeft.

Foutafhandeling en retries zonder dubbele gegevens

Fabric biedt voor veel pipeline-activiteiten mogelijkheden om een mislukte activiteit opnieuw te proberen. Retries zijn vooral geschikt voor tijdelijke verstoringen, zoals een netwerkprobleem of tijdelijke throttling. Een structureel onjuist wachtwoord, ontbrekend bronbestand of foutieve kolomnaam wordt niet opgelost door eindeloos opnieuw te proberen. Stel daarom zowel het aantal pogingen als het wachttijdgedrag bewust in en controleer welke foutvoorwaarden de betreffende activiteit en Fabric-versie ondersteunen.

Een retry is alleen veilig als de handeling herhaalbaar is. Bij een kopie naar een append-only tabel kunnen twee pogingen dubbele orders veroorzaken. Ontwerp daarom idempotentie: hetzelfde bronbestand of dezelfde OrderId-versie leidt na opnieuw uitvoeren tot dezelfde eindtoestand. Mogelijke technieken zijn eerst naar een tijdelijke locatie schrijven, de lading pas na validatie samenvoegen en runidentificaties opslaan waarmee dubbele verwerking herkenbaar wordt.

Herstartbaarheid moet expliciet worden getest. Laat een pipeline bewust falen na het laden van de bron maar vóór de publicatie. Start vervolgens opnieuw en controleer of niet twee keer omzet wordt opgenomen. Onderzoek ook wat gebeurt wanneer een API deels antwoord geeft of een gateway na twintig minuten verbreekt. Een nette foutmelding is nuttig; een voorspelbare en herstelbare datastaat is belangrijker.

Monitoring die verder gaat dan een groen vinkje

Pipeline-monitoring levert inzicht in activiteiten, uitvoeringsduur en eventuele foutmeldingen. Voor bedrijfsgebruik is daarnaast een eigen set inhoudelijke signalen nodig. Meet bijvoorbeeld aantallen geladen orders, afgekeurde regels, data-actualiteit, aantal retries en tijd tot herstel. Een dashboard dat alleen toont dat de laatste pipeline is geslaagd, geeft geen antwoord op de vraag of de nieuwste complete transacties in het rapport staan.

Koppel meldingen aan handelingsperspectief. Een technische beheerder moet kunnen zien welke activiteit faalde, met welke foutcode en bij welke run. Een proceseigenaar moet weten welke bedrijfsrapportages daardoor mogelijk verouderd zijn en wanneer nieuwe informatie verwacht wordt. Een e-mail met alleen ‘pipeline failed’ creëert werk, maar lost het incident niet op.

Definieer ook een grens voor vertraging. Wanneer rapporten elke ochtend voor een directievergadering nodig zijn, is een te late succesvolle run alsnog een operationele afwijking. Een korte SLA kan daarom eisen: gegevens van de vorige werkdag beschikbaar vóór 08.00 uur, afwijkingen binnen dertig minuten gemeld en correcties zichtbaar in de volgende gecontroleerde run. De exacte tijden volgen uit het bedrijfsproces.

Prestaties, kosten en governance

Fabric-capaciteit is een gedeelde resource. Gelijktijdige notebooks, kopieactiviteiten en rapportqueries kunnen elkaar beïnvloeden. Plan zware transformaties daarom niet zonder onderzoek precies op het moment van de belangrijkste dashboardvernieuwingen. Meet de verwerking op normale, drukke en uitzonderlijke dagen. Een pipeline die op een testbestand van duizend regels snel draait, zegt weinig over de productieomvang.

Beperk toegang tot bron- en doelgegevens, en voorkom dat foutmeldingen gevoelige rijen of tokens loggen. Waar externe brongegevens betrokken zijn, moeten contracten, AVG-verplichtingen en bewaartermijnen expliciet worden meegenomen. Ook is een wijzigingsprocedure nodig: bij aanpassing van bronkolommen of businessregels moeten testen, documentatie en eventuele downstream-modellen worden bijgewerkt.

Sla zo mogelijk de pipelineconfiguratie en relevante artefacten op onder versiebeheer. Voer wijzigingen via een gecontroleerde release uit en bewaar minimaal één representatieve testlevering met verwachte uitkomsten. Daarmee kan een nieuwe beheerder fouten analyseren zonder afhankelijk te zijn van mondelinge kennis.

Acceptatietest vóór ingebruikname

Een goede eindtest bestaat uit meer dan één geslaagde run. Laat achtereenvolgens een correct bestand, een bestand met ontbrekende verplichte kolom, een lege levering en een levering met dubbele sleutels verwerken. Test bovendien een tijdelijke verbindingsfout en een herstart na gedeeltelijke uitvoering. Controleer voor elk scenario de doeldata, auditregistratie, melding en de zichtbaarheid in Power BI.

De zakelijke eigenaar vergelijkt steekproefsgewijs omzet en aantallen met het ERP. De technisch beheerder controleert uitvoeringstijd en herstelprocedure. Een eindgebruiker bevestigt dat rapporten duidelijk aangeven op welke gegevensdatum zij gebaseerd zijn. Pas wanneer deze drie perspectieven overeenkomen, is sprake van een beheersbare gegevensketen.

AI en passende trainingen

Copilot of andere AI-hulpmiddelen kunnen ondersteunen bij het ontwerpen van controlequeries, het toelichten van foutmeldingen en het voorbereiden van pipeline-documentatie. Die hulp is aanvullend: gegenereerde SQL en transformatielogica moeten aan de echte databronnen worden getoetst. Bij deze onderwerpen sluit doorgaans een technische leerroute rond Microsoft Fabric, Power BI of data-engineering beter aan dan een algemene Copilot-training. De opleidingsvraag hangt af van de gekozen architectuur en de rol van de deelnemers.

Training over Microsoft Fabric bespreken →

Conclusie

Een betrouwbare Fabric Data Factory-pipeline is een gecontroleerd bedrijfsproces: broncontract, activiteiten, validatie, herstartbaarheid, monitoring en formele publicatie grijpen op elkaar in. De belangrijkste ontwerpbeslissing is niet hoeveel activiteiten op het canvas passen, maar wanneer gegevens aantoonbaar betrouwbaar genoeg zijn om te gebruiken. Met een concreet ERP-voorbeeld, expliciete foutscenario’s en duidelijke eigenaren kan een organisatie beginnen met een kleine maar productiegerichte gegevensketen.

Bronnen

Veelgestelde vragen

Praktische antwoorden

Wat is het verschil tussen een Data Factory-pipeline en een notebook in Fabric?

Een pipeline regelt de volgorde en afhankelijkheden tussen activiteiten, bijvoorbeeld kopiëren, valideren en publiceren. Een notebook voert code uit voor analyse of transformatie. Een pipeline kan een notebook aanroepen, maar beide hebben een eigen verantwoordelijkheid. Wanneer de notebook technisch geslaagd is maar verkeerde aantallen produceert, moet de pipeline nog steeds een afzonderlijke kwaliteitscontrole kunnen uitvoeren voordat de rapportagelaag wordt bijgewerkt.

Hoe voorkom je dubbele records na een herstart van een Fabric-pipeline?

Ontwerp de lading idempotent: een tweede verwerking van dezelfde brondatum of dezelfde order mag niet tot dubbel tellen leiden. Gebruik stabiele sleutels, een runidentificatie, tijdelijke landingslagen en waar passend een gecontroleerde samenvoegstap. Test een storing na het kopiëren en vóór publicatie. Alleen een retry instellen is onvoldoende, omdat een deels uitgevoerde append-bewerking al gegevens kan hebben weggeschreven.

Wanneer is automatisch opnieuw proberen van een pipeline-activiteit verstandig?

Retries zijn nuttig bij tijdelijke storingen, zoals een korte netwerkonderbreking of throttling. Structurele fouten zoals onjuiste authenticatie, ontbrekende kolommen of een blijvend ongeldig bronbestand vragen inhoudelijk herstel. Configureer waar ondersteund het aantal pogingen en wachttijd per activiteit. Controleer of herhaling veilig is en bewaak de totale doorlooptijd; een groene pipeline die pas na de rapportagedeadline klaar is kan alsnog een incident zijn.

Welke gegevens horen in een auditlog van een Fabric-laadproces?

Een bruikbare registratie bevat minimaal bron, dataperiode, run-ID, start- en eindtijd, verwacht aantal records, geaccepteerd aantal, afgekeurde records en de uiteindelijke publicatiestatus. Voeg waar zinvol een controlebedrag of bronversie toe. Vermijd het opslaan van gevoelige persoonsgegevens in foutmeldingen. Het log moet zowel een technisch beheerder helpen bij herstel als de proceseigenaar bij het beoordelen van de inhoudelijke volledigheid.

Wanneer mag Power BI vernieuwen na een gegevenspipeline?

Pas na de afgesproken inhoudelijke controles. Dat betekent bijvoorbeeld dat bron- en doelaantallen kloppen, verplichte sleutels geldig zijn en uitzonderingen volgens beleid zijn verwerkt. Technische voltooiing van kopiëren is niet hetzelfde als een goedgekeurde dataset. Leg een expliciete afhankelijkheid tussen validatie en publicatie vast, zodat dashboards niet onbedoeld gedeeltelijke of verouderde gegevens presenteren.

Verder lezen

Gerelateerde artikelen

Gerelateerde training · Cursus Compleet

Verdere verdieping in dit onderwerp?

Er is momenteel geen rechtstreeks passende standaardcursus gekoppeld. Een maatwerkopleiding kan worden afgestemd op de specifieke leerdoelen.

  • Praktijkgerichte inhoud
  • Passend bij onderwerp en niveau
  • Voor professionals en organisaties
Bespreek maatwerktrainingOnderwerpgericht trainingsadvies
Bespreek uwtrainingsvraag→