Dave - thanks for Ferret, and your sharing it with us here. I've not had a chance to try it personally yet, but will very soon.

On 24 Oct 2005, at 01:55, David Balmain wrote:
Just to clarify a few things, the reason I chose the name Ferret and not
RubyLucene is because 1) rubylucene was already taken ;-)

Well, it wasn't really taken exactly. I started rucene and renamed it to rubylucene at rubyforge a long while ago and never did anything with it beyond some very very rudimentary low-level I/O work. My main hesitation, besides the zillion other time commitments, was my concern about duplicating effort given how PyLucene works with GCJ and SWIG and can come up to speed with Java Lucene almost automatically.

and 2) I didn't
want to feel tied to the Apache Lucene API. If there is a better way to do something in Ruby, I'd like to do it that way. Having said that, I've mostly stuck to the Apache Lucene API. And I intend to continue supporting the Apache Lucene index format. Hopefully some of the ideas in Ferret will one
day be adopted back into the Apache Lucene project.

As long as it is compatible with the index format I think it's fair to use "lucene" in the name. You're welcome to "rubylucene" if you like :)

As for what I've ported so far? Almost everything. All query types including
span queries are in there.

Impressive!

Lucene 1.4.3 compatibility?  Or TRUNK?

* Performance: Well, it is Ruby. However, I've written the indexer in C and it makes the Java version seem painfully slow. So don't expect Ferret to
remain slower than Apache Lucene forever.

Do you think there is anything about the Java implementation that could be improved in this regard so that the difference is not so dramatic? What is the C code optimizing that the Java is not? Surely we could bring the Java implementation close to C level speed in terms of I/O, no?

While indexing speed is certainly very important, in many (most?) projects the searching speed is the main concern and indexing speed is of much less concern.

So, if anyone wants to help out, please download it, play with it and give me your feedback. It's available as a gem and there is a quick tutorial
here;

http://ferret.davebalmain.com/api/files/TUTORIAL.html

You can count on it... I'll be there a little later today!

    Erik

Reply via email to