FlatGeobuf
FlatGeobuf - dit nye, åbne dataformat til GIS og geodata
Endelig kommer der et nyt open source dataformat, som gør op med shapefilens begrænsninger når man vil læse, skrive eller udveksle geodata.
Ingen max filstørrelse
Med FlatGeobuf er der ingen begrænsninger. Du kan gemme store, datavolumener i en enkelt fil, fx. alle matriklens jordstykker - uden problemer.
Velegnet til streaming
FlatGeobuf er velegnet til streaming. Det betyder at en FlatGeobuf-fil kan ligge i skyen eller på en server og alligevel være tilgængelig på en effektiv måde.
Høj hastighed
FlatGeobuf er designet med høj hastighed for øje - og det er hurtigere end alternativerne. Du kan altså let panorere og zoome i dit GIS uden at skulle vente unødigt.
De største highlights
Hvad kan FlatGeobuf filformatet?
FlatGeobuf ophæver irriterende begrænsninger som den gamle shapefile har. Der er fx. intet max på filstørrelse, på længde af feltnavne eller feltstørrelser.
Klar til brug i mange GIS-løsninger
FlatGeobuf understøttes allerede af GDAL og OGR og mange af de andre spatiale biblioteket som ligger “i maven” af mange GIS. Det betyder at fx. QGIS og andre GIS-løsninger allerede understøtter og kan anvende det nye dataformat, som er open source. Björn Harrtell fra Septima, er initiativtager og Septima støtter projektet, men alle kan bidrage og anvende formatet og koden bag.
Intet max på filstørrelse
Flere af de mest udbredte filformater til GIS har en størrelsesbegrænsning - dette gælder fx. shapefil-formatet, der er meget udbredt, men også præget af voldsomme begrænsninger som følge af sin alder. Større datasæt som fx alle Matriklens jordstykker GeoDanmarks bygninger eller OpenStreetMap vejnettet i EU, kan umuligt pakkes ned i en shapefil. FlatGeobuf har ikke denne begrænsning - måske er der dog en teoretisk grænse omkring 1 TB.
Intet max på feltnavne
I shapefile er der max 10 tegn til et feltnavn, hvilket betyder at feltnavne ofte må forkortes og blive uforståelige. I FlatGeobuf er ingen begrænsninger på længden - et feltnavn kan derfor hedde ”datafordelerOpdateringstid” eller ”strandbeskyttelsesareal” - dvs. at man kan bruge samme attributnavn som for eksempel i Datafordeleren.
Intet max på tekst
Ældre filformater som fx shapefile har et max på 254 tegn i et tekstfelt. Ligesom flere af de øvrige begrænsninger skyldes det at shapefile bygger på et udtjent databasesystem, dBase. I FlatGeobuf kan attributværdier have (næsten) vilkårlig længde - teoretisk dog med et max omkring 2 GB.
Tegnsæt og encoding
FlatGeobuf anvender encoding UTF-8, hvilket betyder at der aldrig er problemer med oversættelse af internationale tegnsæt - først og fremmest Æ, Ø, Å, Ä, Ö, Ü osv. Shapefile, som har mange år i bagagen, er berygtet for at give ulæselige og uskønne oversættelser af tekst og specialtegn, på grund af problemer med encoding og tegnsæt.
Null-værdier
Det er vigtigt at håndtere værdien ’null’ korrekt - det er et problem i shapefile hvor en attribut som har værdien ’null’ oversættes til tallet ’nul’ (0), til et blanktegn eller til den laveste negative værdi - alt efter attributtens datatype. FlatGeobuf håndterer null-værdier korrekt, så de kan skelnes fra fx et nul (0) eller en tom tekststreng.
Streaming
FlatGeobuf understøtter streaming og random access, det betyder, at en applikation (fx. QGIS) kun behøver at hente data for det udsnit, man arbejder med. Man kan altså have en stor fil med alle bygninger fra GeoDanmark, men når man kun kigger på et udsnit, kan programmet nøjes med at hente data for netop dette udsnit - og ikke hele landet selv om filen faktiske indeholder bygninger for hele landet. Det er en tilgang, der er med til at sikre en god brugeroplevelse gennem høj hastighed.
Høj hastighed
Der er ikke noget mere irriterende end at skulle vente på en it-løsning, der er langsom. FlatGeobuf formatet er designet med henblik på hastighed - blandt andet ved at understøtte streaming og random access, men også ved at bygge på et geografisk indeks.
Github projekt
FlatGeobuf er et åbent github projekt - du kan se projektet her