Versionhallinnan kehittäminen Big Dataan liittyvässä ETL kehitys- ja ylläpitotyössä
Hiltunen, Tomi (2022)
Diplomityö
Hiltunen, Tomi
2022
School of Engineering Science, Tuotantotalous
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2022031724027
https://urn.fi/URN:NBN:fi-fe2022031724027
Tiivistelmä
ETL kehitys ja ylläpito on tärkeässä roolissa kaikessa datan hyödyntämisessä. ETL kehityksellä tarkoitetaan prosessia, jossa data kerätään ja muokataan hyödynnettävään muotoon. ETL prosessiin käytetään kaikista tietovarastointiprojektien resursseista jopa 80 %. Työn tavoitteena oli löytää ratkaisukeinoja ETL kehittäjien resurssien ohjaamiseen manuaalisista prosesseista kehittämiseen. Työssä pyrittiin löytämään myös versionhallinnan yleinen toimintamalli, joka toimisi useimmissa projekteissa.
Työ toteutettiin usean osatapauksen tapaustutkimuksena, jossa hyödynnettiin puolistrukturoitua haastattelumallia. Haastatteluiden perusteella luotiin nykytilan katsaus. Nykytilan perusteella valikoitiin kehitettävät kohteet suurimpiin ajansäästöllisiin kohteisiin. Teoriaosuudessa tutkimustietoa ETL kehityksen versionhallinnasta ei ollut, joten työssä jouduttiin hyödyntämään ohjelmistokehityksen tutkimuksia. Näistä tutkimuksista ja teoriasta saatuun tietoon hyödynnettiin ETL kehityksen ominaispiirteitä.
Työn lopputuloksena syntyi teoriatiedon perusteella luotu versionhallinnan malli ja toimintatapa. Yleisessä versionhallinnan mallissa otettiin huomioon ETL työkalujen luomat haasteet, kuten rakenteellinen tekstitiedosto. Tähän lisäyksenä empiriaosuuden pohjalta kehitettiin konseptitodistus työkalusta. Konseptitodistus on todistus ohjelman toteuttamiskelpoisuudesta. Työkalulla saatiin luotua helpommin käytettävä, aikaa säästävä ja virheitä vähentävä toimintakokonaisuus. ETL development and maintenance play a significant role in all data utilization. ETL development refers to the process of collecting and modifying data into the format to be utilized. Up to 80 % of all resources in data warehouse projects are used for the ETL development. The aim of the work was to find solutions for directing ETL developers' resources from manual processes to actual development. The work also sought to find a general operating model for version control that would work on most projects.
The work was conducted as a case study in several sub-cases, using a semi-structured interview model. Based on the interviews, an overview of the current situation was created. Based on the current situation, targets to be developed were selected for the largest time-saving phases. In the theory section, there was no research data on the version control of ETL development, so this thesis had to utilize software development studies. The characteristics of ETL development were added to the information obtained from these studies and theories.
The result of the thesis was a version control model and operating method created based on theoretical knowledge. The general version control model considered the challenges created by ETL tools, such as a structured text file. As an addition to this, a proof of concept of the tool was developed based on the empirical section. Proof of concept is a proof of the feasibility of the program. The tool was used to create a more accessible, timesaving and error-reducing workflow.
Työ toteutettiin usean osatapauksen tapaustutkimuksena, jossa hyödynnettiin puolistrukturoitua haastattelumallia. Haastatteluiden perusteella luotiin nykytilan katsaus. Nykytilan perusteella valikoitiin kehitettävät kohteet suurimpiin ajansäästöllisiin kohteisiin. Teoriaosuudessa tutkimustietoa ETL kehityksen versionhallinnasta ei ollut, joten työssä jouduttiin hyödyntämään ohjelmistokehityksen tutkimuksia. Näistä tutkimuksista ja teoriasta saatuun tietoon hyödynnettiin ETL kehityksen ominaispiirteitä.
Työn lopputuloksena syntyi teoriatiedon perusteella luotu versionhallinnan malli ja toimintatapa. Yleisessä versionhallinnan mallissa otettiin huomioon ETL työkalujen luomat haasteet, kuten rakenteellinen tekstitiedosto. Tähän lisäyksenä empiriaosuuden pohjalta kehitettiin konseptitodistus työkalusta. Konseptitodistus on todistus ohjelman toteuttamiskelpoisuudesta. Työkalulla saatiin luotua helpommin käytettävä, aikaa säästävä ja virheitä vähentävä toimintakokonaisuus.
The work was conducted as a case study in several sub-cases, using a semi-structured interview model. Based on the interviews, an overview of the current situation was created. Based on the current situation, targets to be developed were selected for the largest time-saving phases. In the theory section, there was no research data on the version control of ETL development, so this thesis had to utilize software development studies. The characteristics of ETL development were added to the information obtained from these studies and theories.
The result of the thesis was a version control model and operating method created based on theoretical knowledge. The general version control model considered the challenges created by ETL tools, such as a structured text file. As an addition to this, a proof of concept of the tool was developed based on the empirical section. Proof of concept is a proof of the feasibility of the program. The tool was used to create a more accessible, timesaving and error-reducing workflow.