Verkkokaupan tietokantamallin valinta
Sallinen, Iida (2018)
Sallinen, Iida
Metropolia Ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2018111317085
https://urn.fi/URN:NBN:fi:amk-2018111317085
Tiivistelmä
Insinöörityön tavoitteena oli selvittää NoSQL-tietokantojen toiminnallisuutta sekä vertailla NoSQL- ja SQL-tietokantamalleja toisiinsa. Tämän lisäksi haluttiin selvittää alustavasti, kuinka NoSQL-tietokanta tulisi toimimaan suorituskykynsä puolesta verkkokaupan yksinkertaistetun skeeman kanssa, ja katsoa, kuinka se vertautuu relaatiokannan suorituskykyyn.
Teoriaosuudessa käytiin ensin läpi relaatiomallia ja relaatiokantojen toimintaa. Olemassa olevasta verkkokauppasovelluksesta valittiin neljä SQL-kyselyä lähempään tarkasteluun käytännön osuutta varten. Tämän jälkeen käytiin läpi NoSQL-kantojen perusteet ja niiden toiminta sekä NoSQL-kantojen eri tyypit ja tarkasteltiin paremmin kolmea eri kantaa, jotka olivat ehdolla relaatiokannan tilalle. Lopulta käytettäväksi NoSQL-kannaksi valittiin MongoDB.
Käytännön osuudessa muodostettiin MongoDB-kanta ja siihen halutut SQL:n tauluja vastaavat kokoelmat. Tässä vaiheessa tauluihin ja kokoelmiin lisättiin testidata, jonka jälkeen muodostettiin halutut neljä NoSQL-kyselyä. Niiden suorituskykyä verrattiin vastaaviin SQL-kyselyihin, ja vertailun perusteella muodostettiin kuvaajia. Lopuksi käytiin läpi NoSQL-kantojen tietoturvaongelmia ja mahdollisia ratkaisuja niihin ongelmiin.
Insinöörityössä osoitettiin, että MongoDB voi suorituskykynsä puolesta tarjota vaihtoehdon relaatiokannalle käytössä olevassa verkkokaupassa. Seuraavana vaiheena MongoDB-kannan käyttöönotossa on kuormituskykymittausten suorittaminen sekä esiin tulleiden ongelmien ratkominen.
Teoriaosuudessa käytiin ensin läpi relaatiomallia ja relaatiokantojen toimintaa. Olemassa olevasta verkkokauppasovelluksesta valittiin neljä SQL-kyselyä lähempään tarkasteluun käytännön osuutta varten. Tämän jälkeen käytiin läpi NoSQL-kantojen perusteet ja niiden toiminta sekä NoSQL-kantojen eri tyypit ja tarkasteltiin paremmin kolmea eri kantaa, jotka olivat ehdolla relaatiokannan tilalle. Lopulta käytettäväksi NoSQL-kannaksi valittiin MongoDB.
Käytännön osuudessa muodostettiin MongoDB-kanta ja siihen halutut SQL:n tauluja vastaavat kokoelmat. Tässä vaiheessa tauluihin ja kokoelmiin lisättiin testidata, jonka jälkeen muodostettiin halutut neljä NoSQL-kyselyä. Niiden suorituskykyä verrattiin vastaaviin SQL-kyselyihin, ja vertailun perusteella muodostettiin kuvaajia. Lopuksi käytiin läpi NoSQL-kantojen tietoturvaongelmia ja mahdollisia ratkaisuja niihin ongelmiin.
Insinöörityössä osoitettiin, että MongoDB voi suorituskykynsä puolesta tarjota vaihtoehdon relaatiokannalle käytössä olevassa verkkokaupassa. Seuraavana vaiheena MongoDB-kannan käyttöönotossa on kuormituskykymittausten suorittaminen sekä esiin tulleiden ongelmien ratkominen.