Büyük Veri Testi Eğitimi: Nedir, Strateji, Hadoop nasıl test edilir

Büyük Veri Testi

Büyük Veri Testi büyük veri uygulamasının tüm işlevlerinin beklendiği gibi çalıştığından emin olmak için 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ıştığından emin olmaktır.

Büyük veri, geleneksel hesaplama teknikleri kullanılarak işlenemeyen büyük veri kümelerinin toplamıdır. Test yapmak Bu veri kümelerinin her biri, işlenecek çeşitli araçları, teknikleri ve çerçeveleri 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 analizle ilgilidir. Büyük Veri, Hadoop ve MapReduce hakkında daha fazla bilgi edinebilirsiniz okuyun

Büyük Veri Test Stratejisi Nedir?

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

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

Büyük Veri Test Stratejisi

Bununla birlikte veri kalitesi de Hadoop testinde önemli bir faktördür. Uygulamayı test etmeden önce verilerin kalitesinin kontrol edilmesi gerekir ve veritabanı testinin bir parçası olarak değerlendirilmelidir. Uygunluk, doğruluk, çoğaltma, tutarlılık, geçerlilik, veri tamlığı gibi çeşitli özelliklerin kontrol edilmesini içerir. Bu Hadoop Testi öğreticisinin bir sonraki bölümünde, Hadoop uygulamalarının nasıl test edileceğini öğreneceğiz.

Hadoop Uygulamaları nasıl test edilir

Aşağıdaki şekil, Büyük Veri Uygulamalarını Test Etme aşamalarına ilişkin üst düzey bir genel bakış sunmaktadır

Hadoop Uygulamalarını Test Edin

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

1. Adım: Veri Hazırlama Doğrulaması

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

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

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

Adım 2: “MapReduce” Doğrulaması

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

  • Harita Azaltma işlemi düzgün çalışıyor
  • Veri toplama veya ayırma kuralları veriler üzerinde uygulanır
  • Anahtar değer çiftleri oluşturuldu
  • Harita-Küçültme işlemi sonrasında verilerin doğrulanması

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

Hadoop testinin son veya üçüncü aşaması çıktı doğrulama sürecidir. Çıktı veri dosyaları oluşturulur ve gereksinime 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 şekilde uygulandığını kontrol etmek
  • Hedef sisteme veri bütünlüğünü ve 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

Archidoku Testi

Hadoop çok büyük miktarda veri işler ve oldukça kaynak yoğundur. Bu nedenle, mimari testler Büyük Veri projenizin başarısını garantilemek için çok önemlidir. Kötü veya uygunsuz tasarlanmış bir sistem performans düşüşüne yol açabilir ve sistem gereksinimi karşılayamayabilir. En azından, Performans ve Yük Devretme testi hizmetler Hadoop ortamında yapılmalıdır.

