55 Geodaten
66========
77
8+ Dateiformate
9+ ------------
10+
11+ .. _pmtiles :
12+
13+ PMTiles
14+ ~~~~~~~
15+
16+ `PMTiles <https://docs.protomaps.com >`_ ist ein allgemeines Format für
17+ Kacheldaten, die durch Z/X/Y-Koordinaten adressiert werden. Dabei kann es sich
18+ um kartografische Vektorkacheln, :ref: `Fernerkundungsdaten <_remote-sensing >`,
19+ JPEG-Bilder oder ähnliches handeln.
20+
21+ Zum Lesen werden `HTTP Range Requests
22+ <https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests> `_ verwendet,
23+ um nur die relevanten Kacheln oder Metadaten innerhalb eines PMTiles-Archivs
24+ abzurufen. Die Anordnung der Kacheln und Verzeichnisse ist so konzipiert, dass
25+ die Anzahl der Anfragen beim Verschieben und Zoomen minimiert wird.
26+
27+ PMTiles ist jedoch ein schreibgeschütztes Format: Es ist nicht möglich, einen
28+ Teil des Archivs zu aktualisieren, ohne die gesamte Datei neu zu schreiben. Wenn
29+ ihr transaktionale Aktualisierungen benötigt, solltet ihr eine Datenbank wie
30+ SQLite oder :doc: `postgresql/postgis/index ` und `ST_asMVT
31+ <https://postgis.net/docs/ST_AsMVT.html> `_ verwenden.
32+
33+ .. seealso ::
34+ * `GitHub Repository <https://github.com/protomaps/PMTiles >`_
35+ * `PMTiles Version 3 Specification
36+ <https://github.com/protomaps/PMTiles/blob/main/spec/v3/spec.md> `_
37+
38+ Mapbox Vector Tiles (MVT)
39+ ~~~~~~~~~~~~~~~~~~~~~~~~~
40+
41+ Das `Mapbox Vector Tiles
42+ <https://docs.mapbox.com/data/tilesets/guides/vector-tiles-standards/> `_-Dateiformat
43+ speichert jede Kachel in einem Verzeichnisbaum wie :file: `/Z/X/Y.mvt `. Dies
44+ funktioniert gut für kleine Kachelsätze, aber das Aktualisieren einer kompletten
45+ globalen Pyramide mit ~300 Millionen Kacheln ist sehr ineffizient.
46+ :ref: `pmtiles ` ist dagegen eine einzige Datei, in deren Kacheln de-dupliziert
47+ sind, wodurch die Größe globaler Vektor-Basiskarten um ~70% reduziert werden.
48+
49+ Zum Schreiben muss die :ref: `gdal `-Bibliothek mit `SQLite
50+ <https://www.sqlite.org> `_ und `GEOS <https://libgeos.org >`_-Unterstützung
51+ installiert sein. Dabei werden die Mapbox Vector Tiles in SQLite wie
52+ :ref: `mbtiles ` gespeichert und können mit dem MBTiles-Treiber verarbeitet
53+ werden.
54+
55+ .. seealso ::
56+ * `Mapbox Vector Tile specification
57+ <https://github.com/mapbox/vector-tile-spec> `_
58+ * `MVT: Mapbox Vector Tiles
59+ <https://gdal.org/en/stable/drivers/vector/mvt.html> `_
60+
61+ .. _mbtiles :
62+
63+ MBTiles
64+ ~~~~~~~
65+
66+ `MBTiles <https://docs.mapbox.com/help/glossary/mbtiles/ >`_ ist ein
67+ Containerformat für Kacheldaten auf der Grundlage von SQLite. Es ist für den
68+ lokalen Zugriff optimiert, nicht wie :ref: `pmtiles ` auf den Zugriff via HTTP.
69+
70+ .. seealso ::
71+ * `MBTiles specification <https://github.com/mapbox/mbtiles-spec >`_
72+
873.. _geodata-repositories :
974
75+ Cloud Optimized GeoTIFF (COG)
76+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77+
78+ `Cloud Optimized GeoTIFF <https://cogeo.org >`_ ist eine Raster-TIFF-Datei, die
79+ ähnlich wie :ref: `pmtiles ` für das Lesen aus einem Cloud-Speicher optimiert ist.
80+ :ref: `pmtiles ` kann jedoch auch andere Kacheldaten, :abbr: `z.B. ( zum Beispiel ) `
81+ Vektor-Kacheln ausliefern. COG ist jedoch mit den meisten GIS-Programmen, die
82+ mit GeoTIFF arbeiten, abwärtskompatibel.
83+
84+ .. seealso ::
85+ * `OGC Cloud Optimized GeoTIFF Standard
86+ <https://docs.ogc.org/is/21-026/21-026.html> `_
87+
88+ .. _geoparquet :
89+
90+ GeoParquet
91+ ~~~~~~~~~~
92+
93+ `Parquet <https://parquet.apache.org >`_ ist ein quelloffenes,
94+ spaltenorientiertes Datendateiformat, das für die effiziente Speicherung und
95+ Abfrage von Daten entwickelt wurde. Es bietet effiziente
96+ Datenkomprimierungs- und -kodierungsverfahren mit optimierter Verarbeitung
97+ großer, komplexer Daten. `GeoParquet <https://geoparquet.org >`_ erweitert
98+ Parquet um interoperable Geodatentypen (Punkt, Linie, Polygon).
99+
100+ * :doc: `pyviz:matplotlib/geopandas/index ` unterstützt das `Lesen
101+ <https://geopandas.org/en/stable/docs/reference/api/geopandas.read_parquet.html> `_
102+ und `Schreiben
103+ <https://geopandas.org/en/stable/docs/reference/api/geopandas.GeoDataFrame.to_parquet.html> `_
104+ von GeoParquet.
105+ * `GeoParquet Downloader Plugin
106+ <https://plugins.qgis.org/plugins/qgis_plugin_gpq_downloader/> `_ für `QGIS
107+ <https://qgis.org> `_ ermöglicht Streaming-Downloads von großen
108+ GeoParquet-Datensätzen.
109+ * `DuckDB <https://duckdb.org >`_ erlaubt mit der `Spatial Extension
110+ <https://duckdb.org/docs/stable/extensions/spatial/overview.html> `_ das Lesen
111+ und Schreiben von GeoParquet-Dateien.
112+
113+ .. seealso ::
114+ * `GeoParquet specification <https://github.com/opengeospatial/geoparquet >`_
115+ * `GeoParquet Software <https://geoparquet.org/#implementations >`_
116+ * `validate_geoparquet.py
117+ <https://github.com/OSGeo/gdal/blob/master/swig/python/gdal-utils/osgeo_utils/samples/validate_geoparquet.py> `_
118+
10119Daten-Repositorien
11120------------------
12121
@@ -31,6 +140,8 @@ Software
31140Lesen und Schreiben
32141~~~~~~~~~~~~~~~~~~~
33142
143+ .. _gdal :
144+
34145`Geospatial Data Abstraction Library (GDAL) <https://gdal.org/en/latest/ >`_
35146 bietet eine einfache, aber leistungsfähige API zum Lesen und Schreiben von
36147 Hunderten von Datenformaten.
@@ -138,6 +249,8 @@ Lesen und Schreiben
138249.. seealso ::
139250 :ref: `geo-wrappers `
140251
252+ .. _remote-sensing :
253+
141254Fernerkundung
142255~~~~~~~~~~~~~
143256
0 commit comments