Hi Erick Many Thanks for your reply. I got your point. one question on this: is it possible to give more priority to those docs which has higher indexing time boosting against query time boosting. I am trying to achieve product promotions using this implementation. can you please guide how should i implement this feature ?
Many Thanks, Dhaivat Dave On Fri, Aug 2, 2013 at 5:34 PM, Erick Erickson <erickerick...@gmail.com>wrote: > Add &debug=all to your query, that'll show you exactly how the scores > are calculated. But the most obvious thing is that you're boosting > on the titleName field in your query, which for doc 123 does NOT > contain "phone" so I suspect the fact that "phone" is in the titleName > field for 122 is overriding the index-time boost, especially since "phone" > appears in both title and description for 122. > > Best > Erick > > > On Fri, Aug 2, 2013 at 7:53 AM, dhaivat dave <dhaiva...@gmail.com> wrote: > > > Hello All, > > > > I want to boost certain products on particular keywords. for this i am > > using solr's indexing time boosting feature. i have given index time > > boosting with "1.0" value to all documents in my solr indices. now what i > > am doing is when user want to boost certain product i just increase index > > time boosting value to 10.0 of that particular product only. now the > > problem is: i have also used query time boosting (for boosting documents > > when searched term found directly in title field) and so even i have > > increase the indexing time boosting value of the particular product it > > appears after query time boosted product. > > > > consider following example: > > > > - I have indexed couple document related to mobile phone (nokia,samsung > and > > so on) > > - All the documents contains the title field which contains following > value > > *Doc1:* > > *==* > > <doc boost="1.0"> > > <id>122</id> > > <titleName>Nokia Phone 2610 </titleName> > > <description>Suprb phone</description> > > .. > > </otherField> > > </doc> > > > > *Doc2: * > > * ==* > > <doc boost="1.0"> > > <id>123 > > <titleName>Samsung smwer233</titleName> > > <description>Samsung phone</description> > > .. > > </otherfield> > > </doc> > > > > - now if some one searches for "Phone" it will display first "Nokia > Phone" > > second "Samsung Phone" (by searching in <titleName> and <description> > > field) > > - to display "Samsung" before "Nokia" i have boost the index time value > , > > some thing like below > > > > <doc boost="5.0"> > > <id>123 </id> > > <titleName>Samsung smwer233</titleName> > > <description>Samsung phone</description> > > .. > > </otherfield> > > </doc> > > > > - i am also using boosting at query time to boost the document which has > > found terms in <titleName> field > > *"titleName:phone^4"* > > > > now even though i have higher boosting in samsung mobile it displays > nokia > > mobile first and then samsung mobile. > > > > can any one please guide how can i boost particular document using index > > time boosting(it should appear first even though i am applying query time > > boosting). > > > > Many Thanks, > > Dhaivat Dave > > > -- Regards Dhaivat