Nhập GeoJSON vào PostGIS


9

Tôi muốn nhập GeoJSON có sẵn trong kết xuất sau vào PostGIS nhưng tôi không thể nhập nó. Tôi đã nhập dữ liệu geousa có sẵn trong kết xuất công khai này vào MongoDB một cách trơn tru. Hãy cho tôi biết có cách nào để nhập dữ liệu này trực tiếp hoặc thông qua MongoDB không?

Vì dữ liệu này rất lớn, vui lòng kiểm tra dữ liệu sau:

{"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/SG_1iYphlxn9BSHyGrpv1aXKc_47.490894_19.056792@1308163237.json",
"address": "N\u00e1dor u. 23.", "owner": "simplegeo", "postcode": "1051"}}

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


3
Bạn nên cảnh báo rằng tập dữ liệu của bạn là 2,2 GB. Để làm cho nó hấp dẫn hơn để giúp bạn, bạn có thể chuẩn bị dữ liệu thử nghiệm chỉ với một vài tính năng không? Đó là đủ tốt để thử nghiệm.
dùng49584

thêm định dạng dữ liệu để tham khảo.
siraj

1
Làm thế nào bạn đã cố gắng nhập dữ liệu, và thông báo lỗi là gì?
til_b

GDAL đọc một tính năng tốt. Bạn có thể tự kiểm tra bằng cách lưu nó vào đĩa và chạy ogrinfo -al sample.json. Bạn nên thực sự nói những gì bạn đã làm và làm thế nào nó thất bại.
dùng49584

Tôi đã thực thi: ogr2ogr -f "PostgreSQL" PG: "dbname = my_database user = postgres" "source.geojson" nhưng tôi gặp lỗi như: FAILURE Không thể mở nguồn dữ liệu `source.geojson 'với các trình điều khiển sau. (hiển thị danh sách các trình điều khiển)
siraj

Câu trả lời:


20

Bạn có thể sử dụng PostGIS ST_GeomFromGeoJSONđể mang lại phần hình học của GeoJSON.

Tốt hơn nữa, bạn có thể sử dụng ogr2ogrđể nhập toàn bộ tài liệu JSON :

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

(Tôi chưa kiểm tra dữ liệu này với dữ liệu của bạn, hãy thêm nhận xét nếu bạn gặp sự cố.)


1
Tôi đang gặp lỗi như: FAILURE Không thể mở nguồn dữ liệu `source.geojson 'với các trình điều khiển sau. (hiển thị danh sách các trình điều khiển).
siraj

Đó có phải là đường dẫn đầy đủ đến GeoJSON của bạn
alphabetasoup

Tôi đã thêm đường dẫn đầy đủ là tốt, tôi vẫn nhận được cùng một lỗi.
siraj

1
gdal-bin đã được cài đặt trong hệ thống của tôi (ubfox).
siraj

2
Tôi sẽ không tải xuống 2GB để xem, nhưng các tính năng của bạn là feature collectiongì?
alphasoup

3
./ogr2ogr -f "PostgreSQL" PG:"dbname=theDatabaseName user=postgres" "/Users/dev/Downloads/theGeometry.json" -where "name not like 'Whatever%'" -nln theFeatureName -overwrite

ogr2ogrhiển thị danh sách các trình điều khiển khi không tìm thấy tập tin. trong trường hợp đó chỉ cần chuyển trong đường dẫn đầy đủ đến tệp json

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.