Büyük Veri Testi Eğitimi: Nedir, Strateji, Hadoop Nasıl Test Edilir

İçindekiler:

Anonim

Büyük Veri Testi

Büyük Veri Testi , bir büyük veri uygulamasının tüm işlevlerinin beklendiği gibi çalışmasını sağlamak için bir büyük veri uygulamasının test sürecidir. Büyük veri testinin amacı, performansı ve güvenliği korurken büyük veri sisteminin sorunsuz ve hatasız çalışmasını sağlamaktır.

Büyük veri, geleneksel hesaplama teknikleri kullanılarak işlenemeyen büyük veri kümelerinin bir koleksiyonudur. Bu veri kümelerinin test edilmesi, işlenecek çeşitli araçlar, teknikler ve çerçeveler içerir. Büyük veri, hacim, çeşitlilik ve hız açısından dikkat çekici olan veri oluşturma, depolama, erişim ve analiz ile ilgilidir. Burada Büyük Veri, Hadoop ve MapReduce hakkında daha fazla bilgi edinebilirsiniz.

Bu Büyük Veri Testi eğitiminde, şunları öğreneceksiniz:

  • Büyük Veri Test Stratejisi nedir?
  • Hadoop Uygulamaları nasıl test edilir
  • Mimari Test
  • Performans testi
  • Performans Testi Yaklaşımı
  • Performans Testi için Parametreler
  • Test Ortamı İhtiyaçları
  • Büyük Veri Testi Vs. Geleneksel veritabanı testi
  • Büyük Veri Senaryolarında kullanılan araçlar
  • Büyük Veri Testindeki Zorluklar

Büyük Veri Test Stratejisi nedir?

Büyük Veri uygulamasının test edilmesi, yazılım ürününün bireysel özelliklerini test etmekten ziyade veri işlemenin daha fazla doğrulanmasıdır. Büyük veri testi söz konusu olduğunda, performans ve işlevsel test anahtarlardır.

Büyük Veri test stratejisinde, QA mühendisleri, emtia kümesi ve diğer destekleyici bileşenleri kullanarak terabaytlarca verinin başarılı bir şekilde işlendiğini doğrular. İşlem çok hızlı olduğu için yüksek düzeyde test becerileri gerektirir. İşleme üç tür olabilir

Bununla birlikte, veri kalitesi de Hadoop testinde önemli bir faktördür. Uygulamayı test etmeden önce, verilerin kalitesini kontrol etmek ve veritabanı testinin bir parçası olarak düşünülmelidir. Uygunluk, doğruluk, çoğaltma, tutarlılık, geçerlilik, veri tamlığı vb. Gibi çeşitli özelliklerin kontrol edilmesini içerir . Bu Hadoop Testi eğitiminde bir sonraki adımda, Hadoop uygulamalarını nasıl test edeceğimizi öğreneceğiz.

Hadoop Uygulamaları nasıl test edilir

Aşağıdaki şekil, Büyük Veri Uygulamalarının Test Edilmesindeki aşamalara üst düzey bir genel bakış sunar.

Büyük Veri Testi veya Hadoop Testi genel olarak üç adıma ayrılabilir

Adım 1: Veri Aşamalandırma Doğrulaması

Bu büyük veri testi eğitimindeki ilk adım, Hadoop öncesi aşama olarak adlandırılır ve süreç doğrulamayı içerir.

  • Doğru verilerin sisteme çekildiğinden emin olmak için RDBMS, web günlükleri, sosyal medya vb. Gibi çeşitli kaynaklardan gelen veriler doğrulanmalıdır.
  • Eşleştiklerinden emin olmak için kaynak verileri Hadoop sistemine aktarılan verilerle karşılaştırma
  • Doğru verilerin çıkarıldığını ve doğru HDFS konumuna yüklendiğini doğrulayın

Talend , Datameer gibi araçlar veri aşamalandırma doğrulaması için kullanılabilir

2. Adım: "MapReduce" Doğrulaması

İkinci adım, "MapReduce" doğrulamasıdır. Bu aşamada, Büyük Veri test cihazı her düğümde iş mantığı doğrulamasını doğrular ve ardından birden çok düğümde çalıştırdıktan sonra bunları doğrular ve

  • Harita Azaltma işlemi doğru çalışıyor
  • Veri toplama veya ayırma kuralları verilere uygulanır
  • Anahtar değer çiftleri oluşturulur
  • Map-Reduce işleminden sonra verilerin doğrulanması

Adım 3: Çıkış Doğrulama Aşaması

Hadoop testinin son veya üçüncü aşaması çıktı doğrulama sürecidir. Çıktı veri dosyaları oluşturulur ve ihtiyaca göre bir EDW'ye (Kurumsal Veri Ambarı) veya başka herhangi bir sisteme taşınmaya hazırdır.

