Del plattformen · kapittel 5
Teknologi og arkitektur
Teknologivalgene, de to parallelle dataarkitekturene og hvorfor begge finnes - med et konkret eksempel på hva den nyeste av dem gjør mulig.
Teknologivalgene
Portalen er bygget av én person. Det har styrt valgene mer enn noe annet: hvert verktøy må kunne læres, driftes og feilsøkes uten et team i ryggen. Der et stort miljø kan bære en spesialisert løsning, må dette prosjektet velge det som er godt nok og godt dokumentert.
| Lag | Valg | Hvorfor |
|---|---|---|
| Nettstedet | Next.js med TypeScript | Sidene bygges ferdig på forhånd, så en leser får statiske filer framfor å vente på at en database svarer. Typene fanger opp at en datafil har endret form. |
| Utseende | Tailwind med egne fargeverdier | Verdiene bor ett sted og brukes ved navn, slik at mørk modus og kontrastjusteringer kan gjøres samlet. |
| Grafer | Recharts | Gir kontroll over farger og etiketter, og lar hver graf ha en tabellutgave. |
| Datahenting | Python | Kildene har hvert sitt format. Python har verktøyene for å hente, rydde og skrive ut resultatet i en form nettstedet kan lese. |
| Datalager | Databricks med Unity Catalog | Rådata lagres uendret og versjonert, og alle bearbeidingssteg er sporbare. Der ligger også AI-funksjonene som brukes i selve databehandlingen. |
| Transformasjon | dbt | Hvert steg fra rådata til ferdig tabell er en dokumentert og testet datamodell, ikke et skript noen kjørte en gang. |
| Lagring for nettstedet | Supabase | Poengsummer fra statistikkspillet og henvendelser. Lite data, enkle behov. |
| Publisering | Netlify | Legger ut de ferdigbygde sidene. Publisering skjer på kommando, ikke ved hver endring. |
| Automatisering | GitHub Actions | Kjører de 33 faste jobbene som holder portalen i gang. |
To dataarkitekturer, ikke én
Portalen har to måter å behandle data på, som lever side om side. Det er verdt å si rett ut, fordi det ellers ser ut som rot.
Grunnen til at begge finnes er ærlig nok: den enkle veien kom først og virker godt nok for det den gjør. Å skrive om alt til den nye ville kostet mye og gitt leseren ingenting. Nye og vanskelige kilder bygges på den nye, og på sikt kan den ta over.
Hva et datalager er
Kapittel 1 sa kort hva et datalager er: data fra mange kilder samlet i sin opprinnelige form, med en katalog over hva som finnes og hvor hvert tall kom fra. Det som gjør den formen verdt bryet, er det neste.
Den viktige forskjellen er at rådataene blir liggende urørt. De bearbeidede utgavene bygges opp fra dem på nytt hver gang, framfor å endres på plass. Oppdager vi at en beregning var feil, retter vi oppskriften og kjører kjeden om igjen. Vi trenger ikke lete etter hvilke tall som ble påvirket, for de finnes ikke lenger enn til neste kjøring. Det er også derfor et tall alltid kan spores tilbake til kilden sin.
Prisen er at det er tyngre å komme i gang enn å hente et tall rett fra et API og skrive det inn på en side. Det er nettopp derfor portalen har to dataarkitekturer og ikke én: den enkle veien bærer fortsatt det meste, og datalageret brukes der det faktisk gir noe den enkle veien ikke kan.
Lagdelingen: rå, ryddet, ferdig
I datalageret går tallene gjennom navngitte lag, og hvert lag har én jobb. Regelen er at ingenting tolkes ved innhenting: det som kommer inn, lagres som det kom. All logikk ligger i stegene etterpå, der den kan leses, testes og kjøres om igjen.
Et ord om ordet: en datamodell er en oppskrift på hvordan én tabell regnes ut fra en annen. Den har ingenting med en språkmodell å gjøre, som er det vi mener når vi skriver om AI lenger ned. Vi skriver alltid ut hele ordet, nettopp fordi de to ellers glir sammen.
Til sammen 38 datamodeller. Alle har en beskrivelse og minst én automatisk test som sier fra hvis et tall plutselig mangler, blir negativt eller får en dato i framtiden.

