Datapipelines på Kubernetes

Introduktion till Kubernetes

Frank Heilmann

Platform Architect and Freelance Instructor

Vad är datapipelines?

  • En uppsättning processer för att flytta, transformera eller analysera data
  • Typiska steg:
    • ETL: Extrahera data från olika datakällor, transformera till ett meningsfullt schema, och slutligen läsa in i ett målsystem (t.ex. ett datalager)
    • ELT: Extrahera data från olika datakällor, läsa in i ett målsystem (t.ex. en datasjö), och slutligen transformera data till ett meningsfullt schema vid behov

Datapipelines

Introduktion till Kubernetes

Datapipelines på Kubernetes

  • Stegen i en datapipeline motsvarar väl Kubernetes-objekt:
    • Extrahera, transformera och läsa in: Pods (Deployment eller StatefulSet)
    • Extraherad och transformerad data: Persistent Volumes
  • Kubernetes kan skala ut Deployments och lagring efter behov och ökar därmed genomströmningen

Datapipelines på Kubernetes

Introduktion till Kubernetes

Verktyg med öppen källkod för datapipelines

  • Det finns många verktyg med öppen källkod som enkelt kan driftsättas på Kubernetes
  • Några exempel:
    • Extrahera: Apache NiFi, Apache Kafka med Kafka Connect
    • Transformera: Apache Spark, Apache Kafka, PostgreSQL
    • Läsa in: Apache Spark, Apache Kafka med KSQL, PostgreSQL
    • Lagring ovanpå PVs: Minio, Ceph
  • Listan är inte på något sätt fullständig
Introduktion till Kubernetes

Nu kör vi en övning!

Introduktion till Kubernetes

Preparing Video For Download...