Hi folks:

 

I have a question about how Solr-backed browse works.

 

I'm not intimately familiar with Solr so my terminology might not be
accurate, but I hope you understand the spirit of what I'm asking:

 

I assume that there are browse indexes in Solr for each field type to be
searched (e.g. "title", "author", "subject", etc). 

 

When a browse link is clicked, a "match all" query is run against that
browse index. It is then sorted alphabetically and ordered
ascending/descending. The results shown are then based on an offset and
result limit (e.g. 20).

 

So the first set of results is 0-19 then the next page is 20-40 and so on.

 

I notice though that there are also "jump to" features where you can specify
the first few letters or the letter it starts with (e.g. E). In this case,
how does it know what offset to use? 

 

I've poked around the code a bit and it looks like each author's place in
the sorted list is determined by a "sort value" that is determined prior to
indexing. That way, you can query the data however you want but are always
able to step back or forward by your "result limit".

 

Is that the case?

 

If so, how does adding/modifying records factor into this? Surely it would
be quite a performance hit to re-sort all the browse indexes each time you
add/modify a record, no?

 

I would love some enlightenment : ).

 

Thanks,

 

-David

------------------------------------------------------------------------------
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
_______________________________________________
DSpace-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-tech
List Etiquette: https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette

Reply via email to