Et eksempel: fra PDF til tall
Hvert kvartal publiserer NAV et notat om arbeidsavklaringspenger. Det inneholder tall som er verdt å følge over tid - hvor mange som mottar ytelsen, hvilke diagnoser som dominerer, hvordan utviklingen går. Notatet er en PDF. Vil du se ti års utvikling, må du åpne ti dokumenter og skrive av tallene for hånd.
Her gjør datalageret noe den enkle veien ikke kan: en språkmodell leser dokumentet i selve databehandlingen, henter ut de konkrete tallene i strukturert form, og skriver i tillegg et kort sammendrag på norsk. Resultatet er én rad per notat, i en tabell du kan spørre på tvers av.
Det interessante er ikke at det virker, men hva det krevde. Notatene bruker to ulike definisjoner av «antall» om hverandre: de som mottar ytelsen, og det bredere antallet registrert med nedsatt arbeidsevne. Forskjellen er titusener av mennesker. En tolkning som blander dem, gir et tall som ser riktig ut og er feil. Å lære tolkningen å skille konsekvent var mer arbeid enn å få den til å lese dokumentet i det hele tatt.
Tallene tolkningen ikke klarer å lese sikkert, blir stående tomme framfor å bli gjettet. Et hull er ærlig. Et gjettet tall i en statistikkportal er det ikke. Siste kapittel går nærmere inn på hva slikt arbeid faktisk koster.
Flere flater mot de samme tabellene
Når de ferdige tabellene først ligger der, kan flere ting lese dem. Portalen er den mest synlige flaten, men ikke den eneste - og heller ikke den første.
Et spørreverktøy på norsk
En egen app der du stiller spørsmålet i vanlig språk og får både spørringen og svaret tilbake som tabell. Den er lesetilgang bare, med en øvre grense på hvor mye den kan hente. Dette var faktisk prosjektets aller første del, bygget før portalen fantes.
Oversikter over datalageret
Sammendrag og oversiktsvisninger som leser de samme ferdige tabellene, blant annet et automatisk skrevet sammendrag av hva hver datakilde inneholder.
Spørsmål i vanlig språk
Egne rom der man kan spørre om tallene på norsk uten å kunne spørrespråk, mot de samme tabellene portalen viser.
Portalen selv
Sidene du leser nå. Den ene flaten som er laget for folk som ikke vet at det finnes et datalager bak.
Poenget er at grunnarbeidet gjøres én gang. Å tolke ti år med dokumenter er dyrt; å lese den ferdige tabellen fra en ny flate er nesten gratis. Det er hele begrunnelsen for å ha et datalager framfor å hente rett til hver enkelt visning.
Hvorfor publisering er et bevisst valg
De fleste nettsteder legges ut på nytt hver gang koden endrer seg. Denne gjør ikke det, og det er med vilje.
Portalen henter data mange ganger i døgnet. Ville hver slik henting utløst en full utlegging, ville nettstedet blitt bygget om igjen dusinvis av ganger daglig - også for endringer ingen leser merker, som en rettet skrivefeil i en intern beskrivelse. I stedet skjer utleggingen når en datajobb faktisk har noe nytt å vise, eller når noen ber om det.
Prisen er at en kodeendring ikke er synlig før neste utlegging. Gevinsten er at det som legges ut, er en samlet og kontrollert tilstand framfor en tilfeldig.
Se det i portalen
Nytt på portalen
Omsorgsbehovet i din kommune mot 2050 →
Alle 357 kommuner har til sammen 285 000 innbyggere over 80 i dag. SSBs framskriving gir 591 000 i 2050. Sida lar deg velge kommune og bytte mellom hovedalternativet, sterk aldring og svak aldring, regner om til brukere av institusjon, omsorgsbolig og hjemmetjenester, og viser hvordan kommunen løser oppgaven i dag mot resten av landet. Kommuneøkonomien er koblet på: dagens netto driftsutgifter per innbygger over 80, ganget med hvor mange over 80 kommunen får.
Oslo mot 2050: bydelene der antall over 80 mer enn dobles →
Oslo kommunes egen framskriving gir 55 000 personer over 80 i 2050, mot 24 000 i dag. Veksten er skjevest i indre by og sør: Gamle Oslo, Søndre Nordstrand og Grünerløkka mer enn tredobler antallet, mens Stovner og Grorud vokser minst. Sida regner om til brukere av institusjon, omsorgsbolig og hjemmetjenester per bydel med samme regnestykke som landssida, viser Oslo mot landet i dag fra SSB 12003, og setter det opp mot NAVs tall for hvor mange i hver bydel som står utenfor arbeid.
Omsorgsbehovet mot 2060: hva skjer når antall eldre nesten dobles →
Norge har 938 000 personer over 67. I 2060 venter SSB 1,59 millioner. Bruker de eldre omsorgstjenestene som i dag, går antall eldre brukere av institusjon, omsorgsbolig og hjemmetjenester fra 171 000 til 391 000, og årsverkene fra 94 000 til 215 000. Sida tegner regnestykket år for år, i tre framskrivingsalternativer og med en test på friskere aldring, og sammenligner tall for tall med Ulf Andersen i NAV, som regnestykket er inspirert av.
Historikken sier hva som kom inn og hva som ble revidert, for alle datasett →
Hver gang pipelinen henter tall på nytt, sammenligner den med forrige versjon: hvilke måneder, kvartaler eller år som kom til, og hvilke tall tilbake i tid kilden har revidert. Det står i historikk-knappen, på oppdateringshistorikken og på kildesida for hver datafil, og er rekonstruert bakover fra git for alle femti datasett. På prissida, AAP, uføre, befolkning, valuta og konkurser står det også som en chip ved siden av kildehenvisningen på hver graf.
Kryptoandelen i datasentrene: en lesers regnestykke gir 48 til 60 prosent →
Regjeringen oppgir 20 prosent, vi har regnet 38 med bare de to Bitdeer-anleggene. En leser har gått gjennom anleggene ett for ett og kommer til 48 prosent som gulv, og 60 når anlegget i Mo i Rana som ikke er meldt inn til Nkom, tas med. Regnestykket står i egen boks, anlegg for anlegg, merket som leserens.
Mest lest siste 7 dager
- 1Datasentre og kraftforbruk74 visninger
- 2Datasentrene brukte 3,3 TWh i 2025, og kryptodelen er alt på vei ned31 visninger
- 3Slik er portalen bygget25 visninger
- 4Alderspensjon 2025 - gjennomsnittlig utbetaling og avgangsalder17 visninger
- 5Oppdateringshistorikk17 visninger
- 6Kilder og datagrunnlag16 visninger
- 7Blogg16 visninger
- 8Energiomstilling11 visninger
- 945 milliarder til Tydal: hva E24-saken ikke fortalte11 visninger
- 10Befolkning11 visninger