GeoParquet
Ein Dateiformat für Vektor-Geodaten auf Basis von Apache Parquet. Es speichert spaltenweise, so bleiben große Datensätze klein und schnell abfragbar.
Große offene Datensätze wie Overture Maps erscheinen heute als GeoParquet. Das Format erweitert Apache Parquet, ein in der Datenanalyse verbreitetes Format für große Tabellen, um Geometrien. Die Spezifikation legt fest, wie die Geometriespalte gespeichert wird und wie die Datei ihr Koordinatensystem angibt, damit verschiedene Programme dieselbe Datei gleich lesen.
Anders als GeoPackage oder Shapefile speichert Parquet die Daten spaltenweise statt zeilenweise. Eine Abfrage, die drei von fünfzig Attributen braucht, liest nur diese drei, und gleichartige Werte in einer Spalte lassen sich gut komprimieren. Bei Millionen von Objekten bedeutet das kleinere Dateien und schnellere Abfragen. Werkzeuge wie DuckDB, QGIS und GDAL können solche Dateien außerdem direkt im Cloud-Speicher abfragen, ohne sie vorher herunterzuladen.
| id | kategorie | geometrie |
|---|---|---|
| 1 | Schule | POINT (11.57 48.14) |
| 2 | Apotheke | POINT (11.58 48.13) |
| 3 | Schule | POINT (11.56 48.15) |
| Block | Inhalt |
|---|---|
| 1 | 1 · Schule · POINT (11.57 48.14) |
| 2 | 2 · Apotheke · POINT (11.58 48.13) |
| 3 | 3 · Schule · POINT (11.56 48.15) |
| Block | Inhalt |
|---|---|
| id | 1 · 2 · 3 |
| kategorie | Schule · Apotheke · Schule |
| geometrie | POINT (11.57 48.14) · POINT (11.58 48.13) · POINT (11.56 48.15) |
Wer die Schulen zählen will, muss bei zeilenweiser Speicherung jeden Block lesen, samt Geometrie. Bei spaltenweiser Speicherung genügt der Block kategorie. Und weil eine Spalte nur eine Art von Wert enthält, lassen sich Wiederholungen wie „Schule“ gut komprimieren.
In GOAT ist GeoParquet das Format für eigene Routing-Netzwerke. Seit Version 3.0 kommt ein Straßennetz als ZIP-Datei mit segments.geoparquet und connectors.geoparquet.