yr.no har eit av dei mest omfattande frie data-tilboda i Europa. NRK og Meteorologisk institutt har vald å frigje vêrdata på ein svært open måte: det er ingen krav til registrering, nøklar e.l. No står tilbodet i fare for å bli «bomba» i stykker av utviklarar som skriv dårlege testscript eller Android-applikasjonar som hentar usannsynleg store datamengder.
Gratis vêrdata frå yr.no
Alle varsla på yr.no er òg tilgjengelege i XML-format. Ved å bruke XML-formatet kan utviklarar (programmerarar) og andre laste ned data til bruk i applikasjonar og nettenester.
Tilbodet er svært omfattande: Ei kan få varsel for alle 8,3 millionar stader det er varsel for på yr,no, i tillegg er alle observasjonar frå målestasjonane til Meteorologisk institutt fritt tilgjengelege.
Les meir om vêrdatatilbodet på www.yr.no/verdata
Denne artikkelen handlar ikkje om dei vanlege nettsidene på yr.no, men om XML-tilbodet. Dersom du ikkje veit kva XML er, treng du ikkje uroe deg: alt vil vere som før!
I 2007 gjorde Meteorologisk institutt eit svært modig og revolusjonærande vedtak: Så å seie alle vêrvarsla skulle bli gratis og fritt tilgjengeleg for ålmenta. Instituttet etablerte yr.no saman med NRK, og tilbodet om gratis vêrdata er ein av forklaringane til kvifor yr.no i dag er blant dei største nettstadene i Skandinavia.
Modellen for korleis vi valde å frigje dataene var svært enkel: Alt skulle vere heilt ope, det skulle ikkje vere krav til registrering, og alle skulle få lov til å bruke dataene til nett kva dei ville utan å spørje om lov fyrst.
Både Meteorologisk institutt og NRK er sikre på at denne politikken framleis er rett: Alle som vil skal kunne hente og bruke data.
Vêrdata-tilbodet er svært populært: Det siste året har det i snitt blitt lasta ned ca 10 millionar XML-filer kvar dag, i tillegg til opp mot 8 millionar sidevisningar kvar dag på nettsidene. Det er òg mange som brukar RSS, JSON o.s.v.
Lastar ned enorme mengder data som ingen ser på
Dei siste månadene har bruken av vêrdata-tilbodet auka ekstremt. Vi tykkjer det er bra at mange tek i bruk datagrunnlaget, og til no har vi berre sett inn fleire maskiner for å ta unna trykket. Problemet no er at bruken aukar ekstremt mykje, og at dei som lastar ned mest data ikkje brukar dataa dei lastar ned til noko som helst.
Når vi har gått gjennom loggane for kven som lastar ned mest data frå yr.no ser vi at listene blir toppa av to typar tenester:
- Android-applikasjonar som lastar ned vêrdata i bakgrunnen, og som lastar ned nye varsel kvar gong du har flytta deg til ein ny stad og/eller lastar ned nye data på faste tidspunkt sjølv utan at brukaren ser på varselet. D.v.s. at applikasjonen lastar ned ca 50 varsel kvar dag, sjølv om brukaren truleg berre ser på eitt av dei.
- Testapplikasjonar / nettstader under utvikling o.l. Ca halvparten av IP-adressene som «bombar» yr.no med førespurnader ser ut til å vere interne testprosjekt, utan at data som blir lasta ned blir vist for publikum.
Det er svært få av tenestene/applikasjonane som lastar ned data frå oss som skapar problem. I dei få tilfella der vi får problem, er det snakk om tenester som f.eks. lastar ned varsel for 10 000 stader samtidig, gjerne på runde klokkeslett. I dag går yr.no ned relativt ofte i nokre sekund kvar heile time på grunn av slik «bombing»
Konsekvensane av dette er at både nettstaden yr.no og det opna datagrunnlaget er truga: ved at store mengdar data blir lasta ned heilt føremålslaust, kan hovudtenesta og api-et bli overbelasta slik at vi ikkje klarar levere vêrvarsel til nokon.
Korleis sikre at både yr.no og at datagrunnlaget framleis vil vere både ope og tilgjengeleg?
Vi ser at vi er nøydd til å gjere «eitt eller anna» for å sikre at datagrunnlaget framleis skal vere ope og tilgjengeleg for alle. Spørsmålet er kva tiltak som fungerer best, og her treng vi innspel og hjelp frå brukarane av yr.no og andre kloke hovud.
Eitt forslag som har vore diskutert er å innføre obligatoriske nøklar for å hente data. Nøklane kan anten vere dedikerte subdomene per brukar eller eit parameter i URL-en når ein hentar data. I fyrste omgang har vi ikkje lyst til å krevje at XML-brukarane må registrere seg med namn og e-post, sjølv om dette sjølvsagt gjer det enklare å få kontakt: vi har lyst til at ein skal kunne bruke data frå yr.no utan å fortelje korkje NRK eller Meteorologisk institutt kven ein er eller kva ein har tenkt å bruke dataa til.
Dei fleste andre tenester som tilbyr gratistilbod a la yr.no har omfattande registrering i dag. For å få bruke kart frå Google Maps må ein f.eks. ha ein Google-konto, i tillegg til at ein må oppgje nøyaktig rot-URL til nettstaden karta skal brukast på. Vi tykkjer i utgangspunktet at dette er for omfattande registrering; i tillegg krev det eit omfattande supportapparat for alle som har gløymd passord eller har andre problem.
Ved at alle som hentar data frå oss må ha ein unik nøkkel, kan vi sperre tenester eller applikasjonar som lastar ned uhorvelege mengdar data. Vi har sperra enkelte IP-adresser i dag, men ser at IP-sperring i seg sjølv ikkje er nok til å stanse f.eks. mobilapplikasjonar som går bananas.
På sikt ser vi for oss at vi kanskje kan innføre automatisk sperring dersom ein nøkkel lastar ned meir data enn ein definert kvote for kvart 5. minutt. Ei slik sperring kan f.eks. gjelde for seks timar, lenge nok til at utviklaren oppdagar at han har blitt sperra.
Det er mange ting vi lurar på:
- Er eit slik nøkkelsystem ein god idé, eller finst det andre enklare og mindre byråkratiske måtar å oppnå det same på? Er subdomene eller URL-parametre den beste løysinga?
- Korleis unngår vi at folk brukar andres nøklar?
- Blir datagrunnlaget mindre fritt ved at vi innfører nøklar? Vil det vere vanskelegare å ta det i bruk?
- Korleis sikrar ein på best måte at offentlege data faktisk er fritt tilgjengelege, utan at dei blir «bomba» i stykker av meingslaus trafikk?
Diskusjonen om denne artikkelen er på teknologinettstaden NRKbeta. Bli gjerne med på diskusjonen der, og gje oss dine råd!