Tietokannan versionhallinta
Rahkonen, Joona (2018)
Rahkonen, Joona
Metropolia Ammattikorkeakoulu
2018
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2018091015004
https://urn.fi/URN:NBN:fi:amk-2018091015004
Tiivistelmä
Insinöörityössä selvitettiin Digia Financial Solutions -organisaation tietokannan versionhallinnan käytänteitä ja toimintatapoja sekä etsittiin organisaation käyttöön sopiva tietokannan versionhallintaohjelmisto, jonka avulla tietokannan muutosten hallinta ja muutosten toimittaminen asiakkaalle onnistuu mahdollisimman vaivattomasti.
Teoriaosuudessa selvitettiin yleisesti versionhallinnan historiaa. Sen jälkeen siirryttiin kohti nykyaikaa, mikä käsitti paikallisen, keskitetyn ja jaetun versionhallinnan. Lisäksi käsiteltiin tietokannan versionhallinnan käytänteitä ja periaatteita.
Työosuudessa vertailtiin tietokannan versionhallintaohjelmistoja keskenään niiden ominaisuuksien ja tilaajan tarpeisiin soveltuvuuden mukaan. Alustavan versionhallintaohjelmistojen ominaisuuksien selvittämisen perusteella tarkempaan vertailuun päätyivät avoimen lähdekoodin ratkaisut Flyway ja Liquibase. Näistä kahdesta ohjelmistosta valittiin lopulta Liquibase asennettavaksi ja testattavaksi sen laajempien ominaisuuksien ansiosta. Liquibase asennettiin testiympäristöön ja integroitiin se toimimaan yhdessä lähdekoodin versionhallinnan, Subversionin ja jatkuvan integraation ympäristön, TeamCityn kanssa. Lisäksi tietokannan päivittämiseen sekä toimittamiseen kehitettiin batch-skriptit, joiden avulla toimenpiteet onnistuvat automaattisesti.
Insinöörityön tuloksena varmistui, että Liquibase soveltuu organisaation käyttöön, mikä helpottaa tietokannan päivittämistä ja toimittamista yksinkertaisessa tilanteessa. Tuloksena syntyi myös uusi malli tietokannan versionhallintaan, jota lähdetään kehittämään edelleen, jotta sen avulla voidaan ratkaista myös kompleksit reaalimaailman ongelmat.
Teoriaosuudessa selvitettiin yleisesti versionhallinnan historiaa. Sen jälkeen siirryttiin kohti nykyaikaa, mikä käsitti paikallisen, keskitetyn ja jaetun versionhallinnan. Lisäksi käsiteltiin tietokannan versionhallinnan käytänteitä ja periaatteita.
Työosuudessa vertailtiin tietokannan versionhallintaohjelmistoja keskenään niiden ominaisuuksien ja tilaajan tarpeisiin soveltuvuuden mukaan. Alustavan versionhallintaohjelmistojen ominaisuuksien selvittämisen perusteella tarkempaan vertailuun päätyivät avoimen lähdekoodin ratkaisut Flyway ja Liquibase. Näistä kahdesta ohjelmistosta valittiin lopulta Liquibase asennettavaksi ja testattavaksi sen laajempien ominaisuuksien ansiosta. Liquibase asennettiin testiympäristöön ja integroitiin se toimimaan yhdessä lähdekoodin versionhallinnan, Subversionin ja jatkuvan integraation ympäristön, TeamCityn kanssa. Lisäksi tietokannan päivittämiseen sekä toimittamiseen kehitettiin batch-skriptit, joiden avulla toimenpiteet onnistuvat automaattisesti.
Insinöörityön tuloksena varmistui, että Liquibase soveltuu organisaation käyttöön, mikä helpottaa tietokannan päivittämistä ja toimittamista yksinkertaisessa tilanteessa. Tuloksena syntyi myös uusi malli tietokannan versionhallintaan, jota lähdetään kehittämään edelleen, jotta sen avulla voidaan ratkaista myös kompleksit reaalimaailman ongelmat.