On Oct 21, 2008, at 8:17 AM, Grant Ingersoll wrote:


On Oct 20, 2008, at 11:35 PM, Otis Gospodnetic wrote:

This is related to something I must have only day dreamed (dreamt?) about, but not actually mentioned on solr-dev. My feeling is we are moving Solr in a direction of a more general web service that can host various NLP and ML components, and no longer only do IR/Lucene. We see that with a few patches that Grant is cooking, I think we'll see that in the Solr+Mahout marriage down the road, and so on.

I somewhat agree, but I hesitate to go so far as saying a "general web service".

I won't suggest that solr is (or should be) a general web service, but wt=json/xml/python + RequestHandler makes a pretty nice cross platform interface all on its own.


I see Solr as a pretty nice platform for doing things like NLP/ML (see the AnalysisRequestHandler, TermVectorComponent, ClusteringComponent, LukeReqHandler, FacetingComp., Payloads, etc.), but I mostly view them as enhancing search/navigation. That is, things like clustering/faceting (they are closely related), named entity recognition, search, etc. all act as organizing components for structured and unstructured data. Expressing my vision for Solr (and actually, the Lucene TLP, too, if I put on my PMC hat) it's one that aims to bring coherence to (structured and unstructured) content. This starts with search as a foundation, since the indexing process creates much of the information that empowers the others. I think once you see the flexible indexing stuff added to Lucene Java, we'll see even more opportunity for making Solr even more powerful in these regards.


agree.




Is it time to start thinking about Solr sa a server for IR and ML and NLP tasks and see how the tightly coupled Lucene can be made more....pluggable?

Yeah, this is what the Solr 2.0 thread that Yonik started a few weeks ago aims to discuss, along with scalability/fault tolerance. More important, for me anyway, is the decoupling of the configuration. For instance, I see no reason why IndexSchema needs to know anything about an InputStream.

also agree.  The biggest challenge for 2.0 is decoupling configuration

As for Lucene, it's really quite good at serving as the backend store/enabler for all these tasks.


I have not messed with it yet, but perhaps also HBase...


At any rate, the question still remains as to how best to handle the QueryComponent :-)


aaah, your question!

I see two options:
1. If no other component needs docList or docSet and the query is empty, then skip the QueryComponent 2. add a 'runQuery' param (or somethign like that) and default to true. It can be turned off when not necessary.

I like option 1 better.

ryan


Reply via email to