Radioverkkojärjestelmien testausdatan käsittely ja visualisointi avoimen lähdekoodin Big Data -työkaluilla
Mäki, Veli-Pekka (2018)
Mäki, Veli-Pekka
Oulun ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201805117698
https://urn.fi/URN:NBN:fi:amk-201805117698
Tiivistelmä
Opinnäytetyön toimeksiantaja on Nokia Solutions and Networks Oy. Opinnäytetyön tarkoituksena on testata kahta avoimen lähdekoodin hakukonetta: Elasticsearch ja Apache Solr ja selvittää, miten ne soveltuvat radioverkkojärjestelmien ohjelmistojen testausympäristön tuottaman lokitiedon käsittelyyn. Työn tavoitteena on selvittää käytännössä, miten testausdataa voidaan viedä hakukoneeseen, indeksoitua tietoa voidaan hakea ja esittää visuaalisesti.
Opinnäytetyön teoriaosuudessa käsitellään erilaisia lokitietojen tietomuotoja. Käsiteltäviä tietomuotoja ovat: XML, JSON, CSV ja Syslog. XML-tietomuodon yhteydessä käsitellään XML-dokumenttioliomallin lisäksi XML-tietomuodon käsittelykieliä: XPATH ja XSLT. Syslog-tietomuodon yhteydessä käsitellään Regex-lausekkeita (regular expression, suom. säännöllinen lauseke), joita käytetään merkkijonojen käsittelyssä. Seuraavaksi selvitetään hakukoneiden toimintaperiaatetta ja Lucene hakukonekirjastoa, johon molemmat käsiteltävät hakukoneet pohjautuvat. Teoriaosuuden lopussa käsitellään Big Data -tallennusratkaisua Hadoop ja sen HDFS-tiedostojärjelmää.
Opinnäytetyössä on käytännön esimerkit lokitiedon viemisestä hakukoneeseen, kun lokitieto on XML- ja CSV-tietomuotoa. Elasticsearch hakukoneeseen tieto viedään Logstash ohjelmalla, jonka jälkeen tietoa haetaan ja visualisoidaan Kibana ohjelmassa. Apache Solr hakukoneessa XML-tiedosto viedään hakukoneeseen käyttämällä XSLT-kieltä ja Data Import -pyyntökäsittelijää. Apache Solr hakukoneeseen vietyä tietoa visualisoidaan Banana ohjelmassa.
Opinnäytetyön perusteella Elasticsearch hakukone vaikuttaa toimivalta kokonaisuudelta, johon kuuluu Logstash ja Kibana (ELK stack). Kibana ohjelmalla on mahdollista saada aikaan suhteellisen vaivattomasti näyttäviä visualisointeja. Apache Solr hakukoneen yhteydessä ei tule visualisointi ohjelmaa vaan työssä käytetty Banana ohjelma on asennettava erikseen. Molemmille hakukoneille löytyy hyvät dokumentaatiosivut internetistä, mutta Elasticsearch hakukoneen käyttäjäyhteisö on suurempi ja internetistä löytyy runsaasti tietoa ohjelmaan liittyen. Molemmilla hakukoneilla esimerkeissä käytetyt lokitiedot saatiin vietyä hakukoneeseen, mutta Logstash ohjelman käytön Elasticsearch hakukoneen kanssa oppi nopeammin kuin Apache Solr hakukoneen indeksointitavat.
Hadoop tiedostojärjestelmää käytettäessä kannattaa tutustua Elasticsearch hakukoneen Hadoop-liitäntään: ES Hadoop, jolloin käytössä on Hadoop työkaluja, kuten Spark ja Pig. Myös Apache Solr hakukoneelle on tarjolla Hadoop-liitäntöjä, kuten HDFS for Solr, Pig for Solr ja Spark for Solr.
Opinnäytetyön teoriaosuudessa käsitellään erilaisia lokitietojen tietomuotoja. Käsiteltäviä tietomuotoja ovat: XML, JSON, CSV ja Syslog. XML-tietomuodon yhteydessä käsitellään XML-dokumenttioliomallin lisäksi XML-tietomuodon käsittelykieliä: XPATH ja XSLT. Syslog-tietomuodon yhteydessä käsitellään Regex-lausekkeita (regular expression, suom. säännöllinen lauseke), joita käytetään merkkijonojen käsittelyssä. Seuraavaksi selvitetään hakukoneiden toimintaperiaatetta ja Lucene hakukonekirjastoa, johon molemmat käsiteltävät hakukoneet pohjautuvat. Teoriaosuuden lopussa käsitellään Big Data -tallennusratkaisua Hadoop ja sen HDFS-tiedostojärjelmää.
Opinnäytetyössä on käytännön esimerkit lokitiedon viemisestä hakukoneeseen, kun lokitieto on XML- ja CSV-tietomuotoa. Elasticsearch hakukoneeseen tieto viedään Logstash ohjelmalla, jonka jälkeen tietoa haetaan ja visualisoidaan Kibana ohjelmassa. Apache Solr hakukoneessa XML-tiedosto viedään hakukoneeseen käyttämällä XSLT-kieltä ja Data Import -pyyntökäsittelijää. Apache Solr hakukoneeseen vietyä tietoa visualisoidaan Banana ohjelmassa.
Opinnäytetyön perusteella Elasticsearch hakukone vaikuttaa toimivalta kokonaisuudelta, johon kuuluu Logstash ja Kibana (ELK stack). Kibana ohjelmalla on mahdollista saada aikaan suhteellisen vaivattomasti näyttäviä visualisointeja. Apache Solr hakukoneen yhteydessä ei tule visualisointi ohjelmaa vaan työssä käytetty Banana ohjelma on asennettava erikseen. Molemmille hakukoneille löytyy hyvät dokumentaatiosivut internetistä, mutta Elasticsearch hakukoneen käyttäjäyhteisö on suurempi ja internetistä löytyy runsaasti tietoa ohjelmaan liittyen. Molemmilla hakukoneilla esimerkeissä käytetyt lokitiedot saatiin vietyä hakukoneeseen, mutta Logstash ohjelman käytön Elasticsearch hakukoneen kanssa oppi nopeammin kuin Apache Solr hakukoneen indeksointitavat.
Hadoop tiedostojärjestelmää käytettäessä kannattaa tutustua Elasticsearch hakukoneen Hadoop-liitäntään: ES Hadoop, jolloin käytössä on Hadoop työkaluja, kuten Spark ja Pig. Myös Apache Solr hakukoneelle on tarjolla Hadoop-liitäntöjä, kuten HDFS for Solr, Pig for Solr ja Spark for Solr.