Nein, Pyogrio unterstützt keine inkrementellen Schreibvorgänge oder Anhänge an vorhandene Datenquellen. Es verwendet einen zustandslosen Ansatz zum Lesen oder Schreiben von Daten, bei dem alle Daten in einem einzigen Durchgang gelesen oder geschrieben werden. Dies bedeutet, dass das Hinzufügen neuer Datensätze zu einer vorhandenen Datenquelle oder das Anhängen an eine Datei ohne Neuschreiben der gesamten Datei nicht unterstützt wird[1][3].
Im Gegensatz dazu unterstützt Fiona inkrementelle Schreibvorgänge oder das Anhängen an vorhandene Datenquellen. Obwohl es sich um eine Bibliothek mit vollem Funktionsumfang für die Arbeit mit OGR-Vektordatenquellen handelt, ermöglicht Fiona mehr Flexibilität und Kontrolle über die Datenverarbeitung, einschließlich inkrementeller Schreibvorgänge oder Anhänge an vorhandene Datenquellen[1][3].
Hauptunterschiede
- Fiona: Unterstützt inkrementelle Schreibvorgänge oder das Anhängen an vorhandene Datenquellen.- Pyogrio: Unterstützt keine inkrementellen Schreibvorgänge oder Anhänge an vorhandene Datenquellen. Es verwendet einen zustandslosen Ansatz zum Lesen oder Schreiben von Daten, bei dem alle Daten in einem einzigen Durchgang gelesen oder geschrieben werden.
Vergleich mit Fiona
- Fiona: Flexibler und robuster, mit einer breiteren Palette unterstützter Dateiformate und mehr Kontrolle über die Datenverarbeitung.- Pyogrio: Optimiert für schnellere I/O-Vorgänge, speziell für GeoPandas und Reduzierung der für I/O-Vorgänge erforderlichen Datentransformationen.
Installation und Kompatibilität
- Fiona: Weit verbreitet und unterstützt eine breitere Palette von Plattformen, einschließlich Windows.- Pyogrio: Verfügbar auf Conda-forge für Linux und MacOS, aber noch nicht auf PyPi, da das Packen binärer Abhängigkeiten für Windows komplex ist. Es erfordert kompatible Versionen von GDAL und Numpy von Conda-Forge für die Raw-I/O-Unterstützung und Geopandas, Pygeos und ihre Abhängigkeiten für die GeoDataFrame-I/O-Unterstützung[1][3].
Standard-Engine in GeoPandas
- Fiona: Derzeit die von GeoPandas verwendete Standard-Engine zum Lesen und Schreiben von Dateien.- Pyogrio: Wird aufgrund seines Potenzials für erhebliche Beschleunigungen die Standard-Engine in GeoPandas 1.0 sein[5].
Zusammenfassend lässt sich sagen, dass beide Bibliotheken zwar für die Arbeit mit Geodaten konzipiert sind, Fiona jedoch mehr Flexibilität und Kontrolle über die Datenverarbeitung bietet, einschließlich inkrementeller Schreibvorgänge oder Anhänge an vorhandene Datenquellen. Pyogrio hingegen ist für schnellere I/O-Vorgänge optimiert und zielt speziell darauf ab, die für GeoPandas-I/O-Vorgänge erforderlichen Datentransformationen zu reduzieren.
Zitate:[1] https://pyogrio.readthedocs.io/en/latest/about.html
[2] https://github.com/geopandas/geopandas/issues/2908
[3] https://pypi.org/project/pyogrio/0.2.0/
[4] https://pyogrio.readthedocs.io/en/latest/introduction.html
[5] https://geopandas.org/en/stable/docs/reference/api/geopandas.read_file.html