Ayıklama, dönüştürme ve yükleme (ETL)

Microsoft Fabric
Azure Data Factory

Kuruluşların genellikle çeşitli biçimlerde birden çok kaynaktan veri toplaması ve bunları bir veya daha fazla veri deposuna taşıması gerekir. Hedef, kaynakla aynı veri deposu türü olmayabilir ve verilerin genellikle yüklenmeden önce şekillendirilmesi, temizlenmesi veya dönüştürülmesi gerekir.

Çeşitli araçlar, hizmetler ve süreçler bu zorlukların giderilmesine yardımcı olur. Yaklaşımdan bağımsız olarak, çalışmayı koordine etmeniz ve veri işlem hattı içinde veri dönüştürmeleri uygulamanız gerekir. Aşağıdaki bölümlerde bu görevler için yaygın yöntemler ve uygulamalar vurgulanmıştır.

Ayıklama, dönüştürme, yükleme (ETL) işlemi

Ayıklama, dönüştürme, yükleme (ETL), farklı kaynaklardan gelen verileri birleşik bir veri deposuna bir araya getiren bir veri tümleştirme işlemidir. Dönüştürme aşamasında veriler özel bir altyapı kullanılarak iş kurallarına göre değiştirilir. Bu genellikle verileri işlendiği ve sonunda hedefine yüklendiği için geçici olarak tutan hazırlama tablolarını içerir.

Ayıklama, dönüştürme, yükleme (ETL) işleminin diyagramı.

Gerçekleşen veri dönüşümü genellikle filtreleme, sıralama, toplama, verileri birleştirme, verileri temizleme, yinelenen verileri kaldırma ve doğrulama gibi çeşitli işlemleri içerir.

Genellikle, zaman kazanmak için üç ETL aşaması paralel olarak çalışır. Örneğin, veriler ayıklanırken, bir dönüştürme işlemi zaten alınan veriler üzerinde çalışabilir ve yükleme için hazırlanabilir ve bir yükleme işlemi tüm ayıklama işleminin tamamlanmasını beklemek yerine hazırlanan veriler üzerinde çalışmaya başlayabilir. Yazma çekişmelerini önlemek ve etkili yeniden denemeleri etkinleştirmek için genellikle veri bölümü sınırları (tarih, kiracı, parça anahtarı) çevresinde paralelleştirme tasarlarsınız.

İlgili hizmet:

Diğer araçlar:

Ayıklama, yükleme, dönüştürme (ELT)

Ayıklama, yükleme, dönüştürme (ELT) ETL'den yalnızca dönüşümün gerçekleştiği yerde farklılık gösterir. ELT işlem hattında dönüştürme, hedef veri deposunda gerçekleşir. Verileri dönüştürmek için ayrı bir dönüştürme altyapısı kullanmak yerine hedef veri deposunun işleme özellikleri kullanılır. Bu işlem hattından dönüştürme altyapısını kaldırarak mimariyi basitleştirir. Bu yaklaşımın bir diğer avantajı da hedef veri deposunun ölçeklendirilmesinin ELT işlem hattı performansını da ölçeklendirmesidir. Ancak ELT yalnızca hedef sistem verileri verimli bir şekilde dönüştürecek kadar güçlü olduğunda iyi çalışır.

Ayıklama, yükleme, dönüştürme (ELT) işleminin diyagramı.

ELT için tipik kullanım örnekleri büyük veri bölgesi içinde yer alır. Örneğin, hadoop Dağıtılmış Dosya Sistemi (HDFS), Azure blob depolama veya Azure Data Lake Storage 2. Nesil gibi ölçeklenebilir depolamadaki düz dosyalara kaynak verileri ayıklayarak işe başlayabilirsiniz. Spark, Hive veya PolyBase gibi teknolojiler daha sonra kaynak verileri sorgulamak için kullanılabilir. ELT ile ilgili önemli nokta, dönüştürmeyi gerçekleştirmek için kullanılan veri deposunun verilerin nihai olarak kullanıldığı veri deposuyla aynı olmasıdır. Bu veri deposu, verileri kendi ayrı depolama alanına yüklemek yerine doğrudan ölçeklenebilir depolama alanından okur. Bu yaklaşım, ETL'de bulunan veri kopyalama adımlarını atlar. Bu adımlar genellikle büyük veri kümeleri için zaman alabilir. Bazı iş yükleri, sorgu performansını geliştirmek veya idare kurallarını zorlamak için dönüştürülmüş tabloları veya görünümleri oluşturur; ELT her zaman yalnızca sanallaştırılmış dönüşümleri ifade etmez.

ELT işlem hattının son aşaması genellikle kaynak verileri desteklenmesi gereken sorgu türleri için daha verimli bir biçime dönüştürür. Örneğin, veriler yaygın olarak filtrelenmiş anahtarlar tarafından bölümlenebilir. ELT ayrıca sıkıştırma, koşul gönderimi ve verimli analiz taramalarını etkinleştirmek için verileri sütuna göre düzenleyen sütunlu bir depolama biçimi olan Parquet gibi iyileştirilmiş depolama biçimlerini de kullanabilir.

İlgili Microsoft hizmeti:

ETL veya ELT seçme

Bu yaklaşımlar arasındaki seçim gereksinimlerinize bağlıdır.

Şu durumlarda ETL'yi seçin:

  • Ağır dönüşümleri kısıtlanmış bir hedef sistemden boşaltmanız gerekir
  • Karmaşık iş kuralları özel dönüşüm altyapıları gerektirir
  • Mevzuat veya uyumluluk gereksinimleri, yüklemeden önce hazırlanmış hazırlama denetimlerini zorunlu hale getirmektedir

