You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by "balaji.a" <re...@gmail.com> on 2009/09/16 15:26:30 UTC

When to use Solr over Lucene

Hi All,
   I am aware that Solr internally uses Lucene for search and indexing. But
it would be helpful if anybody explains about Solr features that is not
provided by Lucene.

Thanks,
Balaji.
-- 
View this message in context: http://www.nabble.com/When-to-use-Solr-over-Lucene-tp25472354p25472354.html
Sent from the Solr - User mailing list archive at Nabble.com.


Re: When to use Solr over Lucene

Posted by Mark Miller <ma...@gmail.com>.
balaji.a wrote:
> Hi All,
>    I am aware that Solr internally uses Lucene for search and indexing. But
> it would be helpful if anybody explains about Solr features that is not
> provided by Lucene.
>
> Thanks,
> Balaji.
>   
Any advanced Lucene application generally goes down the same path:

Build a system to manage IndexReaders and IndexWriters and concurrency
and index view refreshing. This is very
hard for beginners to get right - though many have tried.

Figure out how you want to manage (or not) some kind of schema. Write
something that *basically* does the job. Write something so that none
java programmers can setup the schema so you don't have to.

Add niceties on top, like support for efficient autocomplete and
spellchecking and faceting and plugins.

Figure out a scheme to replicate and distribute indexes so that you can
scale.

Add support for other APIs. REST, perl, whatever else your crazy
superiors are pulling from your crazy coworkers.

Add support for parsing rich documents, like pdfs, ms word, and dozens
of other formats.

Do it a short time with a small team. Spend a lot of time fixing bugs
and whacking at performance issues. Get most of it wrong because you
will the first time you do this. If your lucky: get a lot of it right
too and feel great about your large complicated system as you hurry to
fix all of its many imperfections - and then spend lots of time keeping
up with the latest changes, features, and improvements added to Lucene.
Or sit on the old features frozen in time. You won't have done it all
either - its too much work to do it all well in a reasonable amount of
time for a dev team that is not actually supposed to be building a
search server. You will cut stuff, you will skimp on stuff, and you will
make tradeoffs left and right.

I've gone down that path - I started *just* before Solr got rolling in
06. Lots of people have gone down that path or are on that path.

Solr does all of that for you, and it does it well. Many of those that
work on Lucene work on Solr. New Lucene features automatically go into
Solr. Solr will be maintained and developed by a team of people that are
not you, while your homegrown system (which does only <60% of what Solr
does and does it worse) will likely cobweb over 95% of the code. I love
developing with Lucene, and I bet you will too - but most people should
be using Solr.

Certain, target applications can still benefit using Lucene. Some Lucene
features don't move to Solr for a while. If you want near real-time,
thats only in Lucene right now. If you want everything done per segment,
that just Lucene right now (Solr still does some thing not per segment).
There are other little pros as well.

Its a tradeoff, that for the general guy looking for search, heavily
favors using Solr.

-- 
- Mark

http://www.lucidimagination.com




Re: When to use Solr over Lucene

Posted by Israel Ekpo <is...@gmail.com>.
Also Solr simplifies the process of implementing the client side interface.
You can use the same indices with clients written in any programming
language.

The client side could be in virtually any programming language of your
choosing.

If you were to work directly with Lucene, that would not be the case.

On Wed, Sep 16, 2009 at 9:49 AM, Israel Ekpo <is...@gmail.com> wrote:

> Comparing Solr to Lucene is not exactly an apples-to-apples comparison.
>
> Solr is a superset of Lucene. It uses the Lucene engine to index and
> process requests for data retrieval.
>
> Start here first : *
> http://lucene.apache.org/solr/features.html#Solr+Uses+the+Lucene+Search+Library+and+Extends+it
> !*
>
> It would be unfair to compare to the Apache webserver to a cgi scripting
> interface.
>
> The apache webserver is just the container through with the webrowser
> interacts with the CGI scripts.
>
> This is very similar to how Solr is related to Lucene.
>
>
> On Wed, Sep 16, 2009 at 9:26 AM, balaji.a <re...@gmail.com> wrote:
>
>>
>> Hi All,
>>   I am aware that Solr internally uses Lucene for search and indexing. But
>> it would be helpful if anybody explains about Solr features that is not
>> provided by Lucene.
>>
>> Thanks,
>> Balaji.
>> --
>> View this message in context:
>> http://www.nabble.com/When-to-use-Solr-over-Lucene-tp25472354p25472354.html
>> Sent from the Solr - User mailing list archive at Nabble.com.
>>
>>
>
>
> --
> "Good Enough" is not good enough.
> To give anything less than your best is to sacrifice the gift.
> Quality First. Measure Twice. Cut Once.
>



-- 
"Good Enough" is not good enough.
To give anything less than your best is to sacrifice the gift.
Quality First. Measure Twice. Cut Once.

Re: When to use Solr over Lucene

Posted by Israel Ekpo <is...@gmail.com>.
Comparing Solr to Lucene is not exactly an apples-to-apples comparison.

Solr is a superset of Lucene. It uses the Lucene engine to index and process
requests for data retrieval.

Start here first : *
http://lucene.apache.org/solr/features.html#Solr+Uses+the+Lucene+Search+Library+and+Extends+it
!*

It would be unfair to compare to the Apache webserver to a cgi scripting
interface.

The apache webserver is just the container through with the webrowser
interacts with the CGI scripts.

This is very similar to how Solr is related to Lucene.

On Wed, Sep 16, 2009 at 9:26 AM, balaji.a <re...@gmail.com> wrote:

>
> Hi All,
>   I am aware that Solr internally uses Lucene for search and indexing. But
> it would be helpful if anybody explains about Solr features that is not
> provided by Lucene.
>
> Thanks,
> Balaji.
> --
> View this message in context:
> http://www.nabble.com/When-to-use-Solr-over-Lucene-tp25472354p25472354.html
> Sent from the Solr - User mailing list archive at Nabble.com.
>
>


-- 
"Good Enough" is not good enough.
To give anything less than your best is to sacrifice the gift.
Quality First. Measure Twice. Cut Once.

Re: When to use Solr over Lucene

Posted by Grant Ingersoll <gs...@apache.org>.
On Sep 16, 2009, at 9:26 AM, balaji.a wrote:

>
> Hi All,
>   I am aware that Solr internally uses Lucene for search and  
> indexing. But
> it would be helpful if anybody explains about Solr features that is  
> not
> provided by Lucene.
>

Solr is a server, Lucene is an API
Faceting
Distributed search
Replication
Easy configuration
You don't want to program much (or do Java)
Index warming

http://lucene.apache.org/solr/features.html

Generally speaking, Solr is what you end up building when you build a  
Lucene search application, give or take a few features here and  
there.  I've seen a lot of Lucene apps and I'm always amazed how many  
look pretty much like Solr in terms of infrastructure.

I'd use Lucene when you want to have control over every last bit of  
how things work or you need something that isn't in Solr (like Span  
Queries, but even that is doable in Solr w/ a little work)


> Thanks,
> Balaji.
> -- 
> View this message in context: http://www.nabble.com/When-to-use-Solr-over-Lucene-tp25472354p25472354.html
> Sent from the Solr - User mailing list archive at Nabble.com.
>

--------------------------
Grant Ingersoll
http://www.lucidimagination.com/

Search the Lucene ecosystem (Lucene/Solr/Nutch/Mahout/Tika/Droids)  
using Solr/Lucene:
http://www.lucidimagination.com/search