Skip to content

Dataplattform: API

sigand edited this page Dec 20, 2022 · 2 revisions

(Under construction) API for dataplattform

Teknologi

Apiet er implementert i Python med webrammeverket Flask og Flask RestX. Feilhåndtering mtp api-respons gjøres i Flask RestX-laget og ligger i error_handlers.py. Disse registreres på apiet med api.error_handlers[EXCEPTION_NAME]={METHOD_NAME} i app.py. Plugin serverless_wsgi står for oversettelsen fra Flask's responser til formatet brukt i ApiGateway.

Det er utviklet 3 apier for dataplattform,

DATA API

Catalogue API

REST API

Catalogue API

I dataplattform benyttes ingest og process lamba-funksjoner for å mate data inn i plattformen. Så det er ikke noen konkret data modell siden modellen er basert på innholdet og metadata som blir lagt inn i S3. Catalogue API'et er for å liste opp tabellene som finnes i databasene.

DATA API

DATA API'et består av to ressurser, query og report. API'et er bygget oppå AWS Athena, et interaktiv query tjeneste og brukes for å hente ut data i S3 med SQL. Query lar brukere kjøre og tilpasse egne SQL spørringer mot API'et.

Noen data blir hentet ut oftere enn andre og kan ofte inneholde en sql spørring som er veldig lang. Det er da mulig å lage en 'report' med SQL spørringen som i utgangspunktet er et 'view'.

REST API

Clone this wiki locally