lucene-solr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan McKinley <ryan...@gmail.com>
Subject Re: search components (plugins)
Date Sun, 10 Jun 2007 18:04:09 GMT
> 
> Looking toward the future, and distributed search, this might be a
> natural place to add hooks to implement that distributed logic.  This
> would allow other people to efficiently support their custom
> functionality in a distributed environment.
> 
> Thoughts?
> 

I like it.  As is the prospect of adding field collapsing to standard, 
dismax, *and* MLT is ugly -- it shouldn't not be.

Is this the basic architecture you are suggesting?  A single handler 
that chooses what components are used in the request pipeline. 
Something like:

  // maybe debug
  debug = Debug?

  // choose one query method
  docs = Query( req, debug )
   - standard
   - dismax
   - mlt (as input)
   - ...

  // zero or more...
  info[] = Info( req, docs, debug )
   + facet
   + mlt (on each result)
   + ...

  // zero or more (passed as a chain)
  docs = Transform( req, docs, debug )
   + collapse
   + ???

  // zero or more
  fmt[] Format( req, docs )
   + highlight

  // Build the response
  rsp.add( docs  );
  rsp.add( info  );
  rsp.add( fmt   );
  rsp.add( debug );


I'm not sure how well this would work for distributed queries... 
doesn't formatting need to happen in the same place as the query?

Are there other general categories I'm missing?




Mime
View raw message