ETL Nedir? Extract, Transform, Load ve ELT Farkı


ETL, verinin kaynak sistemlerden alınması, temizlenip dönüştürülmesi ve hedef sisteme yüklenmesi sürecidir. Açılımı Extract, Transform, Load yani Çıkar, Dönüştür, Yükle şeklindedir.

Bir şirketin SAP, CRM ve Excel verilerini tek bir satış veri ambarında birleştirmesi tipik bir ETL senaryosudur.

ETL adımları

Extract — veriyi çıkarma

Veri kaynak sistemlerden okunur:

  • İlişkisel veritabanları
  • ERP ve CRM sistemleri
  • Excel ve CSV dosyaları
  • API servisleri
  • Log ve olay akışları

Bu aşamada tam yükleme veya yalnızca değişen kayıtları alan artımlı yükleme kullanılabilir.

Transform — veriyi dönüştürme

Ham veri iş kurallarına uygun hâle getirilir:

  • Veri tipi dönüşümü
  • Hatalı ve eksik kayıt kontrolü
  • Kodların standartlaştırılması
  • Tekrarlı kayıtların temizlenmesi
  • Tabloların birleştirilmesi
  • Hesaplanan alanların üretilmesi
  • İş anahtarlarının eşleştirilmesi

Load — hedefe yükleme

Dönüştürülen veri veri ambarı, veri gölü, lakehouse veya raporlama veritabanına yazılır. Yükleme tam yenileme, artımlı veya gerçek zamanlı olabilir.

ETL ve ELT farkı

ETLELT
Dönüşüm yüklemeden önce yapılırVeri önce yüklenir, sonra dönüştürülür
Klasik veri ambarlarında yaygınBulut veri platformlarında yaygın
Hedefe temizlenmiş veri giderHam veri hedefte tutulabilir
ETL sunucusu işlem yükünü taşırDönüşüm gücünü hedef platform kullanır

ELT her durumda ETL’den daha iyi değildir. Güvenlik, maliyet, veri hacmi, gecikme ihtiyacı ve platform yetenekleri seçimi belirler.

ETL süreci örneği

Günlük satış raporu için:

  1. SAP satış tablolarından yeni belgeler alınır.
  2. Müşteri ve ürün kodları ana verilerle eşleştirilir.
  3. İptal edilmiş belgeler iş kuralına göre ayrılır.
  4. Para birimleri ortak raporlama para birimine çevrilir.
  5. Veri satış fact tablosuna yüklenir.
  6. Dashboard veri seti yenilenir.

ETL araçları

AraçKullanım yaklaşımı
SQL Server Integration ServicesMicrosoft SQL Server odaklı görsel paketler
Azure Data FactoryBulut tabanlı veri taşıma ve orkestrasyon
InformaticaKurumsal veri entegrasyonu
TalendVeri entegrasyonu ve kalite süreçleri
dbtSQL tabanlı dönüşüm ve analitik mühendisliği
Apache Airflowİş akışı orkestrasyonu

Aracı ezberlemekten önce kaynak-hedef eşleme, hata yönetimi, artımlı yükleme ve yeniden çalıştırılabilirlik mantığını öğrenmek daha değerlidir.

ETL’de staging alanı nedir?

Staging, kaynaktan alınan verinin geçici olarak tutulduğu katmandır. Amaç kaynak sistemle hedef model arasına kontrollü bir tampon koymaktır.

Staging alanı:

  • Kaynak veriyi yeniden çekmeden hata analizi yapmayı,
  • Yükleme adımlarını ayırmayı,
  • Kaynak sistem üzerindeki yükü azaltmayı,
  • Denetim ve mutabakat kayıtları tutmayı

kolaylaştırır.

ETL kalite kontrolleri

Üretim ortamında yalnızca paketin “başarılı” çalışması yeterli değildir:

  • Kaynak ve hedef kayıt sayısı karşılaştırılmalı.
  • Zorunlu alanlardaki boş değerler izlenmeli.
  • Tekil anahtar ihlalleri kontrol edilmeli.
  • Toplam tutar ve miktar mutabakatı yapılmalı.
  • Hatalı kayıtlar ayrı alana alınmalı.
  • Yükleme başlangıç ve bitiş zamanı kaydedilmeli.

ETL ile veri pipeline farkı

Veri pipeline daha geniş bir kavramdır. Veri taşıma, dönüştürme, kalite kontrolü, makine öğrenmesi, bildirim ve rapor yenileme gibi birden fazla işi kapsayabilir. ETL ise pipeline içindeki belirli entegrasyon desenidir.

ETL öğrenmek için uygulama

DataPlaybook’taki ücretsiz SSIS ve ETL eğitiminde staging, lookup, conditional split, slowly changing dimension ve hata yönetimi adımlarını tarayıcıda deneyebilirsiniz.

SQL tarafındaki temel sorguları geliştirmek için interaktif SQL eğitimine geçebilirsiniz.

ETL hakkında sık sorulan sorular

ETL için kodlama gerekir mi?

Görsel ETL araçları kod ihtiyacını azaltabilir; ancak SQL, veri tipi, join ve hata yönetimi bilgisi yine gereklidir.

ETL yalnızca veri ambarı için mi kullanılır?

Hayır. Sistem entegrasyonu, veri göçü, raporlama, arşivleme ve operasyonel veri aktarımında da kullanılabilir.

ETL ile API aynı şey mi?

Hayır. API veri kaynağı veya hedefi olabilir; ETL ise bu verinin alınması, dönüştürülmesi ve yüklenmesi sürecidir.

Ali Rıza Ekici

İş Zekâsı, Qlik Sense, ETL, SAP, SQL ve veri analitiği üzerine uygulamalı içerikler hazırlıyor.

Yazar ve deneyim hakkında →