Kuruluşların karşılaştığı yaygın bir sorun, birden çok kaynaktan birden çok biçimde veri toplama işlemidir. Ardından bunu bir veya daha fazla veri deposuna taşımanız gerekir. Hedef, kaynakla aynı veri deposu türü olmayabilir. Genellikle biçim farklıdır veya verilerin son hedefine yüklenmeden önce şekillendirilmesi veya temizlenmesi gerekir.
Bu zorlukların giderilmesine yardımcı olmak için yıllar içinde çeşitli araçlar, hizmetler ve süreçler geliştirilmiştir. Kullanılan işlem ne olursa olsun, işi koordine etmek ve veri işlem hattı içinde bir miktar veri dönüştürmesi uygulamak yaygın bir ihtiyaçtır. Aşağıdaki bölümlerde bu görevleri gerçekleştirmek için kullanılan yaygın yöntemler vurgulanmıştır.
Ayıklama, dönüştürme, yükleme (ETL) işlemi
extract, transform, load (ETL), çeşitli kaynaklardan veri toplamak için kullanılan bir veri işlem hattıdır. Ardından verileri iş kurallarına göre dönüştürür ve verileri bir hedef veri deposuna yükler. ETL'deki dönüştürme işi özel bir altyapıda gerçekleşir ve genellikle verileri dönüştürme ve sonunda hedefine yüklenme aşamasında geçici olarak tutmak için hazırlama tablolarının kullanılmasını içerir.
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ıştırılır. Örneğin, veriler ayıklanırken, bir dönüştürme işlemi zaten alınan veriler üzerinde çalışıyor ve yükleme için hazırlanıyor olabilir ve bir yükleme işlemi tüm ayıklama işleminin tamamlanmasını beklemek yerine hazırlanan veriler üzerinde çalışmaya başlayabilir.
İlgili Azure hizmeti:
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.
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, Azure blob deposu veya Azure Data Lake 2. Nesil (veya bir bileşim) gibi ölçeklenebilir depolamadaki düz dosyalara tüm 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 özel depolama alanına yüklemek yerine doğrudan ölçeklenebilir depolama alanından okur. Bu yaklaşım, ETL'de bulunan veri kopyalama adımını atlar ve bu genellikle büyük veri kümeleri için zaman alan bir işlem olabilir.
Uygulamada hedef veri deposu, Hadoop kümesi (Hive veya Spark kullanarak) veya Azure Synapse Analytics'teki bir SQL ayrılmış havuzu kullanan bir veri ambarı. Genel olarak, bir şema sorgu zamanında düz dosya verilerinin üzerine alınır ve tablo olarak depolanır ve verilerin veri deposundaki diğer tablolar gibi sorgulanması sağlanır. Veriler veri deposu tarafından yönetilen depolama alanında değil, Azure Data Lake deposu veya Azure blob depolama gibi bazı dış ölçeklenebilir depolamalarda bulunduğundan bunlar dış tablolar olarak adlandırılır.
Veri deposu yalnızca verilerin şemasını yönetir ve okumada şemayı uygular. Örneğin, Hive kullanan bir Hadoop kümesi, veri kaynağının HDFS'deki bir dosya kümesinin etkili bir yolu olduğu bir Hive tablosunu açıklar. Azure Synapse'te PolyBase de aynı sonucu elde edebilir ve veritabanının kendisine harici olarak depolanan verilere karşı bir tablo oluşturur. Kaynak veriler yüklendikten sonra, dış tablolarda bulunan veriler veri deposunun özellikleri kullanılarak işlenebilir. Büyük veri senaryolarında bu, veri deposunun verileri daha küçük parçalara bölen ve öbeklerin işlenmesini birden çok düğüme paralel olarak dağıtan yüksek düzeyde paralel işleme (MPP) özelliğine sahip olması gerektiği anlamına gelir.
ELT işlem hattının son aşaması genellikle kaynak verileri desteklenmesi gereken sorgu türleri için daha verimli olan son biçime dönüştürmektir. Örneğin, veriler bölümlenebilir. Ayrıca ELT, satır odaklı verileri sütunlu bir şekilde depolayan ve iyileştirilmiş dizin oluşturma sağlayan Parquet gibi iyileştirilmiş depolama biçimlerini kullanabilir.
İlgili Azure hizmeti:
- Azure Synapse Analytics'te SQL ayrılmış havuzları
- Azure Synapse Analytics'te SQL Sunucusuz havuzlar
- Hive ile HDInsight
- Azure Data Factory
- Power BI'da Datamarts
Diğer araçlar:
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.
Yukarıdaki 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 Azure hizmeti:
Diğer araçlar:
Teknoloji seçimleri
- Çevrimiçi İşlem İşleme (OLTP) veri depoları
- Çevrimiçi Analitik İşleme (OLAP) veri depoları
- Veri ambarları
- İşlem hattı düzenleme
Sonraki adımlar
- Verileri Azure Data Factory veya Azure Synapse Pipeline ile tümleştirme
- Azure Synapse Analytics'e giriş
- Azure Data Factory veya Azure Synapse Pipeline'da veri taşıma ve dönüştürmeyi düzenleme
İlgili kaynaklar
Aşağıdaki başvuru mimarileri Azure'da uçtan uca ELT işlem hatlarını gösterir: