Modül 6 · Veri Platformları · ⏱ 5 dk

Lineage: veri nereden geldi, nereye gitti?

Data lineage

Bu derste neler öğreneceksin

  • bruin lineage ile görselleştirir
  • dbt docs lineage karşılaştırır
  • Hata ayıklamada lineage kullanır

Tarifin Yol Haritası

Bir yemek tarifinde yazar: “soğanı doğra, tencereye at, 10 dakika kısık ateşte pişir”. Bir başkası okuyunca her adımı görür. Veri lineage de aynı: “Chess.com’dan geldi → staging’de temizlendi → reports tablosunda özetlendi → dashboard’da gösterildi”.

Lineage = verinin doğum sertifikası. Hangi API’den geldi, hangi SQL onu değiştirdi, hangi rapora girdi.

Neden önemli?

  • Hata ayıklama: “Dashboard yanlış sayı gösteriyor” → lineage’den geriye git, hangi adım bozdu bul.
  • Güven: Patron “bu rakam doğru mu?” diye sorunca lineage göster.
  • Sözleşme: GDPR/KVKK kuralları “kişisel veri nereye gidiyor?” sorusunu lineage ile yanıtlar.

Bruin Lineage ile Görselleştir

Dünkü pipeline’ı hatırla (25-bruin-uc-katman). Şimdi ona şunu ekle:

bruin lineage pipeline/
# 'pipeline/assets/reports/player_stats.sql' tablosunun lineage'sini gösterir.
# Çıktı: bir ağaç (tree) — üstte chess.games, altta player_stats.

Alternatif: bruin lineage --format dot → bir .dot dosyası üretir. Bunu dreampuf.github.io/GraphvizOnline adresine yapıştır → resim olarak gör.

Örnek çıktı:

chess.com API

chess.games (ingest)

stg_games (staging)

player_stats (reports)

Metabase dashboard

dbt Docs Lineage

dbt zaten bir lineage sunar. dbt projesinin kökünde:

dbt docs generate
dbt docs serve --port 8080
# Tarayıcıda http://localhost:8080 aç.

http://localhost:8080/#!/overview adresinde her model bir kutu, oklar bağlantıları gösterir. Bir kutuya tıkla → kolon kolon hangi alanlar geliyor görürsün.

Karşılaştırma

ÖzellikBruin lineagedbt docs
KapsamTüm pipeline (Python + SQL)Sadece dbt modelleri
ÇıktıCLI tree + dotWeb UI + DAG
Kolon düzeyiYakındaVar
KolaylıkTek komut2 komut + tarayıcı

Hands-on

  1. Dünkü pipeline’ı kurduğun klasöre git.
  2. bruin lineage pipeline/ çalıştır.
  3. Çıktıyı bir .dot dosyasına kaydet, GraphvizOnline’da görselleştir.
  4. dbt projen varsa (24-dbt-docs-portfolyo), dbt docs generate && dbt docs serve ile UI lineage’ı aç.
  5. İkisini yan yana karşılaştır: hangisi daha okunaklı, hangisi daha hızlı?

Sıradaki

Lineage’yi gördün. Şimdi “hangi aracı ne zaman seçmeliyim?” sorusunun cevabını öğren →