Good afternoon Solr community, I have a situation where I require the following solr features.
1. Highlighting must be available for the matched search results 2. After a user performs a regular solr search (/select, rows=10) I require a drill down which has the potential to export a large number of results (1000s +). Here is how I’ve approached each of the two problems above 1.Highlighting must be available for the matched search results My implementation is in pattern with the recommend approach. A stored=false indexed=true copy field with the individual fields to highlight analysed, stored=true, indexed=false. <field name="First_Names" type="text_general" indexed="false" stored="true" multiValued="true"/> <field name="Last_Names" type="text_general" indexed="false" stored="true" multiValued="true"/> <copyField source=" First_Names " dest=”Full_Names"/> <copyField source=" Last_Names " dest="Full_Names"/> <field name="Full_Names" type="text_general" indexed="true" stored="false" multiValued="true"/> 2.After a user performs a regular solr search (/select, rows=10) I require a drill down which has the potential to export a large number of results (1000s+ with no searching required over the fields) >From all the documentation the recommended approach for returning large result >sets is using the /export request handler. As none of my fields qualify for >using then /export handler (i.e. docValues=true) is my only option to have >additional duplicated fields mapped as strings so they can be used in the >export process? i.e. using my example above now managed-schema now becomes <field name="First_Names" type="text_general" indexed="false" stored="true" multiValued="true"/> <field name="Last_Names" type="text_general" indexed="false" stored="true" multiValued="true"/> <copyField source=" First_Names " dest=”Full_Names"/> <copyField source=" Last_Names " dest="Full_Names"/> <field name="Full_Names" type="text_general" indexed="true" stored="false" multiValued="true"/> <copyField source=" First_Names " dest=”First_Names_Str"/> <copyField source=" Last_Names " dest="Last_Names_Str"/> <field name="First_Names_Str" type="string" indexed="false" stored="true" multiValued="true"/> <field name="Last_Names_Str" type="string" indexed="false" stored="true" multiValued="true"/> If I did not require highlighting I could change the initial mapped fields (First_Names, Last_Names) from type=text_general to type=string and save the additional storage in the index but in my current situation I can’t see a way around having to duplicate all the fields required for the /export handler as strings. Is this how people typically handle this problem or am I completely off the mark with my design? Any advice would be greatly appreciated, Thanks Dwane