Zephyrnet Logosu

Veri İşlem Hatlarını Test Etme ve İzleme: Birinci Bölüm – DATAVERSITY

Tarih:

Bulut depolamadan veya veri ambarına veri akışından büyük bir veri ardışık düzenleri kümesinin bakımından sorumlu olduğunuzu varsayalım. Her dönüşümden sonra verilerinizin beklentileri karşılamasını nasıl sağlayabilirsiniz? Veri kalitesi testinin devreye girdiği yer burasıdır. Veri testi, verilerin belirli gereksinimlere uyup uymadığını kontrol etmek için bir dizi kural kullanır.

Veri testleri, bir veri hattı, alım noktasından varış noktasına kadar, ancak bazı takaslar söz konusudur.

Öte yandan, bir alt kümesi olan veri izleme var. veri gözlemlenebilirliği. Bir veri izleme çözümü, verilerin gereksinimlerinizi karşılayıp karşılamadığını değerlendirmek için belirli kurallar yazmak yerine, sorunlar hakkında sizi uyarmak için işlem hattınız boyunca önceden tanımlanmış veri ölçümlerini kabul edilebilir eşiklere karşı sürekli olarak kontrol eder. Bu ölçümler, sorunları erkenden hem manuel hem de algoritmik olarak tespit etmek için, bu sorunları açıkça test etmeden kullanılabilir.

Hem veri testi hem de veri izleme, veri güvenilirliği mühendisliği alt alanının ayrılmaz bir parçası olsa da, açıkça farklıdırlar. 

Bu makale, aralarındaki farkları detaylandırıyor ve testleri ve izlemeleri nasıl ve nerede uygulamanız gerektiğini daha derinlemesine inceliyor. Makalenin birinci bölümünde veri testini ayrıntılı olarak ele alacağız ve makalenin ikinci bölümünde veri izleme en iyi uygulamalarına odaklanacağız. 

Test Etme ve İzleme Veri Ardışık Düzenleri

Veri testi, bir değer, sütun veya tablo gibi tek bir nesneyi bir dizi iş kuralıyla karşılaştırarak değerlendirme uygulamasıdır. Bu uygulama, verileri veri kalitesi gereksinimlerine göre doğruladığından buna veri kalitesi testi veya işlevsel veri testi de denir. Veri kalitesinin birçok boyutu vardır, ancak örneğin kendi kendini açıklayan bir veri testi, bir tarih alanının doğru biçimde olup olmadığını değerlendirir.

Bu anlamda, veri testleri kasten, kasıtlı, planlı tek, belirli bir hedefle uygulandıklarından. Buna karşılık, veri izleme belirsiz. Metrikleri zaman içinde günlüğe kaydederek neyin normal olduğuna dair bir temel oluşturabilirsiniz. Yalnızca değerler saptığında harekete geçmeli ve isteğe bağlı olarak verilerin kaymasını en baştan önleyen bir test geliştirip uygulayarak takip etmelisiniz.

Veri testi aynı zamanda özel, tek bir test olarak veri boru hattındaki belirli bir noktada bir veri nesnesini doğrular. Öte yandan, izleme yalnızca bir tablo çizdiğinde değerli hale gelir. bütünsel boru hatlarınızın resmi. Veri mühendisleri, zaman içinde bir veri boru hattındaki birden çok bileşendeki çeşitli ölçümleri izleyerek, tüm veri ekosistemiyle ilişkili anormallikleri yorumlayabilir.

Veri Testini Uygulama

Bu bölümde, bir veri testinin uygulanması ayrıntılı olarak açıklanmaktadır. Birini seçerken dikkate alınması gereken birkaç yaklaşım ve bazı şeyler vardır.

Veri Test Yaklaşımları

Veri testi için aşağıda özetlenen üç yaklaşım vardır.

Bir ardışık düzen çalıştırıldıktan sonra verilerin doğrulanması, veri kalitesi sorunlarını tespit etmek için uygun maliyetli bir çözümdür. Bu yaklaşımda, testler bir veri hattının ara aşamalarında çalışmaz; bir test yalnızca tamamen işlenmiş verilerin yerleşik iş kurallarına uyup uymadığını kontrol eder.

İkinci yaklaşım, son yük de dahil olmak üzere veri kaynağından hedefe giden verileri doğrulamaktır. Bu, zaman alan bir veri testi yöntemidir. Ancak bu yaklaşım, tüm veri kalitesi sorunlarını temel nedenine kadar izler.

Üçüncü yöntem, önceki ikisinin bir sentezidir. Bu yaklaşımda hem ham hem de üretim verileri tek bir veri ambarında bulunur. Sonuç olarak, veriler de aynı teknolojide dönüştürülür. olarak bilinen bu yeni paradigma, ELT, kuruluşların testleri doğrudan veri modelleme çabalarına dahil etmesine yol açtı.

Veri Testi Konuları

Bir yaklaşım seçerken göz önünde bulundurmanız gereken takaslar vardır.

Düşük Ön Maliyet, Yüksek Bakım Maliyeti

En düşük ön maliyete sahip çözüme gitmek, testleri yalnızca veri hedefinde çalıştırmak, can sıkıcıdan tamamen felakete kadar değişen bir dizi dezavantaja sahiptir.

