I've been developing some web maps in ESRI's JSAPI. Currently I'm storing the following layers in SQL Server:
1,000,000 points
30,000 polygons
1,000 polyons
These need to be displayed on top of one another. I also need to be able to do somewhat advanced querying, and identifying of features.
I've built some tools so far, but I'm curious if there are better options. I've looked at CartoDB
, but currently it doesn't support multiple layers. It seems you can use CartoDB and the Google Maps API, but I feel like that's adding extra complexity. I've read some about leaflet, mapbox, opengeo, and others.
So what it boils down to is what is a decent alternative to SQL Server/ArcGIS Server/ESRI JSAPI?
Thanks, Evan
An equivalent open source stack would be PostGIS/PostgreSQL + GeoServer + OpenLayers. Store your data in the database, render via GeoServer, interface with OpenLayers. If you're building a more complicated built-to-purpose app, build interface with GeoExt/ExtJS.
As a commenter notes, you might be able to serve a lot of your queries directly out of the spatial database, by building simple spatial SQL queries and passing them to the backend. For rendering 1M points you'll probably end up needing the rendering engine though. Look at the GeoServer SQL layers as a potential route for dynamic rendering of complex query layers.
The components I mention are downloadable separately (postgis.org, geoserver.org, openlayers.org) or as an integrated chunk via the OpenGeo Suite (opengeo.org).
You might want to take a look at MapDotNet, especially if you intend to keep your data in SQL Server. I don't have any direct experience with them but from what I have read and heard it sounds like a good product. They have an HTML5/JS API/solution called touchgeo as well.
And as @stakx noted above, you might want to check out MapServer.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With