Üçüncü aşamadaki faaliyetler şunları içerir:

  • Dönüşüm kurallarının doğru uygulandığını kontrol etmek için
  • Veri bütünlüğünü ve hedef sisteme başarılı veri yüklemesini kontrol etmek için
  • Hedef verileri HDFS dosya sistemi verileriyle karşılaştırarak veri bozulması olmadığını kontrol etmek için

Mimari Test

Hadoop, çok büyük hacimli verileri işler ve yoğun kaynak gerektirir. Bu nedenle, Büyük Veri projenizin başarısını sağlamak için mimari testler çok önemlidir. Kötü veya yanlış tasarlanmış bir sistem performans düşüşüne neden olabilir ve sistem gereksinimi karşılayamayabilir. En azından Performans ve Yük Devretme test hizmetleri bir Hadoop ortamında yapılmalıdır.

Performans testi, iş tamamlama süresi, bellek kullanımı, veri çıkışı ve benzer sistem ölçümlerinin test edilmesini içerir. Yük devretme test hizmetinin amacı, veri düğümlerinin arızalanması durumunda veri işlemenin sorunsuz bir şekilde gerçekleştiğini doğrulamaktır.

Performans testi

Büyük Veri için Performans Testi iki ana eylem içerir

  • Veri alımı ve Baştan sona: Bu aşamada, Büyük Veri testi yapan kişi, hızlı sistemin çeşitli veri kaynaklarından gelen verileri nasıl tüketebileceğini doğrular. Test, kuyruğun belirli bir zaman diliminde işleyebileceği farklı bir mesajı tanımlamayı içerir. Ayrıca, verilerin temel veri deposuna ne kadar hızlı eklenebileceğini, örneğin bir Mongo ve Cassandra veritabanına ekleme oranını da içerir.
  • Veri İşleme : Sorguların veya harita azaltma işlerinin gerçekleştirilme hızının doğrulanmasını içerir. Ayrıca, temel veri deposu veri kümeleri içinde doldurulduğunda veri işlemenin ayrı ayrı test edilmesini de içerir. Örneğin, temel HDFS'de Map Reduce işlerini çalıştırma
  • Alt Bileşen Performansı : Bu sistemler birden çok bileşenden oluşur ve bu bileşenlerin her birinin ayrı ayrı test edilmesi önemlidir. Örneğin, mesajın ne kadar hızlı indekslendiği ve tüketildiği, MapReduce işleri, sorgu performansı, arama vb.

Performans Testi Yaklaşımı

Büyük veri uygulaması için performans testi, büyük hacimli yapılandırılmış ve yapılandırılmamış verilerin test edilmesini içerir ve bu kadar büyük verileri test etmek için özel bir test yaklaşımı gerektirir.

Performans Testi bu sırayla yürütülür

  1. Süreç, performans için test edilecek Büyük veri kümesinin ayarlanmasıyla başlar.
  2. İlgili iş yüklerini tanımlayın ve tasarlayın
  3. Bireysel istemcileri hazırlayın (Özel Komut Dosyaları oluşturulur)
  4. Testi yürütün ve sonucu analiz edin (Hedefler karşılanmazsa, bileşeni ayarlayın ve tekrar çalıştırın)
  5. Optimum Yapılandırma

Performans Testi için Parametreler

Performans testi için doğrulanacak çeşitli parametreler şunlardır:

  • Veri Depolama: Veriler farklı düğümlerde nasıl depolanır?
  • Kaydetme günlükleri: Kaydetme günlüğünün büyümesine izin verilen büyüklük
  • Eşzamanlılık: Yazma ve okuma işlemini kaç iş parçacığı gerçekleştirebilir?
  • Önbelleğe alma: Önbellek ayarı "satır önbelleği" ve "anahtar önbelleği" ni ayarlayın.
  • Zaman aşımları: Bağlantı zaman aşımı, sorgu zaman aşımı vb. İçin değerler.
  • JVM Parametreleri: Yığın boyutu, GC toplama algoritmaları vb.
  • Harita performansı düşürür: Sıralar, birleştirme vb.
  • Mesaj kuyruğu: Mesaj hızı, boyutu vb.

Test Ortamı İhtiyaçları

Test Ortamı, test ettiğiniz uygulamanın türüne bağlı olmalıdır. Büyük veri yazılım testi için, test ortamı aşağıdakileri kapsamalıdır:

  • Büyük miktarda veriyi depolamak ve işlemek için yeterli alana sahip olmalıdır
  • Dağıtılmış düğümlere ve verilere sahip bir kümeye sahip olmalıdır
  • Büyük Veri performansını test etmek için performansı yüksek tutmak için minimum CPU ve bellek kullanımına sahip olmalıdır

Büyük Veri Testi Vs. Geleneksel veritabanı testi

Özellikleri

Geleneksel veritabanı testi

Büyük veri testi

Veri

  • Test cihazı yapılandırılmış verilerle çalışır
  • Test cihazı hem yapılandırılmış hem de yapılandırılmamış verilerle çalışır

