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
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
Re: When to use Solr over Lucene
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 reachbalaj...@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
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
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 israele...@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 reachbalaj...@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.