Slashdot Mirror


Open Source Search Engine Benchmarks

Sean Fargo writes "This article has benchmarks for the latest versions of Lucene, Xapian, zettair, sqlite, and sphinx. It tests them by indexing Twitter and Medical Journals, providing comparative system stats and relevancy scores. All the benchmark code is open source."

5 of 62 comments (clear)

  1. Hear the heads exploding - Java is fastest by MosesJones · · Score: 4, Informative

    Okay so the fastest engine is using Lucerne, a Java search engine, and this is neither tuned nor horizontally scaled (which it can do very well).

    C++ and C both fail to deliver the same level of performance as the Java virtual machine.

    Oh wait hang on... does this mean that for complex applications the most important performance piece is normally actually the efficiency of the code rather than the efficiency of the base platform and therefore having a language in which it is easier to write efficient code is better than just having the one that is fastest to execute a for loop?

    But hell this is Slashdot and Java is Slooooooow...

    --
    An Eye for an Eye will make the whole world blind - Gandhi
    1. Re:Hear the heads exploding - Java is fastest by Roy+van+Rijn · · Score: 3, Informative

      Hrm, this had absolutely nothing to do with the language. It has almost everything to do with the algorithms.

      Its very hard to compare languages, maybe if you use the languages to implement the exact same algorithm and let it run for a long while... But that still doesn't really compare it well enough.

      Like somebody already said: Bubble sort in C++ is (almost) always slower then a quicksort in Java.

  2. Re:k by Lord+Grey · · Score: 5, Informative

    Really? Am I the only person that found it interesting that Lucene, the only non C/C++ implementation, gave some pretty impressive stats? I mean, it's written in Java and although it has a slower index time its search time, index size and relevancy are impressive.

    Lucene is a great search tool. As TFA pointed out, however, if you're looking for a "search solution" rather than "search engine" then you should check out Solr instead. Lucene is a toolkit that you build on top of, not something you really want to deploy by itself. Solr is that thing built on top of Lucene.

    Be aware that while Lucene/Solr has made terrific progress, it is not quite in the "enterprise search" category. For superscale implementations you'll still likely need to look at a high-priced product like FAST.

    --
    // Beyond Here Lie Dragons
  3. Re:k by tealwarrior · · Score: 4, Informative

    Solr/Lucene power a number of sites that would be in the enterprise search category (Apple, Netflix, C-Net). Where I work, we index 5 million docs in Solr/Lucne and serve out millions of search requests a day. It's not google scale, but most people don't need that. The markets where one needs a FAST are dwindling quickly.

    --
    In theory, there is no difference between theory and practice, in practice there is.
  4. Re:k by johannesg · · Score: 4, Informative

    Ah, thank you. So indeed, an implementation of the same algorithm turns out to be _three times_ as fast in C++ than it is in Java (see here).

    I wonder if eldavojohn wishes to comment on that?