views:

93

answers:

1

I am trying to group points of geospatial data based on density and relative distance. Is there a way that this can be done in SQL Server 2008 using the spatial features or would it be better to translate the data into graph data and use a graph clustering algorithm?

A: 

As far as I know there are no inbuilt spatial methods for clustering points in SQL Server 2008. I've never come across any examples of this done in T-SQL / at the database level. It would be far easier to go with your second approach and do these calculations at the application level - using R, GRASS, MapServer depending on your needs / development preferences.

If it is just for displaying clusters of points (rather than associated analysis) then check out the following links:

OpenLayers

http://openlayers.org/dev/examples/strategy-cluster.html

Google

http://googlemapsapi.martinpearman.co.uk/articles.php?cat_id=1

http://econym.org.uk/gmap/example_clusterer.htm

Python / PostGIS

http://wiki.osgeo.org/wiki/Point_Clustering

geographika