Tôi gặp vấn đề sau với MongoDB. Tôi có một số dữ liệu địa lý từ đất nước của tôi và tôi phải lưu trữ chúng vào mongodb để thiết lập một dịch vụ tính năng Web đơn giản. Dịch vụ này chủ yếu sẽ làm các truy vấn hộp giới hạn sử dụng toán tử $within
. Dữ liệu ở định dạng GeoJSON. Vì vậy, tôi nhập khẩu lần đầu tiên tại các làng và thành phố được biểu diễn dưới dạng điểm ([1,2]
) ở định dạng này. Không vấn đề gì. Bước sông và đường tiếp theo là LineStrings và theo GeoJSON đại diện theo cách này [[1,2],[3,4]]
. Nhưng khi nhập khẩu các huyện (mà là trong thực tế đa giác và theo đặc tả GeoJSON 3 mờ arrrays) tôi đã nhận lỗi geo values have to be numbers
khi tạo chỉ mục.Lưu trữ các đa giác GeoJSON trong MongoDB
db.collection.ensureIndex({"geometry.coordinates" : "2d"});
Tất cả dữ liệu hợp lệ GeoJSON và nằm trong tọa độ 2d đơn giản trong EPSG: chiếu 4326.
Có ai có ý tưởng không?
2,6 sẽ hỗ trợ MultiPoint, MultiLineString, MultiPolygon và GeometryCollection http://docs.mongodb.org/manual/release-notes/2.6/ –
này lời khuyên làm việc cho tôi và tiết kiệm thêm logic ứng dụng! –