Test Yaklaşımı

  • Test yaklaşımı iyi tanımlanmıştır ve zaman içinde test edilmiştir
  • Test yaklaşımı odaklanmış Ar-Ge çabaları gerektirir

Test Stratejisi

  • Test Kullanıcısı, manuel olarak gerçekleştirilen "Örnekleme" stratejisi veya otomasyon aracıyla "Kapsamlı Doğrulama" stratejisi seçeneğine sahiptir.
  • Büyük veride "Örnekleme" stratejisi zorlu bir iştir

Altyapı

  • Dosya boyutu sınırlı olduğundan özel bir test ortamı gerektirmez
  • Büyük veri boyutu ve dosyalar (HDFS) nedeniyle özel bir test ortamı gerektirir

Doğrulama Araçları

Test cihazı, Excel tabanlı makroları veya UI tabanlı otomasyon araçlarını kullanır

Tanımlanmış araçlar yok, ürün yelpazesi MapReduce gibi programlama araçlarından HIVEQL'e kadar geniş

Test Araçları

Test Araçları, temel işletim bilgisi ve daha az eğitim ile kullanılabilir.

Bir test aracını kullanmak için belirli bir dizi beceri ve eğitim gerekir. Ayrıca araçlar henüz başlangıç ​​aşamasındadır ve zamanla yeni özellikler ortaya çıkarabilir.

Büyük Veri Senaryolarında kullanılan araçlar

Büyük Veri Kümesi

Büyük Veri Araçları

NoSQL:

  • CouchDB, Veritabanları MongoDB, Cassandra, Redis, ZooKeeper, HBase

Harita indirgeme:

  • Hadoop, Kovan, Domuz, Basamaklı, Oozie, Kafka, S4, MapR, Flume

Depolama:

  • S3, HDFS (Hadoop Dağıtılmış Dosya Sistemi)

Sunucular:

  • Elastic, Heroku, Elastic, Google App Engine, EC2

İşleme

  • R, Yahoo! Borular, Mechanical Turk, BigSheets, Datameer

Büyük Veri Testindeki Zorluklar

  • Otomasyon

    Büyük veri için otomasyon testi, teknik uzmanlığa sahip birini gerektirir. Ayrıca, otomatik araçlar, test sırasında ortaya çıkan beklenmedik sorunları ele alacak donanıma sahip değildir.

  • Sanallaştırma

    Testin ayrılmaz aşamalarından biridir. Sanal makine gecikmesi, gerçek zamanlı büyük veri performansı testinde zamanlama sorunları yaratır. Ayrıca Büyük verideki görüntüleri yönetmek de bir güçlüktür.

  • Büyük Veri Kümesi
    • Daha fazla veriyi doğrulamanız gerekiyor ve bunu daha hızlı yapmanız gerekiyor
    • Test çabasını otomatikleştirmeniz gerekiyor
    • Farklı platformlarda test edebilmeniz gerekiyor

Performans testi zorlukları

  • Çeşitli teknolojiler : Her bir alt bileşen farklı teknolojiye aittir ve ayrı ayrı test edilmesi gerekir
  • Belirli araçların bulunmaması : Uçtan uca testi tek bir araç gerçekleştiremez. Örneğin, NoSQL mesaj kuyrukları için uygun olmayabilir.
  • Test Komut Dosyası Oluşturma : Test senaryoları ve test senaryoları tasarlamak için yüksek düzeyde komut dosyası gerekir
  • Test ortamı : Büyük veri boyutu nedeniyle özel bir test ortamına ihtiyaç duyar
  • İzleme Çözümü : Tüm ortamı izleyebilen sınırlı çözümler mevcuttur
  • Teşhis Çözümü : Performans darboğazı alanlarını ayrıntılı olarak incelemek için özel bir çözüm geliştirilmelidir

Özet

  • Veri mühendisliği ve veri analitiği bir sonraki seviyeye ilerlerken, Büyük veri testi kaçınılmazdır.
  • Büyük veri işleme Toplu, Gerçek Zamanlı veya Etkileşimli olabilir
  • Büyük Veriyi Test Etme uygulamalarının 3 aşaması şunlardır:
    • Veri aşamalandırma doğrulaması
    • "MapReduce" doğrulaması
    • Çıkış doğrulama aşaması
  • Mimari Test, Büyük veri testinin önemli aşamasıdır çünkü kötü tasarlanmış bir sistem, benzeri görülmemiş hatalara ve performans düşüşüne neden olabilir.
  • Büyük veri için performans testi, doğrulamayı içerir
    • Veri çıkışı
    • Veri işleme
    • Alt bileşen performansı
  • Büyük veri testi, Veri, Altyapı ve Doğrulama Araçları açısından Geleneksel veri testinden çok farklıdır.
  • Büyük Veri Testi zorlukları arasında sanallaştırma, test otomasyonu ve büyük veri kümeleriyle ilgilenme yer alır. Büyük Veri uygulamalarının performans testi de bir sorundur.