2013-01-13 27 views
5

Mam na mapie setki tysięcy obiektów. I wybierz z bazy prawie wszystkie (w prostokącie kontenera mapy na małą skalę) jest bardzo zła praktyka. Potrzebujesz klastrowania wewnątrz DB. W relacyjnej bazie danych często używana jest dodatkowa tabela - klaster, która jest wybierana jako pierwsza. Czy istnieje jedna z najlepszych praktyk w zakresie klastrowania geoprzestrzennego w MongoDB? Google nic nie mówi.Klasteryzacja geoprzestrzenna (MongoDB)

UPD. Poszukiwany w ten sposób, ale w MongoDB: https://gis.stackexchange.com/questions/11567/spatial-clustering-with-postgis

Odpowiedz

5

Dla setek tysięcy przedmiotów, wbudowany MongoDB geospatial indexing działa całkiem nieźle w zależności od tego, co robisz.

Mongo "Haystack Queries" może również być zgodne z tym, co myślisz.

Możesz być również zainteresowany tym discussion of Mongo's GIS capabilities compared to an RMDBS

+0

Tak, ale tylko geoprzestrzennych indeksowanie nie rozwiąże, jak wybrać klaster, ale nie tysiące obiektu w nim. Tj. Mongo nie oferuje rozwiązania z pudełka – Klimashkin

+1

Prawidłowo. To nie byłoby zbyt trudne implementowanie klastrów "kmeans" przy użyciu MongoDB. Do zrobienia, ale zdecydowanie nie po wyjęciu z pudełka. Szkic wykorzystujący MapReduce znajduje się tutaj: http://blog.data-miners.com/2008/02/mapreduce-and-k-means-clustering.html – mjhm