İlk olarak, veri kalitesi sorunlarını erkenden tespit etmek imkansızdır, bu nedenle bir dönüşümün çıktısı bir sonraki adımın girdi ölçütleriyle eşleşmediğinde veri ardışık düzenleri bozulabilir. Bir Unix zaman damgasını tarihe çeviren bir dönüşüm adımı örneğini ele alalım, sonraki adım notasyonu gg/MM/yyyy'den yyyy-MM-dd'ye değiştirsin. İlk adım hatalı bir şey üretirse, ikinci adım başarısız olur ve büyük olasılıkla bir hata atar.

Veri ardışık düzenleri aşağı yukarı bir kara kutu olduğundan, bir veri hatasının temel nedenini işaretleyecek hiçbir testin olmadığını da dikkate almakta fayda var. Sonuç olarak, bir şey bozulduğunda veya beklenmedik sonuçlar ürettiğinde hata ayıklama zordur.

Dikkate alınması gereken başka bir nokta da, hedefte test verilerinin performans sorunlarına neden olabileceğidir. Veri testleri, bir veri ambarındaki veya göl evindeki verileri doğrulamak için tek tek tabloları sorgularken, samanlıkta iğne bulmak için bu sistemleri gereksiz iş yükleriyle aşırı yükleyebilir. Bu sadece veri ambarının performansını ve hızını düşürmekle kalmaz, aynı zamanda kullanım maliyetlerini de artırabilir. 

Gördüğünüz gibi, veri testlerinin ve olası durumların bir işlem hattı boyunca uygulanmamasının sonuçları, bir veri ekibini çeşitli hoş olmayan şekillerde etkileyebilir.

Eski Yığınlar, Yüksek Karmaşıklık

Tipik olarak, eski veri ambarı teknolojisi (yaygın ancak modası geçmiş OLAP küpü) düzgün ölçeklenmiyor. Bu nedenle birçok kuruluş, içine yalnızca birleştirilmiş verileri yüklemeyi seçer; bu, verilerin birçok araçta saklandığı ve işlendiği anlamına gelir. Bu mimaride çözüm, boru hattı boyunca testleri genellikle çeşitli teknolojileri ve paydaşları kapsayan birden çok adımda ayarlamaktır. Bu da zaman alıcı ve maliyetli bir operasyona neden olur.

Öte yandan, BigQuery, Snowflake veya Redshift gibi modern bir bulut tabanlı veri ambarı veya Delta Lake gibi bir veri göl evi kullanmak işleri çok daha kolaylaştırabilir. Bu teknolojiler, yalnızca depolama ve bilgi işlem gücünü bağımsız olarak ölçeklendirmekle kalmaz, aynı zamanda yarı yapılandırılmış verileri de işler. Sonuç olarak, kuruluşlar günlüklerini, veritabanı dökümlerini ve SaaS araç özetlerini oturdukları ve işlenmeyi, temizlenmeyi ve ve veri ambarı içinde test edilmiştir. 

Bu ELT yaklaşımı daha fazla fayda sağlar. Her şeyden önce, veri testleri tek bir araçla yapılandırılabilir. İkincisi, veri testlerini işlenen koda yerleştirme veya düzenleme aracında yapılandırma özgürlüğü sağlar. Son olarak, veri testlerinin bu yüksek derecede merkezileştirilmesi nedeniyle, bildirimsel bir şekilde kurulabilirler. Yukarı akış değişiklikleri meydana geldiğinde, yeni testleri uygulamak için doğru yeri bulmak için kod yığınlarını gözden geçirmeniz gerekmez. Aksine, bir yapılandırma dosyasına bir satır ekleyerek yapılır.

Veri Test Araçları

Veri testlerini ayarlamanın birçok yolu vardır. Bir homebrew çözümü kurmak olacaktır istisna işleme veya belirli özellikler için verileri kontrol eden iddialar. Ancak, bu standartlaştırılmış veya esnek değildir.

Bu nedenle birçok tedarikçi dbt, Great Expectations, Soda ve Deequ gibi ölçeklenebilir çözümler geliştirdi. Kısa bir bakış:

  • Modern bir veri yığınını yönetirken, büyük ihtimalle dbt. Ticari açık kaynak olarak sunulan bu topluluk sevgilim, yerleşik bir test modülüne sahiptir.
  • Python'da testleri uygulamak için popüler bir araç Büyük beklentiler. Kullanıma hazır veya özel testleri uygulamak için dört farklı yol sunar. Dbt gibi, açık kaynaklı ve ticari bir teklifi var.
  • SodaBaşka bir ticari açık kaynak aracı olan Great Expectations'ın özellikleriyle uyumlu test etme yetenekleriyle birlikte gelir. Aradaki fark, Soda'nın veri izlemeyi de kapsayan daha geniş bir veri güvenilirliği mühendisliği çözümü olmasıdır.
  • Spark ile çalışırken, tüm verileriniz bir Kıvılcım Veri Çerçevesi bir noktada. 
  • Deequ Testleri ve ölçümleri Spark DataFrames üzerinde uygulamanın basit bir yolunu sunar. En iyi yanı, bir test yeniden çalıştırıldığında tüm veri kümesini işlemek zorunda olmamasıdır. Önceki sonuçları önbelleğe alır ve değiştirir.

Veri izleme en iyi uygulamalarını vurgulayacak olan ikinci bölüm için bizi izlemeye devam edin.

spot_img

En Son İstihbarat

spot_img

Bizimle sohbet

Merhaba! Size nasıl yardım edebilirim?