Relaatiotietokantakirjastot Node.js-ajoympäristössä
Nevalainen, Sauli (2021)
Nevalainen, Sauli
2021
Tietojenkäsittelytieteiden kandidaattiohjelma - Bachelor's Programme in Computer Sciences
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2021-06-10
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202106065698
https://urn.fi/URN:NBN:fi:tuni-202106065698
Tiivistelmä
Tutkielman tavoite on perehtyä Node.js-ajoympäristössä käytettäviin relaatiotietokantakirjastoihin, selvittää kirjaston valinnasta aiheutuvat seuraukset ja siten auttaa valintaa. Tutkielma on pääasiassa kirjallisuuskatsaus, mutta sisältää myös empiirisen osuuden, jossa selvitettiin relaatiotietokantakirjastojen tehokkuutta.
Relaatiotietokantakirjastolla tarkoitetaan kirjastoa, jonka avulla Node.js-ajoympäristössä relaatiotietokantaa käsitellään. Tämä tutkielma keskittyi kolmeen kirjastoon, jotka rakentuvat toinen toisensa päälle: matalimmalla tasolla node-postgres, sitten Knex.js ja korkeimmalla tasolla Bookshelf.js.
Suorituskykykokeen tulokset vastasivat odotetusti aiempia muissa ympäristöissä toteutettuja kokeita: kyselyiden suoritusaika kasvoi siirryttäessä korkeammille abstraktiotasoille. Suorituskykymenetyksen vastineeksi korkeamman tason kirjastot tarjoavat lisäominaisuuksia ja työkaluja kehittäjille. Nämä ominaisuudet ja työkalut voivat oikein käytettynä helpottaa ohjelmistokoodin ylläpidettävyyttä ja nopeuttaa kehittämistä.
Relaatiotietokantakirjastolla tarkoitetaan kirjastoa, jonka avulla Node.js-ajoympäristössä relaatiotietokantaa käsitellään. Tämä tutkielma keskittyi kolmeen kirjastoon, jotka rakentuvat toinen toisensa päälle: matalimmalla tasolla node-postgres, sitten Knex.js ja korkeimmalla tasolla Bookshelf.js.
Suorituskykykokeen tulokset vastasivat odotetusti aiempia muissa ympäristöissä toteutettuja kokeita: kyselyiden suoritusaika kasvoi siirryttäessä korkeammille abstraktiotasoille. Suorituskykymenetyksen vastineeksi korkeamman tason kirjastot tarjoavat lisäominaisuuksia ja työkaluja kehittäjille. Nämä ominaisuudet ja työkalut voivat oikein käytettynä helpottaa ohjelmistokoodin ylläpidettävyyttä ja nopeuttaa kehittämistä.
Kokoelmat
- Kandidaatintutkielmat [8997]