Performans testi işin tamamlanma süresinin, bellek kullanımının, veri akışının ve benzer sistem ölçümlerinin test edilmesini içerir. Yük devretme testi 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 eylemi içerir

  • Veri alımı ve Boyunca: Bu aşamada Büyük Veri test cihazı, hızlı sistemin çeşitli veri kaynaklarından verileri nasıl tüketebildiğini doğrular. Test etme, kuyruğun belirli bir zaman diliminde işleyebileceği farklı bir mesajın tanımlanmasını içerir. Ayrıca, verilerin temel veri deposuna ne kadar hızlı eklenebileceğini de içerir; örneğin bir Mongo'ya ekleme hızı ve Cassandra veritabanı.
  • Veri işleme: Sorguların veya harita azaltma işlerinin yürütülme hızının doğrulanmasını içerir. Ayrıca, temeldeki veri deposu veri kümeleri içine yerleştirildiğinde veri işlemenin ayrı ayrı test edilmesini de içerir. Örneğin, temeldeki Harita Azaltma işlerini çalıştırmak HDFS
  • Alt Bileşen Performansı: Bu sistemler birden fazla 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ına yönelik 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ı gerekir.

    Performans Testi Yaklaşımı

    Performans Testi bu sırayla gerçekleştirilir

    1. Süreç, performans açısından 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 (Hedeflere ulaşılmazsa bileşeni ayarlayın ve yeniden çalıştırın)
    5. Optimum Yapılandırma

    Performans Testine İlişkin Parametreler

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

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

    Test Ortamı İhtiyaçları

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

    • Büyük miktarda veriyi depolamak ve işlemek için yeterli alana sahip olmalıdır.
    • Dağıtılmış düğümler ve verilerden oluşan 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

    Emlaklar Geleneksel veritabanı testi Büyük veri testi
    Veri Test uzmanı 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ış ve zamanla test edilmiş Test yaklaşımı odaklanmış Ar-Ge çalışmaları gerektirir
    Test Stratejisi Test cihazı, manuel olarak "Ö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 kullanıcı arayüzü tabanlı otomasyon araçları Tanımlanmış bir araç yok; ürün yelpazesi MapReduce gibi programlama araçlarından HIVEQL'e kadar çok geniştir
    Test Araçları Test Araçları, temel işletim bilgisi ve daha az eğitimle kullanılabilir. Bir test aracını çalıştırmak 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 çıkabilir.

    Büyük Veri Senaryolarında Kullanılan Araçlar

    büyük Veri Cluster Büyük Veri Araçları
    NoSQL: CouchDB, Veritabanları MongoDB, Cassandra, Redis, ZooKeeper, HBase
    Harita indirgeme: Hadoop, Hive, Pig, Basamaklı, Oozie, Kafka, S4, MapR, Flume
    Depolama: S3, HDFS (Hadoop Dağıtılmış Dosya Sistemi)
    Sunucular: Elastik, Heroku, Elastik, Google App Engine, EC2
    İşlemde R, Yahoo! Borular, Mekanik Türk, BigSheets, Datameer

    Büyük Veri Testindeki Zorluklar

    • Otomasyon

      Otomasyon testi Büyük veri için teknik uzmanlığa sahip biri gerekir. Ayrıca otomatik araçlar, test sırasında ortaya çıkan beklenmeyen sorunları çözecek 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 ve bunu daha hızlı yapmanız gerekiyor
      • Test çabasını otomatikleştirmemiz gerekiyor
      • Farklı platformlarda test edebilmeniz gerekiyor

    Performans testi zorlukları

    • Çeşitli teknolojiler: Her alt bileşen farklı teknolojiye aittir ve ayrı ayrı test edilmesi gerekir
    • Belirli araçların kullanılamaması: Uçtan uca testi tek başına hiçbir araç gerçekleştiremez. Örneğin, NoSQL mesaj kuyruklarına uygun olmayabilir
    • Test Komut Dosyası Oluşturma: Test senaryolarını ve test senaryolarını tasarlamak için yüksek düzeyde komut dosyası oluşturma gerekir
    • Test ortamı: Veri boyutunun büyük olması nedeniyle özel bir test ortamına ihtiyaç duyar.
    • İzleme Çözümü: Tüm ortamı izleyebilen sınırlı sayıda çözüm mevcuttur
    • Teşhis Çözümü: Performans darboğazı alanlarını derinlemesine incelemek için özel bir çözümün geliştirilmesi gerekiyor

    ÖZET

    • Veri mühendisliği ve veri analitiği bir sonraki seviyeye ilerledikçe 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 Veri uygulamalarının Test edilmesinin 3 aşaması; Veri aşamalandırma doğrulaması, “MapReduce” doğrulaması ve Çıkış doğrulama aşamasıdır
    • ArchiTecture testi, büyük veri testinin önemli bir aşamasıdır, çünkü kötü tasarlanmış bir sistem benzeri görülmemiş hatalara ve performansın düşmesine neden olabilir.
    • Büyük veriler için performans testi, Veri veriminin, Veri işlemenin ve Alt bileşen performansının doğrulanmasını içerir
    • 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 Testinin zorlukları arasında sanallaştırma, test otomasyonu ve büyük veri kümeleriyle uğraşma yer alır. Büyük Veri uygulamalarının performans testi de bir konudur.

    Bu yazıyı şu şekilde özetleyin: