All,

I have knocked up what I think could be a really cool function query -
it allows you to retrieve a value from another core (much like a pseudo
join) and use that value during scoring (much like an
ExternalFileField).

Examples:
 * Selective boosting of documents based upon a category based value
 * boost on aggregated popularity values
 * boost on fast moving data on your slow moving index

It *works* but it does so very slowly (on 3m docs, milliseconds without,
and 24s with it). There are two things that happen a lot:

 * locate a document with unique ID value of X
 * retrieve the value of field Y for that doc

What it seems to me now is that I need to implement a cache that will
have a string value as the key and the (float) field value as the
object, that is warmed alongside existing caches.

Any pointers to examples of how I could do this, or other ways to do the
conversion from a key value to a float value faster?

NB. I hope to contribute this if I can make it perform.

Thanks!

Upayavira

Reply via email to