Vis enkel innførsel

dc.contributor.advisorHolt, Alexander
dc.contributor.authorElvemo, Sebastian Aanesland
dc.contributor.authorTolnes, Andreas
dc.date.accessioned2021-09-15T16:46:26Z
dc.date.available2021-09-15T16:46:26Z
dc.date.issued2021
dc.identifierno.ntnu:inspera:83510435:83529100
dc.identifier.urihttps://hdl.handle.net/11250/2778041
dc.description.abstractStore mengder data logges hvert år av sensorer som SINTEF bruker. SINTEF innehaver i dag ingen systemer som kan lagre, analysere og hente denne dataen effektivt. Dette betyr at per dags dato er dataen av liten nytte, ettersom en bruker må grave i lagrede filer for å få tak i informasjonen. Dataen er også ofte spredt over flere filer som gjør hele prosessen veldig lite effektiv. For å løse dette ble et system som håndterer opplasting av NetCDF data og for spørringer etter denne dataen designet. Når den trengs kan nå en bruker hente dataen som er lastet opp i en database. Ettersom datafiler logget av SINTEF, kan være enorme ble effektivitet en prioritet. Løsningen ble en FastAPI server koblet til en Influx database. API’et tillater så spørringer mot databasen for å få dataen etter behov. Applikasjonen er skrevet i Python, og designet som et REST API med inspirasjon fra GraphQL. For å øke effektiviteten av spørringene ble flere kompresjonsteknikker anvendt, inkludert å skrive om responsen, bruke lavere data oppløsning, GZip, og mer. Ettersom mengden data øker, blir gevinstene fra løsningen bedre når det gjelder ytelse. Applikasjonen kan eliminere 98% av overflødig data sendt gjennom bruk av kompresjonsmetodene. Denne rapporten går i detalj gjennom valgene av teknologi, metoder, og resultatene av prosjektet, delt opp i kategorier for bedre oversikt.
dc.description.abstractLarge amounts of data are logged on sensors each year which SINTEF receives. But no system that SINTEF currently has can fulfill the task of storing, analyzing and and retrieving this data efficiently. This means that currently the data is of little value, as a technician would have to dig in the stored files themselves to extract the data they want. The data is often spread over multiple files, which is labour intensive and time could be spent better elsewhere. To solve this, a system for handling uploads of NetCDF data and queries for this data was designed. Thus, whenever needed, the uploaded data could be accessed by a user of the system. Since the amount of data being logged by SINTEF could be enormous, a priority was placed on efficiency. The chosen solution is a FastAPI server connected to an Influx database. The API then allows for querying against this database to get the data required. The application is written in Python and designed as a REST API with inspirations from GraphQL. To improve the efficiency of the queries, multiple compression techniques were added, including reformatting the response, using lower data resolutions, GZip, and more. As the size of the data transferred scales upwards, the gains from implementing such solutions will result in larger returns on performance and perceived speed. The application can eliminate 98\% of superfluous data transferred through the compression methods used.
dc.languageeng
dc.publisherNTNU
dc.titleDevelopment of a system for retrieving vessel data for SINTEF
dc.typeBachelor thesis


Tilhørende fil(er)

Thumbnail
Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel