Recently the HTML5 bandwagon has gained a lot more traction, and I'm going to develop a prototype for a map with fast client-side drawing on top of it, using some of the goodies that HTML5 provides us.
The basic idea is:
- Bing Maps or Leaflet mapping-wise
- Html5 Canvas to draw the data (points, heatmaps, grids, whatever)
- Html5 websockets to fetch the data
- NodeJS to create an ultra-fast server to return the data to the client (without HTTP protocol overhead, just a plain TCP socket).
- MongoDB to handle the data.
Also, I want to be able to handle thousands (if not millions) of coordinates at once.
There are some variants that I would like to try, particularly:
- Fetch all data to client-side vs fetch only the visible data incrementally.
- Use the Leaflet CanvasLayer vs a "manual" canvas on top of the bing maps div.
- MongoDB spatial indexes
- The server requests with/without throttling
- Use Map/Reduce on MongoDB to minimize the data transfer / processing.
I'll soon write some posts on the subject.