Big Data Testing
A Big Data Testing egy nagy adatalkalmazás tesztelési folyamata annak biztosítása érdekében, hogy a big data alkalmazás minden funkciója a várt módon működjön. A big data tesztelés célja annak biztosítása, hogy a big data rendszer zökkenőmentesen és hibamentesen működjön, a teljesítmény és a biztonság fenntartása mellett.
A nagy adatok olyan nagy adatkészletek gyűjteménye, amelyeket nem lehet hagyományos számítási technikákkal feldolgozni. Ezen adatkészletek tesztelése különféle eszközöket, technikákat és feldolgozási kereteket tartalmaz. A nagy adatok az adatok létrehozására, tárolására, visszakeresésére és elemzésére vonatkoznak, amelyek figyelemre méltóak a mennyiség, a változatosság és a sebesség szempontjából. Itt többet megtudhat a Big Data, a Hadoop és a MapReduce szolgáltatásról
Ebben a Big Data Testing oktatóanyagban megtanulja-
- Mi a Big Data Testing stratégia?
- Hogyan teszteljük a Hadoop alkalmazásokat
- Építészeti tesztelés
- Teljesítményfelmérés
- Teljesítménytesztelési megközelítés
- Paraméterek a teljesítmény teszteléséhez
- Vizsgálati környezeti igények
- Nagy adatok tesztelése Vs. Hagyományos adatbázis-tesztelés
- A Big Data forgatókönyvekben használt eszközök
- Kihívások a nagy adatok tesztelésében
Mi a Big Data Testing stratégia?
A Big Data alkalmazás tesztelése inkább az adatfeldolgozás ellenőrzése, mintsem a szoftvertermék egyedi jellemzőinek tesztelése. Ami a nagy adat tesztelést illeti, a teljesítmény és a funkcionális teszt a kulcs.
A Big Data tesztelési stratégiában a minőségbiztosítási mérnökök áruklaszter és más támogató összetevők segítségével ellenőrzik a terabájtos adatok sikeres feldolgozását. Magas szintű tesztkészséget igényel, mivel a feldolgozás nagyon gyors. A feldolgozás háromféle lehet
Ezzel együtt az adatminőség is fontos tényező a Hadoop-tesztelésnél. Az alkalmazás tesztelése előtt ellenőrizni kell az adatok minőségét, és az adatbázis-tesztelés részének kell tekinteni. Ez magában foglalja a különféle jellemzők, például a megfelelőség, a pontosság, a duplikáció, a konzisztencia, az érvényesség, az adatok teljessége stb. Ellenőrzését. Ezután a Hadoop Testing oktatóanyagban megtanuljuk, hogyan kell tesztelni a Hadoop alkalmazásokat.
Hogyan teszteljük a Hadoop alkalmazásokat
Az alábbi ábra magas szintű áttekintést nyújt a Big Data Applications tesztelésének fázisairól
A Big Data Testing vagy a Hadoop Testing nagyjából három lépésre osztható
1. lépés: Az adatok fokozatos ellenőrzése
A nagyadat-tesztelési útmutató első lépését Hadoop előtti szakasznak nevezzük, amely magában foglalja a folyamat érvényesítését.
- A különféle forrásokból származó adatokat, például az RDBMS-t, a blogokat, a közösségi médiát stb. Érvényesíteni kell annak biztosítása érdekében, hogy a helyes adatokat behúzzák a rendszerbe
- Összehasonlítva a forrásadatokat a Hadoop rendszerbe tolott adatokkal, hogy megbizonyosodjanak arról, hogy egyeznek
- Ellenőrizze, hogy a megfelelő adatokat kibontották-e és betöltötték-e a HDFS megfelelő helyre
Az olyan eszközök, mint a Talend , a Datameer, használhatók az adatok átmeneti ellenőrzéséhez
2. lépés: "MapReduce" érvényesítés
A második lépés a "MapReduce" érvényesítése. Ebben a szakaszban a Big Data tesztelő minden csomóponton ellenőrzi az üzleti logika érvényesítését, majd több csomópont ellen futás után érvényesíti őket, biztosítva, hogy a
- A Map Reduce folyamat helyesen működik
- Az adatokon összesített vagy szegregációs szabályok kerülnek bevezetésre
- Kulcsérték-párok jönnek létre
- Az adatok ellenőrzése a Map-Reduce folyamat után
3. lépés: Kimenet érvényesítési szakasz
A Hadoop-tesztelés utolsó vagy harmadik szakasza a kimenet ellenőrzési folyamata. A kimeneti adatfájlok előállításra kerülnek, és készen állnak az EDW (Enterprise Data Warehouse) vagy bármely más rendszerre történő áthelyezésre a követelmény alapján.
A harmadik szakasz tevékenységei a következők:
- A transzformációs szabályok helyes alkalmazásának ellenőrzéséhez
- Az adatok integritásának és a célrendszerbe történő sikeres betöltésének ellenőrzése
- Annak ellenőrzése, hogy nincs-e adatkorrupció, összehasonlítva a céladatokat a HDFS fájlrendszer adataival
Építészeti tesztelés
A Hadoop nagyon nagy mennyiségű adatot dolgoz fel, és erőforrásigényes. Ezért az építészeti tesztek kulcsfontosságúak a Big Data projekt sikerének biztosításához. A rosszul vagy nem megfelelően tervezett rendszer teljesítményromláshoz vezethet, és a rendszer nem felelhet meg a követelménynek. Legalábbis a teljesítmény és a feladatátvételi teszt szolgáltatásokat Hadoop környezetben kell elvégezni.
A teljesítményteszt magában foglalja a munka befejezésének idejét, a memória kihasználtságát, az adatátvitelt és a hasonló rendszermutatókat. Míg a feladatátvételi teszt szolgáltatásának célja annak ellenőrzése, hogy az adatfeldolgozás zökkenőmentesen történik-e az adatcsomópontok meghibásodása esetén
Teljesítményfelmérés
A Big Data teljesítménytesztje két fő műveletet tartalmaz
- Adatbevitel és az egész : Ebben a szakaszban a Big Data tesztelő ellenőrzi, hogy a gyors rendszer miként tudja felhasználni a különböző adatforrásokból származó adatokat. A tesztelés során egy másik üzenetet kell azonosítani, amelyet a sor egy adott időkeretben feldolgozhat. Azt is tartalmazza, hogy milyen gyorsan lehet adatokat beilleszteni az alapul szolgáló adattárba, például beillesztési sebességet a Mongo és a Cassandra adatbázisba.
- Adatfeldolgozás : Ez magában foglalja annak ellenőrzését, hogy a lekérdezések vagy a térkép csökkentik-e a feladatokat. Ez magában foglalja az adatfeldolgozás elkülönített tesztelését is, amikor az alapul szolgáló adattároló feltöltésre kerül az adatkészleteken belül. Például a Map Reduce jobok futtatása az alapul szolgáló HDFS-en
- Alkatrészek teljesítménye : Ezek a rendszerek több összetevőből állnak, és elengedhetetlen, hogy ezeket az összetevőket külön-külön teszteljük. Például az üzenet indexelésének és elfogyasztásának gyorsasága, a MapReduce feladatok, a lekérdezés teljesítménye, a keresés stb.
Teljesítménytesztelési megközelítés
A nagyteljesítményű adatok teljesítményének tesztelése hatalmas mennyiségű strukturált és strukturálatlan adat tesztelésével jár, és speciális tesztelési megközelítést igényel az ilyen hatalmas adatok teszteléséhez.
A teljesítménytesztelés ebben a sorrendben történik
- A folyamat a Big Data klaszter beállításával kezdődik, amelynek teljesítményét tesztelni kell
- Azonosítsa és tervezze meg a megfelelő munkaterheléseket
- Készítsen elő egyedi ügyfeleket (egyéni parancsfájlok jönnek létre)
- Hajtsa végre a tesztet és elemezze az eredményt (ha a célkitűzések nem teljesülnek, akkor hangolja be az összetevőt, és hajtsa végre újra)
- Optimális konfiguráció
Paraméterek a teljesítmény teszteléséhez
A teljesítmény teszteléséhez ellenőrizni kell a különböző paramétereket
- Adattárolás: Hogyan tároljuk az adatokat a különböző csomópontokban
- Kötelező naplók: Mekkora növekedést engednek az elkötelezett naplónak
- Egyidejűség: Hány szál hajthat végre írási és olvasási műveletet
- Gyorsítótárazás: Állítsa be a "sor gyorsítótár" és a "kulcs gyorsítótár" beállításokat.
- Időkorlátok: A kapcsolat időkorlátjának, lekérdezés időkorlátjának stb. Értékei
- JVM-paraméterek: Halomméret, GC-gyűjtési algoritmusok stb.
- A térkép csökkenti a teljesítményt: rendezés, egyesítés stb.
- Üzenetsor: Üzenetsebesség, méret stb.
Vizsgálati környezeti igények
A tesztkörnyezetnek a tesztelt alkalmazás típusától függ. A big data szoftver teszteléséhez a tesztkörnyezetnek ki kell terjednie
- Elegendő helynek kell lennie a tároláshoz és nagy mennyiségű adat feldolgozásához
- Fürtjének kell lennie elosztott csomópontokkal és adatokkal
- Minimális CPU és memória kihasználtsággal kell rendelkeznie ahhoz, hogy a teljesítmény magas legyen a Big Data teljesítmény teszteléséhez
Nagy adatok tesztelése Vs. Hagyományos adatbázis-tesztelés
Tulajdonságok |
Hagyományos adatbázis-tesztelés |
Nagy adatok tesztelése |
---|---|---|
Adat |
|
|
Megközelítés tesztelése |
|
|
Tesztelési stratégia |
|
|
Infrastruktúra |
|
|
Validációs eszközök |
A tesztelő az Excel-alapú makrókat vagy a felhasználói felületen alapuló automatizálási eszközöket használja |
Nincsenek meghatározott eszközök, a választék a programozási eszközöktől, például a MapReduce-tól a HIVEQL-ig terjed |
Tesztelő eszközök |
A Tesztelő eszközök alapvető üzemeltetési ismeretekkel és kevesebb képzettséggel használhatók. |
A tesztelő eszköz működtetéséhez speciális készségekre és képzésre van szükség. Az eszközök a kialakulóban lévő szakaszban vannak, és idővel új funkciókkal is előrukkolhat. |
A Big Data forgatókönyvekben használt eszközök
Big Data Cluster |
Big Data Tools |
---|---|
NoSQL: |
|
MapReduce: |
|
Tárolás: |
|
Szerverek: |
|
Feldolgozás |
|
Kihívások a nagy adatok tesztelésében
- Automatizálás
A Big Data automatizálásának teszteléséhez technikai szakértelemmel rendelkező személy szükséges. Az automatizált eszközök nincsenek felszerelve a tesztelés során felmerülő váratlan problémák kezelésére sem
- Virtualizáció
A tesztelés egyik szerves fázisa. A virtuális gép késleltetése időzítési problémákat okoz a valós idejű nagyadat-teljesítmény tesztelés során. A képek kezelése a Big Data-ban is gondot jelent.
- Nagy adatkészlet
- Több adatot kell ellenőriznie és gyorsabban kell tennie
- Automatizálni kell a tesztelési erőfeszítéseket
- Képesnek kell lennie tesztelni különböző platformokon
Teljesítményteszt kihívások
- Változatos technológiák : Minden alkomponens különböző technológiákhoz tartozik, és elkülönítve kell tesztelni
- Konkrét eszközök nem állnak rendelkezésre : egyetlen eszköz sem tudja elvégezni a végpontok közötti tesztelést. Például előfordulhat, hogy a NoSQL nem illik az üzenetsorokba
- Teszt szkriptek : Teszt forgatókönyvek és teszt esetek megtervezéséhez nagyfokú szkriptekre van szükség
- Tesztkörnyezet : A nagy adatméret miatt speciális tesztkörnyezetre van szüksége
- Megfigyelési megoldás : Korlátozott megoldások léteznek, amelyek figyelemmel kísérhetik az egész környezetet
- Diagnosztikai megoldás : Egyéni megoldás szükséges a teljesítmény szűk keresztmetszetének feltárásához
Összegzés
- Amint az adatkezelés és az adatelemzés egy újabb szintre lép, a nagy adatok tesztelése elkerülhetetlen.
- Nagy adatfeldolgozás lehet kötegelt, valós idejű vagy interaktív
- A Big Data alkalmazások tesztelésének 3 szakasza van
- Az adatok átmeneti ellenőrzése
- "MapReduce" érvényesítés
- Kimenet érvényesítési szakasz
- Az architektúra tesztelése a big data tesztelés fontos fázisa, mivel a rosszul megtervezett rendszer soha nem látott hibákhoz és a teljesítmény romlásához vezethet
- A Big Data teljesítménytesztje magában foglalja az igazolást is
- Adattovábbítás
- Adatfeldolgozás
- Alkatrész teljesítmény
- A nagyadat-tesztelés az adatok, az infrastruktúra és az érvényesítési eszközök tekintetében nagyon eltér a hagyományos adat-tesztektől
- A Big Data Testing kihívásai közé tartozik a virtualizáció, a teszt automatizálása és a nagy adatkészlet kezelése. A Big Data alkalmazások teljesítményvizsgálata szintén kérdés.