Datapipeline-arkitektur — fra kilder til indsigter

Datapipeline-arkitektur på et interaktivt lærred: kildesystemer, change data capture, indhentning, stream- og batchbearbejdning, datawarehouset og det forbrug, der lukker løkken.

En datapipeline flytter data fra de systemer, der producerer dem, til de steder, hvor de bliver brugt: kilderne fodrer indhentningen, bearbejdningen transformerer dataene, lagringen rummer dem, og dashboards og modeller gør dem til beslutninger.

Datapipeline-arkitektur — fra kilder til indsigter

The interactive FlowJam canvas for this explanation — every lane, row and arrow above is a real QueryChart diagram you can open and edit.

How to read this visual

  • Læs kolonnen »Indsaml« oppefra og ned: kilderne producerer dataene, indhentningen flytter dem, og køen buffrer dem.
  • Kolonnen »Transformér« deler sig i stream og batch — to veje, ét mål i »Lagring«.
  • Læs kolonnen »Levér« som udbyttet: lagringen fodrer både analyser og machine learning, og begge fodrer forretningen.

Indsamlingen af dataene

»Kildesystemer — apps, databaser, logs, API'er« navngiver enhver producent af data, og »Change data capture følger nye data« er den måde, en moderne pipeline holder trit på — den holder øje med kildedatabaserne og udsender hver ændring som en hændelse, så pipelinen fodres løbende. »Beskedkøen buffrer strømmen« er støddæmperen: hvis bearbejdningen længere nede sløves, venter dataene i køen i stedet for at blive smidt væk.

Transformationen af dataene

Bearbejdningsbanen deler sig efter hastighed: »Stream-processoren transformerer i realtid« tager hændelserne, efterhånden som de kommer ind, til brug med lav svartid, mens »Batchjobs transformerer med planlagte mellemrum« tager de tunge historiske joins og aggregeringer, som er billigere og lettere at fejlsøge. Begge fodrer »Datawarehouset rummer de rensede, sammenstillede data« — det ene, ensartede billede af det hele, som du kan forespørge i.

Leveringen, og løkken der lukkes

»Analysedashboards forespørger i datawarehouset« og »Machine learning-modeller træner på dataene« er de to måder, de lagrede data bliver forbrugt på, og »Indsigterne flyder tilbage i forretningen« er returløkken — indsigten ændrer en beslutning, som ændrer produktet, som producerer nye data. Den løkke er grunden til, at slutningen er tegnet som en returvej og ikke som en afslutning: en pipeline uden løkken er en omkostning, ikke et aktiv.

Key relationships and takeaways

  • De fem baner er pipelinens anatomi: kilder, indhentning, bearbejdning, lagring, forbrug.
  • Stream og batch er to veje gennem den samme pipeline, valgt ud fra svartid og pris.
  • Change data capture gør indhentningen løbende, så datawarehouset følger kilderne i stedet for det natlige dump.
  • Datawarehouset er det ene, ensartede billede, som hver forbruger læser.
  • Pipelinens værdi er løkken tilbage til forretningen — indsigter skal ændre beslutninger.

When to use this visual

  • At lære et team lagene i en datapipeline, før de vælger værktøjer, så værktøjerne passer til rollerne.
  • At designe en ny pipeline: lærredet viser, hvor valget mellem streaming og batch og valget om lagring hører hjemme.
  • At gennemgå en eksisterende pipeline — en manglende kø, eller ingen change data capture, er et trin, diagrammet gør åbenlyst.

Sådan fungerer det

  1. Navngiv jeres rigtige kilder

    Erstat de generiske kilder med jeres faktiske systemer — jeres transaktionsdatabase, jeres event-analyser, jeres SaaS-eksporter — én boks pr. kilde.

  2. Vælg jeres vej gennem bearbejdningen

    Annotér stream- og batchboksene med de værktøjer, I faktisk kører til hver af dem, og notér, hvilke hændelser der går ad hvilken vej.

  3. Kortlæg skemaet i datawarehouset

    Notér på lagringsboksen, hvilket datawarehouse I bruger, og hvilke nøgletabeller det har, så diagrammet viser, hvad det rensede billede faktisk indeholder.

  4. Tegn gates for kvalitet og overvågning

    Tilføj datakvalitetstjek mellem bearbejdning og lagring og en overvågningsboks på hele pipelinen, hver med en eksplicit alarm- eller karantænetilstand som afslutning.

Ofte stillede spørgsmål

Hvad er en datapipeline?

En datapipeline er det system, der flytter data fra der, hvor de bliver produceret, til der, hvor de bliver brugt, gennem trinnene indhentning, bearbejdning, lagring og forbrug. Dens opgave er at samle dataene, gøre dem ensartede og mulige at forespørge i, og levere dem til de dashboards, rapporter og modeller, der bruger dem — løbende i stedet for i skrøbelige manuelle eksporter.

Hvad er forskellen på stream- og batchbearbejdning?

Stream-bearbejdning transformerer hændelserne, efterhånden som de kommer ind, og giver lav svartid — sekunder eller minutter — til gengæld for mere komplekse og dyrere systemer. Batchbearbejdning kører planlagte jobs over ophobede data og giver resultater på timer, men billigere og med lettere fejlsøgning. Rigtige pipelines kører begge dele: streams til de tidsfølsomme data, batches til det tunge historiske arbejde.

Hvad er change data capture?

Change data capture (CDC) holder øje med en kildedatabase og udsender en hændelse for hver indsættelse, opdatering eller sletning, så systemerne længere nede får besked om ændringerne, næsten mens de sker. Det erstatter det natlige fulde dump med en løbende strøm af ændringer, og det er det, der lader et datawarehouse følge sine kilder i nær realtid frem for én gang i døgnet.

Hvorfor har en datapipeline brug for en beskedkø?

Fordi producenter og forbrugere kører i forskellige hastigheder. Køen afkobler dem: en producent udgiver en hændelse og går videre, og hvis bearbejdningen længere nede sløves, venter hændelserne i køen i stedet for at blive smidt væk eller blokere producenten. Den bufring er det, der gør pipelinen robust over for spidsbelastninger og langsomme trin, og derfor placerer diagrammet køen lige efter indhentningen.

Redigér dette diagram i QueryChart (FlowJam)

Åbn præcis dette datapipeline-lærred som dit eget diagram, omdøb trinnene til jeres egen stak, og kortlæg jeres datastrømme.

Redigér dette diagram i QueryChart (FlowJam)

Mere i Visuelle forklaringer