Modül 2 · İş Akışı Orkestrasyonu · ⏱ 7 dk

Pipeline nedir? Hattı kur

What is a pipeline

Bu derste neler öğreneceksin

  • Pipeline kavramını tanımlar
  • Kestra yı Docker Compose ile çalıştırır
  • İlk YAML flow yazar

Limonatacının Fabrikası

Şimdiye kadar bir deftere yazıyordun siparişleri. Ama gerçek bir limonata dükkânı düşün: bir sürü bardak, bir sürü müşteri, bir sürü ödeme. Bunları sıraya koymak lazım. Bardak yıkanır → limonata sıkılır → bardağa konur → müşteriye verilir. Her adım bir istasyon.

İşte bu istasyonlar dizisine pipeline (yani üretim hattı) diyoruz. Veri dünyasında da aynı şey: veri bir yerden gelir → temizlenir → bir yere yazılır → rapor çıkar.

Kestra: Pipeline’ın Şefi

Kestra, bu istasyonları yöneten bir orkestra şefi gibi düşün. Şef der ki: “Önce bardak yıkansın, sonra limonata sıkılsın, sonra müşteriye verilsin.” Bir adım bitmeden öbürü başlamaz.

Kestra’yı bilgisayarımızda Docker Compose ile çalıştıracağız. Docker Compose, birden fazla kutuyu (konteyneri) aynı anda ayağa kaldırmak demek.

# docker-compose.yml
services:
  postgres:
    image: postgres:18-alpine
    environment:
      POSTGRES_PASSWORD: lemonade
    ports:
      - "5432:5432"

  kestra:
    image: kestra/kestra:latest
    ports:
      - "8080:8080"
    environment:
      KESTRA_DB_URL: jdbc:postgresql://postgres:5432/kestra

Terminalde docker compose up -d yaz. Birkaç saniye sonra tarayıcıda http://localhost:8080 açılır. Kestra paneline hoş geldin!

İlk Flow: “Günlük Satış”

Kestra’da her iş bir flow’dur. YAML dosyasıyla yazılır:

id: daily_sales
namespace: lemonade
tasks:
  - id: say_hello
    type: io.kestra.core.tasks.log.Log
    message: "Günaydın! Bugün {{ trigger.date }} işliyoruz."

Bu akışı Kestra paneline yapıştır ve Execute bas. Log ekranında mesajını görürsün.

Neden Bu Kadar Önemli?

İlerleyen derslerde göreceğiz: Kestra, tüm veri yolculuğumuzu otomatikleştirecek. Her sabah 09:00’da dünkü siparişleri çekecek, BigQuery’ye yazacak, dashboard’u güncelleyecek. Sen uyurken, fabrika çalışıyor.

Bugün Yaptık

  • Pipeline kavramını öğrendik (üretim hattı metaforu)
  • Docker Compose ile Kestra + Postgres 18 ayağa kaldırdık
  • İlk YAML flow yazdık ve çalıştırdık

Ellerini Kirlet

  1. docker compose up -d çalıştır, panele git.
  2. Yukarıdaki daily_sales flow’unu yapıştır, çalıştır.
  3. Mesajı Türkçeleştir: “Merhaba! Bugünün tarihi …” gibi.

Sıradaki

Bir sonraki ders: ETL mi ELT mi? Aşçı analojisi →