I'm currently developing an application which heavily depends on geospatial data access performance. I'm using Spring for my business layer, Hibernate for my data access layer, and MySQL 5 for the database part.
I'm studying the GIS features that have been added recently to MySQL (
http://dev.mysql.com/doc/refman/5.0/en/ ... ction.html) and it seems quite impressive, but I'm starting to wonder whether I'll be able to access such data through my Hibernate data access layer.
For example, if I store points in my database and I want to retrieve all points whose distance to a given reference point is less than a given value. For now, my algorithm gets ALL the points and does the filtering in Java code. Of course the performance of this algorithm is awful so the ideal would be to get this filtering down to the database. For that, I would need a HibernateQL construct to do something like "from Points where distance(:referencePoint) < :referenceDistance".
Has there already been some work done in this area? Has anyone managed to get that kind of use-case sorted out?
Thx in advance.