Şu durumlarda ELT'yi seçin:

  • Hedef sisteminiz esnek işlem ölçeklendirmesi ile modern bir veri ambarı veya göl evidir
  • Keşif analizi veya gelecekteki şema evrimi için ham verileri korumanız gerekir
  • Dönüştürme mantığı, hedef sistemin yerel özelliklerinden yararlanır

Veri akışı ve denetim akışı

Veri işlem hatları bağlamında, denetim akışı bir görev kümesinin düzenli olarak işlenmesini sağlar. Bu görevlerin doğru işleme sırasını zorlamak için öncelik kısıtlamaları kullanılır. Aşağıdaki görüntüde gösterildiği gibi, bu kısıtlamaları bir iş akışı diyagramında bağlayıcı olarak düşünebilirsiniz. Her görevin başarı, başarısızlık veya tamamlama gibi bir sonucu vardır. Sonraki görevler, öncülü bu sonuçlardan biriyle tamamlanana kadar işlemeyi başlatmaz.

Denetim akışları, veri akışlarını görev olarak yürütür. Veri akışı görevinde veriler bir kaynaktan ayıklanır, dönüştürülür veya bir veri deposuna yüklenir. Bir veri akışı görevinin çıkışı, bir sonraki veri akışı görevinin girişi olabilir ve veri akışları paralel olarak çalıştırılabilir. Denetim akışlarından farklı olarak, veri akışındaki görevler arasına kısıtlamalar ekleyemezsiniz. Ancak, verileri her görev tarafından işlenirken gözlemlemek için bir veri görüntüleyici ekleyebilirsiniz.

Denetim akışı içinde görev olarak yürütülen veri akışının diyagramı.

Diyagramda, denetim akışında bir veri akışı görevi olan birkaç görev vardır. Görevlerden biri bir kapsayıcı içinde iç içe yerleştirilmiştir. Kapsayıcılar, bir çalışma birimi sağlayarak görevlere yapı sağlamak için kullanılabilir. Bu tür örneklerden biri, bir klasördeki dosyalar veya veritabanı deyimleri gibi bir koleksiyondaki öğeleri yinelemektir.

İlgili hizmet:

Tersine ETL

Ters ETL, dönüştürülmüş, modellenmiş verileri analiz sistemlerinden operasyonel araçlara ve uygulamalara taşıma işlemidir. İşlem sistemlerinden analize veri akışı yapan geleneksel ETL'den farklı olarak ters ETL, seçilen verileri iş kullanıcılarının üzerinde işlem yapabilecekleri yere geri göndererek içgörüleri etkinleştirir. Ters ETL işlem hattında, veri ambarlarından, göl binalarından veya diğer analiz depolarından şu işletim sistemlerine veri akışı yapılır:

  • Müşteri ilişkileri yönetimi (CRM) platformları
  • Pazarlama otomasyonu araçları
  • Müşteri destek sistemleri
  • İş yükü veritabanları

Yaklaşım hala bir ayıklama, dönüştürme ve yükleme işlemini izler. Dönüştürme adımı, veri ambarınız veya diğer analiz sisteminiz tarafından kullanılan belirli bir biçimden hedef sisteminizin biçimine göre dönüştürme işlemini yaptığınız yerdir.

Bir örnek için bkz. NoSQL için Azure Cosmos DB ile ayıklamayı, dönüştürmeyi ve yüklemeyi (ETL) ters çevirme.

Akış verileri ve sık erişimli yol mimarileri

Lambda etkin yoluna veya Kappa mimarilerine ihtiyacınız olduğunda, veriler oluşturulurken veri kaynaklarına abone olabilirsiniz. Zamanlanmış toplu işlerde veri kümeleri üzerinde çalışan ETL veya ELT'nin aksine, gerçek zamanlı akış verileri geldikçe işler ve anında içgörüler ve eylemler sağlar.

Gönderme, dönüştürme ve yükleme işleminin diyagramı.

Akış mimarisinde veriler olay kaynaklarından bir ileti aracısı veya olay hub'ına (Azure Event Hubs veya Kafka gibi) alınır ve ardından bir akış işlemcisi (Doku Real-Time Intelligence, Azure Stream Analytics veya Apache Flink gibi) tarafından işlenir. İşlemci, sonuçları panolar, uyarılar veya veritabanları gibi aşağı akış sistemlerine yönlendirmeden önce başvuru verilerini filtreleme, toplama, zenginleştirme veya başvuru verileriyle birleştirme gibi dönüştürmeleri uygular.

Bu yaklaşım, düşük gecikme süresi ve sürekli güncelleştirmelerin kritik öneme sahip olduğu senaryolar için idealdir, örneğin:

  • Anomaliler için üretim ekipmanını izleme
  • Finansal işlemlerde sahtekarlığı algılama
  • Lojistik veya operasyonlar için gerçek zamanlı panolar oluşturma
  • Algılayıcı eşiklerine göre uyarıları tetikleme

Akış için güvenilirlikle ilgili dikkat edilmesi gerekenler

  • En az bir kez işlemeyi garanti etmek ve hatalardan kurtarmak için denetim noktası oluşturmayı kullanın
  • Olası yinelenen işlemleri işlemek için dönüşümleri bir kez etkili olacak şekilde tasarlama
  • Geç gelen olaylar ve sıra dışı işleme için filigran uygulama
  • İşlenemeyen iletiler için teslim edilemeyen ileti kuyruklarını kullanma

Teknoloji seçimleri

Veri depoları:

İşlem hattı ve düzenleme:

Lakehouse ve modern analiz:

Sonraki adımlar