okffi / open-api-definition

Community governed definition of open API

Home Page:http://okffi.github.io/open-api-definition/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dumppi-haun edellyttäminen kaikelle avoimelle datalle?

Mygee opened this issue · comments

Pitäiskö olla määritelmässä mukana?

Saattaa sekoittua avoimen datan ja avoimen APIn määritelmä. APIhan voi olla toiminnallisuuksiiltaan suppea tai laaja, mutta silti avoin.

Se onkin tietty hyvä kysymys, että onko riskinä, että jengi tehtailisi tarkoituksella liian suppeita APIa ja jättäisi relevantteja toiminnallisuuksia kuten datadumpin pois?

Joka tapauksessa IMHO data dump ei ole must have kamaa.

Kaiken datan irroittaminen järjestelmästä ei ole edes avoimen rajapinnan tavoitteiden mukaista, koska useiden järjestelmien (sekä bisnesmallien) kannalta järkevämpää on käyttää rajapintaa kuin alkaa tarjota 'täydellistä' kopiota datan sisällöstä. Data exporttien ongelma on usein siinä että ne ovat usein käytännön tasolla lähempänä raportteja, sillä alkuperäisissä tietokanta-pohjaisissa järjestelmissä data on yleensä hajautettuna eri paikkoihin. Data export ei siis välttämättä sisällä sellaisenaan käyttökelpoista rakennetta datasetille, vaikka se (esimerkiksi) JSON-muotoisena olisikin koneellisesti käsiteltävissä.

Joku oli kuulema valittanut tästä, joten nyt tämä on täällä käsiteltynä (ja dokumentoituna). Eli alkuperäinen kommentti tarkoitti, että rajapinnan takana oleva data olisi saatavissa ajatuksella "select *" -> eli kaikki rajapinnan tarjoama data.

Osa rajapinta-toteutuksista (kuten GraphQL) mahdollistavat isojenkin datamäärien exporttaamisen jos hakuparametrit ovat liian laajat. Keskeisin ongelma on kuitenkin se että tuollaisen salliminen aiheuttaa monessa tapauksessa huomattavia suorituskyky-ongelmia. Export-mahdollisuus kaikesta datasta kerralla voi olla hyvä ominaisuus, mutta sen vaatiminen ei edistä tavoitteita rajapintojen määrän lisäämisestä.

Jos rajapinnan kautta saatavilla oleva data on jo avointa (kuten tämän issuen otsikosssa lukee), ei sitä tarvitse API:n kautta olla kokonaisuudessaan exportattuna tarjollaa. Erillinen linkki "koko daravarantoon" riittää tai se on tarjottu saataville samasta paikasta kuin muukin data ja siis rakenteisempana ja/tai elementteinä API:sta..

Käsitelty ja dokumentoitu.