Hi Nicholas, Given that boosting is generally inherently fuzzy / inexact thing, you can likely get away with using simpler calculations. dist() can do the Euclidean distance (i.e. the Pythagorean theorem). If your data is in just one region of the world, you can project your data into a 2-D plane (a so-called "projection") and use the Euclidean distance. If your data is everywhere, you may need to use multiple projections, putting them in separate fields for each projection and then choose the best projected set of coordinates based on your starting point.
~ David Nicholas Ding wrote > Yes, I did. But instead of sorting by geodist(), I use function query to > boost by distance. That's why I noticed the heavy calculation happened in > the processing. > > Example: > bf=recip(geodist(), 50, 5) > > Basically, I think the boost function will iterate all the results, and > calculate the distance. > > > > On Mon, May 13, 2013 at 1:27 PM, Yonik Seeley < > yonik@ > > wrote: > >> On Mon, May 13, 2013 at 1:12 PM, Nicholas Ding < > nicholasdsj@ > > >> wrote: >> > I'm using geodist() in a recip boost function. I noticed a performance >> > impact to the response time. I did a profiling session, the geodist() >> > calculation took 30% of CPU time. >> >> Are you also using an "fq" with geofilt to narrow down the number of >> documents that must be scored? >> >> -Yonik >> http://lucidworks.com >> ----- Author: http://www.packtpub.com/apache-solr-3-enterprise-search-server/book -- View this message in context: http://lucene.472066.n3.nabble.com/How-to-improve-performance-of-geodist-tp4063004p4063136.html Sent from the Solr - User mailing list archive at Nabble.com.