Suurten tietojen testaus
Big Data Testing on big data -sovelluksen testausprosessi sen varmistamiseksi, että kaikki big data -sovelluksen toiminnot toimivat odotetusti. Isotietotestauksen tavoitteena on varmistaa, että isotietojärjestelmä toimii sujuvasti ja virheettömästi säilyttäen samalla suorituskyvyn ja turvallisuuden.
Suuret tiedot ovat kokoelma suuria aineistoja, joita ei voida käsitellä perinteisillä laskentatekniikoilla. Näiden tietojoukkojen testaaminen edellyttää erilaisia työkaluja, tekniikoita ja kehyksiä. Suuret tiedot liittyvät tietojen luomiseen, tallentamiseen, hakemiseen ja analysointiin, jotka ovat merkittäviä määrän, vaihtelevuuden ja nopeuden suhteen. Voit oppia lisää Big Datasta, Hadoopista ja MapReducesta täältä
Tässä Big Data Testing -oppaassa opit-
- Mikä on Big Data Testing Strategy?
- Kuinka testata Hadoop-sovelluksia
- Arkkitehtuurin testaus
- Suorituskyvyn testaus
- Suorituskyvyn testausmenetelmä
- Suorituskyvyn testauksen parametrit
- Testiympäristön tarpeet
- Suurten tietojen testaus vs. Perinteinen tietokantatestaus
- Big Data -skenaarioissa käytetyt työkalut
- Suurten tietojen testauksen haasteet
Mikä on Big Data Testing Strategy?
Big Data -sovelluksen testaaminen on enemmän sen tietojenkäsittelyn todentamista kuin ohjelmistotuotteen yksittäisten ominaisuuksien testaamista. Suurten tietojen testauksessa avaimet ovat suorituskyky ja toiminnallinen testaus .
Big Data -testausstrategiassa laadunvarmistusinsinöörit varmistavat teratavujen tiedon onnistuneen käsittelyn hyödykeklusterin ja muiden tukevien komponenttien avulla. Se vaatii korkeatasoista testaustaitoa, koska käsittely on erittäin nopeaa. Käsittely voi olla kolmen tyyppistä
Tämän lisäksi tiedon laatu on myös tärkeä tekijä Hadoop-testauksessa. Ennen sovelluksen testaamista on välttämätöntä tarkistaa tietojen laatu, ja sitä tulisi pitää osana tietokantatestausta. Se sisältää erilaisten ominaisuuksien, kuten vaatimustenmukaisuuden, tarkkuuden, päällekkäisyyden, yhdenmukaisuuden, oikeellisuuden, tietojen täydellisyyden jne. Tarkistamisen . Seuraavaksi tässä Hadoop-testausoppaassa opitaan testaamaan Hadoop-sovelluksia.
Kuinka testata Hadoop-sovelluksia
Seuraava kuva antaa korkean tason yleiskuvan Big Data -sovellusten testaamisen vaiheista
Big Data -testaus tai Hadoop-testaus voidaan jakaa laajasti kolmeen vaiheeseen
Vaihe 1: Tietojen vaiheittainen vahvistus
Ensimmäistä vaihetta tässä isojen tietojen testausoppaassa kutsutaan Hadoopia edeltäväksi vaiheeksi, johon sisältyy prosessin validointi.
- Eri lähteistä, kuten RDBMS: stä, blogeista, sosiaalisesta mediasta, jne. Saadut tiedot olisi validoitava, jotta voidaan varmistaa, että järjestelmään vedetään oikeat tiedot
- Lähdetietojen vertaaminen Hadoop-järjestelmään työnnettyihin tietoihin varmistaakseen, että ne vastaavat toisiaan
- Varmista, että oikeat tiedot on purettu ja ladattu oikeaan HDFS-sijaintiin
Työkaluja, kuten Talend , Datameer, voidaan käyttää tietojen vaiheistamiseen
Vaihe 2: "MapReduce" -vahvistus
Toinen vaihe on "MapReduce" -vahvistuksen validointi. Tässä vaiheessa Big Data -testaaja tarkistaa jokaisen solmun liiketoimintalogiikan validoinnin ja vahvistaa sen sitten suoritettuaan useita solmuja varmistaen, että
- Map Reduce -prosessi toimii oikein
- Tietoihin yhdistetään tietojen yhdistämistä tai erottelua koskevat säännöt
- Avainarvoparit luodaan
- Tarkistetaan tiedot Map-Reduce -prosessin jälkeen
Vaihe 3: Lähdön vahvistusvaihe
Hadoop-testauksen viimeinen tai kolmas vaihe on lähdön vahvistusprosessi. Lähtötiedostot luodaan ja ovat valmiita siirrettäviksi EDW: ään (Enterprise Data Warehouse) tai mihin tahansa muuhun vaatimukseen perustuvaan järjestelmään.
Kolmannen vaiheen toiminta sisältää
- Muunnossääntöjen tarkistamiseksi sovelletaan oikein
- Tarkistaa datan eheys ja onnistunut tietojen lataus kohdejärjestelmään
- Tarkistetaan, ettei tiedoissa ole virheitä vertaamalla kohdetietoja HDFS-tiedostojärjestelmän tietoihin
Arkkitehtuurin testaus
Hadoop käsittelee erittäin suuria tietomääriä ja on erittäin resurssiintensiivinen. Siksi arkkitehtoninen testaus on ratkaisevan tärkeää Big Data -projektisi onnistumisen varmistamiseksi. Huonosti tai väärin suunniteltu järjestelmä voi johtaa suorituskyvyn heikkenemiseen, eikä järjestelmä voi täyttää vaatimusta. Ainakin Suorituskyky- ja Failover-testipalvelut tulisi suorittaa Hadoop-ympäristössä.
Suorituskykytestaus sisältää työn valmistumisajan, muistin käytön, tiedonsiirtonopeuden ja vastaavien järjestelmän mittareiden testaamisen. Vaikka vikasietotestipalvelun motiivi on varmistaa, että tietojenkäsittely tapahtuu saumattomasti datasolmujen epäonnistumisen yhteydessä
Suorituskyvyn testaus
Suurten tietojen suorituskyvyn testaus sisältää kaksi päätoimintoa
- Datan käyttö ja koko : Tässä vaiheessa Big Data -testari tarkistaa, kuinka nopeasti järjestelmä voi kuluttaa tietoja eri tietolähteistä. Testaus sisältää toisen viestin tunnistamisen, jonka jono voi käsitellä tiettynä ajanjaksona. Se sisältää myös kuinka nopeasti tietoja voidaan lisätä taustalla olevaan tietovarastoon, esimerkiksi lisäysnopeus Mongo ja Cassandra -tietokantaan.
- Tietojenkäsittely : Siihen sisältyy nopeuden tarkistaminen, jolla kyselyt tai kartta vähentävät töitä suoritetaan. Se sisältää myös tietojenkäsittelyn testaamisen erikseen, kun taustalla oleva tietovarasto täytetään tietojoukoissa. Esimerkiksi Map Reduce -työkalujen suorittaminen taustalla olevassa HDFS: ssä
- Alikomponenttien suorituskyky : Nämä järjestelmät koostuvat useista komponenteista, ja on välttämätöntä testata kukin näistä komponenteista erikseen. Esimerkiksi kuinka nopeasti viesti indeksoidaan ja kulutetaan, MapReduce-työt, kyselyn suorituskyky, haku jne.
Suorituskyvyn testausmenetelmä
Suurten tietosovellusten suorituskyvyn testaus käsittää valtavan määrän jäsenneltyjä ja jäsentämättömiä tietoja, ja se vaatii erityistä testausmenetelmää tällaisen massiivisen tiedon testaamiseksi.
Suorituskykytestaus suoritetaan tässä järjestyksessä
- Prosessi alkaa Big Data -klusterin asetuksella, jonka suorituskyky on testattava
- Tunnista ja suunnittele vastaavat kuormitukset
- Valmista yksittäiset asiakkaat (mukautetut komentosarjat luodaan)
- Suorita testi ja analysoi tulos (jos tavoitteet eivät täyty, viritä komponentti ja suorita uudelleen)
- Optimaalinen kokoonpano
Suorituskyvyn testauksen parametrit
Suorituskykytestauksessa tarkistettavat parametrit ovat
- Tietojen tallennus: Kuinka tietoja tallennetaan eri solmuihin
- Sitoumuslokit: Kuinka suuren sitoumuslokin saa kasvaa
- Samanaikaisuus: Kuinka monta ketjua voi suorittaa kirjoitus- ja lukutoiminnon
- Välimuisti: Viritä välimuistiasetukset "rivivälimuisti" ja "avaimen välimuisti".
- Aikakatkaisut: Yhteyden aikakatkaisun, kyselyn aikakatkaisun jne. Arvot
- JVM-parametrit: kasan koko, GC-keräysalgoritmit jne.
- Kartta heikentää suorituskykyä: lajittelee, yhdistää jne.
- Viestin jono: Viestin nopeus, koko jne.
Testiympäristön tarpeet
Testiympäristön on oltava riippuvainen testattavasta sovellustyypistä. Suurten dataohjelmistojen testauksessa testausympäristön tulisi kattaa
- Siinä pitäisi olla tarpeeksi tilaa tallennukseen ja prosessoida suuri määrä tietoa
- Sen pitäisi olla klusteri, jossa on hajautetut solmut ja tiedot
- Sen pitäisi olla vähimmäisprosessorin ja muistin käyttöaste, jotta suorituskyky pysyy korkeana Big Data -suorituskyvyn testaamiseksi
Suurten tietojen testaus vs. Perinteinen tietokantatestaus
Ominaisuudet |
Perinteinen tietokantatestaus |
Suurten tietojen testaus |
---|---|---|
Tiedot |
|
|
Lähestymistavan testaaminen |
|
|
Testausstrategia |
|
|
Infrastruktuuri |
|
|
Vahvistustyökalut |
Tester käyttää joko Excel-pohjaisia makroja tai käyttöliittymäpohjaisia automaatiotyökaluja |
Ei määriteltyjä työkaluja, valikoima on laaja ohjelmointityökaluista, kuten MapReduce, HIVEQL: ään |
Testaustyökalut |
Testaustyökaluja voidaan käyttää perustiedot ja vähemmän koulutusta. |
Testityökalun käyttäminen vaatii erityisiä taitoja ja koulutusta. Työkalut ovat myös syntymässä ja ajan myötä se voi tuoda esiin uusia ominaisuuksia. |
Big Data -skenaarioissa käytetyt työkalut
Big Data Cluster |
Big Data -työkalut |
---|---|
NoSQL: |
|
MapReduce: |
|
Varastointi: |
|
Palvelimet: |
|
Käsittely |
|
Suurten tietojen testauksen haasteet
- Automaatio
Big-datan automaatiotestaus vaatii jonkun, jolla on teknistä osaamista. Automatisoituja työkaluja ei myöskään ole tarkoitettu käsittelemään odottamattomia ongelmia, jotka syntyvät testauksen aikana
- Virtualisointi
Se on yksi testauksen kiinteistä vaiheista. Virtuaalikoneen viive luo ajoitusongelmia reaaliaikaisessa suurten tietojen suorituskyvyn testauksessa. Kuvien hallinta myös Big Data -palvelussa on vaivaa.
- Suuri tietojoukko
- Tarve tarkistaa enemmän tietoja ja tehdä se nopeammin
- Tarve automatisoida testaus
- On pystyttävä testaamaan eri alustoilla
Suorituskykytestauksen haasteet
- Erilaiset tekniikat : Jokainen alikomponentti kuuluu eri tekniikkaan ja vaatii testausta erikseen
- Tiettyjen työkalujen puuttuminen : Yksittäinen työkalu ei voi suorittaa end-to-end-testausta. Esimerkiksi NoSQL ei välttämättä sovi viestijonoihin
- Testiskriptaus : Testiskenaarioiden ja testitapausten suunnitteluun tarvitaan korkea komentosarjojen taso
- Testiympäristö : Se tarvitsee erityisen testiympäristön suuren tiedon koon vuoksi
- Seurantaratkaisu : On olemassa rajoitettuja ratkaisuja, jotka voivat seurata koko ympäristöä
- Diagnostinen ratkaisu : Mukautettu ratkaisu on kehitettävä suorituskyvyn pullonkaulojen poraamiseksi
Yhteenveto
- Tietotekniikan ja data-analytiikan edetessä uudelle tasolle suurten tietojen testaus on väistämätöntä.
- Suuri tietojenkäsittely voi olla erä, reaaliaikainen tai vuorovaikutteinen
- Big Data -sovellusten testaamisen 3 vaihetta ovat
- Tietojen vaiheittainen validointi
- "MapReduce" -tarkistus
- Lähdön validointivaihe
- Arkkitehtuurin testaus on iso data-testauksen tärkeä vaihe, koska huonosti suunniteltu järjestelmä voi johtaa ennennäkemättömiin virheisiin ja suorituskyvyn heikkenemiseen
- Suurten tietojen suorituskyvyn testaus sisältää vahvistamisen
- Tiedonsiirtonopeus
- Tietojenkäsittely
- Alakomponenttien suorituskyky
- Suurten tietojen testaus eroaa hyvin perinteisestä datatestauksesta tietojen, infrastruktuurin ja validointityökalujen suhteen
- Big Data Testing -haasteisiin kuuluvat virtualisointi, testausautomaatio ja suurten tietojoukkojen käsittely. Big Data -sovellusten suorituskyvyn testaus on myös ongelma.