: Can someone please help me understand the extent to which solr allows : access to lucene? ... : I have my own data structures (in java) that handle efficient graph : walks,etc and eventually : apply a whole bunch of math to re-rank results/result trees. : In a more traditional setting, i can imagine using lucene as an external jar : dependency, hook : it up with the rest of my code in java and ship it off into Tomcat.
Solr provides an API layeron top of the normal Lucene Java APIs -- in some areas these APIs are thin and very transparent, and in other areas things get more complicated. Just about any existing Lucene code can be put into a SolrPlugin (from a SolrCore you can get access to an IndexWriter, or an IndexReader) but depending on how exotic your custom code is, it might not play nice with other features of Solr. For some things, you may find that porting some of your code to use the Solr APIs makes your life easier; for other things you may find it neccessary to accomplish your goals (ie: the distributed search processing really requires that you use the SeachComponent APIs and stick to DocSets and DocLists -- you can't just iterate over one giant IndexReader or anything like that) It's really going to depend on the nitty gritt aspects of what your existing code looks like, and how fully you want to "embrace" Solr itegration. -Hoss