• Products
    • Overview
    • LucidWorks Search Platform
      • Features and Benefits
      • Technical Overview
      • Only with LucidWorks
      • LucidWorks and Solr
      • White Papers
      • LucidWorks Enterprise
      • LucidWorks Cloud
    • Certified Distributions
      • Certified Solr
      • Certified Lucene
    • Apache Releases
      • Apache Solr
      • Apache Lucene
  • Support & Services
    • Overview
    • Support
    • Training
    • Solr/Lucene Certification
    • ExpertLink Advisory
    • Consulting
    • Partners
    • Subscriptions
  • Why Lucid?
    • Why Lucid?
    • Technology
    • Who uses Lucene/Solr?
      • What customers are saying
    • Case Studies
    • Whitepapers
    • Demos
    • Webinars
  • Blog
  • DevZone
    • DevZone Overview
    • Forums (LWE)
    • Videos & Podcasts
      • How To's
      • Screencasts
      • Podcasts
      • Conference Videos
    • Technical Articles
      • Whitepapers
    • Reference Materials
      • Documentation
      • Solr Reference Guide
      • Solr & LucidWorks Matrix
      • Tutorials
    • Events
      • Conferences
      • Meet Ups
    • Code & Test
  • Downloads
  • About Us
    • Management
    • Apache Lucene/Solr Committers
    • Careers
    • News
      • Media Coverage
      • Press Releases
    • Contact Us
Sign Up or Log In
Home . Blog

April 30, 2010

NoSQL, Lucene and Solr

Posted by Grant Ingersoll

The other day, Michael Coté asked me where Apache Lucene and Solr fit in with the NoSQL movement (having heard about the Guardian’s use of Solr), to which I replied:  I haven’t used SQL in any significant way since I started using Lucene in 2004 (and I started my career doing Oracle DBA work, etc. way back when.)  We just didn’t have a fun name for it “back in the day”.

All kidding aside and at the risk of jumping on the buzzword bandwagon, let’s take a look at Wikipedia’s definition of NoSQL:

NoSQL (Not only SQL) is a movement promoting a loosely defined class of non-relational data stores that break with a long history of relational databases. These data stores may not require fixed table schemas, usually avoid join operations and typically scale horizontally.

Now let’s apply that definition to Lucene (we’ll get to Solr in a moment):

  1. NoSQL – Check.  Ironically, many people have also layered SQL on top of Lucene as well.  Guess we should also argue for inclusion in the No-NoSQL (as Coté suggests) movement too!
  2. Loosely defined class of non-relational data stores that break w/ long history of relational dbs: Check.  Once again, ironically, Lucene covers both sides of the aisle here.
  3. No fixed schemas: Been there, done that, bought the t-shirt.  Once again, Lucene also supports fixed schemas as well.
  4. Avoid joins:  Check.  Denormalization frees your mind.  (at least in many cases).  You can do joins in Lucene with some work.
  5. Scales horizontally:  Yes and no.  Let’s be honest, Lucene scales quite well, but you’re going to have to do some work to make it so.  Enter Solr.

Since Solr is “Lucene Best Practices” all wrapped up in an easy to use server, it covers items 1-4 no problem.  And, get this, it also scales horizontally in terms of both data size and query volume.  Plus, with the recent addition of Apache ZooKeeper to Solr (aka Solr Cloud), scaling has never been easier.  At the end of the day, you get all the benefits of NoSQL (under an eventually consistent model) plus you get built in things like free text search, faceting, spell checking, similar item search, hit highlighting and a whole host of other things that have been proven out in thousands of installations around the world.

NoSQL never looked so good.

  • Share this:
  • Email
  • Facebook
  • Digg
  • Share
  • Print
  • Reddit
  • StumbleUpon

Category: apache, Lucene, NoSQL, Solr

6 Responses to “NoSQL, Lucene and Solr”

  1. [...] was happily minding my own business when this post, NoSQL, Lucene and Solr wandered across my twitter feeds. The first 1622 characters can be removed and the meat of the post [...]

    October 28, 2010 05:38 — NoSQL Posts that Don’t Help « Coffee’s Gone Already?

  2. [...] Lucid Imagination » NoSQL, Lucene and Solr [...]

    October 28, 2010 17:15 — NoSQL Daily – Fri Oct 29 › PHP App Engine

  3. [...] We located some information about Solr as NoSQL. You
    can find that information on the Lucid Imagination Web site at this
    link. [...]

    December 17, 2010 06:07 — Merging of Lucene Solr Reported : Beyond Search

  4. Thanks for this nice pro-solr article. I agree with you.

    May 24, 2011 04:16 — Daniel

  5. How about performance? I don’t think solr could be as fast as mongodb or redis.

    July 25, 2011 02:57 — Tyler Long

  6. [...] Lucid Imagination » NoSQL, Lucene and Solr (tags: nosql lucene solr) [...]

    July 27, 2011 16:12 — links for 2011-07-27 | Michael Ong | On9 Systems

Leave a Reply

Go to Blog Front Page

  • Recent Posts

    • Lucene Revolution 2012 – Call for Participation now open!
    • SolrCloud is Coming (and looking to mix in even more ‘NoSQL’)
    • Our Solr Reference Guide updated for v3.5
    • Enhancing Discovery with Solr and Mahout – session slides now available!
    • Solr and LucidWorks feature matrix available
    • LucidWorks Enterprise latest version 2.0.1 released!
    • Why Not AND, OR, And NOT?
    • Options to tune document’s relevance in Solr
    • Dallas JavaMUG December 14th 2011
    • Apache Mahout user meeting – session slides and videos are now available!
  • Archives

    • January 2012
    • December 2011
    • November 2011
    • October 2011
    • September 2011
    • August 2011
  • Tags

    acts_as_solr apache Apache Mahout best practices chump code4lib dismax drupal enterprise search Erik Hatcher field collapsing function query Grant Ingersoll hoss image isfdb local params Lucene lucene revolution LucidGaze lucid imagination Mahout Marc Krellenstein Mark Miller nested queries nutch Open Source Open Source Search qparser query parser queryparser Rails release result grouping Richmond Ruby schema design sint Solr solr 3.1 solr 4.0 solr cloud sortable Tika VA
  • Contact Us
  • About Lucid Imagination
  • Help & Support
  • Training
  • Privacy Policy
  • Legal Terms of Use
  • Copyrights and Disclaimers
  • Log in

Apache Solr, Solr, Apache Lucene, Lucene and their logos are trademarks of the Apache Software Foundation.

© 2011 Lucid Imagination. All Right reserved.

loading Cancel
Post was not sent - check your email addresses!
Email check failed, please try again
Sorry, your blog cannot share posts by email.