Preizkušanje velikih podatkov
Preizkušanje velikih podatkov je postopek testiranja aplikacije za velike podatke, da se zagotovi, da vse funkcije aplikacije za velike podatke delujejo po pričakovanjih. Cilj testiranja velikih podatkov je zagotoviti, da sistem za velike podatke deluje nemoteno in brez napak, hkrati pa ohranja zmogljivost in varnost.
Veliki podatki so zbirka velikih naborov podatkov, ki jih ni mogoče obdelati s tradicionalnimi računalniškimi tehnikami. Testiranje teh naborov podatkov vključuje različna orodja, tehnike in okvire za obdelavo. Veliki podatki se nanašajo na ustvarjanje, shranjevanje, pridobivanje in analizo podatkov, ki so izjemni v smislu obsega, raznolikosti in hitrosti. Več o Big Data, Hadoop in MapReduce lahko izveste tukaj
V tej vadnici za testiranje velikih podatkov boste izvedeli-
- Kaj je strategija testiranja velikih podatkov?
- Kako preizkusiti Hadoop aplikacije
- Testiranje arhitekture
- Testiranje učinkovitosti
- Pristop testiranja učinkovitosti
- Parametri za preizkušanje zmogljivosti
- Potrebe preskusnega okolja
- Preizkušanje velikih podatkov vs. Tradicionalno testiranje zbirke podatkov
- Orodja, uporabljena v scenarijih velikih podatkov
- Izzivi pri testiranju velikih podatkov
Kaj je strategija testiranja velikih podatkov?
Testiranje aplikacije Big Data je bolj preverjanje obdelave podatkov kot pa preizkušanje posameznih lastnosti programskega izdelka. Pri preizkušanju velikih podatkov so ključnega pomena zmogljivost in funkcionalno testiranje .
V strategiji testiranja velikih podatkov inženirji kakovosti preverjajo uspešno obdelavo terabajtov podatkov z uporabo blagovne skupine in drugih podpornih komponent. Zahteva visoko raven preizkusnih veščin, saj je obdelava zelo hitra. Obdelava je lahko treh vrst
Skupaj s tem je kakovost podatkov pomemben dejavnik pri testiranju Hadoop. Pred preskušanjem aplikacije je treba preveriti kakovost podatkov in jih je treba obravnavati kot del testiranja baze podatkov. Vključuje preverjanje različnih značilnosti, kot so skladnost, natančnost, podvajanje, skladnost, veljavnost, popolnost podatkov itd. V nadaljevanju te vaje za preizkušanje Hadoop se bomo naučili, kako preizkusiti programe Hadoop.
Kako preizkusiti Hadoop aplikacije
Naslednja slika daje pregled faz na visoki ravni pri preizkušanju aplikacij za velike podatke
Preizkušanje velikih podatkov ali preizkušanje Hadoop lahko na splošno razdelimo v tri korake
1. korak: preverjanje stopnje podatkov
Prvi korak v tej vadnici za preizkušanje velikih podatkov se imenuje stopnja pred Hadoop, ki vključuje preverjanje veljavnosti procesa.
- Podatke iz različnih virov, kot so RDBMS, spletni dnevniki, družabni mediji itd., Je treba potrditi, da se v sistem vnesejo pravilni podatki
- Primerjava izvornih podatkov s podatki, potisnjenimi v sistem Hadoop, da zagotovimo, da se ujemajo
- Preverite, ali so pravi podatki izvlečeni in naloženi na pravilno lokacijo HDFS
Orodja, kot sta Talend , Datameer, se lahko uporabljajo za preverjanje stopnjevanja podatkov
2. korak: Preverjanje "MapReduce"
Drugi korak je potrditev "MapReduce". Na tej stopnji preizkuševalnik velikih podatkov preveri potrditev poslovne logike na vsakem vozlišču in jih nato potrdi po zagonu z več vozlišči ter zagotovi, da
- Proces Map Reduce deluje pravilno
- Na podatkih se izvajajo pravila za združevanje ali ločevanje podatkov
- Ustvarijo se pari vrednosti ključev
- Preverjanje veljavnosti podatkov po postopku Map-Reduce
3. korak: Faza preverjanja izhodne vrednosti
Zadnja ali tretja stopnja preizkusa Hadoop je postopek potrditve izhodne vrednosti. Izhodne podatkovne datoteke so ustvarjene in pripravljene za premik v EDW (Enterprise Data Warehouse) ali kateri koli drug sistem, ki temelji na zahtevi.
Dejavnosti v tretji fazi vključujejo
- Če želite preveriti, ali so pravila preoblikovanja pravilno uporabljena
- Za preverjanje celovitosti podatkov in uspešnega nalaganja podatkov v ciljni sistem
- Če želite s primerjavo ciljnih podatkov s podatki datotečnega sistema HDFS preveriti, ali ni poškodovanih podatkov
Testiranje arhitekture
Hadoop obdeluje zelo velike količine podatkov in je zelo zahteven. Arhitekturno preizkušanje je zato ključnega pomena za zagotovitev uspeha vašega projekta Big Data. Slabo ali nepravilno zasnovan sistem lahko povzroči poslabšanje zmogljivosti in sistem morda ne bo izpolnjeval zahtev. Vsaj za delovanje in preskusne Failover mora storitve opraviti v okolju Hadoop.
Testiranje učinkovitosti vključuje preizkušanje časa dokončanja opravila, izkoriščenosti pomnilnika, prenosa podatkov in podobnih sistemskih meritev. Medtem ko je motiv preskusne storitve Failover preverjanje, da obdelava podatkov poteka nemoteno v primeru okvare podatkovnih vozlišč
Testiranje učinkovitosti
Testiranje učinkovitosti za velike podatke vključuje dva glavna dejanja
- Vnos podatkov in vseskozi : Na tej stopnji preizkuševalnik velikih podatkov preveri, kako lahko hitri sistem porabi podatke iz različnih virov podatkov. Testiranje vključuje prepoznavanje drugačnega sporočila, ki ga vrsta lahko obdela v določenem časovnem okviru. Vključuje tudi, kako hitro je mogoče podatke vstaviti v osnovno shrambo podatkov, na primer stopnjo vstavljanja v zbirko podatkov Mongo in Cassandra.
- Obdelava podatkov : Vključuje preverjanje hitrosti izvajanja poizvedb ali zemljevidov za zmanjšanje opravil. Vključuje tudi preskušanje obdelave podatkov ločeno, kadar je osnovna shramba podatkov napolnjena znotraj naborov podatkov. Na primer, zaženite Map Reduce Jobs v osnovnem HDFS
- Učinkovitost podkomponent: Ti sistemi so sestavljeni iz več komponent in nujno je, da vsako od teh komponent preizkusite ločeno. Na primer, kako hitro se sporočilo indeksira in porabi, opravila MapReduce, uspešnost poizvedbe, iskanje itd.
Pristop testiranja učinkovitosti
Testiranje učinkovitosti za uporabo velikih podatkov vključuje preizkušanje ogromnih količin strukturiranih in nestrukturiranih podatkov in za preizkušanje tako velikih podatkov zahteva poseben pristop testiranja.
Testiranje učinkovitosti se izvede v tem vrstnem redu
- Postopek se začne z nastavitvijo skupine velikih podatkov, ki jo je treba preizkusiti
- Ugotovite in oblikujte ustrezne delovne obremenitve
- Priprava posameznih strank (izdelani so skripti po meri)
- Izvedite test in analizirajte rezultat (če cilji niso izpolnjeni, nastavite komponento in znova izvedite)
- Optimalna konfiguracija
Parametri za preizkušanje zmogljivosti
Različni parametri, ki jih je treba preveriti za preskušanje zmogljivosti, so
- Shranjevanje podatkov: kako se podatki shranjujejo v različnih vozliščih
- Dnevniki odobritev: kako velik dnevnik zapisov lahko raste
- Sočasnost: Koliko niti lahko izvede pisanje in branje
- Predpomnjenje: prilagodite nastavitev predpomnilnika "predpomnilnik vrstic" in "predpomnilnik ključev".
- Časovne omejitve: vrednosti za časovno omejitev povezave, časovno omejitev poizvedbe itd.
- Parametri JVM: velikost kopice, algoritmi zbiranja GC itd.
- Zemljevid zmanjša zmogljivost: razvrsti, združi itd.
- Čakalna vrsta sporočil: hitrost sporočila, velikost itd.
Potrebe preskusnega okolja
Testno okolje mora biti odvisno od vrste aplikacije, ki jo preizkušate. Za preskušanje programske opreme za velike podatke mora zajemati testno okolje
- Imeti mora dovolj prostora za shranjevanje in obdelavo velike količine podatkov
- Imeti mora gručo z razdeljenimi vozlišči in podatki
- Imeti mora najmanj CPU in pomnilnika, da ohrani visoko zmogljivost za preizkušanje zmogljivosti velikih podatkov
Preizkušanje velikih podatkov vs. Tradicionalno testiranje zbirke podatkov
Lastnosti |
Tradicionalno testiranje baze podatkov |
Testiranje velikih podatkov |
---|---|---|
Podatki |
|
|
Pristop testiranja |
|
|
Strategija testiranja |
|
|
Infrastruktura |
|
|
Orodja za preverjanje |
Tester uporablja bodisi makre, ki temeljijo na Excelu, bodisi orodja za avtomatizacijo na osnovi uporabniškega vmesnika |
Brez opredeljenih orodij, obseg je velik, od programskih orodij, kot je MapReduce do HIVEQL |
Orodja za testiranje |
Orodja za testiranje lahko uporabljate z osnovnim operativnim znanjem in manj treninga. |
Za upravljanje preizkusnega orodja je potreben poseben nabor spretnosti in usposabljanja. Orodja so tudi v začetni fazi in sčasoma lahko prikažejo nove funkcije. |
Orodja, uporabljena v scenarijih velikih podatkov
Grozd velikih podatkov |
Orodja za velike podatke |
---|---|
NoSQL: |
|
MapReduce: |
|
Skladiščenje: |
|
Strežniki: |
|
Obravnavati |
|
Izzivi pri testiranju velikih podatkov
- Avtomatizacija
Avtomatizirano preskušanje velikih podatkov zahteva nekoga s tehničnim znanjem. Prav tako avtomatizirana orodja niso opremljena za reševanje nepričakovanih težav, ki se pojavijo med testiranjem
- Virtualizacija
Je ena od integralnih faz testiranja. Zakasnitev navideznega stroja sproti povzroča težave s časovnim preskušanjem zmogljivosti velikih podatkov. Tudi upravljanje slik v velikih podatkih je težava.
- Velik nabor podatkov
- Treba je preveriti več podatkov in to storiti hitreje
- Potreba po avtomatizaciji testiranja
- Treba je biti sposoben testirati na različnih platformah
Izzivi preizkušanja učinkovitosti
- Raznolik nabor tehnologij : Vsaka podkomponenta pripada različni tehnologiji in zahteva ločeno preskušanje
- Nerazpoložljivost določenih orodij : nobeno orodje ne more izvesti celovitega preskušanja. Na primer, NoSQL morda ni primeren za čakalne vrste sporočil
- Testno skriptiranje: Za oblikovanje testnih scenarijev in testnih primerov je potrebna visoka stopnja skriptiranja
- Testno okolje : Zaradi velike velikosti podatkov potrebuje posebno testno okolje
- Rešitev za spremljanje : Obstajajo omejene rešitve, ki lahko spremljajo celotno okolje
- Diagnostična rešitev : za razčlenitev ozkih grl v učinkovitosti je potrebna rešitev po meri
Povzetek
- Ko podatkovni inženiring in podatkovna analitika napredujeta na višjo raven, je testiranje velikih podatkov neizogibno.
- Obdelava velikih podatkov je lahko paketna, sprotna ali interaktivna
- Tri faze preizkušanja aplikacij za velike podatke so
- Preverjanje stopnjevanja podatkov
- Potrditev "MapReduce"
- Izhodna faza validacije
- Arhitekturno testiranje je pomembna faza testiranja velikih podatkov, saj lahko slabo zasnovan sistem povzroči napake brez primere in poslabšanje zmogljivosti
- Preskušanje učinkovitosti za velike podatke vključuje preverjanje
- Pretok podatkov
- Obdelava podatkov
- Uspešnost podkomponent
- Preizkušanje velikih podatkov se v primerjavi s tradicionalnim preskušanjem podatkov zelo razlikuje glede podatkov, infrastrukture in orodij za preverjanje veljavnosti
- Izzivi preizkušanja velikih podatkov vključujejo virtualizacijo, avtomatizacijo preskusov in obravnavo velikih naborov podatkov. Vprašanje je tudi preizkušanje zmogljivosti aplikacij za velike podatke.