Importieren Sie GeoJSON in PostGIS

9

Ich möchte GeoJSON, das im folgenden Speicherauszug verfügbar ist, in PostGIS importieren, kann es jedoch nicht importieren. Ich habe bereits Geousa-Daten, die in diesem öffentlichen Dump verfügbar sind, reibungslos in MongoDB importiert. Lassen Sie mich wissen, ob es eine Möglichkeit gibt, diese Daten direkt oder über MongoDB zu importieren.

Da diese Daten sehr groß sind, überprüfen Sie bitte folgende Daten:

{"geometry": {"type": "Point", "coordinates": [19.056792, 47.490894]}, "type": "Feature",
"id": "SG_1iYphlxn9BSHyGrpv1aXKc_47.490894_19.056792@1308163237",
"properties": {"website": "http://mito.hu", "city": "Budapest",
"name": "Mito Europe", "tags": ["online", "communication", "design",
"branding", "development", "mito"], "country": "HU", "classifiers":
[{"category": "Professional", "type": "Services", "subcategory": "Advertising"}], "href": 
"http://api.simplegeo.com/1.0/features/[email protected]",
"address": "N\u00e1dor u. 23.", "owner": "simplegeo", "postcode": "1051"}}

http://s3.amazonaws.com/simplegeo-public/places_dump_20110628.zip

Siraj
quelle
3
Sie sollten warnen, dass Ihr Datensatz 2,2 GB groß ist. Könnten Sie Testdaten mit nur wenigen Funktionen vorbereiten, um die Attraktivität für Sie zu erhöhen? Das ist gut genug zum Testen.
user30184
Datenformat als Referenz hinzugefügt.
Siraj
1
Wie haben Sie versucht, die Daten zu importieren, und wie lautet die Fehlermeldung?
til_b
GDAL liest, dass eine Funktion in Ordnung ist. Sie können es selbst testen, indem Sie es auf der Festplatte speichern und ausführen ogrinfo -al sample.json. Sie sollten wirklich sagen, was Sie getan haben und wie es fehlgeschlagen ist.
user30184
Ich habe ausgeführt: ogr2ogr -f "PostgreSQL" PG: "dbname = my_database user = postgres" "source.geojson", aber ich erhalte die Fehlermeldung: FAILURE Datenquelle `source.geojson 'kann mit den folgenden Treibern nicht geöffnet werden. (zeigt Liste der Fahrer)
Siraj

Antworten:

20

Sie können PostGIS verwenden ST_GeomFromGeoJSON, um nur den Geometrieteil des GeoJSON einzubringen.

Besser noch, Sie können ogr2ogrdas gesamte JSON-Dokument importieren :

ogr2ogr -f "PostgreSQL" PG:"dbname=my_database user=postgres" "source_data.json" -nln destination_table -append

(Ich habe dies nicht mit Ihren Daten getestet. Fügen Sie einen Kommentar hinzu, wenn Sie Probleme haben.)

alphabetasoup
quelle
1
Ich erhalte die Fehlermeldung: FEHLER Datenquelle `source.geojson 'kann mit den folgenden Treibern nicht geöffnet werden. (Liste der Treiber anzeigen).
Siraj
Das muss der vollständige Weg zu Ihrem Geojson sein
Alphabetasoup
Ich habe auch den vollständigen Pfad hinzugefügt, trotzdem erhalte ich den gleichen Fehler.
Siraj
1
gdal-bin ist bereits in meinem System installiert (Ubuntu).
Siraj
2
Ich werde nicht 2 GB herunterladen, um zu schauen, aber sind Ihre Funktionen ein feature collection?
Alphabetasoup
3
./ogr2ogr -f "PostgreSQL" PG:"dbname=theDatabaseName user=postgres" "/Users/dev/Downloads/theGeometry.json" -where "name not like 'Whatever%'" -nln theFeatureName -overwrite

ogr2ogrZeigt eine Liste der Treiber an, wenn die Datei nicht gefunden wird. In diesem Fall übergeben Sie einfach den vollständigen Pfad zur JSON-Datei

acmeincorporated
quelle