Goedenavond,
Recent was er weer eens een nieuwe dataset voor luchtfoto's beschikbaar,
250GB serieuze hoeveelheden data dus, waar meer mensen in geïnteresseerd
zijn, maar zou je dat dan als 1 partij moeten hosten? Ik ben van mening van
niet, als je open data gratis krijgt, mag je als gebruiker ook wel wat
bijdragen aan de distributie. Binnen openOV zitten we nog niet op die
hoeveelheden, al downloaden veel partijen dagelijks toch een GTFS bestand
van zo'n 250MB, maar ik denk dat het wel interessant is om onze data op
andere manieren aan te bieden zodat *iedereen* profiteert.
Ik ben gisteren eens gaan kijken wat voor opties zijn om data
gedistribueerd aan te bieden. IPFS is een open source techniek waarbij op
basis van inhoud een bestand kan worden geidentificeerd en verspreid.
Een voorbeeld is
https://ipfs.io/ipfs/QmX4NVnUysebABRxyTgA3xyGoW1VGSPRpdB12RRjb2ac1d
Stel dat je geinteresseerd bent in dit bestand wordt het naar je
toegehaald, in een cache geplaatst en mocht je buurman het bestand ook
willen gebruiken komt het niet alleen bij openOV vandaan, maar ook bij jou.
Handig als je nog 5 servers hebt draaien waar je hetzelfde bestand ook
gebruikt. Het mes snijdt aan veel kanten. Een andere grappige toepassing is
het direct kunnen gebruiken van een bestand. Zeker met NeTEx en .xml.gz
bestanden, zou je binnen ipfs directe operaties kunnen uitvoeren.
ipfs cat QmUyEzjFtnDxWaSpVUt5x96NZgE43Qc3E9gK7NRbAcSH2c | xmllint - | less
Binnen IPFS wijzigt de URI als de inhoud van het bestand verandert. Binnen
IPFS bestaat IPNS, een systeem dat een stabiele link maakt voor bestanden
die vaak wijzigen. Het werkt analoog aan het downloaden van
gtfs-openov-nl.zip terwijl je onder de motorkap eigenlijk
NL-OPENOV-20210417-gtfs.zip download. Dus we kunnen een IPNS link updaten,
iedere keer als er een bestand of map wijzigt. Daarnaast is er IPLD...
https://docs.ipld.io/#what-is-ipld
Mochten er mensen zijn die mee willen denken over de beste manier om een
map met dienstregelingen te delen of experimenteren met ipfs-cluster, ipld,
etc. hoor ik dat natuurlijk graag :)
--
Stefan