Hi there, I need some advice on how to implement this using solr: We have two tables: urls and bookmarks. - Each url has four fields: {guid, title, text, url} - One url will have one or more bookmarks associated with it. Each bookmark has these: {link.guid, user, tags, comment}
I'd like to return matched urls based on not only the "title, text" from the url schema, but also some kind of aggregated popularity score based on all "bookmarks" for the same url. The popularity score should base on number/frequency of bookmarks that match the query. For example, a search for "Paris". Let's say 15 out of 1000 people has bookmarked a tripadvisor.com page with Paris in tag or comments field; another 15 out of 20 people bookmarked www.ratp.info/orienter/cv/carteparis.php with Paris in it. I'd like to rank the later one, ie the metro planner higher. I am thinking of implementing org.apache.solr.search.ValueSourceParser which takes a guid and run a "embedded query" to get a score for this guid in the bookmark schema. This would probably requires two separated indexes to begin with. Keen to hear ideas on what's the best way to implement this and where I should start. Thanks, Alex